From 39fb1e5becf2753b4561feb15a1cf95be91d4d0d Mon Sep 17 00:00:00 2001 From: Jeroen Claassens <support@favware.tech> Date: Thu, 30 Dec 2021 14:43:48 +0100 Subject: [PATCH] refactor: switch to json based docs - feat: start setting up the plugin for parsing - feat: start parsing classes - feat: update framework json - fix: fixed rendering custom files with css - chore: update framework json to exclude externals - feat: setup parsing sapphire classes and do a lot of link fixing - refactor: switch to sapphire result - fix: remove replaceall for Node 14 compat - fix: actually remove replaceAll - fix: fixed css extraction regex - I thought I did this already - fix: fixed broken link on welcome page - chore: temporarily disable reporting broken links - feat: much stuff - change `classes` to `class` to match DJS - add `typedef` and `namespace` linking - fix linking of non-generic types - update guide urls to match `class` change - chore: bump deps - chore: cleanup types - feat: add variant to typedefs - build: make it easier to debug - fix: partially fix link extraction - feat(docgen): add renderTypedef() - Moved parseSee() from /lib/renderer/renderClass.ts to /lib/renderer/utils.ts - Add /lib/renderer/renderTypedef.ts Which adds basic functionality in the website with things like title, description and extendedDescription - chore: sort ts interfaces in docgen output - chore: update doc types - refactor: completely refactor how links are resolved - fix: fixed links for `{@link` tags and propegate change to mdn and djs - fix: use `replace` instead of `replaceAll` - feat(docusaurus-discordjs-docgen): add functionality for enum and interface - style(docusaurus-discordjs-docgen): use Array#flat() for typedef - feat(docusaurus-discordjs-docgen): add constructor table functionality for classes - feat(docusaurus-discordjs-docgen): align table content to center - feat(docusaurus-discordjs-docgen): remove description column if all falsy - feat(docusaurus-discordjs-docgen): add properties functionality for classes - ci: add automatic vercel deploys workflow - chore(docusaurus-typedoc-json-parser): initial commit - chore(docusaurus-typedoc-json-parser): add doc fetching - chore(docusaurus-typedoc-json-parser): add sidebar rendering - fix(deps): update all non-major dependencies - fix(deps): update dependency typedoc-json-parser to ^5.2.0 - feat(docusaurus-typedoc-json-parser): add basic renderers - style(docusaurus-typedoc-json-parser): curly brackets and spacing - style(docusaurus-typedoc-json-parser): template literals - feat(docusaurus-typedoc-json-parser): add class extends and implements - feat(docusaurus-typedoc-json-parser): add link parsing for the local project - chore(docusaurus-typedoc-json-parser): add `start` script to bypass debugger - feat(docusaurus-typedoc-json-parser): add comment info for classes - chore: update dev deps - chore: regen and dedupe lockfile - fix(docusaurus-typedoc-json-parser): absorb breaking changes and add versioning - refactor: switch to using typedoc-json-parser plugin - chore: add `update` script - fix(deps): update dependency typedoc-json-parser to ^6.0.2 - fix(docusaurus-typedoc-json-parser): proper category yamls - feat(docusaurus-typedoc-json-parser): first steps to proper type linking - refactor(docusaurus-typedoc-json-parser): switch from constant to variable - feat(docusaurus-typedoc-json-parser): render classes - ci: use tags for actions --- .github/workflows/automatic-vercel-deploy.yml | 16 + .github/workflows/codeql-analysis.yml | 8 +- .github/workflows/continuous-integration.yml | 12 +- .github/workflows/labelsync.yml | 4 +- .github/workflows/update-submodules.yml | 48 - .gitignore | 5 +- .gitmodules | 24 - .vscode/launch.json | 17 + data/framework.json | 44646 ++++++++++++++++ docs/General/Welcome.mdx | 2 +- ...uiring-an-application-command-registry.mdx | 4 +- ...ting-application-commands-to-a-command.mdx | 12 +- ...ing-global-behavior-when-not-identical.mdx | 2 +- .../registering-chat-input-commands.mdx | 24 +- .../registering-context-commands.mdx | 10 +- .../what-is-it.mdx | 2 +- .../interaction-handlers/autocomplete.mdx | 4 +- .../message-components.mdx | 6 +- docs/Guide/arguments/built-in-arguments.mdx | 2 +- docs/Guide/arguments/using-arguments.mdx | 6 +- docs/Guide/arguments/using-flags.mdx | 4 +- docs/Guide/arguments/using-options.mdx | 8 +- .../creating-a-basic-command.mdx | 6 +- .../getting-started-with-sapphire.mdx | 4 +- .../updating-from-v2-to-v3.mdx | 55 +- docs/Guide/plugins/API/rate-limiting.mdx | 2 +- .../plugins/Logger/configuring-loglevel.mdx | 2 +- .../Guide/plugins/i18next/getting-started.mdx | 32 +- docs/Guide/preconditions/channel-types.mdx | 4 +- docs/Guide/preconditions/command-cooldown.mdx | 18 +- .../creating-your-own-preconditions.mdx | 18 +- .../preconditions/handling-permissions.mdx | 4 +- .../reporting-precondition-failure.mdx | 8 +- docs/Guide/utilities/time-utilities.mdx | 5 +- docusaurus-discordjs-docgen/package.json | 25 + docusaurus-discordjs-docgen/scripts/debug.mjs | 70 + docusaurus-discordjs-docgen/src/index.ts | 50 + .../externals/discordjs/resolveClasses.ts | 149 + .../externals/discordjs/resolveTypedefs.ts | 270 + .../externals/mdn/THIRD_PARTY_LICENSE | 19 + .../lib/renderer/externals/mdn/resolveCss.ts | 70 + .../lib/renderer/externals/mdn/resolveDom.ts | 255 + .../renderer/externals/mdn/resolveGlobals.ts | 121 + .../src/lib/renderer/externals/parsers.ts | 177 + .../externals/sapphire/resolveClasses.ts | 19 + .../sapphire/resolveExternalPackage.ts | 9 + .../externals/sapphire/resolveNamespaces.ts | 19 + .../externals/sapphire/resolveTypeDefs.ts | 19 + .../src/lib/renderer/render.ts | 19 + .../src/lib/renderer/renderClass.ts | 127 + .../src/lib/renderer/renderCustomFile.ts | 51 + .../src/lib/renderer/renderTypedef.ts | 114 + .../renderer/transformPlainCssToReactCss.ts | 82 + .../src/lib/renderer/utils.ts | 43 + .../src/lib/renderer/writeCategoryYaml.ts | 19 + .../src/lib/types/css.d.ts | 75 + .../src/lib/types/docgen-output.ts | 247 + .../src/lib/types/types.ts | 13 + .../src/lib/utils/logger.ts | 3 + .../src/lib/utils/options.ts | 27 + .../src/lib/utils/pluginContainer.ts | 8 + docusaurus-discordjs-docgen/tsconfig.json | 10 + docusaurus-typedoc-json-parser/package.json | 30 + .../scripts/debug.mjs | 65 + docusaurus-typedoc-json-parser/src/index.ts | 117 + .../src/renderer/render.ts | 78 + .../src/renderer/renderClass.ts | 167 + .../src/renderer/renderEnum.ts | 34 + .../src/renderer/renderFunction.ts | 34 + .../src/renderer/renderInterface.ts | 34 + .../src/renderer/renderNamespace.ts | 34 + .../src/renderer/renderTypeAlias.ts | 34 + .../src/renderer/renderVariable.ts | 34 + .../src/renderer/utilities/ensureDirectory.ts | 5 + .../src/renderer/utilities/parseExamples.ts | 7 + .../src/renderer/utilities/parseParameters.ts | 16 + .../src/renderer/utilities/parseSee.ts | 7 + .../renderer/utilities/parseTypeParameters.ts | 12 + .../src/renderer/utilities/removeDirectory.ts | 21 + .../src/renderer/writeCategoryYaml.ts | 15 + .../src/types/PluginOptions.ts | 5 + .../src/types/RepositoryContent.ts | 15 + docusaurus-typedoc-json-parser/tsconfig.json | 10 + docusaurus.config.js | 138 +- package.json | 33 +- projects/framework | 1 - projects/pieces | 1 - projects/plugins | 1 - projects/shapeshift | 1 - projects/type | 1 - projects/utilities | 1 - scripts/make-djs-node-14-compatible.mjs | 28 - temporary-errors-log-of-broken-links.md | 77 + tsconfig.eslint.json | 14 +- yarn.lock | 3716 +- 95 files changed, 48013 insertions(+), 3907 deletions(-) create mode 100644 .github/workflows/automatic-vercel-deploy.yml delete mode 100644 .github/workflows/update-submodules.yml delete mode 100644 .gitmodules create mode 100644 .vscode/launch.json create mode 100644 data/framework.json create mode 100644 docusaurus-discordjs-docgen/package.json create mode 100644 docusaurus-discordjs-docgen/scripts/debug.mjs create mode 100644 docusaurus-discordjs-docgen/src/index.ts create mode 100644 docusaurus-discordjs-docgen/src/lib/renderer/externals/discordjs/resolveClasses.ts create mode 100644 docusaurus-discordjs-docgen/src/lib/renderer/externals/discordjs/resolveTypedefs.ts create mode 100644 docusaurus-discordjs-docgen/src/lib/renderer/externals/mdn/THIRD_PARTY_LICENSE create mode 100644 docusaurus-discordjs-docgen/src/lib/renderer/externals/mdn/resolveCss.ts create mode 100644 docusaurus-discordjs-docgen/src/lib/renderer/externals/mdn/resolveDom.ts create mode 100644 docusaurus-discordjs-docgen/src/lib/renderer/externals/mdn/resolveGlobals.ts create mode 100644 docusaurus-discordjs-docgen/src/lib/renderer/externals/parsers.ts create mode 100644 docusaurus-discordjs-docgen/src/lib/renderer/externals/sapphire/resolveClasses.ts create mode 100644 docusaurus-discordjs-docgen/src/lib/renderer/externals/sapphire/resolveExternalPackage.ts create mode 100644 docusaurus-discordjs-docgen/src/lib/renderer/externals/sapphire/resolveNamespaces.ts create mode 100644 docusaurus-discordjs-docgen/src/lib/renderer/externals/sapphire/resolveTypeDefs.ts create mode 100644 docusaurus-discordjs-docgen/src/lib/renderer/render.ts create mode 100644 docusaurus-discordjs-docgen/src/lib/renderer/renderClass.ts create mode 100644 docusaurus-discordjs-docgen/src/lib/renderer/renderCustomFile.ts create mode 100644 docusaurus-discordjs-docgen/src/lib/renderer/renderTypedef.ts create mode 100644 docusaurus-discordjs-docgen/src/lib/renderer/transformPlainCssToReactCss.ts create mode 100644 docusaurus-discordjs-docgen/src/lib/renderer/utils.ts create mode 100644 docusaurus-discordjs-docgen/src/lib/renderer/writeCategoryYaml.ts create mode 100644 docusaurus-discordjs-docgen/src/lib/types/css.d.ts create mode 100644 docusaurus-discordjs-docgen/src/lib/types/docgen-output.ts create mode 100644 docusaurus-discordjs-docgen/src/lib/types/types.ts create mode 100644 docusaurus-discordjs-docgen/src/lib/utils/logger.ts create mode 100644 docusaurus-discordjs-docgen/src/lib/utils/options.ts create mode 100644 docusaurus-discordjs-docgen/src/lib/utils/pluginContainer.ts create mode 100644 docusaurus-discordjs-docgen/tsconfig.json create mode 100644 docusaurus-typedoc-json-parser/package.json create mode 100644 docusaurus-typedoc-json-parser/scripts/debug.mjs create mode 100644 docusaurus-typedoc-json-parser/src/index.ts create mode 100644 docusaurus-typedoc-json-parser/src/renderer/render.ts create mode 100644 docusaurus-typedoc-json-parser/src/renderer/renderClass.ts create mode 100644 docusaurus-typedoc-json-parser/src/renderer/renderEnum.ts create mode 100644 docusaurus-typedoc-json-parser/src/renderer/renderFunction.ts create mode 100644 docusaurus-typedoc-json-parser/src/renderer/renderInterface.ts create mode 100644 docusaurus-typedoc-json-parser/src/renderer/renderNamespace.ts create mode 100644 docusaurus-typedoc-json-parser/src/renderer/renderTypeAlias.ts create mode 100644 docusaurus-typedoc-json-parser/src/renderer/renderVariable.ts create mode 100644 docusaurus-typedoc-json-parser/src/renderer/utilities/ensureDirectory.ts create mode 100644 docusaurus-typedoc-json-parser/src/renderer/utilities/parseExamples.ts create mode 100644 docusaurus-typedoc-json-parser/src/renderer/utilities/parseParameters.ts create mode 100644 docusaurus-typedoc-json-parser/src/renderer/utilities/parseSee.ts create mode 100644 docusaurus-typedoc-json-parser/src/renderer/utilities/parseTypeParameters.ts create mode 100644 docusaurus-typedoc-json-parser/src/renderer/utilities/removeDirectory.ts create mode 100644 docusaurus-typedoc-json-parser/src/renderer/writeCategoryYaml.ts create mode 100644 docusaurus-typedoc-json-parser/src/types/PluginOptions.ts create mode 100644 docusaurus-typedoc-json-parser/src/types/RepositoryContent.ts create mode 100644 docusaurus-typedoc-json-parser/tsconfig.json delete mode 160000 projects/framework delete mode 160000 projects/pieces delete mode 160000 projects/plugins delete mode 160000 projects/shapeshift delete mode 160000 projects/type delete mode 160000 projects/utilities delete mode 100644 scripts/make-djs-node-14-compatible.mjs create mode 100644 temporary-errors-log-of-broken-links.md diff --git a/.github/workflows/automatic-vercel-deploy.yml b/.github/workflows/automatic-vercel-deploy.yml new file mode 100644 index 00000000..4f71d45f --- /dev/null +++ b/.github/workflows/automatic-vercel-deploy.yml @@ -0,0 +1,16 @@ +name: Automatic Vercel Deploys + +on: + # TODO: Enable pre-merge + # schedule: + # - cron: '30 3 * * *' + workflow_dispatch: + +jobs: + AutomaticVercelDeploy: + runs-on: ubuntu-latest + steps: + - name: Trigger Vercel Deploy + run: curl -X POST ${VERCEL_DEPLOY_HOOK_URL} + env: + VERCEL_DEPLOY_HOOK_URL: ${{ secrets.VERCEL_DEPLOY_HOOK_URL }} diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml index f141be03..9edbb71a 100644 --- a/.github/workflows/codeql-analysis.yml +++ b/.github/workflows/codeql-analysis.yml @@ -16,13 +16,13 @@ jobs: steps: - name: Checkout repository - uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # tag=v3 + uses: actions/checkout@v3 - name: Initialize CodeQL - uses: github/codeql-action/init@807578363a7869ca324a79039e6db9c843e0e100 # tag=v2 + uses: github/codeql-action/init@v2 - name: Autobuild - uses: github/codeql-action/autobuild@807578363a7869ca324a79039e6db9c843e0e100 # tag=v2 + uses: github/codeql-action/autobuild@v2 - name: Perform CodeQL Analysis - uses: github/codeql-action/analyze@807578363a7869ca324a79039e6db9c843e0e100 # tag=v2 + uses: github/codeql-action/analyze@v2 diff --git a/.github/workflows/continuous-integration.yml b/.github/workflows/continuous-integration.yml index 867505e0..13872800 100644 --- a/.github/workflows/continuous-integration.yml +++ b/.github/workflows/continuous-integration.yml @@ -12,13 +12,13 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout Project - uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # tag=v3 + uses: actions/checkout@v3 with: submodules: true - name: Add problem matcher run: echo "::add-matcher::.github/problemMatchers/eslint.json" - name: Use Node.js v16 - uses: actions/setup-node@8c91899e586c5b171469028077307d293428b516 # tag=v3 + uses: actions/setup-node@v3 with: node-version: 16 cache: yarn @@ -33,13 +33,13 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout Project - uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # tag=v3 + uses: actions/checkout@v3 with: submodules: true - name: Add problem matcher run: echo "::add-matcher::.github/problemMatchers/eslint.json" - name: Use Node.js v16 - uses: actions/setup-node@8c91899e586c5b171469028077307d293428b516 # tag=v3 + uses: actions/setup-node@v3 with: node-version: 16 cache: yarn @@ -54,11 +54,11 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout Project - uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # tag=v3 + uses: actions/checkout@v3 with: submodules: true - name: Use Node.js v16 - uses: actions/setup-node@8c91899e586c5b171469028077307d293428b516 # tag=v3 + uses: actions/setup-node@v3 with: node-version: 16 cache: yarn diff --git a/.github/workflows/labelsync.yml b/.github/workflows/labelsync.yml index f2cfd4d2..be4617e1 100644 --- a/.github/workflows/labelsync.yml +++ b/.github/workflows/labelsync.yml @@ -11,11 +11,11 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout Project - uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # tag=v3 + uses: actions/checkout@v3 with: repository: 'sapphiredev/readme' - name: Run Label Sync - uses: crazy-max/ghaction-github-labeler@77450f9fa47c41fbab15c0923417fff00730ffa3 # tag=v4 + uses: crazy-max/ghaction-github-labeler@v4 with: github-token: ${{ secrets.GITHUB_TOKEN }} yaml-file: .github/labels.yml diff --git a/.github/workflows/update-submodules.yml b/.github/workflows/update-submodules.yml deleted file mode 100644 index 39738d52..00000000 --- a/.github/workflows/update-submodules.yml +++ /dev/null @@ -1,48 +0,0 @@ -name: Update Git Submodules - -on: - schedule: - - cron: '30 3 * * *' - workflow_dispatch: - -jobs: - SubmoduleSync: - runs-on: ubuntu-latest - - steps: - - name: Update any submodules - run: | - REPO="https://${GITHUB_ACTOR}:${GITHUB_TOKEN}@github.com/${GITHUB_REPOSITORY}.git" - - echo -e "\n# Checkout the repo in the target branch" - TARGET_BRANCH="main" - git clone --recurse-submodules -j8 -b $TARGET_BRANCH $REPO sapphiredev-website - - echo -e "\n# Moving to newly cloned repository" - cd sapphiredev-website - - echo -e "\n# Updating submodules" - git pull --recurse-submodules && git submodule update --remote --recursive - - echo -e "\n# Add all files in current directory" - git add --all . - - if git diff-index --quiet HEAD --; then - echo "No changes to commit, exiting with code 0" - exit 0; - else - echo -e "\n# Before pushing changes we update the lockfile" - echo -e "\nenableImmutableInstalls: false" >> ./.yarnrc.yml - rm -rf ./node_modules ./yarn.lock || true - yarn install - echo -e "\n# Adding yarn lockfile" - git add yarn.lock - git config user.name "${GITHUB_ACTOR}" - git config user.email "${GITHUB_EMAIL}" - git commit -snm "chore: updated GitHub Submodules at $(date '+%F %H:%M.%S')" || true - git push origin $TARGET_BRANCH - fi - env: - GITHUB_TOKEN: ${{ secrets.SKYRA_TOKEN }} - GITHUB_ACTOR: NM-EEA-Y - GITHUB_EMAIL: contact@skyra.pw diff --git a/.gitignore b/.gitignore index 29062804..8736c036 100644 --- a/.gitignore +++ b/.gitignore @@ -14,7 +14,7 @@ build/ .docusaurus/ .cache-loader/ docs/Documentation/ -tsconfig.tsbuildinfo +*.tsbuildinfo # misc .DS_Store @@ -32,3 +32,6 @@ npm-debug.log* yarn-debug.log* yarn-error.log* *.log + +# TODO: Remove later +dist/ diff --git a/.gitmodules b/.gitmodules deleted file mode 100644 index 77232eee..00000000 --- a/.gitmodules +++ /dev/null @@ -1,24 +0,0 @@ -[submodule "projects/framework"] - path = projects/framework - url = https://github.com/sapphiredev/framework - branch = main -[submodule "projects/pieces"] - path = projects/pieces - url = https://github.com/sapphiredev/pieces - branch = main -[submodule "projects/utilities"] - path = projects/utilities - url = https://github.com/sapphiredev/utilities - branch = main -[submodule "projects/plugins"] - path = projects/plugins - url = https://github.com/sapphiredev/plugins - branch = main -[submodule "projects/type"] - path = projects/type - url = https://github.com/sapphiredev/type - branch = main -[submodule "projects/shapeshift"] - path = projects/shapeshift - url = https://github.com/sapphiredev/shapeshift - branch = main diff --git a/.vscode/launch.json b/.vscode/launch.json new file mode 100644 index 00000000..4a58d76a --- /dev/null +++ b/.vscode/launch.json @@ -0,0 +1,17 @@ +{ + "configurations": [ + { + "type": "pwa-node", + "request": "launch", + "runtimeArgs": ["run-script", "debug"], + "name": "Debug Docgen", + "runtimeExecutable": "npm", + "skipFiles": ["<node_internals>/**", "node_modules/tslib/**"], + "internalConsoleOptions": "openOnSessionStart", + "cwd": "${workspaceFolder}/docusaurus-discordjs-docgen", + "console": "internalConsole", + "outputCapture": "std", + "outFiles": ["${workspaceFolder}/docusaurus-discordjs-docgen/dist/**/*.js"] + } + ] +} diff --git a/data/framework.json b/data/framework.json new file mode 100644 index 00000000..0d4395db --- /dev/null +++ b/data/framework.json @@ -0,0 +1,44646 @@ +{ + "meta": { + "version": "0.3.4", + "format": 20, + "date": 1650918806062 + }, + "custom": { + "general": { + "name": "General", + "files": { + "welcome": { + "name": "Welcome", + "type": "md", + "content": "<div align=\"center\">\n\n![Sapphire Logo](https://cdn.skyra.pw/gh-assets/sapphire-banner.png)\n\n# Sapphire\n\n**A pleasant Discord Bot framework**\n\n[![GitHub](https://img.shields.io/github/license/sapphiredev/framework)](https://github.com/sapphiredev/framework/blob/main/LICENSE.md)\n[![codecov](https://codecov.io/gh/sapphiredev/framework/branch/main/graph/badge.svg?token=AHPITY8WY9)](https://codecov.io/gh/sapphiredev/framework)\n[![npm](https://img.shields.io/npm/v/@sapphire/framework?color=crimson&logo=npm&style=flat-square)](https://www.npmjs.com/package/@sapphire/framework)\n\n[![Support Server](https://discord.com/api/guilds/737141877803057244/embed.png?style=banner2)](https://sapphirejs.dev/discord)\n\n</div>\n\n---\n\n## Description\n\nSapphire is a Discord bot framework built on top of [discord.js] for advanced and amazing bots.\n\n<div align=\"center\" style=\"padding-top: 2rem; padding-bottom: 1rem\">\n\n| [**Click here for the documentation and guides**](https://www.sapphirejs.dev/) |\n| ------------------------------------------------------------------------------ |\n\n</div>\n\n## Features\n\n- Written in TypeScript\n- Command Handler, Arguments, Pre-conditions and Listeners Store\n- Completely Modular and Extendable\n- Advanced Plugins Support\n- Supports many [plugins](https://github.com/sapphiredev/plugins)\n- Full TypeScript & JavaScript support\n\n## Installation\n\n`@sapphire/framework` depends on the following packages. Be sure to install these along with this package!\n\n- [`discord.js`](https://www.npmjs.com/package/discord.js)\n\nYou can use the following command to install this package, or replace `npm install` with your package manager of choice.\n\n```sh\nnpm install @sapphire/framework discord.js\n```\n\n---\n\n## Buy us some doughnuts\n\nSapphire Community is and always will be open source, even if we don't get donations. That being said, we know there are amazing people who may still want to donate just to show their appreciation. Thank you very much in advance!\n\nWe accept donations through Open Collective, Ko-fi, Paypal, Patreon and GitHub Sponsorships. You can use the buttons below to donate through your method of choice.\n\n| Donate With | Address |\n| :-------------: | :-------------------------------------------------: |\n| Open Collective | [Click Here](https://sapphirejs.dev/opencollective) |\n| Ko-fi | [Click Here](https://sapphirejs.dev/kofi) |\n| Patreon | [Click Here](https://sapphirejs.dev/patreon) |\n| PayPal | [Click Here](https://sapphirejs.dev/paypal) |\n\n## Contributors β¨\n\nThanks goes to these wonderful people ([emoji key](https://allcontributors.org/docs/en/emoji-key)):\n\n<!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section -->\n<!-- prettier-ignore-start -->\n<!-- markdownlint-disable -->\n<table>\n <tr>\n <td align=\"center\"><a href=\"https://github.com/kyranet\"><img src=\"https://avatars0.githubusercontent.com/u/24852502?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Antonio RomΓ‘n</b></sub></a><br /><a href=\"https://github.com/sapphiredev/framework/commits?author=kyranet\" title=\"Code\">π»</a> <a href=\"https://github.com/sapphiredev/framework/commits?author=kyranet\" title=\"Documentation\">π</a> <a href=\"#design-kyranet\" title=\"Design\">π¨</a> <a href=\"#ideas-kyranet\" title=\"Ideas, Planning, & Feedback\">π€</a> <a href=\"#infra-kyranet\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">π</a> <a href=\"#projectManagement-kyranet\" title=\"Project Management\">π</a> <a href=\"#plugin-kyranet\" title=\"Plugin/utility libraries\">π</a></td>\n <td align=\"center\"><a href=\"https://favware.tech/\"><img src=\"https://avatars3.githubusercontent.com/u/4019718?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Jeroen Claassens</b></sub></a><br /><a href=\"https://github.com/sapphiredev/framework/commits?author=favna\" title=\"Code\">π»</a> <a href=\"https://github.com/sapphiredev/framework/commits?author=favna\" title=\"Documentation\">π</a> <a href=\"#infra-favna\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">π</a> <a href=\"#projectManagement-favna\" title=\"Project Management\">π</a> <a href=\"#plugin-favna\" title=\"Plugin/utility libraries\">π</a></td>\n <td align=\"center\"><a href=\"https://github.com/cfanoulis\"><img src=\"https://avatars3.githubusercontent.com/u/38255093?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Charalampos Fanoulis</b></sub></a><br /><a href=\"https://github.com/sapphiredev/framework/commits?author=cfanoulis\" title=\"Code\">π»</a></td>\n <td align=\"center\"><a href=\"https://github.com/AdityaTD\"><img src=\"https://avatars0.githubusercontent.com/u/9266227?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Aditya N. Tripathi</b></sub></a><br /><a href=\"https://github.com/sapphiredev/framework/commits?author=AdityaTD\" title=\"Code\">π»</a> <a href=\"https://github.com/sapphiredev/framework/commits?author=AdityaTD\" title=\"Documentation\">π</a></td>\n <td align=\"center\"><a href=\"http://leonard.sh\"><img src=\"https://avatars1.githubusercontent.com/u/35312043?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>LeonardSSH</b></sub></a><br /><a href=\"https://github.com/sapphiredev/framework/commits?author=LeonardSSH\" title=\"Documentation\">π</a></td>\n <td align=\"center\"><a href=\"https://Quantumlyy.com/\"><img src=\"https://avatars1.githubusercontent.com/u/7919610?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Nejc DrobniΔ</b></sub></a><br /><a href=\"https://github.com/sapphiredev/framework/commits?author=Quantumlyy\" title=\"Code\">π»</a> <a href=\"#plugin-Quantumlyy\" title=\"Plugin/utility libraries\">π</a></td>\n <td align=\"center\"><a href=\"https://github.com/Phamzito\"><img src=\"https://avatars2.githubusercontent.com/u/31642521?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>David Gustavo Herrera De La Cruz</b></sub></a><br /><a href=\"https://github.com/sapphiredev/framework/commits?author=Phamzito\" title=\"Code\">π»</a></td>\n </tr>\n <tr>\n <td align=\"center\"><a href=\"https://github.com/Rexogamer\"><img src=\"https://avatars0.githubusercontent.com/u/42586271?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Ed L</b></sub></a><br /><a href=\"https://github.com/sapphiredev/framework/commits?author=Rexogamer\" title=\"Documentation\">π</a></td>\n <td align=\"center\"><a href=\"https://atm.moe/\"><img src=\"https://avatars3.githubusercontent.com/u/31011461?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Kovacs Alex</b></sub></a><br /><a href=\"https://github.com/sapphiredev/framework/commits?author=alexthemaster\" title=\"Code\">π»</a></td>\n <td align=\"center\"><a href=\"https://github.com/Alcremie\"><img src=\"https://avatars0.githubusercontent.com/u/54785334?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Ivan Lieder</b></sub></a><br /><a href=\"https://github.com/sapphiredev/framework/commits?author=Alcremie\" title=\"Code\">π»</a> <a href=\"https://github.com/sapphiredev/framework/pulls?q=is%3Apr+reviewed-by%3AAlcremie\" title=\"Reviewed Pull Requests\">π</a></td>\n <td align=\"center\"><a href=\"https://github.com/Nytelife26\"><img src=\"https://avatars1.githubusercontent.com/u/22531310?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Tyler J Russell</b></sub></a><br /><a href=\"https://github.com/sapphiredev/framework/commits?author=Nytelife26\" title=\"Code\">π»</a> <a href=\"#infra-Nytelife26\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">π</a> <a href=\"#plugin-Nytelife26\" title=\"Plugin/utility libraries\">π</a></td>\n <td align=\"center\"><a href=\"https://github.com/Stitch07\"><img src=\"https://avatars0.githubusercontent.com/u/29275227?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Stitch07</b></sub></a><br /><a href=\"https://github.com/sapphiredev/framework/commits?author=Stitch07\" title=\"Code\">π»</a></td>\n <td align=\"center\"><a href=\"https://lavya.tech/\"><img src=\"https://avatars.githubusercontent.com/u/65386243?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>lavgup</b></sub></a><br /><a href=\"https://github.com/sapphiredev/framework/commits?author=lavgup\" title=\"Documentation\">π</a></td>\n <td align=\"center\"><a href=\"https://github.com/vladfrangu\"><img src=\"https://avatars.githubusercontent.com/u/17960496?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Vlad Frangu</b></sub></a><br /><a href=\"https://github.com/sapphiredev/framework/commits?author=vladfrangu\" title=\"Code\">π»</a> <a href=\"#infra-vladfrangu\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">π</a> <a href=\"https://github.com/sapphiredev/framework/pulls?q=is%3Apr+reviewed-by%3Avladfrangu\" title=\"Reviewed Pull Requests\">π</a></td>\n </tr>\n <tr>\n <td align=\"center\"><a href=\"https://github.com/noftaly\"><img src=\"https://avatars.githubusercontent.com/u/34779161?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Elliot</b></sub></a><br /><a href=\"https://github.com/sapphiredev/framework/commits?author=noftaly\" title=\"Documentation\">π</a> <a href=\"https://github.com/sapphiredev/framework/commits?author=noftaly\" title=\"Code\">π»</a></td>\n <td align=\"center\"><a href=\"https://kaname.netlify.app\"><img src=\"https://avatars.githubusercontent.com/u/56084970?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Kaname</b></sub></a><br /><a href=\"https://github.com/sapphiredev/framework/commits?author=kaname-png\" title=\"Code\">π»</a> <a href=\"https://github.com/sapphiredev/framework/issues?q=author%3Akaname-png\" title=\"Bug reports\">π</a></td>\n <td align=\"center\"><a href=\"https://github.com/Lioness100\"><img src=\"https://avatars.githubusercontent.com/u/65814829?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Lioness100</b></sub></a><br /><a href=\"https://github.com/sapphiredev/framework/commits?author=Lioness100\" title=\"Code\">π»</a> <a href=\"https://github.com/sapphiredev/framework/commits?author=Lioness100\" title=\"Documentation\">π</a> <a href=\"https://github.com/sapphiredev/framework/issues?q=author%3ALioness100\" title=\"Bug reports\">π</a></td>\n <td align=\"center\"><a href=\"https://github.com/gc\"><img src=\"https://avatars.githubusercontent.com/u/30398469?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>GC</b></sub></a><br /><a href=\"https://github.com/sapphiredev/framework/commits?author=gc\" title=\"Code\">π»</a></td>\n <td align=\"center\"><a href=\"https://minecolonies.com/\"><img src=\"https://avatars.githubusercontent.com/u/19329455?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Mark Fisher</b></sub></a><br /><a href=\"https://github.com/sapphiredev/framework/commits?author=PoroUsedSnax\" title=\"Code\">π»</a></td>\n <td align=\"center\"><a href=\"https://github.com/bitomic\"><img src=\"https://avatars.githubusercontent.com/u/35199700?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>bitomic</b></sub></a><br /><a href=\"https://github.com/sapphiredev/framework/commits?author=bitomic\" title=\"Code\">π»</a></td>\n <td align=\"center\"><a href=\"https://c43721.github.io/\"><img src=\"https://avatars.githubusercontent.com/u/55610086?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>c43721</b></sub></a><br /><a href=\"https://github.com/sapphiredev/framework/commits?author=c43721\" title=\"Code\">π»</a></td>\n </tr>\n <tr>\n <td align=\"center\"><a href=\"https://github.com/apps/depfu\"><img src=\"https://avatars.githubusercontent.com/in/715?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>depfu[bot]</b></sub></a><br /><a href=\"#maintenance-depfu[bot]\" title=\"Maintenance\">π§</a></td>\n <td align=\"center\"><a href=\"https://github.com/apps/renovate\"><img src=\"https://avatars.githubusercontent.com/in/2740?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>renovate[bot]</b></sub></a><br /><a href=\"#maintenance-renovate[bot]\" title=\"Maintenance\">π§</a></td>\n <td align=\"center\"><a href=\"https://github.com/apps/dependabot\"><img src=\"https://avatars.githubusercontent.com/in/29110?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>dependabot[bot]</b></sub></a><br /><a href=\"#maintenance-dependabot[bot]\" title=\"Maintenance\">π§</a></td>\n <td align=\"center\"><a href=\"https://github.com/apps/allcontributors\"><img src=\"https://avatars.githubusercontent.com/in/23186?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>allcontributors[bot]</b></sub></a><br /><a href=\"https://github.com/sapphiredev/framework/commits?author=allcontributors[bot]\" title=\"Documentation\">π</a></td>\n <td align=\"center\"><a href=\"https://megatank58.me/\"><img src=\"https://avatars.githubusercontent.com/u/51410502?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>megatank58</b></sub></a><br /><a href=\"https://github.com/sapphiredev/framework/commits?author=megatank58\" title=\"Code\">π»</a></td>\n <td align=\"center\"><a href=\"https://github.com/feralheart\"><img src=\"https://avatars.githubusercontent.com/u/3487559?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Feralheart</b></sub></a><br /><a href=\"https://github.com/sapphiredev/framework/commits?author=feralheart\" title=\"Code\">π»</a></td>\n </tr>\n</table>\n\n<!-- markdownlint-restore -->\n<!-- prettier-ignore-end -->\n\n<!-- ALL-CONTRIBUTORS-LIST:END -->\n\nThis project follows the [all-contributors](https://github.com/all-contributors/all-contributors) specification. Contributions of any kind welcome!\n\n[discord.js]: https://github.com/discordjs/discord.js\n", + "path": "README.md" + } + } + } + }, + "classes": [ + { + "name": "AliasPiece", + "description": "The piece to be stored in {@link AliasStore} instances.", + "extends": [ + "Piece<O>" + ], + "construct": { + "name": "constructor", + "params": [ + { + "name": "context", + "optional": false, + "type": [ + [ + [ + "PieceContext" + ] + ] + ] + }, + { + "name": "options", + "optional": true, + "type": [ + [ + [ + "AliasPieceOptions" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "AliasPiece", + "<" + ], + [ + "O", + ">" + ] + ] + ], + "meta": { + "line": 691, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + "props": [ + { + "name": "aliases", + "description": "The aliases for the piece.", + "type": [ + [ + [ + "readonly", + " " + ], + [ + "Array", + "<" + ], + [ + "string", + ">" + ] + ] + ], + "meta": { + "line": 690, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "enabled", + "description": "Whether or not the piece is enabled.", + "type": [ + [ + [ + "boolean" + ] + ] + ], + "meta": { + "line": 447, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "location", + "description": "The location metadata for the piece's file.", + "readonly": true, + "type": [ + [ + [ + "PieceLocation" + ] + ] + ], + "meta": { + "line": 439, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "name", + "description": "The name of the piece.", + "readonly": true, + "type": [ + [ + [ + "string" + ] + ] + ], + "meta": { + "line": 443, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "options", + "description": "The raw options passed to this {@link Piece}", + "readonly": true, + "type": [ + [ + [ + "O" + ] + ] + ], + "meta": { + "line": 451, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "store", + "description": "The store that contains the piece.", + "readonly": true, + "type": [ + [ + [ + "Store", + "<" + ], + [ + "Piece", + "<" + ], + [ + "PieceOptions", + ">>" + ] + ] + ], + "meta": { + "line": 435, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "container", + "description": "A reference to the {@link Container} object for ease of use.", + "see": [ + "container" + ], + "readonly": true, + "abstract": false, + "deprecated": false, + "type": [ + [ + [ + "Container" + ] + ] + ], + "meta": { + "line": 457, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + } + ], + "methods": [ + { + "name": "onLoad", + "description": "Per-piece listener that is called when the piece is loaded into the store.\nUseful to set-up asynchronous initialization tasks.", + "returns": [ + [ + [ + "unknown" + ] + ] + ], + "meta": { + "line": 462, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "onUnload", + "description": "Per-piece listener that is called when the piece is unloaded from the store.\nUseful to set-up clean-up tasks.", + "returns": [ + [ + [ + "unknown" + ] + ] + ], + "meta": { + "line": 467, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "reload", + "description": "Reloads the piece by loading the same path in the store.", + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "void", + ">" + ] + ] + ], + "meta": { + "line": 475, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "toJSON", + "description": "Defines the `JSON.stringify` behavior of this alias piece.", + "returns": [ + [ + [ + "AliasPieceJSON" + ] + ] + ], + "meta": { + "line": 695, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "unload", + "description": "Unloads and disables the piece.", + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "void", + ">" + ] + ] + ], + "meta": { + "line": 471, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + } + ], + "meta": { + "line": 686, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + }, + "isExternal": true + }, + { + "name": "AliasStore", + "description": "The store class which contains {@link AliasPiece}s.", + "extends": [ + "Store<T>" + ], + "construct": { + "name": "constructor", + "params": [ + { + "name": "constructor", + "description": "The piece constructor this store loads.", + "optional": false, + "type": [ + [ + [ + "Constructor", + "<" + ], + [ + "T", + ">" + ] + ] + ] + }, + { + "name": "options", + "description": "The options for the store.", + "optional": false, + "type": [ + [ + [ + "StoreOptions", + "<" + ], + [ + "T", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "AliasStore", + "<" + ], + [ + "T", + ">" + ] + ] + ] + }, + "props": [ + { + "name": "Constructor", + "readonly": true, + "type": [ + [ + [ + "Constructor", + "<" + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 281, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "[toStringTag]", + "readonly": true, + "type": [ + [ + [ + "string" + ] + ] + ], + "meta": { + "line": 135, + "file": "lib.es2015.symbol.wellknown.d.ts", + "path": "node_modules/typescript/lib" + } + }, + { + "name": "aliases", + "description": "The aliases referencing to pieces.", + "readonly": true, + "type": [ + [ + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 712, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "constructor", + "type": [ + [ + [ + "CollectionConstructor" + ] + ] + ], + "meta": { + "line": 21, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "name", + "readonly": true, + "type": [ + [ + [ + "string" + ] + ] + ], + "meta": { + "line": 282, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "paths", + "readonly": true, + "type": [ + [ + [ + "Set", + "<" + ], + [ + "string", + ">" + ] + ] + ], + "meta": { + "line": 283, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "size", + "readonly": true, + "type": [ + [ + [ + "number" + ] + ] + ], + "meta": { + "line": 28, + "file": "lib.es2015.collection.d.ts", + "path": "node_modules/typescript/lib" + } + }, + { + "name": "strategy", + "readonly": true, + "type": [ + [ + [ + "ILoaderStrategy", + "<" + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 284, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "[species]", + "scope": "static", + "readonly": true, + "type": [ + [ + [ + "MapConstructor" + ] + ] + ], + "meta": { + "line": 317, + "file": "lib.es2015.symbol.wellknown.d.ts", + "path": "node_modules/typescript/lib" + } + }, + { + "name": "default", + "scope": "static", + "readonly": true, + "type": [ + [ + [ + "(" + ], + [ + "typeof", + " " + ], + [ + "Collection", + ")" + ] + ] + ], + "meta": { + "line": 28, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "defaultStrategy", + "description": "The default strategy, defaults to {@link LoaderStrategy}, which is constructed on demand when a store is constructed,\nwhen none was set beforehand.", + "scope": "static", + "type": [ + [ + [ + "ILoaderStrategy", + "<" + ], + [ + "any", + ">" + ] + ] + ], + "meta": { + "line": 369, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "logger", + "description": "The default logger, defaults to `null`.", + "scope": "static", + "type": [ + [ + [ + "null", + " | " + ], + [ + "StoreLogger" + ] + ] + ], + "meta": { + "line": 373, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "container", + "description": "A reference to the {@link Container} object for ease of use.", + "see": [ + "container" + ], + "readonly": true, + "abstract": false, + "deprecated": false, + "type": [ + [ + [ + "Container" + ] + ] + ], + "meta": { + "line": 294, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + } + ], + "methods": [ + { + "name": "[iterator]", + "description": "Returns an iterable of entries in the map.", + "returns": [ + [ + [ + "IterableIterator", + "<[" + ], + [ + "string", + ", " + ], + [ + "T", + "]>" + ] + ] + ] + }, + { + "name": "at", + "description": "Identical to [Array.at()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/at).\nReturns the item at a given index, allowing for positive and negative integers.\nNegative integers count back from the last item in the collection.", + "params": [ + { + "name": "index", + "description": "The index of the element to obtain", + "optional": false, + "type": [ + [ + [ + "number" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "T" + ] + ] + ], + "meta": { + "line": 101, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "clear", + "returns": [ + [ + [ + "void" + ] + ] + ] + }, + { + "name": "clone", + "description": "Creates an identical shallow copy of this collection.", + "see": [], + "examples": [ + "const newColl = someColl.clone();" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 320, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "concat", + "description": "Combines this collection with others into a new collection. None of the source collections are modified.", + "see": [], + "examples": [ + "const newColl = someColl.concat(someOtherColl, anotherColl, ohBoyAColl);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "collections", + "description": "Collections to merge", + "optional": false, + "type": [ + [ + [ + "Array", + "<" + ], + [ + "ReadonlyCollection", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">>" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 329, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "construct", + "description": "Constructs a {@link Piece} instance.", + "params": [ + { + "name": "Ctor", + "description": "The {@link Piece}'s constructor used to build the instance.", + "optional": false, + "type": [ + [ + [ + "ILoaderResultEntry", + "<" + ], + [ + "T", + ">" + ] + ] + ] + }, + { + "name": "data", + "description": "The module's information", + "optional": false, + "type": [ + [ + [ + "HydratedModuleData" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "T" + ] + ] + ], + "returnsDescription": "An instance of the constructed piece.", + "meta": { + "line": 345, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "delete", + "params": [ + { + "name": "key", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "boolean" + ] + ] + ] + }, + { + "name": "difference", + "description": "The difference method returns a new structure containing items where the key is present in one of the original structures but not the other.", + "params": [ + { + "name": "other", + "description": "The other Collection to filter against", + "optional": false, + "type": [ + [ + [ + "ReadonlyCollection", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + " | " + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 363, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "each", + "description": "Identical to\n[Map.forEach()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map/forEach),\nbut returns the collection instead of undefined.", + "see": [], + "examples": [ + "collection\n .each(user => console.log(user.username))\n .filter(user => user.bot)\n .each(user => console.log(user.username));" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function to execute for each element", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "T", + ", " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "AliasStore", + "<" + ], + [ + "T", + ">) => " + ], + [ + "void" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "AliasStore", + "<" + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 298, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "ensure", + "description": "Obtains the value of the given key if it exists, otherwise sets and returns the value provided by the default value generator.", + "see": [], + "examples": [ + "collection.ensure(guildId, () => defaultGuildConfig);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "key", + "description": "The key to get if it exists, or set otherwise", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "defaultValueGenerator", + "description": "A function that generates the default value", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "AliasStore", + "<" + ], + [ + "T", + ">) => " + ], + [ + "T" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "T" + ] + ] + ], + "meta": { + "line": 38, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "entries", + "description": "Returns an iterable of key, value pairs for every entry in the map.", + "returns": [ + [ + [ + "IterableIterator", + "<[" + ], + [ + "string", + ", " + ], + [ + "T", + "]>" + ] + ] + ] + }, + { + "name": "equals", + "description": "Checks if this collection shares identical items with another.\nThis is different to checking for equality using equal-signs, because\nthe collections may be different objects, but contain the same data.", + "params": [ + { + "name": "collection", + "description": "Collection to compare with", + "optional": false, + "type": [ + [ + [ + "ReadonlyCollection", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "boolean" + ] + ] + ], + "returnsDescription": "Whether the collections have identical contents", + "meta": { + "line": 339, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "every", + "description": "Checks if all items passes a test. Identical in behavior to\n[Array.every()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/every).", + "see": [], + "examples": [ + "collection.every(user => !user.bot);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function used to test (should return a boolean)", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "T", + ", " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "AliasStore", + "<" + ], + [ + "T", + ">) => " + ], + [ + "key", + " " + ], + [ + "is", + " " + ], + [ + "K2" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "this", + " " + ], + [ + "is", + " " + ], + [ + "Collection", + "<" + ], + [ + "K2", + ", " + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 266, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "filter", + "description": "Identical to\n[Array.filter()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/filter),\nbut returns a Collection instead of an Array.", + "see": [], + "examples": [ + "collection.filter(user => user.username === 'Bob');" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "The function to test with (should return boolean)", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "T", + ", " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "AliasStore", + "<" + ], + [ + "T", + ">) => " + ], + [ + "key", + " " + ], + [ + "is", + " " + ], + [ + "K2" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "K2", + ", " + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 186, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "find", + "description": "Searches for a single item where the given function returns a truthy value. This behaves like\n[Array.find()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/find).\n<warn>All collections used in Discord.js are mapped using their `id` property, and if you want to find by id you\nshould use the `get` method. See\n[MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map/get) for details.</warn>", + "see": [], + "examples": [ + "collection.find(user => user.username === 'Bob');" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "The function to test with (should return boolean)", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "T", + ", " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "AliasStore", + "<" + ], + [ + "T", + ">) => " + ], + [ + "value", + " " + ], + [ + "is", + " " + ], + [ + "V2" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "V2" + ] + ] + ], + "meta": { + "line": 146, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "findKey", + "description": "Searches for the key of a single item where the given function returns a truthy value. This behaves like\n[Array.findIndex()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/findIndex),\nbut returns the key rather than the positional index.", + "see": [], + "examples": [ + "collection.findKey(user => user.username === 'Bob');" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "The function to test with (should return boolean)", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "T", + ", " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "AliasStore", + "<" + ], + [ + "T", + ">) => " + ], + [ + "key", + " " + ], + [ + "is", + " " + ], + [ + "K2" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "K2" + ] + ] + ], + "meta": { + "line": 161, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "first", + "description": "Obtains the first value(s) in this collection.", + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "T" + ] + ] + ], + "returnsDescription": "A single value if no amount is provided or an array of values, starting from the end if amount is negative", + "meta": { + "line": 62, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "firstKey", + "description": "Obtains the first key(s) in this collection.", + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "string" + ] + ] + ], + "returnsDescription": "A single key if no amount is provided or an array of keys, starting from the end if\namount is negative", + "meta": { + "line": 72, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "flatMap", + "description": "Maps each item into a Collection, then joins the results into a single Collection. Identical in behavior to\n[Array.flatMap()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/flatMap).", + "see": [], + "examples": [ + "collection.flatMap(guild => guild.members.cache);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function that produces a new Collection", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "T", + ", " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "AliasStore", + "<" + ], + [ + "T", + ">) => " + ], + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 218, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "forEach", + "params": [ + { + "name": "callbackfn", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "T", + ", " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "map", + ": " + ], + [ + "Map", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">) => " + ], + [ + "void" + ] + ] + ] + }, + { + "name": "thisArg", + "optional": true, + "type": [ + [ + [ + "any" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "void" + ] + ] + ] + }, + { + "name": "get", + "description": "Looks up the name by the store, falling back to an alias lookup.", + "params": [ + { + "name": "key", + "description": "The key to look for.", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "T" + ] + ] + ], + "meta": { + "line": 717, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "has", + "description": "Checks whether a key is in the store, or is an alias", + "params": [ + { + "name": "key", + "description": "The key to check", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "boolean" + ] + ] + ], + "meta": { + "line": 722, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "hasAll", + "description": "Checks if all of the elements exist in the collection.", + "params": [ + { + "name": "keys", + "description": "The keys of the elements to check for", + "optional": false, + "type": [ + [ + [ + "Array", + "<" + ], + [ + "string", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "boolean" + ] + ] + ], + "returnsDescription": "`true` if all of the elements exist, `false` if at least one does not exist.", + "meta": { + "line": 46, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "hasAny", + "description": "Checks if any of the elements exist in the collection.", + "params": [ + { + "name": "keys", + "description": "The keys of the elements to check for", + "optional": false, + "type": [ + [ + [ + "Array", + "<" + ], + [ + "string", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "boolean" + ] + ] + ], + "returnsDescription": "`true` if any of the elements exist, `false` if none exist.", + "meta": { + "line": 54, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "insert", + "description": "Inserts a piece into the store, and adds all the aliases.", + "params": [ + { + "name": "piece", + "description": "The piece to be inserted into the store.", + "optional": false, + "type": [ + [ + [ + "T" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "T", + ">" + ] + ] + ], + "returnsDescription": "The inserted piece.", + "meta": { + "line": 734, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "intersect", + "description": "The intersect method returns a new structure containing items where the keys and values are present in both original structures.", + "params": [ + { + "name": "other", + "description": "The other Collection to filter against", + "optional": false, + "type": [ + [ + [ + "ReadonlyCollection", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 357, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "keyAt", + "description": "Identical to [Array.at()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/at).\nReturns the key at a given index, allowing for positive and negative integers.\nNegative integers count back from the last item in the collection.", + "params": [ + { + "name": "index", + "description": "The index of the key to obtain", + "optional": false, + "type": [ + [ + [ + "number" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "string" + ] + ] + ], + "meta": { + "line": 109, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "keys", + "description": "Returns an iterable of keys in the map", + "returns": [ + [ + [ + "IterableIterator", + "<" + ], + [ + "string", + ">" + ] + ] + ] + }, + { + "name": "last", + "description": "Obtains the last value(s) in this collection.", + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "T" + ] + ] + ], + "returnsDescription": "A single value if no amount is provided or an array of values, starting from the start if\namount is negative", + "meta": { + "line": 82, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "lastKey", + "description": "Obtains the last key(s) in this collection.", + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "string" + ] + ] + ], + "returnsDescription": "A single key if no amount is provided or an array of keys, starting from the start if\namount is negative", + "meta": { + "line": 92, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "load", + "description": "Loads one or more pieces from a path.", + "params": [ + { + "name": "root", + "description": "The root directory the file is from.", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "path", + "description": "The path of the file to load, relative to the `root`.", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "Array", + "<" + ], + [ + "T", + ">>" + ] + ] + ], + "returnsDescription": "All the loaded pieces.", + "meta": { + "line": 312, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "loadAll", + "description": "Loads all pieces from all directories specified by {@link paths}.", + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "void", + ">" + ] + ] + ], + "meta": { + "line": 326, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "map", + "description": "Maps each item to another value into an array. Identical in behavior to\n[Array.map()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/map).", + "see": [], + "examples": [ + "collection.map(user => user.tag);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function that produces an element of the new array, taking three arguments", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "T", + ", " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "AliasStore", + "<" + ], + [ + "T", + ">) => " + ], + [ + "T" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Array", + "<" + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 230, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "mapValues", + "description": "Maps each item to another value into a collection. Identical in behavior to\n[Array.map()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/map).", + "see": [], + "examples": [ + "collection.mapValues(user => user.tag);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function that produces an element of the new collection, taking three arguments", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "T", + ", " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "AliasStore", + "<" + ], + [ + "T", + ">) => " + ], + [ + "T" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 242, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "partition", + "description": "Partitions the collection into two collections where the first collection\ncontains the items that passed and the second contains the items that failed.", + "see": [], + "examples": [ + "const [big, small] = collection.partition(guild => guild.memberCount > 250);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function used to test (should return a boolean)", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "T", + ", " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "AliasStore", + "<" + ], + [ + "T", + ">) => " + ], + [ + "key", + " " + ], + [ + "is", + " " + ], + [ + "K2" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "[" + ], + [ + "Collection", + "<" + ], + [ + "K2", + ", " + ], + [ + "T", + ">, " + ], + [ + "Collection", + "<" + ], + [ + "Exclude", + "<" + ], + [ + "string", + ", " + ], + [ + "K2", + ">, " + ], + [ + "T", + ">]" + ] + ] + ], + "meta": { + "line": 202, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "random", + "description": "Obtains unique random value(s) from this collection.", + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "T" + ] + ] + ], + "returnsDescription": "A single value if no amount is provided or an array of values", + "meta": { + "line": 117, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "randomKey", + "description": "Obtains unique random key(s) from this collection.", + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "string" + ] + ] + ], + "returnsDescription": "A single key if no amount is provided or an array", + "meta": { + "line": 126, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "reduce", + "description": "Applies a function to produce a single value. Identical in behavior to\n[Array.reduce()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/reduce).", + "see": [], + "examples": [ + "collection.reduce((acc, guild) => acc + guild.memberCount, 0);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function used to reduce, taking four arguments; `accumulator`, `currentValue`, `currentKey`,\nand `collection`", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "accumulator", + ": " + ], + [ + "T", + ", " + ], + [ + "value", + ": " + ], + [ + "T", + ", " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "AliasStore", + "<" + ], + [ + "T", + ">) => " + ], + [ + "T" + ] + ] + ] + }, + { + "name": "initialValue", + "description": "Starting value for the accumulator", + "optional": true, + "type": [ + [ + [ + "T" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "T" + ] + ] + ], + "meta": { + "line": 283, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "registerPath", + "description": "Registers a directory into the store.", + "see": [], + "examples": [ + "```typescript\nstore\n .registerPath(resolve('commands'))\n .registerPath(resolve('third-party', 'commands'));\n```" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "path", + "description": "The path to be added.", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "AliasStore", + "<" + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 305, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "resolve", + "description": "Resolves a piece by its name or its instance.", + "params": [ + { + "name": "name", + "description": "The name of the piece or the instance itself.", + "optional": false, + "type": [ + [ + [ + "string", + " | " + ], + [ + "T" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "T" + ] + ] + ], + "returnsDescription": "The resolved piece.", + "meta": { + "line": 332, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "reverse", + "description": "Identical to [Array.reverse()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/reverse)\nbut returns a Collection instead of an Array.", + "returns": [ + [ + [ + "AliasStore", + "<" + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 132, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "set", + "params": [ + { + "name": "key", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "value", + "optional": false, + "type": [ + [ + [ + "T" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "AliasStore", + "<" + ], + [ + "T", + ">" + ] + ] + ] + }, + { + "name": "some", + "description": "Checks if there exists an item that passes a test. Identical in behavior to\n[Array.some()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/some).", + "see": [], + "examples": [ + "collection.some(user => user.discriminator === '0000');" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function used to test (should return a boolean)", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "T", + ", " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "AliasStore", + "<" + ], + [ + "T", + ">) => " + ], + [ + "boolean" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "boolean" + ] + ] + ], + "meta": { + "line": 254, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "sort", + "description": "The sort method sorts the items of a collection in place and returns it.\nThe sort is not necessarily stable in Node 10 or older.\nThe default sort order is according to string Unicode code points.", + "see": [], + "examples": [ + "collection.sort((userA, userB) => userA.createdTimestamp - userB.createdTimestamp);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "compareFunction", + "description": "Specifies a function that defines the sort order.\nIf omitted, the collection is sorted according to each character's Unicode code point value, according to the string conversion of each element.", + "optional": true, + "type": [ + [ + [ + "Comparator", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "AliasStore", + "<" + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 351, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "sorted", + "description": "The sorted method sorts the items of a collection and returns it.\nThe sort is not necessarily stable in Node 10 or older.\nThe default sort order is according to string Unicode code points.", + "see": [], + "examples": [ + "collection.sorted((userA, userB) => userA.createdTimestamp - userB.createdTimestamp);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "compareFunction", + "description": "Specifies a function that defines the sort order.\nIf omitted, the collection is sorted according to each character's Unicode code point value,\naccording to the string conversion of each element.", + "optional": true, + "type": [ + [ + [ + "Comparator", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 376, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "sweep", + "description": "Removes items that satisfy the provided filter function.", + "params": [ + { + "name": "fn", + "description": "Function used to test (should return a boolean)", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "T", + ", " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "AliasStore", + "<" + ], + [ + "T", + ">) => " + ], + [ + "boolean" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "number" + ] + ] + ], + "returnsDescription": "The number of removed entries", + "meta": { + "line": 173, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "tap", + "description": "Runs a function on the collection and returns the collection.", + "see": [], + "examples": [ + "collection\n .tap(coll => console.log(coll.size))\n .filter(user => user.bot)\n .tap(coll => console.log(coll.size))" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function to execute", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "collection", + ": " + ], + [ + "AliasStore", + "<" + ], + [ + "T", + ">) => " + ], + [ + "void" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "AliasStore", + "<" + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 312, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "toJSON", + "returns": [ + [ + [ + "Array", + "<" + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 377, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "unload", + "description": "Unloads a piece given its instance or its name, and removes all the aliases.", + "params": [ + { + "name": "name", + "description": "The name of the file to load.", + "optional": false, + "type": [ + [ + [ + "string", + " | " + ], + [ + "T" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "T", + ">" + ] + ] + ], + "returnsDescription": "Returns the piece that was unloaded.", + "meta": { + "line": 728, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "unloadAll", + "description": "Unloads all pieces from the store.", + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "Array", + "<" + ], + [ + "T", + ">>" + ] + ] + ], + "meta": { + "line": 322, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "values", + "description": "Returns an iterable of values in the map", + "returns": [ + [ + [ + "IterableIterator", + "<" + ], + [ + "T", + ">" + ] + ] + ] + } + ], + "meta": { + "line": 708, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + }, + "isExternal": true + }, + { + "name": "AllFlowsPrecondition", + "extends": [ + "Precondition" + ], + "construct": { + "name": "constructor", + "params": [ + { + "name": "context", + "optional": false, + "type": [ + [ + [ + "PieceContext" + ] + ] + ] + }, + { + "name": "options", + "optional": true, + "default": "{}", + "type": [ + [ + [ + "PreconditionOptions" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "AllFlowsPrecondition" + ] + ] + ] + }, + "props": [ + { + "name": "enabled", + "description": "Whether or not the piece is enabled.", + "type": [ + [ + [ + "boolean" + ] + ] + ], + "meta": { + "line": 447, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "location", + "description": "The location metadata for the piece's file.", + "readonly": true, + "type": [ + [ + [ + "PieceLocation" + ] + ] + ], + "meta": { + "line": 439, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "name", + "description": "The name of the piece.", + "readonly": true, + "type": [ + [ + [ + "string" + ] + ] + ], + "meta": { + "line": 443, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "options", + "description": "The raw options passed to this {@link Piece}", + "readonly": true, + "type": [ + [ + [ + "PreconditionOptions" + ] + ] + ], + "meta": { + "line": 451, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "position", + "readonly": true, + "type": [ + [ + [ + "null", + " | " + ], + [ + "number" + ] + ] + ], + "meta": { + "line": 14, + "file": "Precondition.ts", + "path": "src/lib/structures" + } + }, + { + "name": "store", + "description": "The store that contains the piece.", + "readonly": true, + "type": [ + [ + [ + "Store", + "<" + ], + [ + "Piece", + "<" + ], + [ + "PieceOptions", + ">>" + ] + ] + ], + "meta": { + "line": 435, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "container", + "description": "A reference to the {@link Container} object for ease of use.", + "see": [ + "container" + ], + "readonly": true, + "abstract": false, + "deprecated": false, + "type": [ + [ + [ + "Container" + ] + ] + ], + "meta": { + "line": 457, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + } + ], + "methods": [ + { + "name": "chatInputRun", + "params": [ + { + "name": "interaction", + "optional": false, + "type": [ + [ + [ + "CommandInteraction", + "<" + ], + [ + "CacheType", + ">" + ] + ] + ] + }, + { + "name": "command", + "optional": false, + "type": [ + [ + [ + "ChatInputCommand" + ] + ] + ] + }, + { + "name": "context", + "optional": false, + "type": [ + [ + [ + "PreconditionContext" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "PreconditionResult" + ] + ] + ], + "meta": { + "line": 52, + "file": "Precondition.ts", + "path": "src/lib/structures" + } + }, + { + "name": "contextMenuRun", + "params": [ + { + "name": "interaction", + "optional": false, + "type": [ + [ + [ + "ContextMenuInteraction", + "<" + ], + [ + "CacheType", + ">" + ] + ] + ] + }, + { + "name": "command", + "optional": false, + "type": [ + [ + [ + "ContextMenuCommand" + ] + ] + ] + }, + { + "name": "context", + "optional": false, + "type": [ + [ + [ + "PreconditionContext" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "PreconditionResult" + ] + ] + ], + "meta": { + "line": 54, + "file": "Precondition.ts", + "path": "src/lib/structures" + } + }, + { + "name": "error", + "description": "Constructs a {@link PreconditionError} with the precondition parameter set to `this`.", + "params": [ + { + "name": "options", + "description": "The information.", + "optional": true, + "default": "{}", + "type": [ + [ + [ + "Omit", + "<" + ], + [ + "Options", + ", " + ], + [ + "'precondition'", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "PreconditionResult" + ] + ] + ], + "meta": { + "line": 35, + "file": "Precondition.ts", + "path": "src/lib/structures" + } + }, + { + "name": "fetchChannelFromInteraction", + "params": [ + { + "name": "interaction", + "optional": false, + "type": [ + [ + [ + "BaseCommandInteraction", + "<" + ], + [ + "CacheType", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "TextBasedChannel", + ">" + ] + ] + ], + "meta": { + "line": 39, + "file": "Precondition.ts", + "path": "src/lib/structures" + } + }, + { + "name": "messageRun", + "params": [ + { + "name": "message", + "optional": false, + "type": [ + [ + [ + "Message", + "<" + ], + [ + "boolean", + ">" + ] + ] + ] + }, + { + "name": "command", + "optional": false, + "type": [ + [ + [ + "MessageCommand" + ] + ] + ] + }, + { + "name": "context", + "optional": false, + "type": [ + [ + [ + "PreconditionContext" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "PreconditionResult" + ] + ] + ], + "meta": { + "line": 50, + "file": "Precondition.ts", + "path": "src/lib/structures" + } + }, + { + "name": "ok", + "returns": [ + [ + [ + "PreconditionResult" + ] + ] + ], + "meta": { + "line": 27, + "file": "Precondition.ts", + "path": "src/lib/structures" + } + }, + { + "name": "onLoad", + "description": "Per-piece listener that is called when the piece is loaded into the store.\nUseful to set-up asynchronous initialization tasks.", + "returns": [ + [ + [ + "unknown" + ] + ] + ], + "meta": { + "line": 462, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "onUnload", + "description": "Per-piece listener that is called when the piece is unloaded from the store.\nUseful to set-up clean-up tasks.", + "returns": [ + [ + [ + "unknown" + ] + ] + ], + "meta": { + "line": 467, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "reload", + "description": "Reloads the piece by loading the same path in the store.", + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "void", + ">" + ] + ] + ], + "meta": { + "line": 475, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "toJSON", + "description": "Defines the `JSON.stringify` behavior of this piece.", + "returns": [ + [ + [ + "PieceJSON" + ] + ] + ], + "meta": { + "line": 479, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "unload", + "description": "Unloads and disables the piece.", + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "void", + ">" + ] + ] + ], + "meta": { + "line": 471, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + } + ], + "meta": { + "line": 49, + "file": "Precondition.ts", + "path": "src/lib/structures" + } + }, + { + "name": "ApplicationCommandRegistry", + "construct": { + "name": "constructor", + "params": [ + { + "name": "commandName", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "ApplicationCommandRegistry" + ] + ] + ], + "meta": { + "line": 35, + "file": "ApplicationCommandRegistry.ts", + "path": "src/lib/utils/application-commands" + } + }, + "props": [ + { + "name": "apiCalls", + "access": "private", + "readonly": true, + "default": "[]", + "type": [ + [ + [ + "Array", + "<" + ], + [ + "InternalAPICall", + ">" + ] + ] + ], + "meta": { + "line": 33, + "file": "ApplicationCommandRegistry.ts", + "path": "src/lib/utils/application-commands" + } + }, + { + "name": "chatInputCommands", + "readonly": true, + "type": [ + [ + [ + "Set", + "<" + ], + [ + "string", + ">" + ] + ] + ], + "meta": { + "line": 30, + "file": "ApplicationCommandRegistry.ts", + "path": "src/lib/utils/application-commands" + } + }, + { + "name": "commandName", + "readonly": true, + "type": [ + [ + [ + "string" + ] + ] + ], + "meta": { + "line": 28, + "file": "ApplicationCommandRegistry.ts", + "path": "src/lib/utils/application-commands" + } + }, + { + "name": "contextMenuCommands", + "readonly": true, + "type": [ + [ + [ + "Set", + "<" + ], + [ + "string", + ">" + ] + ] + ], + "meta": { + "line": 31, + "file": "ApplicationCommandRegistry.ts", + "path": "src/lib/utils/application-commands" + } + }, + { + "name": "command", + "readonly": true, + "type": [ + [ + [ + "undefined", + " | " + ], + [ + "Command", + "<" + ], + [ + "Args", + ", " + ], + [ + "CommandOptions", + ">" + ] + ] + ], + "meta": { + "line": 39, + "file": "ApplicationCommandRegistry.ts", + "path": "src/lib/utils/application-commands" + } + } + ], + "methods": [ + { + "name": "addChatInputCommandIds", + "params": [ + { + "name": "commandIds", + "optional": false, + "type": [ + [ + [ + "Array", + "<" + ], + [ + "string", + "> | " + ], + [ + "Array", + "<" + ], + [ + "Array", + "<" + ], + [ + "string", + ">>" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "ApplicationCommandRegistry" + ] + ] + ], + "meta": { + "line": 135, + "file": "ApplicationCommandRegistry.ts", + "path": "src/lib/utils/application-commands" + } + }, + { + "name": "addChatInputCommandNames", + "params": [ + { + "name": "names", + "optional": false, + "type": [ + [ + [ + "Array", + "<" + ], + [ + "string", + "> | " + ], + [ + "Array", + "<" + ], + [ + "Array", + "<" + ], + [ + "string", + ">>" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "ApplicationCommandRegistry" + ] + ] + ], + "meta": { + "line": 105, + "file": "ApplicationCommandRegistry.ts", + "path": "src/lib/utils/application-commands" + } + }, + { + "name": "addContextMenuCommandIds", + "params": [ + { + "name": "commandIds", + "optional": false, + "type": [ + [ + [ + "Array", + "<" + ], + [ + "string", + "> | " + ], + [ + "Array", + "<" + ], + [ + "Array", + "<" + ], + [ + "string", + ">>" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "ApplicationCommandRegistry" + ] + ] + ], + "meta": { + "line": 156, + "file": "ApplicationCommandRegistry.ts", + "path": "src/lib/utils/application-commands" + } + }, + { + "name": "addContextMenuCommandNames", + "params": [ + { + "name": "names", + "optional": false, + "type": [ + [ + [ + "Array", + "<" + ], + [ + "string", + "> | " + ], + [ + "Array", + "<" + ], + [ + "Array", + "<" + ], + [ + "string", + ">>" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "ApplicationCommandRegistry" + ] + ] + ], + "meta": { + "line": 120, + "file": "ApplicationCommandRegistry.ts", + "path": "src/lib/utils/application-commands" + } + }, + { + "name": "createMissingCommand", + "access": "private", + "params": [ + { + "name": "commandsManager", + "optional": false, + "type": [ + [ + [ + "ApplicationCommandManager", + "<" + ], + [ + "ApplicationCommand", + "<{" + ], + [ + "\nguild", + ": " + ], + [ + "GuildResolvable\n", + "}>, {" + ], + [ + "\nguild", + ": " + ], + [ + "GuildResolvable\n", + "}, " + ], + [ + "null", + ">" + ] + ] + ] + }, + { + "name": "apiData", + "optional": false, + "type": [ + [ + [ + "RESTPostAPIChatInputApplicationCommandsJSONBody", + " | " + ], + [ + "RESTPostAPIContextMenuApplicationCommandsJSONBody" + ] + ] + ] + }, + { + "name": "type", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "guildId", + "optional": true, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "void", + ">" + ] + ] + ], + "meta": { + "line": 401, + "file": "ApplicationCommandRegistry.ts", + "path": "src/lib/utils/application-commands" + } + }, + { + "name": "debug", + "access": "private", + "params": [ + { + "name": "message", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "other", + "optional": false, + "type": [ + [ + [ + "Array", + "<" + ], + [ + "unknown", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "void" + ] + ] + ], + "meta": { + "line": 448, + "file": "ApplicationCommandRegistry.ts", + "path": "src/lib/utils/application-commands" + } + }, + { + "name": "error", + "access": "private", + "params": [ + { + "name": "message", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "other", + "optional": false, + "type": [ + [ + [ + "Array", + "<" + ], + [ + "unknown", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "void" + ] + ] + ], + "meta": { + "line": 440, + "file": "ApplicationCommandRegistry.ts", + "path": "src/lib/utils/application-commands" + } + }, + { + "name": "handleAPICall", + "access": "private", + "params": [ + { + "name": "commandsManager", + "optional": false, + "type": [ + [ + [ + "ApplicationCommandManager", + "<" + ], + [ + "ApplicationCommand", + "<{" + ], + [ + "\nguild", + ": " + ], + [ + "GuildResolvable\n", + "}>, {" + ], + [ + "\nguild", + ": " + ], + [ + "GuildResolvable\n", + "}, " + ], + [ + "null", + ">" + ] + ] + ] + }, + { + "name": "globalCommands", + "optional": false, + "type": [ + [ + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "ApplicationCommand", + "<{}>>" + ] + ] + ] + }, + { + "name": "allGuildsCommands", + "optional": false, + "type": [ + [ + [ + "Map", + "<" + ], + [ + "string", + ", " + ], + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "ApplicationCommand", + "<{}>>>" + ] + ] + ] + }, + { + "name": "apiCall", + "optional": false, + "type": [ + [ + [ + "InternalAPICall" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "void", + ">" + ] + ] + ], + "meta": { + "line": 223, + "file": "ApplicationCommandRegistry.ts", + "path": "src/lib/utils/application-commands" + } + }, + { + "name": "handleCommandPresent", + "access": "private", + "params": [ + { + "name": "applicationCommand", + "optional": false, + "type": [ + [ + [ + "ApplicationCommand", + "<{}>" + ] + ] + ] + }, + { + "name": "apiData", + "optional": false, + "type": [ + [ + [ + "RESTPostAPIChatInputApplicationCommandsJSONBody", + " | " + ], + [ + "RESTPostAPIContextMenuApplicationCommandsJSONBody" + ] + ] + ] + }, + { + "name": "behaviorIfNotEqual", + "optional": false, + "type": [ + [ + [ + "RegisterBehavior" + ] + ] + ] + }, + { + "name": "guildId", + "optional": true, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "void", + ">" + ] + ] + ], + "meta": { + "line": 341, + "file": "ApplicationCommandRegistry.ts", + "path": "src/lib/utils/application-commands" + } + }, + { + "name": "info", + "access": "private", + "params": [ + { + "name": "message", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "other", + "optional": false, + "type": [ + [ + [ + "Array", + "<" + ], + [ + "unknown", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "void" + ] + ] + ], + "meta": { + "line": 436, + "file": "ApplicationCommandRegistry.ts", + "path": "src/lib/utils/application-commands" + } + }, + { + "name": "logCommandDifferences", + "access": "private", + "params": [ + { + "name": "differences", + "optional": false, + "type": [ + [ + [ + "Array", + "<" + ], + [ + "CommandDifference", + ">" + ] + ] + ] + }, + { + "name": "applicationCommand", + "optional": false, + "type": [ + [ + [ + "ApplicationCommand", + "<{}>" + ] + ] + ] + }, + { + "name": "logAsWarn", + "optional": false, + "type": [ + [ + [ + "boolean" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "void" + ] + ] + ], + "meta": { + "line": 381, + "file": "ApplicationCommandRegistry.ts", + "path": "src/lib/utils/application-commands" + } + }, + { + "name": "registerChatInputCommand", + "params": [ + { + "name": "command", + "optional": false, + "type": [ + [ + [ + "ChatInputApplicationCommandData", + " | " + ], + [ + "SlashCommandBuilder", + " | " + ], + [ + "SlashCommandSubcommandsOnlyBuilder", + " | " + ], + [ + "SlashCommandOptionsOnlyBuilder", + " | " + ], + [ + "Omit", + "<" + ], + [ + "SlashCommandBuilder", + ", " + ], + [ + "'addSubcommand'", + " | " + ], + [ + "'addSubcommandGroup'", + "> | (" + ], + [ + "builder", + ": " + ], + [ + "SlashCommandBuilder", + ") => " + ], + [ + "SlashCommandBuilder", + " | " + ], + [ + "SlashCommandSubcommandsOnlyBuilder", + " | " + ], + [ + "SlashCommandOptionsOnlyBuilder", + " | " + ], + [ + "Omit", + "<" + ], + [ + "SlashCommandBuilder", + ", " + ], + [ + "'addSubcommand'", + " | " + ], + [ + "'addSubcommandGroup'", + ">" + ] + ] + ] + }, + { + "name": "options", + "optional": true, + "type": [ + [ + [ + "RegisterOptions" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "ApplicationCommandRegistry" + ] + ] + ], + "meta": { + "line": 43, + "file": "ApplicationCommandRegistry.ts", + "path": "src/lib/utils/application-commands" + } + }, + { + "name": "registerContextMenuCommand", + "params": [ + { + "name": "command", + "optional": false, + "type": [ + [ + [ + "UserApplicationCommandData", + " | " + ], + [ + "MessageApplicationCommandData", + " | " + ], + [ + "ContextMenuCommandBuilder", + " | (" + ], + [ + "builder", + ": " + ], + [ + "ContextMenuCommandBuilder", + ") => " + ], + [ + "ContextMenuCommandBuilder" + ] + ] + ] + }, + { + "name": "options", + "optional": true, + "type": [ + [ + [ + "RegisterOptions" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "ApplicationCommandRegistry" + ] + ] + ], + "meta": { + "line": 78, + "file": "ApplicationCommandRegistry.ts", + "path": "src/lib/utils/application-commands" + } + }, + { + "name": "runAPICalls", + "params": [ + { + "name": "applicationCommands", + "optional": false, + "type": [ + [ + [ + "ApplicationCommandManager", + "<" + ], + [ + "ApplicationCommand", + "<{" + ], + [ + "\nguild", + ": " + ], + [ + "GuildResolvable\n", + "}>, {" + ], + [ + "\nguild", + ": " + ], + [ + "GuildResolvable\n", + "}, " + ], + [ + "null", + ">" + ] + ] + ] + }, + { + "name": "globalCommands", + "optional": false, + "type": [ + [ + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "ApplicationCommand", + "<{}>>" + ] + ] + ] + }, + { + "name": "guildCommands", + "optional": false, + "type": [ + [ + [ + "Map", + "<" + ], + [ + "string", + ", " + ], + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "ApplicationCommand", + "<{}>>>" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "void", + ">" + ] + ] + ], + "meta": { + "line": 177, + "file": "ApplicationCommandRegistry.ts", + "path": "src/lib/utils/application-commands" + } + }, + { + "name": "trace", + "access": "private", + "params": [ + { + "name": "message", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "other", + "optional": false, + "type": [ + [ + [ + "Array", + "<" + ], + [ + "unknown", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "void" + ] + ] + ], + "meta": { + "line": 452, + "file": "ApplicationCommandRegistry.ts", + "path": "src/lib/utils/application-commands" + } + }, + { + "name": "warn", + "access": "private", + "params": [ + { + "name": "message", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "other", + "optional": false, + "type": [ + [ + [ + "Array", + "<" + ], + [ + "unknown", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "void" + ] + ] + ], + "meta": { + "line": 444, + "file": "ApplicationCommandRegistry.ts", + "path": "src/lib/utils/application-commands" + } + } + ], + "meta": { + "line": 27, + "file": "ApplicationCommandRegistry.ts", + "path": "src/lib/utils/application-commands" + } + }, + { + "name": "Args", + "description": "The argument parser to be used in {@link Command}.", + "construct": { + "name": "constructor", + "params": [ + { + "name": "message", + "optional": false, + "type": [ + [ + [ + "Message", + "<" + ], + [ + "boolean", + ">" + ] + ] + ] + }, + { + "name": "command", + "optional": false, + "type": [ + [ + [ + "MessageCommand" + ] + ] + ] + }, + { + "name": "parser", + "optional": false, + "type": [ + [ + [ + "Args" + ] + ] + ] + }, + { + "name": "context", + "optional": false, + "type": [ + [ + [ + "MessageCommandContext" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Args" + ] + ] + ], + "meta": { + "line": 57, + "file": "Args.ts", + "path": "src/lib/parsers" + } + }, + "props": [ + { + "name": "command", + "description": "The command that is being run.", + "readonly": true, + "type": [ + [ + [ + "MessageCommand" + ] + ] + ], + "meta": { + "line": 38, + "file": "Args.ts", + "path": "src/lib/parsers" + } + }, + { + "name": "commandContext", + "description": "The context of the command being run.", + "readonly": true, + "type": [ + [ + [ + "MessageCommandContext" + ] + ] + ], + "meta": { + "line": 43, + "file": "Args.ts", + "path": "src/lib/parsers" + } + }, + { + "name": "message", + "description": "The original message that triggered the command.", + "readonly": true, + "type": [ + [ + [ + "Message", + "<" + ], + [ + "boolean", + ">" + ] + ] + ], + "meta": { + "line": 33, + "file": "Args.ts", + "path": "src/lib/parsers" + } + }, + { + "name": "parser", + "description": "The internal Lexure parser.", + "readonly": true, + "type": [ + [ + [ + "Args" + ] + ] + ], + "meta": { + "line": 48, + "file": "Args.ts", + "path": "src/lib/parsers" + } + }, + { + "name": "states", + "description": "The states stored in the args.", + "see": [ + "Args#save", + "Args#restore" + ], + "access": "private", + "readonly": true, + "abstract": false, + "deprecated": false, + "default": "[]", + "type": [ + [ + [ + "Array", + "<" + ], + [ + "ArgsState", + ">" + ] + ] + ], + "meta": { + "line": 55, + "file": "Args.ts", + "path": "src/lib/parsers" + } + }, + { + "name": "finished", + "description": "Whether all arguments have been consumed.", + "readonly": true, + "type": [ + [ + [ + "boolean" + ] + ] + ], + "meta": { + "line": 633, + "file": "Args.ts", + "path": "src/lib/parsers" + } + } + ], + "methods": [ + { + "name": "getFlags", + "description": "Checks if one or more flag were given.", + "see": [], + "examples": [ + "```typescript\n// Suppose args are from '--f --g'.\nconsole.log(args.getFlags('f'));\n// >>> true\n\nconsole.log(args.getFlags('g', 'h'));\n// >>> true\n\nconsole.log(args.getFlags('h'));\n// >>> false\n```" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "keys", + "description": "The name(s) of the flag.", + "optional": false, + "type": [ + [ + [ + "readonly", + " " + ], + [ + "Array", + "<" + ], + [ + "string", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "boolean" + ] + ] + ], + "meta": { + "line": 570, + "file": "Args.ts", + "path": "src/lib/parsers" + } + }, + { + "name": "getOption", + "description": "Gets the last value of one or more options.", + "see": [], + "examples": [ + "```typescript\n// Suppose args are from '--a=1 --b=2 --c=3'.\nconsole.log(args.getOption('a'));\n// >>> '1'\n\nconsole.log(args.getOption('b', 'c'));\n// >>> '2'\n\nconsole.log(args.getOption('d'));\n// >>> null\n```" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "keys", + "description": "The name(s) of the option.", + "optional": false, + "type": [ + [ + [ + "readonly", + " " + ], + [ + "Array", + "<" + ], + [ + "string", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "null", + " | " + ], + [ + "string" + ] + ] + ], + "meta": { + "line": 590, + "file": "Args.ts", + "path": "src/lib/parsers" + } + }, + { + "name": "getOptions", + "description": "Gets all the values of one or more option.", + "see": [], + "examples": [ + "```typescript\n// Suppose args are from '--a=1 --a=1 --b=2 --c=3'.\nconsole.log(args.getOptions('a'));\n// >>> ['1', '1']\n\nconsole.log(args.getOptions('b', 'c'));\n// >>> ['2', '3']\n\nconsole.log(args.getOptions('d'));\n// >>> null\n```" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "keys", + "description": "The name(s) of the option.", + "optional": false, + "type": [ + [ + [ + "readonly", + " " + ], + [ + "Array", + "<" + ], + [ + "string", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "null", + " | " + ], + [ + "Array", + "<" + ], + [ + "string", + ">" + ] + ] + ], + "meta": { + "line": 610, + "file": "Args.ts", + "path": "src/lib/parsers" + } + }, + { + "name": "missingArguments", + "returns": [ + [ + [ + "Err", + "<" + ], + [ + "UserError", + ">" + ] + ] + ], + "meta": { + "line": 655, + "file": "Args.ts", + "path": "src/lib/parsers" + } + }, + { + "name": "next", + "description": "Similar to {@link Args.nextMaybe} but returns the value on success, null otherwise.", + "see": [], + "examples": [ + "```typescript\n// !numbers 1 2 3\n\nconsole.log(args.next());\n// -> '1'\n```" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "returns": [ + [ + [ + "string" + ] + ] + ], + "meta": { + "line": 531, + "file": "Args.ts", + "path": "src/lib/parsers" + } + }, + { + "name": "nextMaybe", + "description": "Retrieves the next raw argument from the parser.", + "see": [], + "examples": [ + "```typescript\n// !numbers 1 2 3\n\nconsole.log(args.nextMaybe());\n// -> { exists: true, value: '1' }\n```" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "returns": [ + [ + [ + "Maybe", + "<" + ], + [ + "string", + ">" + ] + ] + ], + "meta": { + "line": 498, + "file": "Args.ts", + "path": "src/lib/parsers" + } + }, + { + "name": "peek", + "description": "Similar to {@link Args.peekResult} but returns the value on success, throwing otherwise.", + "see": [], + "examples": [ + "```typescript\n// !bigintsumthensquarefirst 25 50 75\nconst resolver = Args.make((arg) => {\n try {\n return ok(BigInt(arg));\n } catch {\n return err(new UserError('InvalidBigInt', 'You must specify a valid number for a bigint.'));\n }\n});\n\nconst peeked = await args.peek(() => args.repeatResult(resolver));\nawait message.channel.send(`Sum: **${peeked.reduce((x, y) => x + y, 0)}**`); // Sum: 150\n\nconst first = await args.pick(resolver);\nawait message.channel.send(`First bigint squared: ${first**2n}`); // First bigint squared: 625\n```" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "type", + "description": "The function, custom argument, or argument name.", + "optional": false, + "type": [ + [ + [ + "(..." + ], + [ + "args", + ": " + ], + [ + "unknown", + "[]) => " + ], + [ + "Result", + "<" + ], + [ + "T", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 442, + "file": "Args.ts", + "path": "src/lib/parsers" + } + }, + { + "name": "peekResult", + "description": "Peeks the following parameter(s) without advancing the parser's state.\nPassing a function as a parameter allows for returning {@link Args.pickResult}, {@link Args.repeatResult},\nor {@link Args.restResult}; otherwise, passing the custom argument or the argument type with options\nwill use {@link Args.pickResult} and only peek a single argument.", + "see": [], + "examples": [ + "```typescript\n// !reversedandscreamfirst hello world\nconst resolver = Args.make((arg) => ok(arg.split('').reverse().join('')));\n\nconst result = await args.peekResult(() => args.repeatResult(resolver));\nif (isOk(result)) await message.channel.send(\n `Reversed ${result.value.length} word(s): ${result.value.join(' ')}`\n); // Reversed 2 word(s): olleh dlrow\n\nconst firstWord = await args.pickResult('string');\nif (isOk(firstWord)) await message.channel.send(firstWord.value.toUpperCase()); // HELLO\n```" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "type", + "description": "The function, custom argument, or argument name.", + "optional": false, + "type": [ + [ + [ + "(..." + ], + [ + "args", + ": " + ], + [ + "unknown", + "[]) => " + ], + [ + "Result", + "<" + ], + [ + "T", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "Result", + "<" + ], + [ + "T", + ", " + ], + [ + "UserError", + ">>" + ] + ] + ], + "meta": { + "line": 368, + "file": "Args.ts", + "path": "src/lib/parsers" + } + }, + { + "name": "pick", + "description": "Similar to {@link Args.pickResult} but returns the value on success, throwing otherwise.", + "see": [], + "examples": [ + "```typescript\n// !square 5\nconst resolver = Args.make((arg) => {\n const parsed = Number(argument);\n if (Number.isNaN(parsed)) return err(new UserError('ArgumentNumberNaN', 'You must write a valid number.'));\n return ok(parsed);\n});\nconst a = await args.pick(resolver);\n\nawait message.channel.send(`The result is: ${a ** 2}!`);\n// Sends \"The result is: 25\"\n```" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "type", + "description": "The type of the argument.", + "optional": false, + "type": [ + [ + [ + "IArgument", + "<" + ], + [ + "T", + ">" + ] + ] + ] + }, + { + "name": "options", + "optional": true, + "type": [ + [ + [ + "ArgOptions" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 150, + "file": "Args.ts", + "path": "src/lib/parsers" + } + }, + { + "name": "pickResult", + "description": "Retrieves the next parameter and parses it. Advances index on success.", + "see": [], + "examples": [ + "```typescript\n// !square 5\nconst resolver = Args.make((arg) => {\n const parsed = Number(argument);\n if (Number.isNaN(parsed)) return err(new UserError('ArgumentNumberNaN', 'You must write a valid number.'));\n return ok(parsed);\n});\nconst a = await args.pickResult(resolver);\nif (!a.success) throw new UserError('ArgumentNumberNaN', 'You must write a valid number.');\n\nawait message.channel.send(`The result is: ${a.value ** 2}!`);\n// Sends \"The result is: 25\"\n```" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "type", + "description": "The type of the argument.", + "optional": false, + "type": [ + [ + [ + "IArgument", + "<" + ], + [ + "T", + ">" + ] + ] + ] + }, + { + "name": "options", + "optional": true, + "type": [ + [ + [ + "ArgOptions" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "Result", + "<" + ], + [ + "T", + ", " + ], + [ + "UserError", + ">>" + ] + ] + ], + "meta": { + "line": 94, + "file": "Args.ts", + "path": "src/lib/parsers" + } + }, + { + "name": "repeat", + "description": "Similar to {@link Args.repeatResult} but returns the value on success, throwing otherwise.", + "see": [], + "examples": [ + "```typescript\n// !reverse-each 2 Hello World!\nconst resolver = Args.make((arg) => ok(arg.split('').reverse()));\nconst result = await args.repeat(resolver, { times: 5 });\nawait message.channel.send(`You have written ${result.length} word(s): ${result.join(' ')}`);\n// Sends \"You have written 2 word(s): Hello World!\"\n```" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "type", + "description": "The type of the argument.", + "optional": false, + "type": [ + [ + [ + "IArgument", + "<" + ], + [ + "T", + ">" + ] + ] + ] + }, + { + "name": "options", + "optional": true, + "type": [ + [ + [ + "RepeatArgOptions" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "Array", + "<" + ], + [ + "T", + ">>" + ] + ] + ], + "meta": { + "line": 329, + "file": "Args.ts", + "path": "src/lib/parsers" + } + }, + { + "name": "repeatResult", + "description": "Retrieves all the following arguments.", + "see": [], + "examples": [ + "```typescript\n// !add 2 Hello World!\nconst resolver = Args.make((arg) => ok(arg.split('').reverse()));\nconst result = await args.repeatResult(resolver, { times: 5 });\nif (!result.success) throw new UserError('CountArgumentError', 'You must write up to 5 words.');\n\nawait message.channel.send(`You have written ${result.value.length} word(s): ${result.value.join(' ')}`);\n// Sends \"You have written 2 word(s): olleH !dlroW\"\n```" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "type", + "description": "The type of the argument.", + "optional": false, + "type": [ + [ + [ + "IArgument", + "<" + ], + [ + "T", + ">" + ] + ] + ] + }, + { + "name": "options", + "optional": true, + "type": [ + [ + [ + "RepeatArgOptions" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "Result", + "<" + ], + [ + "Array", + "<" + ], + [ + "T", + ">, " + ], + [ + "UserError", + ">>" + ] + ] + ], + "meta": { + "line": 269, + "file": "Args.ts", + "path": "src/lib/parsers" + } + }, + { + "name": "resolveArgument", + "description": "Resolves an argument.", + "access": "private", + "params": [ + { + "name": "arg", + "description": "The argument name or {@link IArgument} instance.", + "optional": false, + "type": [ + [ + [ + "keyof", + " " + ], + [ + "ArgType", + " | " + ], + [ + "IArgument", + "<" + ], + [ + "T", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "IArgument", + "<" + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 663, + "file": "Args.ts", + "path": "src/lib/parsers" + } + }, + { + "name": "rest", + "description": "Similar to {@link Args.restResult} but returns the value on success, throwing otherwise.", + "see": [], + "examples": [ + "```typescript\n// !reverse Hello world!\nconst resolver = Args.make((arg) => ok(arg.split('').reverse()));\nconst a = await args.rest(resolver);\nawait message.channel.send(`The reversed value is... ${a}`);\n// Sends \"The reversed value is... !dlrow olleH\"\n```" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "type", + "description": "The type of the argument.", + "optional": false, + "type": [ + [ + [ + "IArgument", + "<" + ], + [ + "T", + ">" + ] + ] + ] + }, + { + "name": "options", + "optional": true, + "type": [ + [ + [ + "ArgOptions" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 235, + "file": "Args.ts", + "path": "src/lib/parsers" + } + }, + { + "name": "restResult", + "description": "Retrieves all the following arguments.", + "see": [], + "examples": [ + "```typescript\n// !reverse Hello world!\nconst resolver = Args.make((arg) => ok(arg.split('').reverse()));\nconst a = await args.restResult(resolver);\nif (!a.success) throw new UserError('AddArgumentError', 'You must write some text.');\n\nawait message.channel.send(`The reversed value is... ${a.value}`);\n// Sends \"The reversed value is... !dlrow olleH\"\n```" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "type", + "description": "The type of the argument.", + "optional": false, + "type": [ + [ + [ + "IArgument", + "<" + ], + [ + "T", + ">" + ] + ] + ] + }, + { + "name": "options", + "optional": true, + "type": [ + [ + [ + "ArgOptions" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "Result", + "<" + ], + [ + "T", + ", " + ], + [ + "UserError", + ">>" + ] + ] + ], + "meta": { + "line": 184, + "file": "Args.ts", + "path": "src/lib/parsers" + } + }, + { + "name": "restore", + "description": "Restores the previously saved state from the stack.", + "see": [ + "Args#save" + ], + "examples": [], + "abstract": false, + "deprecated": false, + "emits": [], + "returns": [ + [ + [ + "void" + ] + ] + ], + "meta": { + "line": 626, + "file": "Args.ts", + "path": "src/lib/parsers" + } + }, + { + "name": "save", + "description": "Saves the current state into the stack following a FILO strategy (first-in, last-out).", + "see": [ + "Args#restore" + ], + "examples": [], + "abstract": false, + "deprecated": false, + "emits": [], + "returns": [ + [ + [ + "void" + ] + ] + ], + "meta": { + "line": 618, + "file": "Args.ts", + "path": "src/lib/parsers" + } + }, + { + "name": "start", + "description": "Sets the parser to the first token.", + "returns": [ + [ + [ + "Args" + ] + ] + ], + "meta": { + "line": 67, + "file": "Args.ts", + "path": "src/lib/parsers" + } + }, + { + "name": "toJSON", + "description": "Defines the `JSON.stringify` override.", + "returns": [ + [ + [ + "{" + ], + [ + "\ncommand", + ": " + ], + [ + "MessageCommand", + "," + ], + [ + "\ncommandContext", + ": " + ], + [ + "MessageCommandContext", + "," + ], + [ + "\nmessage", + ": " + ], + [ + "Message", + "<" + ], + [ + "boolean", + ">" + ], + [ + "\n", + "}" + ] + ] + ], + "meta": { + "line": 640, + "file": "Args.ts", + "path": "src/lib/parsers" + } + }, + { + "name": "unavailableArgument", + "params": [ + { + "name": "type", + "optional": false, + "type": [ + [ + [ + "string", + " | " + ], + [ + "IArgument", + "<" + ], + [ + "T", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Err", + "<" + ], + [ + "UserError", + ">" + ] + ] + ], + "meta": { + "line": 644, + "file": "Args.ts", + "path": "src/lib/parsers" + } + }, + { + "name": "error", + "description": "Constructs an {@link Err} result containing an {@link ArgumentError}.", + "scope": "static", + "params": [ + { + "name": "options", + "description": "The options for the argument error.", + "optional": false, + "type": [ + [ + [ + "Options", + "<" + ], + [ + "T", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Err", + "<" + ], + [ + "ArgumentError", + "<" + ], + [ + "T", + ">>" + ] + ] + ], + "meta": { + "line": 688, + "file": "Args.ts", + "path": "src/lib/parsers" + } + }, + { + "name": "make", + "description": "Converts a callback into an usable argument.", + "scope": "static", + "params": [ + { + "name": "cb", + "description": "The callback to convert into an {@link IArgument}.", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "parameter", + ": " + ], + [ + "string", + ", " + ], + [ + "context", + ": " + ], + [ + "Context", + "<" + ], + [ + "T", + ">) => " + ], + [ + "Result", + "<" + ], + [ + "T", + ">" + ] + ] + ] + }, + { + "name": "name", + "optional": true, + "default": "''", + "type": [ + [ + [ + "string" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "IArgument", + "<" + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 672, + "file": "Args.ts", + "path": "src/lib/parsers" + } + }, + { + "name": "ok", + "description": "Constructs an {@link Ok} result.", + "scope": "static", + "params": [ + { + "name": "value", + "description": "The value to pass.", + "optional": false, + "type": [ + [ + [ + "T" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Ok", + "<" + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 680, + "file": "Args.ts", + "path": "src/lib/parsers" + } + } + ], + "meta": { + "line": 29, + "file": "Args.ts", + "path": "src/lib/parsers" + } + }, + { + "name": "Argument", + "description": "The base argument class. This class is abstract and is to be extended by subclasses implementing the methods. In\nSapphire's workflow, arguments are called when using {@link Args}'s methods (usually used inside {@link Command}s by default).", + "see": [], + "extends": [ + "AliasPiece<O>" + ], + "implements": [ + "IArgument<T>" + ], + "examples": [ + "```typescript\nimport { Argument, PieceContext } from '@sapphire/framework';\nimport { URL } from 'url';\n\nexport class CoreArgument extends Argument<URL> {\n public constructor(context: PieceContext) {\n super(context, { name: 'hyperlink', aliases: ['url'] });\n }\n\n public run(argument: string): Argument.Result<URL> {\n try {\n return this.ok(new URL(argument));\n } catch {\n return this.error(argument, 'ArgumentHyperlinkInvalidURL', 'The argument did not resolve to a valid URL.');\n }\n }\n}\n\n// Augment the ArgType structure so `args.pick('url')`, `args.repeat('url')`\n// and others have a return type of `URL`.\ndeclare module '@sapphire/framework' {\n export interface ArgType {\n url: URL;\n }\n}\n```" + ], + "abstract": false, + "deprecated": false, + "construct": { + "name": "constructor", + "params": [ + { + "name": "context", + "optional": false, + "type": [ + [ + [ + "PieceContext" + ] + ] + ] + }, + { + "name": "options", + "optional": true, + "type": [ + [ + [ + "AliasPieceOptions" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Argument", + "<" + ], + [ + "T", + ", " + ], + [ + "O", + ">" + ] + ] + ] + }, + "props": [ + { + "name": "aliases", + "description": "The aliases for the piece.", + "type": [ + [ + [ + "readonly", + " " + ], + [ + "Array", + "<" + ], + [ + "string", + ">" + ] + ] + ], + "meta": { + "line": 690, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "enabled", + "description": "Whether or not the piece is enabled.", + "type": [ + [ + [ + "boolean" + ] + ] + ], + "meta": { + "line": 447, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "location", + "description": "The location metadata for the piece's file.", + "readonly": true, + "type": [ + [ + [ + "PieceLocation" + ] + ] + ], + "meta": { + "line": 439, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "name", + "description": "The name of the piece.", + "readonly": true, + "type": [ + [ + [ + "string" + ] + ] + ], + "meta": { + "line": 443, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "options", + "description": "The raw options passed to this {@link Piece}", + "readonly": true, + "type": [ + [ + [ + "O" + ] + ] + ], + "meta": { + "line": 451, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "store", + "description": "The store that contains the piece.", + "readonly": true, + "type": [ + [ + [ + "Store", + "<" + ], + [ + "Piece", + "<" + ], + [ + "PieceOptions", + ">>" + ] + ] + ], + "meta": { + "line": 435, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "container", + "description": "A reference to the {@link Container} object for ease of use.", + "see": [ + "container" + ], + "readonly": true, + "abstract": false, + "deprecated": false, + "type": [ + [ + [ + "Container" + ] + ] + ], + "meta": { + "line": 457, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + } + ], + "methods": [ + { + "name": "error", + "description": "Constructs an {@link ArgumentError} with a custom type.", + "params": [ + { + "name": "options", + "optional": false, + "type": [ + [ + [ + "Omit", + "<" + ], + [ + "Options", + "<" + ], + [ + "T", + ">, " + ], + [ + "'argument'", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Result", + "<" + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 83, + "file": "Argument.ts", + "path": "src/lib/structures" + } + }, + { + "name": "ok", + "description": "Wraps a value into a successful value.", + "params": [ + { + "name": "value", + "description": "The value to wrap.", + "optional": false, + "type": [ + [ + [ + "T" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Result", + "<" + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 73, + "file": "Argument.ts", + "path": "src/lib/structures" + } + }, + { + "name": "onLoad", + "description": "Per-piece listener that is called when the piece is loaded into the store.\nUseful to set-up asynchronous initialization tasks.", + "returns": [ + [ + [ + "unknown" + ] + ] + ], + "meta": { + "line": 462, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "onUnload", + "description": "Per-piece listener that is called when the piece is unloaded from the store.\nUseful to set-up clean-up tasks.", + "returns": [ + [ + [ + "unknown" + ] + ] + ], + "meta": { + "line": 467, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "reload", + "description": "Reloads the piece by loading the same path in the store.", + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "void", + ">" + ] + ] + ], + "meta": { + "line": 475, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "run", + "description": "The method which is called when invoking the argument.", + "params": [ + { + "name": "parameter", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "context", + "optional": false, + "type": [ + [ + [ + "Context", + "<" + ], + [ + "T", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Result", + "<" + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 67, + "file": "Argument.ts", + "path": "src/lib/structures" + } + }, + { + "name": "toJSON", + "description": "Defines the `JSON.stringify` behavior of this alias piece.", + "returns": [ + [ + [ + "AliasPieceJSON" + ] + ] + ], + "meta": { + "line": 695, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "unload", + "description": "Unloads and disables the piece.", + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "void", + ">" + ] + ] + ], + "meta": { + "line": 471, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + } + ], + "meta": { + "line": 66, + "file": "Argument.ts", + "path": "src/lib/structures" + } + }, + { + "name": "ArgumentError", + "description": "Errors thrown by the argument parser", + "see": [], + "extends": [ + "UserError" + ], + "examples": [], + "abstract": false, + "deprecated": false, + "construct": { + "name": "constructor", + "description": "Constructs an UserError.", + "params": [ + { + "name": "options", + "optional": false, + "type": [ + [ + [ + "Options", + "<" + ], + [ + "T", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "ArgumentError", + "<" + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 13, + "file": "ArgumentError.ts", + "path": "src/lib/errors" + } + }, + "props": [ + { + "name": "argument", + "readonly": true, + "type": [ + [ + [ + "IArgument", + "<" + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 10, + "file": "ArgumentError.ts", + "path": "src/lib/errors" + } + }, + { + "name": "cause", + "type": [ + [ + [ + "Error" + ] + ] + ], + "meta": { + "line": 26, + "file": "lib.es2022.error.d.ts", + "path": "node_modules/typescript/lib" + } + }, + { + "name": "context", + "description": "User-provided context.", + "readonly": true, + "type": [ + [ + [ + "unknown" + ] + ] + ], + "meta": { + "line": 14, + "file": "UserError.ts", + "path": "src/lib/errors" + } + }, + { + "name": "identifier", + "description": "An identifier, useful to localize emitted errors.", + "readonly": true, + "type": [ + [ + [ + "string" + ] + ] + ], + "meta": { + "line": 9, + "file": "UserError.ts", + "path": "src/lib/errors" + } + }, + { + "name": "message", + "type": [ + [ + [ + "string" + ] + ] + ], + "meta": { + "line": 1023, + "file": "lib.es5.d.ts", + "path": "node_modules/typescript/lib" + } + }, + { + "name": "parameter", + "readonly": true, + "type": [ + [ + [ + "string" + ] + ] + ], + "meta": { + "line": 11, + "file": "ArgumentError.ts", + "path": "src/lib/errors" + } + }, + { + "name": "stack", + "type": [ + [ + [ + "string" + ] + ] + ], + "meta": { + "line": 1024, + "file": "lib.es5.d.ts", + "path": "node_modules/typescript/lib" + } + }, + { + "name": "prepareStackTrace", + "description": "Optional override for formatting stack traces", + "scope": "static", + "type": [ + [ + [ + "(" + ], + [ + "err", + ": " + ], + [ + "Error", + ", " + ], + [ + "stackTraces", + ": " + ], + [ + "Array", + "<" + ], + [ + "CallSite", + ">) => " + ], + [ + "any" + ] + ] + ], + "meta": { + "line": 11, + "file": "globals.d.ts", + "path": "node_modules/@types/node" + } + }, + { + "name": "stackTraceLimit", + "scope": "static", + "type": [ + [ + [ + "number" + ] + ] + ], + "meta": { + "line": 13, + "file": "globals.d.ts", + "path": "node_modules/@types/node" + } + }, + { + "name": "name", + "readonly": true, + "type": [ + [ + [ + "string" + ] + ] + ], + "meta": { + "line": 20, + "file": "ArgumentError.ts", + "path": "src/lib/errors" + } + } + ], + "methods": [ + { + "name": "captureStackTrace", + "description": "Create .stack property on a target object", + "scope": "static", + "params": [ + { + "name": "targetObject", + "optional": false, + "type": [ + [ + [ + "object" + ] + ] + ] + }, + { + "name": "constructorOpt", + "optional": true, + "type": [ + [ + [ + "Function" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "void" + ] + ] + ] + } + ], + "meta": { + "line": 9, + "file": "ArgumentError.ts", + "path": "src/lib/errors" + } + }, + { + "name": "ArgumentStore", + "extends": [ + "AliasStore<Argument>" + ], + "construct": { + "name": "constructor", + "returns": [ + [ + [ + "ArgumentStore" + ] + ] + ], + "meta": { + "line": 5, + "file": "ArgumentStore.ts", + "path": "src/lib/structures" + } + }, + "props": [ + { + "name": "Constructor", + "readonly": true, + "type": [ + [ + [ + "Constructor", + "<" + ], + [ + "Argument", + "<" + ], + [ + "unknown", + ", " + ], + [ + "ArgumentOptions", + ">>" + ] + ] + ], + "meta": { + "line": 281, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "[toStringTag]", + "readonly": true, + "type": [ + [ + [ + "string" + ] + ] + ], + "meta": { + "line": 135, + "file": "lib.es2015.symbol.wellknown.d.ts", + "path": "node_modules/typescript/lib" + } + }, + { + "name": "aliases", + "description": "The aliases referencing to pieces.", + "readonly": true, + "type": [ + [ + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "Argument", + "<" + ], + [ + "unknown", + ", " + ], + [ + "ArgumentOptions", + ">>" + ] + ] + ], + "meta": { + "line": 712, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "constructor", + "type": [ + [ + [ + "CollectionConstructor" + ] + ] + ], + "meta": { + "line": 21, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "name", + "readonly": true, + "type": [ + [ + [ + "string" + ] + ] + ], + "meta": { + "line": 282, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "paths", + "readonly": true, + "type": [ + [ + [ + "Set", + "<" + ], + [ + "string", + ">" + ] + ] + ], + "meta": { + "line": 283, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "size", + "readonly": true, + "type": [ + [ + [ + "number" + ] + ] + ], + "meta": { + "line": 28, + "file": "lib.es2015.collection.d.ts", + "path": "node_modules/typescript/lib" + } + }, + { + "name": "strategy", + "readonly": true, + "type": [ + [ + [ + "ILoaderStrategy", + "<" + ], + [ + "Argument", + "<" + ], + [ + "unknown", + ", " + ], + [ + "ArgumentOptions", + ">>" + ] + ] + ], + "meta": { + "line": 284, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "[species]", + "scope": "static", + "readonly": true, + "type": [ + [ + [ + "MapConstructor" + ] + ] + ], + "meta": { + "line": 317, + "file": "lib.es2015.symbol.wellknown.d.ts", + "path": "node_modules/typescript/lib" + } + }, + { + "name": "default", + "scope": "static", + "readonly": true, + "type": [ + [ + [ + "(" + ], + [ + "typeof", + " " + ], + [ + "Collection", + ")" + ] + ] + ], + "meta": { + "line": 28, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "defaultStrategy", + "description": "The default strategy, defaults to {@link LoaderStrategy}, which is constructed on demand when a store is constructed,\nwhen none was set beforehand.", + "scope": "static", + "type": [ + [ + [ + "ILoaderStrategy", + "<" + ], + [ + "any", + ">" + ] + ] + ], + "meta": { + "line": 369, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "logger", + "description": "The default logger, defaults to `null`.", + "scope": "static", + "type": [ + [ + [ + "null", + " | " + ], + [ + "StoreLogger" + ] + ] + ], + "meta": { + "line": 373, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "container", + "description": "A reference to the {@link Container} object for ease of use.", + "see": [ + "container" + ], + "readonly": true, + "abstract": false, + "deprecated": false, + "type": [ + [ + [ + "Container" + ] + ] + ], + "meta": { + "line": 294, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + } + ], + "methods": [ + { + "name": "[iterator]", + "description": "Returns an iterable of entries in the map.", + "returns": [ + [ + [ + "IterableIterator", + "<[" + ], + [ + "string", + ", " + ], + [ + "Argument", + "<" + ], + [ + "unknown", + ", " + ], + [ + "ArgumentOptions", + ">]>" + ] + ] + ] + }, + { + "name": "at", + "description": "Identical to [Array.at()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/at).\nReturns the item at a given index, allowing for positive and negative integers.\nNegative integers count back from the last item in the collection.", + "params": [ + { + "name": "index", + "description": "The index of the element to obtain", + "optional": false, + "type": [ + [ + [ + "number" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "Argument", + "<" + ], + [ + "unknown", + ", " + ], + [ + "ArgumentOptions", + ">" + ] + ] + ], + "meta": { + "line": 101, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "clear", + "returns": [ + [ + [ + "void" + ] + ] + ] + }, + { + "name": "clone", + "description": "Creates an identical shallow copy of this collection.", + "see": [], + "examples": [ + "const newColl = someColl.clone();" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "Argument", + "<" + ], + [ + "unknown", + ", " + ], + [ + "ArgumentOptions", + ">>" + ] + ] + ], + "meta": { + "line": 320, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "concat", + "description": "Combines this collection with others into a new collection. None of the source collections are modified.", + "see": [], + "examples": [ + "const newColl = someColl.concat(someOtherColl, anotherColl, ohBoyAColl);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "collections", + "description": "Collections to merge", + "optional": false, + "type": [ + [ + [ + "Array", + "<" + ], + [ + "ReadonlyCollection", + "<" + ], + [ + "string", + ", " + ], + [ + "Argument", + "<" + ], + [ + "unknown", + ", " + ], + [ + "ArgumentOptions", + ">>>" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "Argument", + "<" + ], + [ + "unknown", + ", " + ], + [ + "ArgumentOptions", + ">>" + ] + ] + ], + "meta": { + "line": 329, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "construct", + "description": "Constructs a {@link Piece} instance.", + "params": [ + { + "name": "Ctor", + "description": "The {@link Piece}'s constructor used to build the instance.", + "optional": false, + "type": [ + [ + [ + "ILoaderResultEntry", + "<" + ], + [ + "Argument", + "<" + ], + [ + "unknown", + ", " + ], + [ + "ArgumentOptions", + ">>" + ] + ] + ] + }, + { + "name": "data", + "description": "The module's information", + "optional": false, + "type": [ + [ + [ + "HydratedModuleData" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Argument", + "<" + ], + [ + "unknown", + ", " + ], + [ + "ArgumentOptions", + ">" + ] + ] + ], + "returnsDescription": "An instance of the constructed piece.", + "meta": { + "line": 345, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "delete", + "params": [ + { + "name": "key", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "boolean" + ] + ] + ] + }, + { + "name": "difference", + "description": "The difference method returns a new structure containing items where the key is present in one of the original structures but not the other.", + "params": [ + { + "name": "other", + "description": "The other Collection to filter against", + "optional": false, + "type": [ + [ + [ + "ReadonlyCollection", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "Argument", + "<" + ], + [ + "unknown", + ", " + ], + [ + "ArgumentOptions", + "> | " + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 363, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "each", + "description": "Identical to\n[Map.forEach()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map/forEach),\nbut returns the collection instead of undefined.", + "see": [], + "examples": [ + "collection\n .each(user => console.log(user.username))\n .filter(user => user.bot)\n .each(user => console.log(user.username));" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function to execute for each element", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Argument", + "<" + ], + [ + "unknown", + ", " + ], + [ + "ArgumentOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "ArgumentStore", + ") => " + ], + [ + "void" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "ArgumentStore" + ] + ] + ], + "meta": { + "line": 298, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "ensure", + "description": "Obtains the value of the given key if it exists, otherwise sets and returns the value provided by the default value generator.", + "see": [], + "examples": [ + "collection.ensure(guildId, () => defaultGuildConfig);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "key", + "description": "The key to get if it exists, or set otherwise", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "defaultValueGenerator", + "description": "A function that generates the default value", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "ArgumentStore", + ") => " + ], + [ + "Argument", + "<" + ], + [ + "unknown", + ", " + ], + [ + "ArgumentOptions", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Argument", + "<" + ], + [ + "unknown", + ", " + ], + [ + "ArgumentOptions", + ">" + ] + ] + ], + "meta": { + "line": 38, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "entries", + "description": "Returns an iterable of key, value pairs for every entry in the map.", + "returns": [ + [ + [ + "IterableIterator", + "<[" + ], + [ + "string", + ", " + ], + [ + "Argument", + "<" + ], + [ + "unknown", + ", " + ], + [ + "ArgumentOptions", + ">]>" + ] + ] + ] + }, + { + "name": "equals", + "description": "Checks if this collection shares identical items with another.\nThis is different to checking for equality using equal-signs, because\nthe collections may be different objects, but contain the same data.", + "params": [ + { + "name": "collection", + "description": "Collection to compare with", + "optional": false, + "type": [ + [ + [ + "ReadonlyCollection", + "<" + ], + [ + "string", + ", " + ], + [ + "Argument", + "<" + ], + [ + "unknown", + ", " + ], + [ + "ArgumentOptions", + ">>" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "boolean" + ] + ] + ], + "returnsDescription": "Whether the collections have identical contents", + "meta": { + "line": 339, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "every", + "description": "Checks if all items passes a test. Identical in behavior to\n[Array.every()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/every).", + "see": [], + "examples": [ + "collection.every(user => !user.bot);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function used to test (should return a boolean)", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Argument", + "<" + ], + [ + "unknown", + ", " + ], + [ + "ArgumentOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "ArgumentStore", + ") => " + ], + [ + "key", + " " + ], + [ + "is", + " " + ], + [ + "K2" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "this", + " " + ], + [ + "is", + " " + ], + [ + "Collection", + "<" + ], + [ + "K2", + ", " + ], + [ + "Argument", + "<" + ], + [ + "unknown", + ", " + ], + [ + "ArgumentOptions", + ">>" + ] + ] + ], + "meta": { + "line": 266, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "filter", + "description": "Identical to\n[Array.filter()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/filter),\nbut returns a Collection instead of an Array.", + "see": [], + "examples": [ + "collection.filter(user => user.username === 'Bob');" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "The function to test with (should return boolean)", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Argument", + "<" + ], + [ + "unknown", + ", " + ], + [ + "ArgumentOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "ArgumentStore", + ") => " + ], + [ + "key", + " " + ], + [ + "is", + " " + ], + [ + "K2" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "K2", + ", " + ], + [ + "Argument", + "<" + ], + [ + "unknown", + ", " + ], + [ + "ArgumentOptions", + ">>" + ] + ] + ], + "meta": { + "line": 186, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "find", + "description": "Searches for a single item where the given function returns a truthy value. This behaves like\n[Array.find()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/find).\n<warn>All collections used in Discord.js are mapped using their `id` property, and if you want to find by id you\nshould use the `get` method. See\n[MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map/get) for details.</warn>", + "see": [], + "examples": [ + "collection.find(user => user.username === 'Bob');" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "The function to test with (should return boolean)", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Argument", + "<" + ], + [ + "unknown", + ", " + ], + [ + "ArgumentOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "ArgumentStore", + ") => " + ], + [ + "value", + " " + ], + [ + "is", + " " + ], + [ + "V2" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "V2" + ] + ] + ], + "meta": { + "line": 146, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "findKey", + "description": "Searches for the key of a single item where the given function returns a truthy value. This behaves like\n[Array.findIndex()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/findIndex),\nbut returns the key rather than the positional index.", + "see": [], + "examples": [ + "collection.findKey(user => user.username === 'Bob');" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "The function to test with (should return boolean)", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Argument", + "<" + ], + [ + "unknown", + ", " + ], + [ + "ArgumentOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "ArgumentStore", + ") => " + ], + [ + "key", + " " + ], + [ + "is", + " " + ], + [ + "K2" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "K2" + ] + ] + ], + "meta": { + "line": 161, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "first", + "description": "Obtains the first value(s) in this collection.", + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "Argument", + "<" + ], + [ + "unknown", + ", " + ], + [ + "ArgumentOptions", + ">" + ] + ] + ], + "returnsDescription": "A single value if no amount is provided or an array of values, starting from the end if amount is negative", + "meta": { + "line": 62, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "firstKey", + "description": "Obtains the first key(s) in this collection.", + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "string" + ] + ] + ], + "returnsDescription": "A single key if no amount is provided or an array of keys, starting from the end if\namount is negative", + "meta": { + "line": 72, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "flatMap", + "description": "Maps each item into a Collection, then joins the results into a single Collection. Identical in behavior to\n[Array.flatMap()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/flatMap).", + "see": [], + "examples": [ + "collection.flatMap(guild => guild.members.cache);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function that produces a new Collection", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Argument", + "<" + ], + [ + "unknown", + ", " + ], + [ + "ArgumentOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "ArgumentStore", + ") => " + ], + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 218, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "forEach", + "params": [ + { + "name": "callbackfn", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Argument", + "<" + ], + [ + "unknown", + ", " + ], + [ + "ArgumentOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "map", + ": " + ], + [ + "Map", + "<" + ], + [ + "string", + ", " + ], + [ + "Argument", + "<" + ], + [ + "unknown", + ", " + ], + [ + "ArgumentOptions", + ">>) => " + ], + [ + "void" + ] + ] + ] + }, + { + "name": "thisArg", + "optional": true, + "type": [ + [ + [ + "any" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "void" + ] + ] + ] + }, + { + "name": "get", + "description": "Looks up the name by the store, falling back to an alias lookup.", + "params": [ + { + "name": "key", + "description": "The key to look for.", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "Argument", + "<" + ], + [ + "unknown", + ", " + ], + [ + "ArgumentOptions", + ">" + ] + ] + ], + "meta": { + "line": 717, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "has", + "description": "Checks whether a key is in the store, or is an alias", + "params": [ + { + "name": "key", + "description": "The key to check", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "boolean" + ] + ] + ], + "meta": { + "line": 722, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "hasAll", + "description": "Checks if all of the elements exist in the collection.", + "params": [ + { + "name": "keys", + "description": "The keys of the elements to check for", + "optional": false, + "type": [ + [ + [ + "Array", + "<" + ], + [ + "string", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "boolean" + ] + ] + ], + "returnsDescription": "`true` if all of the elements exist, `false` if at least one does not exist.", + "meta": { + "line": 46, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "hasAny", + "description": "Checks if any of the elements exist in the collection.", + "params": [ + { + "name": "keys", + "description": "The keys of the elements to check for", + "optional": false, + "type": [ + [ + [ + "Array", + "<" + ], + [ + "string", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "boolean" + ] + ] + ], + "returnsDescription": "`true` if any of the elements exist, `false` if none exist.", + "meta": { + "line": 54, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "insert", + "description": "Inserts a piece into the store, and adds all the aliases.", + "params": [ + { + "name": "piece", + "description": "The piece to be inserted into the store.", + "optional": false, + "type": [ + [ + [ + "Argument", + "<" + ], + [ + "unknown", + ", " + ], + [ + "ArgumentOptions", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "Argument", + "<" + ], + [ + "unknown", + ", " + ], + [ + "ArgumentOptions", + ">>" + ] + ] + ], + "returnsDescription": "The inserted piece.", + "meta": { + "line": 734, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "intersect", + "description": "The intersect method returns a new structure containing items where the keys and values are present in both original structures.", + "params": [ + { + "name": "other", + "description": "The other Collection to filter against", + "optional": false, + "type": [ + [ + [ + "ReadonlyCollection", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 357, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "keyAt", + "description": "Identical to [Array.at()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/at).\nReturns the key at a given index, allowing for positive and negative integers.\nNegative integers count back from the last item in the collection.", + "params": [ + { + "name": "index", + "description": "The index of the key to obtain", + "optional": false, + "type": [ + [ + [ + "number" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "string" + ] + ] + ], + "meta": { + "line": 109, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "keys", + "description": "Returns an iterable of keys in the map", + "returns": [ + [ + [ + "IterableIterator", + "<" + ], + [ + "string", + ">" + ] + ] + ] + }, + { + "name": "last", + "description": "Obtains the last value(s) in this collection.", + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "Argument", + "<" + ], + [ + "unknown", + ", " + ], + [ + "ArgumentOptions", + ">" + ] + ] + ], + "returnsDescription": "A single value if no amount is provided or an array of values, starting from the start if\namount is negative", + "meta": { + "line": 82, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "lastKey", + "description": "Obtains the last key(s) in this collection.", + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "string" + ] + ] + ], + "returnsDescription": "A single key if no amount is provided or an array of keys, starting from the start if\namount is negative", + "meta": { + "line": 92, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "load", + "description": "Loads one or more pieces from a path.", + "params": [ + { + "name": "root", + "description": "The root directory the file is from.", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "path", + "description": "The path of the file to load, relative to the `root`.", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "Array", + "<" + ], + [ + "Argument", + "<" + ], + [ + "unknown", + ", " + ], + [ + "ArgumentOptions", + ">>>" + ] + ] + ], + "returnsDescription": "All the loaded pieces.", + "meta": { + "line": 312, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "loadAll", + "description": "Loads all pieces from all directories specified by {@link paths}.", + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "void", + ">" + ] + ] + ], + "meta": { + "line": 326, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "map", + "description": "Maps each item to another value into an array. Identical in behavior to\n[Array.map()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/map).", + "see": [], + "examples": [ + "collection.map(user => user.tag);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function that produces an element of the new array, taking three arguments", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Argument", + "<" + ], + [ + "unknown", + ", " + ], + [ + "ArgumentOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "ArgumentStore", + ") => " + ], + [ + "T" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Array", + "<" + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 230, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "mapValues", + "description": "Maps each item to another value into a collection. Identical in behavior to\n[Array.map()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/map).", + "see": [], + "examples": [ + "collection.mapValues(user => user.tag);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function that produces an element of the new collection, taking three arguments", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Argument", + "<" + ], + [ + "unknown", + ", " + ], + [ + "ArgumentOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "ArgumentStore", + ") => " + ], + [ + "T" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 242, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "partition", + "description": "Partitions the collection into two collections where the first collection\ncontains the items that passed and the second contains the items that failed.", + "see": [], + "examples": [ + "const [big, small] = collection.partition(guild => guild.memberCount > 250);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function used to test (should return a boolean)", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Argument", + "<" + ], + [ + "unknown", + ", " + ], + [ + "ArgumentOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "ArgumentStore", + ") => " + ], + [ + "key", + " " + ], + [ + "is", + " " + ], + [ + "K2" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "[" + ], + [ + "Collection", + "<" + ], + [ + "K2", + ", " + ], + [ + "Argument", + "<" + ], + [ + "unknown", + ", " + ], + [ + "ArgumentOptions", + ">>, " + ], + [ + "Collection", + "<" + ], + [ + "Exclude", + "<" + ], + [ + "string", + ", " + ], + [ + "K2", + ">, " + ], + [ + "Argument", + "<" + ], + [ + "unknown", + ", " + ], + [ + "ArgumentOptions", + ">>]" + ] + ] + ], + "meta": { + "line": 202, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "random", + "description": "Obtains unique random value(s) from this collection.", + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "Argument", + "<" + ], + [ + "unknown", + ", " + ], + [ + "ArgumentOptions", + ">" + ] + ] + ], + "returnsDescription": "A single value if no amount is provided or an array of values", + "meta": { + "line": 117, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "randomKey", + "description": "Obtains unique random key(s) from this collection.", + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "string" + ] + ] + ], + "returnsDescription": "A single key if no amount is provided or an array", + "meta": { + "line": 126, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "reduce", + "description": "Applies a function to produce a single value. Identical in behavior to\n[Array.reduce()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/reduce).", + "see": [], + "examples": [ + "collection.reduce((acc, guild) => acc + guild.memberCount, 0);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function used to reduce, taking four arguments; `accumulator`, `currentValue`, `currentKey`,\nand `collection`", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "accumulator", + ": " + ], + [ + "T", + ", " + ], + [ + "value", + ": " + ], + [ + "Argument", + "<" + ], + [ + "unknown", + ", " + ], + [ + "ArgumentOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "ArgumentStore", + ") => " + ], + [ + "T" + ] + ] + ] + }, + { + "name": "initialValue", + "description": "Starting value for the accumulator", + "optional": true, + "type": [ + [ + [ + "T" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "T" + ] + ] + ], + "meta": { + "line": 283, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "registerPath", + "description": "Registers a directory into the store.", + "see": [], + "examples": [ + "```typescript\nstore\n .registerPath(resolve('commands'))\n .registerPath(resolve('third-party', 'commands'));\n```" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "path", + "description": "The path to be added.", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "ArgumentStore" + ] + ] + ], + "meta": { + "line": 305, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "resolve", + "description": "Resolves a piece by its name or its instance.", + "params": [ + { + "name": "name", + "description": "The name of the piece or the instance itself.", + "optional": false, + "type": [ + [ + [ + "string", + " | " + ], + [ + "Argument", + "<" + ], + [ + "unknown", + ", " + ], + [ + "ArgumentOptions", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Argument", + "<" + ], + [ + "unknown", + ", " + ], + [ + "ArgumentOptions", + ">" + ] + ] + ], + "returnsDescription": "The resolved piece.", + "meta": { + "line": 332, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "reverse", + "description": "Identical to [Array.reverse()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/reverse)\nbut returns a Collection instead of an Array.", + "returns": [ + [ + [ + "ArgumentStore" + ] + ] + ], + "meta": { + "line": 132, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "set", + "params": [ + { + "name": "key", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "value", + "optional": false, + "type": [ + [ + [ + "Argument", + "<" + ], + [ + "unknown", + ", " + ], + [ + "ArgumentOptions", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "ArgumentStore" + ] + ] + ] + }, + { + "name": "some", + "description": "Checks if there exists an item that passes a test. Identical in behavior to\n[Array.some()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/some).", + "see": [], + "examples": [ + "collection.some(user => user.discriminator === '0000');" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function used to test (should return a boolean)", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Argument", + "<" + ], + [ + "unknown", + ", " + ], + [ + "ArgumentOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "ArgumentStore", + ") => " + ], + [ + "boolean" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "boolean" + ] + ] + ], + "meta": { + "line": 254, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "sort", + "description": "The sort method sorts the items of a collection in place and returns it.\nThe sort is not necessarily stable in Node 10 or older.\nThe default sort order is according to string Unicode code points.", + "see": [], + "examples": [ + "collection.sort((userA, userB) => userA.createdTimestamp - userB.createdTimestamp);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "compareFunction", + "description": "Specifies a function that defines the sort order.\nIf omitted, the collection is sorted according to each character's Unicode code point value, according to the string conversion of each element.", + "optional": true, + "type": [ + [ + [ + "Comparator", + "<" + ], + [ + "string", + ", " + ], + [ + "Argument", + "<" + ], + [ + "unknown", + ", " + ], + [ + "ArgumentOptions", + ">>" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "ArgumentStore" + ] + ] + ], + "meta": { + "line": 351, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "sorted", + "description": "The sorted method sorts the items of a collection and returns it.\nThe sort is not necessarily stable in Node 10 or older.\nThe default sort order is according to string Unicode code points.", + "see": [], + "examples": [ + "collection.sorted((userA, userB) => userA.createdTimestamp - userB.createdTimestamp);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "compareFunction", + "description": "Specifies a function that defines the sort order.\nIf omitted, the collection is sorted according to each character's Unicode code point value,\naccording to the string conversion of each element.", + "optional": true, + "type": [ + [ + [ + "Comparator", + "<" + ], + [ + "string", + ", " + ], + [ + "Argument", + "<" + ], + [ + "unknown", + ", " + ], + [ + "ArgumentOptions", + ">>" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "Argument", + "<" + ], + [ + "unknown", + ", " + ], + [ + "ArgumentOptions", + ">>" + ] + ] + ], + "meta": { + "line": 376, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "sweep", + "description": "Removes items that satisfy the provided filter function.", + "params": [ + { + "name": "fn", + "description": "Function used to test (should return a boolean)", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Argument", + "<" + ], + [ + "unknown", + ", " + ], + [ + "ArgumentOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "ArgumentStore", + ") => " + ], + [ + "boolean" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "number" + ] + ] + ], + "returnsDescription": "The number of removed entries", + "meta": { + "line": 173, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "tap", + "description": "Runs a function on the collection and returns the collection.", + "see": [], + "examples": [ + "collection\n .tap(coll => console.log(coll.size))\n .filter(user => user.bot)\n .tap(coll => console.log(coll.size))" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function to execute", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "collection", + ": " + ], + [ + "ArgumentStore", + ") => " + ], + [ + "void" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "ArgumentStore" + ] + ] + ], + "meta": { + "line": 312, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "toJSON", + "returns": [ + [ + [ + "Array", + "<" + ], + [ + "Argument", + "<" + ], + [ + "unknown", + ", " + ], + [ + "ArgumentOptions", + ">>" + ] + ] + ], + "meta": { + "line": 377, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "unload", + "description": "Unloads a piece given its instance or its name, and removes all the aliases.", + "params": [ + { + "name": "name", + "description": "The name of the file to load.", + "optional": false, + "type": [ + [ + [ + "string", + " | " + ], + [ + "Argument", + "<" + ], + [ + "unknown", + ", " + ], + [ + "ArgumentOptions", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "Argument", + "<" + ], + [ + "unknown", + ", " + ], + [ + "ArgumentOptions", + ">>" + ] + ] + ], + "returnsDescription": "Returns the piece that was unloaded.", + "meta": { + "line": 728, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "unloadAll", + "description": "Unloads all pieces from the store.", + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "Array", + "<" + ], + [ + "Argument", + "<" + ], + [ + "unknown", + ", " + ], + [ + "ArgumentOptions", + ">>>" + ] + ] + ], + "meta": { + "line": 322, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "values", + "description": "Returns an iterable of values in the map", + "returns": [ + [ + [ + "IterableIterator", + "<" + ], + [ + "Argument", + "<" + ], + [ + "unknown", + ", " + ], + [ + "ArgumentOptions", + ">>" + ] + ] + ] + } + ], + "meta": { + "line": 4, + "file": "ArgumentStore.ts", + "path": "src/lib/structures" + } + }, + { + "name": "ClientPermissionsPrecondition", + "description": "Constructs a contextful permissions precondition requirement.", + "see": [], + "implements": [ + "PreconditionSingleResolvableDetails<'ClientPermissions'>" + ], + "examples": [ + "```typescript\nexport class CoreCommand extends Command {\n public constructor(context: PieceContext) {\n super(context, {\n preconditions: [\n 'GuildOnly',\n new ClientPermissionsPrecondition('ADD_REACTIONS')\n ]\n });\n }\n\n public messageRun(message: Message, args: Args) {\n // ...\n }\n}\n```" + ], + "abstract": false, + "deprecated": false, + "construct": { + "name": "constructor", + "description": "Constructs a precondition container entry.", + "params": [ + { + "name": "permissions", + "description": "The permissions that will be required by this command.", + "optional": false, + "type": [ + [ + [ + "PermissionResolvable" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "ClientPermissionsPrecondition" + ] + ] + ], + "meta": { + "line": 33, + "file": "ClientPermissionsPrecondition.ts", + "path": "src/lib/utils/preconditions/containers" + } + }, + "props": [ + { + "name": "context", + "description": "The context to be set at {@link PreconditionContainerSingle.context}.", + "type": [ + [ + [ + "{" + ], + [ + "\npermissions", + ": " + ], + [ + "Permissions\n", + "}" + ] + ] + ], + "meta": { + "line": 27, + "file": "ClientPermissionsPrecondition.ts", + "path": "src/lib/utils/preconditions/containers" + } + }, + { + "name": "name", + "description": "The name of the precondition to retrieve from {@link SapphireClient.preconditions}.", + "type": [ + [ + [ + "'ClientPermissions'" + ] + ] + ], + "meta": { + "line": 26, + "file": "ClientPermissionsPrecondition.ts", + "path": "src/lib/utils/preconditions/containers" + } + } + ], + "meta": { + "line": 25, + "file": "ClientPermissionsPrecondition.ts", + "path": "src/lib/utils/preconditions/containers" + } + }, + { + "name": "Command", + "extends": [ + "AliasPiece<O>" + ], + "construct": { + "name": "constructor", + "see": [], + "examples": [], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "context", + "description": "The context.", + "optional": false, + "type": [ + [ + [ + "PieceContext" + ] + ] + ] + }, + { + "name": "options", + "description": "Optional Command settings.", + "optional": true, + "type": [ + [ + [ + "O" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Command", + "<" + ], + [ + "PreParseReturn", + ", " + ], + [ + "O", + ">" + ] + ] + ], + "meta": { + "line": 89, + "file": "Command.ts", + "path": "src/lib/structures" + } + }, + "props": [ + { + "name": "aliases", + "description": "The aliases for the piece.", + "type": [ + [ + [ + "readonly", + " " + ], + [ + "Array", + "<" + ], + [ + "string", + ">" + ] + ] + ], + "meta": { + "line": 690, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "applicationCommandRegistry", + "description": "The application command registry associated with this command.", + "see": [], + "readonly": true, + "abstract": false, + "deprecated": false, + "type": [ + [ + [ + "ApplicationCommandRegistry" + ] + ] + ], + "meta": { + "line": 68, + "file": "Command.ts", + "path": "src/lib/structures" + } + }, + { + "name": "chatInputCommandOptions", + "description": "Options used to easily register chat input commands", + "see": [], + "access": "private", + "readonly": true, + "abstract": false, + "deprecated": false, + "type": [ + [ + [ + "CommandChatInputRegisterShortcut" + ] + ] + ], + "meta": { + "line": 75, + "file": "Command.ts", + "path": "src/lib/structures" + } + }, + { + "name": "description", + "description": "A basic summary about the command", + "see": [], + "abstract": false, + "deprecated": false, + "type": [ + [ + [ + "string" + ] + ] + ], + "meta": { + "line": 27, + "file": "Command.ts", + "path": "src/lib/structures" + } + }, + { + "name": "detailedDescription", + "description": "Longer version of command's summary and how to use it", + "see": [], + "abstract": false, + "deprecated": false, + "type": [ + [ + [ + "DetailedDescriptionCommand" + ] + ] + ], + "meta": { + "line": 39, + "file": "Command.ts", + "path": "src/lib/structures" + } + }, + { + "name": "enabled", + "description": "Whether or not the piece is enabled.", + "type": [ + [ + [ + "boolean" + ] + ] + ], + "meta": { + "line": 447, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "fullCategory", + "description": "The full category for the command. Either an array of strings that denote every (sub)folder the command is in,\nor `null` if it could not be resolved automatically.", + "extendedDescription": "If this is `null` for how you setup your code then you can overwrite how the `fullCategory` is resolved by\nextending this class and overwriting the assignment in the constructor.", + "see": [], + "readonly": true, + "abstract": false, + "deprecated": false, + "type": [ + [ + [ + "readonly", + " " + ], + [ + "Array", + "<" + ], + [ + "string", + ">" + ] + ] + ], + "meta": { + "line": 49, + "file": "Command.ts", + "path": "src/lib/structures" + } + }, + { + "name": "lexer", + "description": "The lexer to be used for command parsing", + "see": [], + "access": "private", + "abstract": false, + "deprecated": false, + "type": [ + [ + [ + "Lexer" + ] + ] + ], + "meta": { + "line": 82, + "file": "Command.ts", + "path": "src/lib/structures" + } + }, + { + "name": "location", + "description": "The location metadata for the piece's file.", + "readonly": true, + "type": [ + [ + [ + "PieceLocation" + ] + ] + ], + "meta": { + "line": 439, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "name", + "description": "The name of the piece.", + "readonly": true, + "type": [ + [ + [ + "string" + ] + ] + ], + "meta": { + "line": 443, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "options", + "description": "The raw options passed to this {@link Piece}", + "readonly": true, + "type": [ + [ + [ + "O" + ] + ] + ], + "meta": { + "line": 451, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "preconditions", + "description": "The preconditions to be run.", + "see": [], + "abstract": false, + "deprecated": false, + "type": [ + [ + [ + "PreconditionContainerArray" + ] + ] + ], + "meta": { + "line": 33, + "file": "Command.ts", + "path": "src/lib/structures" + } + }, + { + "name": "store", + "description": "The store that contains the piece.", + "readonly": true, + "type": [ + [ + [ + "Store", + "<" + ], + [ + "Piece", + "<" + ], + [ + "PieceOptions", + ">>" + ] + ] + ], + "meta": { + "line": 435, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "strategy", + "description": "The strategy to use for the lexer.", + "see": [], + "abstract": false, + "deprecated": false, + "type": [ + [ + [ + "UnorderedStrategy" + ] + ] + ], + "meta": { + "line": 55, + "file": "Command.ts", + "path": "src/lib/structures" + } + }, + { + "name": "typing", + "description": "If {@link SapphireClient.typing} is true, it can be overridden for a specific command using this property, set via its options.\nOtherwise, this property will be ignored.", + "see": [], + "abstract": false, + "deprecated": false, + "default": "true", + "type": [ + [ + [ + "boolean" + ] + ] + ], + "meta": { + "line": 62, + "file": "Command.ts", + "path": "src/lib/structures" + } + }, + { + "name": "category", + "description": "The main category for the command, if any.", + "extendedDescription": "This getter retrieves the first value of {@link Command.fullCategory}, if it has at least one item, otherwise it\nreturns `null`.", + "see": [], + "readonly": true, + "abstract": false, + "deprecated": false, + "type": [ + [ + [ + "null", + " | " + ], + [ + "string" + ] + ] + ], + "meta": { + "line": 151, + "file": "Command.ts", + "path": "src/lib/structures" + } + }, + { + "name": "container", + "description": "A reference to the {@link Container} object for ease of use.", + "see": [ + "container" + ], + "readonly": true, + "abstract": false, + "deprecated": false, + "type": [ + [ + [ + "Container" + ] + ] + ], + "meta": { + "line": 457, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "parentCategory", + "description": "The parent category for the command.", + "extendedDescription": "This getter retrieves the last value of {@link Command.fullCategory}, if it has at least one item, otherwise it\nreturns `null`.", + "see": [], + "readonly": true, + "abstract": false, + "deprecated": false, + "type": [ + [ + [ + "null", + " | " + ], + [ + "string" + ] + ] + ], + "meta": { + "line": 175, + "file": "Command.ts", + "path": "src/lib/structures" + } + }, + { + "name": "subCategory", + "description": "The sub-category for the command, if any.", + "extendedDescription": "This getter retrieves the second value of {@link Command.fullCategory}, if it has at least two items, otherwise\nit returns `null`.", + "see": [], + "readonly": true, + "abstract": false, + "deprecated": false, + "type": [ + [ + [ + "null", + " | " + ], + [ + "string" + ] + ] + ], + "meta": { + "line": 163, + "file": "Command.ts", + "path": "src/lib/structures" + } + } + ], + "methods": [ + { + "name": "autocompleteRun", + "description": "Executes the autocomplete logic.", + "extendDescription": ":::tip\n\nYou may use this, or alternatively create an {@link InteractionHandler interaction handler} to handle autocomplete interactions.\nKeep in mind that commands take precedence over interaction handlers.\n\n:::", + "params": [ + { + "name": "interaction", + "description": "The interaction that triggered the autocomplete.", + "optional": false, + "type": [ + [ + [ + "AutocompleteInteraction", + "<" + ], + [ + "CacheType", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "unknown" + ] + ] + ], + "meta": { + "line": 211, + "file": "Command.ts", + "path": "src/lib/structures" + } + }, + { + "name": "chatInputRun", + "description": "Executes the application command's logic.", + "params": [ + { + "name": "interaction", + "description": "The interaction that triggered the command.", + "optional": false, + "type": [ + [ + [ + "CommandInteraction", + "<" + ], + [ + "CacheType", + ">" + ] + ] + ] + }, + { + "name": "context", + "optional": false, + "type": [ + [ + [ + "ChatInputCommandContext" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "unknown" + ] + ] + ], + "meta": { + "line": 191, + "file": "Command.ts", + "path": "src/lib/structures" + } + }, + { + "name": "contextMenuRun", + "description": "Executes the context menu's logic.", + "params": [ + { + "name": "interaction", + "description": "The interaction that triggered the command.", + "optional": false, + "type": [ + [ + [ + "ContextMenuInteraction", + "<" + ], + [ + "CacheType", + ">" + ] + ] + ] + }, + { + "name": "context", + "optional": false, + "type": [ + [ + [ + "ContextMenuCommandContext" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "unknown" + ] + ] + ], + "meta": { + "line": 197, + "file": "Command.ts", + "path": "src/lib/structures" + } + }, + { + "name": "messagePreParse", + "description": "The message pre-parse method. This method can be overridden by plugins to define their own argument parser.", + "params": [ + { + "name": "message", + "description": "The message that triggered the command.", + "optional": false, + "type": [ + [ + [ + "Message", + "<" + ], + [ + "boolean", + ">" + ] + ] + ] + }, + { + "name": "parameters", + "description": "The raw parameters as a single string.", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "context", + "description": "The command-context used in this execution.", + "optional": false, + "type": [ + [ + [ + "MessageCommandContext" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Awaitable", + "<" + ], + [ + "PreParseReturn", + ">" + ] + ] + ], + "meta": { + "line": 137, + "file": "Command.ts", + "path": "src/lib/structures" + } + }, + { + "name": "messageRun", + "description": "Executes the message command's logic.", + "params": [ + { + "name": "message", + "description": "The message that triggered the command.", + "optional": false, + "type": [ + [ + [ + "Message", + "<" + ], + [ + "boolean", + ">" + ] + ] + ] + }, + { + "name": "args", + "description": "The value returned by {@link Command.messagePreParse}, by default an instance of {@link Args}.", + "optional": false, + "type": [ + [ + [ + "PreParseReturn" + ] + ] + ] + }, + { + "name": "context", + "description": "The context in which the command was executed.", + "optional": false, + "type": [ + [ + [ + "MessageCommandContext" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "unknown" + ] + ] + ], + "meta": { + "line": 185, + "file": "Command.ts", + "path": "src/lib/structures" + } + }, + { + "name": "onLoad", + "description": "Per-piece listener that is called when the piece is loaded into the store.\nUseful to set-up asynchronous initialization tasks.", + "returns": [ + [ + [ + "unknown" + ] + ] + ], + "meta": { + "line": 462, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "onUnload", + "description": "Per-piece listener that is called when the piece is unloaded from the store.\nUseful to set-up clean-up tasks.", + "returns": [ + [ + [ + "unknown" + ] + ] + ], + "meta": { + "line": 467, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "parseConstructorPreConditions", + "description": "Parses the command's options and processes them, calling {@link Command#parseConstructorPreConditionsRunIn},\n{@link Command#parseConstructorPreConditionsNsfw},\n{@link Command#parseConstructorPreConditionsRequiredClientPermissions}, and\n{@link Command#parseConstructorPreConditionsCooldown}.", + "see": [], + "examples": [], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "options", + "description": "The command options given from the constructor.", + "optional": false, + "type": [ + [ + [ + "CommandOptions" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "void" + ] + ] + ], + "meta": { + "line": 340, + "file": "Command.ts", + "path": "src/lib/structures" + } + }, + { + "name": "parseConstructorPreConditionsCooldown", + "description": "Appends the `Cooldown` precondition when {@link Command.Options.cooldownLimit} and\n{@link Command.Options.cooldownDelay} are both non-zero.", + "params": [ + { + "name": "options", + "description": "The command options given from the constructor.", + "optional": false, + "type": [ + [ + [ + "CommandOptions" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "void" + ] + ] + ], + "meta": { + "line": 396, + "file": "Command.ts", + "path": "src/lib/structures" + } + }, + { + "name": "parseConstructorPreConditionsNsfw", + "description": "Appends the `NSFW` precondition if {@link Command.Options.nsfw} is set to true.", + "params": [ + { + "name": "options", + "description": "The command options given from the constructor.", + "optional": false, + "type": [ + [ + [ + "CommandOptions" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "void" + ] + ] + ], + "meta": { + "line": 352, + "file": "Command.ts", + "path": "src/lib/structures" + } + }, + { + "name": "parseConstructorPreConditionsRequiredClientPermissions", + "description": "Appends the `ClientPermissions` precondition when {@link Command.Options.requiredClientPermissions} resolves to a\nnon-zero bitfield.", + "params": [ + { + "name": "options", + "description": "The command options given from the constructor.", + "optional": false, + "type": [ + [ + [ + "CommandOptions" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "void" + ] + ] + ], + "meta": { + "line": 372, + "file": "Command.ts", + "path": "src/lib/structures" + } + }, + { + "name": "parseConstructorPreConditionsRequiredUserPermissions", + "description": "Appends the `UserPermissions` precondition when {@link Command.Options.requiredUserPermissions} resolves to a\nnon-zero bitfield.", + "params": [ + { + "name": "options", + "description": "The command options given from the constructor.", + "optional": false, + "type": [ + [ + [ + "CommandOptions" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "void" + ] + ] + ], + "meta": { + "line": 384, + "file": "Command.ts", + "path": "src/lib/structures" + } + }, + { + "name": "parseConstructorPreConditionsRunIn", + "description": "Appends the `DMOnly`, `GuildOnly`, `NewsOnly`, and `TextOnly` preconditions based on the values passed in\n{@link Command.Options.runIn}, optimizing in specific cases (`NewsOnly` + `TextOnly` = `GuildOnly`; `DMOnly` +\n`GuildOnly` = `null`), defaulting to `null`, which doesn't add a precondition.", + "params": [ + { + "name": "options", + "description": "The command options given from the constructor.", + "optional": false, + "type": [ + [ + [ + "CommandOptions" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "void" + ] + ] + ], + "meta": { + "line": 362, + "file": "Command.ts", + "path": "src/lib/structures" + } + }, + { + "name": "registerApplicationCommands", + "description": "Registers the application commands that should be handled by this command.", + "params": [ + { + "name": "registry", + "description": "This command's registry", + "optional": false, + "type": [ + [ + [ + "ApplicationCommandRegistry" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Awaitable", + "<" + ], + [ + "void", + ">" + ] + ] + ], + "meta": { + "line": 229, + "file": "Command.ts", + "path": "src/lib/structures" + } + }, + { + "name": "reload", + "description": "Reloads the piece by loading the same path in the store.", + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "void", + ">" + ] + ] + ], + "meta": { + "line": 279, + "file": "Command.ts", + "path": "src/lib/structures" + } + }, + { + "name": "resolveConstructorPreConditionsRunType", + "access": "private", + "params": [ + { + "name": "runIn", + "optional": false, + "type": [ + [ + [ + "undefined", + " | " + ], + [ + "null", + " | " + ], + [ + "CommandOptionsRunType", + " | " + ], + [ + "CommandOptionsRunTypeEnum", + " | " + ], + [ + "readonly", + " " + ], + [ + "Array", + "<" + ], + [ + "CommandOptionsRunType", + " | " + ], + [ + "CommandOptionsRunTypeEnum", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "null", + " | " + ], + [ + "PreconditionContainerArray", + " | " + ], + [ + "CommandPreConditions" + ] + ] + ], + "meta": { + "line": 416, + "file": "Command.ts", + "path": "src/lib/structures" + } + }, + { + "name": "supportsAutocompleteInteractions", + "description": "Type-guard that ensures the command supports handling autocompletes by checking if the handler for it is present", + "returns": [ + [ + [ + "this", + " " + ], + [ + "is", + " " + ], + [ + "AutocompleteCommand" + ] + ] + ], + "meta": { + "line": 275, + "file": "Command.ts", + "path": "src/lib/structures" + } + }, + { + "name": "supportsChatInputCommands", + "description": "Type-guard that ensures the command supports chat input commands by checking if the handler for it is present", + "returns": [ + [ + [ + "this", + " " + ], + [ + "is", + " " + ], + [ + "ChatInputCommand" + ] + ] + ], + "meta": { + "line": 261, + "file": "Command.ts", + "path": "src/lib/structures" + } + }, + { + "name": "supportsContextMenuCommands", + "description": "Type-guard that ensures the command supports context menu commands by checking if the handler for it is present", + "returns": [ + [ + [ + "this", + " " + ], + [ + "is", + " " + ], + [ + "ContextMenuCommand" + ] + ] + ], + "meta": { + "line": 268, + "file": "Command.ts", + "path": "src/lib/structures" + } + }, + { + "name": "supportsMessageCommands", + "description": "Type-guard that ensures the command supports message commands by checking if the handler for it is present", + "returns": [ + [ + [ + "this", + " " + ], + [ + "is", + " " + ], + [ + "MessageCommand" + ] + ] + ], + "meta": { + "line": 254, + "file": "Command.ts", + "path": "src/lib/structures" + } + }, + { + "name": "toJSON", + "description": "Defines the JSON.stringify behavior of the command.", + "returns": [ + [ + [ + "CommandJSON" + ] + ] + ], + "meta": { + "line": 216, + "file": "Command.ts", + "path": "src/lib/structures" + } + }, + { + "name": "unload", + "description": "Unloads and disables the piece.", + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "void", + ">" + ] + ] + ], + "meta": { + "line": 471, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + } + ], + "meta": { + "line": 22, + "file": "Command.ts", + "path": "src/lib/structures" + } + }, + { + "name": "CommandStore", + "description": "Stores all Command pieces", + "see": [], + "extends": [ + "AliasStore<Command>" + ], + "examples": [], + "abstract": false, + "deprecated": false, + "construct": { + "name": "constructor", + "returns": [ + [ + [ + "CommandStore" + ] + ] + ], + "meta": { + "line": 11, + "file": "CommandStore.ts", + "path": "src/lib/structures" + } + }, + "props": [ + { + "name": "Constructor", + "readonly": true, + "type": [ + [ + [ + "Constructor", + "<" + ], + [ + "Command", + "<" + ], + [ + "Args", + ", " + ], + [ + "CommandOptions", + ">>" + ] + ] + ], + "meta": { + "line": 281, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "[toStringTag]", + "readonly": true, + "type": [ + [ + [ + "string" + ] + ] + ], + "meta": { + "line": 135, + "file": "lib.es2015.symbol.wellknown.d.ts", + "path": "node_modules/typescript/lib" + } + }, + { + "name": "aliases", + "description": "The aliases referencing to pieces.", + "readonly": true, + "type": [ + [ + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "Command", + "<" + ], + [ + "Args", + ", " + ], + [ + "CommandOptions", + ">>" + ] + ] + ], + "meta": { + "line": 712, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "constructor", + "type": [ + [ + [ + "CollectionConstructor" + ] + ] + ], + "meta": { + "line": 21, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "name", + "readonly": true, + "type": [ + [ + [ + "string" + ] + ] + ], + "meta": { + "line": 282, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "paths", + "readonly": true, + "type": [ + [ + [ + "Set", + "<" + ], + [ + "string", + ">" + ] + ] + ], + "meta": { + "line": 283, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "size", + "readonly": true, + "type": [ + [ + [ + "number" + ] + ] + ], + "meta": { + "line": 28, + "file": "lib.es2015.collection.d.ts", + "path": "node_modules/typescript/lib" + } + }, + { + "name": "strategy", + "readonly": true, + "type": [ + [ + [ + "ILoaderStrategy", + "<" + ], + [ + "Command", + "<" + ], + [ + "Args", + ", " + ], + [ + "CommandOptions", + ">>" + ] + ] + ], + "meta": { + "line": 284, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "[species]", + "scope": "static", + "readonly": true, + "type": [ + [ + [ + "MapConstructor" + ] + ] + ], + "meta": { + "line": 317, + "file": "lib.es2015.symbol.wellknown.d.ts", + "path": "node_modules/typescript/lib" + } + }, + { + "name": "default", + "scope": "static", + "readonly": true, + "type": [ + [ + [ + "(" + ], + [ + "typeof", + " " + ], + [ + "Collection", + ")" + ] + ] + ], + "meta": { + "line": 28, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "defaultStrategy", + "description": "The default strategy, defaults to {@link LoaderStrategy}, which is constructed on demand when a store is constructed,\nwhen none was set beforehand.", + "scope": "static", + "type": [ + [ + [ + "ILoaderStrategy", + "<" + ], + [ + "any", + ">" + ] + ] + ], + "meta": { + "line": 369, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "logger", + "description": "The default logger, defaults to `null`.", + "scope": "static", + "type": [ + [ + [ + "null", + " | " + ], + [ + "StoreLogger" + ] + ] + ], + "meta": { + "line": 373, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "categories", + "description": "Get all the command categories.", + "readonly": true, + "type": [ + [ + [ + "Array", + "<" + ], + [ + "string", + ">" + ] + ] + ], + "meta": { + "line": 18, + "file": "CommandStore.ts", + "path": "src/lib/structures" + } + }, + { + "name": "container", + "description": "A reference to the {@link Container} object for ease of use.", + "see": [ + "container" + ], + "readonly": true, + "abstract": false, + "deprecated": false, + "type": [ + [ + [ + "Container" + ] + ] + ], + "meta": { + "line": 294, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + } + ], + "methods": [ + { + "name": "[iterator]", + "description": "Returns an iterable of entries in the map.", + "returns": [ + [ + [ + "IterableIterator", + "<[" + ], + [ + "string", + ", " + ], + [ + "Command", + "<" + ], + [ + "Args", + ", " + ], + [ + "CommandOptions", + ">]>" + ] + ] + ] + }, + { + "name": "at", + "description": "Identical to [Array.at()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/at).\nReturns the item at a given index, allowing for positive and negative integers.\nNegative integers count back from the last item in the collection.", + "params": [ + { + "name": "index", + "description": "The index of the element to obtain", + "optional": false, + "type": [ + [ + [ + "number" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "Command", + "<" + ], + [ + "Args", + ", " + ], + [ + "CommandOptions", + ">" + ] + ] + ], + "meta": { + "line": 101, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "clear", + "returns": [ + [ + [ + "void" + ] + ] + ] + }, + { + "name": "clone", + "description": "Creates an identical shallow copy of this collection.", + "see": [], + "examples": [ + "const newColl = someColl.clone();" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "Command", + "<" + ], + [ + "Args", + ", " + ], + [ + "CommandOptions", + ">>" + ] + ] + ], + "meta": { + "line": 320, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "concat", + "description": "Combines this collection with others into a new collection. None of the source collections are modified.", + "see": [], + "examples": [ + "const newColl = someColl.concat(someOtherColl, anotherColl, ohBoyAColl);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "collections", + "description": "Collections to merge", + "optional": false, + "type": [ + [ + [ + "Array", + "<" + ], + [ + "ReadonlyCollection", + "<" + ], + [ + "string", + ", " + ], + [ + "Command", + "<" + ], + [ + "Args", + ", " + ], + [ + "CommandOptions", + ">>>" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "Command", + "<" + ], + [ + "Args", + ", " + ], + [ + "CommandOptions", + ">>" + ] + ] + ], + "meta": { + "line": 329, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "construct", + "description": "Constructs a {@link Piece} instance.", + "params": [ + { + "name": "Ctor", + "description": "The {@link Piece}'s constructor used to build the instance.", + "optional": false, + "type": [ + [ + [ + "ILoaderResultEntry", + "<" + ], + [ + "Command", + "<" + ], + [ + "Args", + ", " + ], + [ + "CommandOptions", + ">>" + ] + ] + ] + }, + { + "name": "data", + "description": "The module's information", + "optional": false, + "type": [ + [ + [ + "HydratedModuleData" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Command", + "<" + ], + [ + "Args", + ", " + ], + [ + "CommandOptions", + ">" + ] + ] + ], + "returnsDescription": "An instance of the constructed piece.", + "meta": { + "line": 345, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "delete", + "params": [ + { + "name": "key", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "boolean" + ] + ] + ] + }, + { + "name": "difference", + "description": "The difference method returns a new structure containing items where the key is present in one of the original structures but not the other.", + "params": [ + { + "name": "other", + "description": "The other Collection to filter against", + "optional": false, + "type": [ + [ + [ + "ReadonlyCollection", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "Command", + "<" + ], + [ + "Args", + ", " + ], + [ + "CommandOptions", + "> | " + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 363, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "each", + "description": "Identical to\n[Map.forEach()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map/forEach),\nbut returns the collection instead of undefined.", + "see": [], + "examples": [ + "collection\n .each(user => console.log(user.username))\n .filter(user => user.bot)\n .each(user => console.log(user.username));" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function to execute for each element", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Command", + "<" + ], + [ + "Args", + ", " + ], + [ + "CommandOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "CommandStore", + ") => " + ], + [ + "void" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "CommandStore" + ] + ] + ], + "meta": { + "line": 298, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "ensure", + "description": "Obtains the value of the given key if it exists, otherwise sets and returns the value provided by the default value generator.", + "see": [], + "examples": [ + "collection.ensure(guildId, () => defaultGuildConfig);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "key", + "description": "The key to get if it exists, or set otherwise", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "defaultValueGenerator", + "description": "A function that generates the default value", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "CommandStore", + ") => " + ], + [ + "Command", + "<" + ], + [ + "Args", + ", " + ], + [ + "CommandOptions", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Command", + "<" + ], + [ + "Args", + ", " + ], + [ + "CommandOptions", + ">" + ] + ] + ], + "meta": { + "line": 38, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "entries", + "description": "Returns an iterable of key, value pairs for every entry in the map.", + "returns": [ + [ + [ + "IterableIterator", + "<[" + ], + [ + "string", + ", " + ], + [ + "Command", + "<" + ], + [ + "Args", + ", " + ], + [ + "CommandOptions", + ">]>" + ] + ] + ] + }, + { + "name": "equals", + "description": "Checks if this collection shares identical items with another.\nThis is different to checking for equality using equal-signs, because\nthe collections may be different objects, but contain the same data.", + "params": [ + { + "name": "collection", + "description": "Collection to compare with", + "optional": false, + "type": [ + [ + [ + "ReadonlyCollection", + "<" + ], + [ + "string", + ", " + ], + [ + "Command", + "<" + ], + [ + "Args", + ", " + ], + [ + "CommandOptions", + ">>" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "boolean" + ] + ] + ], + "returnsDescription": "Whether the collections have identical contents", + "meta": { + "line": 339, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "every", + "description": "Checks if all items passes a test. Identical in behavior to\n[Array.every()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/every).", + "see": [], + "examples": [ + "collection.every(user => !user.bot);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function used to test (should return a boolean)", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Command", + "<" + ], + [ + "Args", + ", " + ], + [ + "CommandOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "CommandStore", + ") => " + ], + [ + "key", + " " + ], + [ + "is", + " " + ], + [ + "K2" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "this", + " " + ], + [ + "is", + " " + ], + [ + "Collection", + "<" + ], + [ + "K2", + ", " + ], + [ + "Command", + "<" + ], + [ + "Args", + ", " + ], + [ + "CommandOptions", + ">>" + ] + ] + ], + "meta": { + "line": 266, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "filter", + "description": "Identical to\n[Array.filter()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/filter),\nbut returns a Collection instead of an Array.", + "see": [], + "examples": [ + "collection.filter(user => user.username === 'Bob');" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "The function to test with (should return boolean)", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Command", + "<" + ], + [ + "Args", + ", " + ], + [ + "CommandOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "CommandStore", + ") => " + ], + [ + "key", + " " + ], + [ + "is", + " " + ], + [ + "K2" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "K2", + ", " + ], + [ + "Command", + "<" + ], + [ + "Args", + ", " + ], + [ + "CommandOptions", + ">>" + ] + ] + ], + "meta": { + "line": 186, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "find", + "description": "Searches for a single item where the given function returns a truthy value. This behaves like\n[Array.find()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/find).\n<warn>All collections used in Discord.js are mapped using their `id` property, and if you want to find by id you\nshould use the `get` method. See\n[MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map/get) for details.</warn>", + "see": [], + "examples": [ + "collection.find(user => user.username === 'Bob');" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "The function to test with (should return boolean)", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Command", + "<" + ], + [ + "Args", + ", " + ], + [ + "CommandOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "CommandStore", + ") => " + ], + [ + "value", + " " + ], + [ + "is", + " " + ], + [ + "V2" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "V2" + ] + ] + ], + "meta": { + "line": 146, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "findKey", + "description": "Searches for the key of a single item where the given function returns a truthy value. This behaves like\n[Array.findIndex()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/findIndex),\nbut returns the key rather than the positional index.", + "see": [], + "examples": [ + "collection.findKey(user => user.username === 'Bob');" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "The function to test with (should return boolean)", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Command", + "<" + ], + [ + "Args", + ", " + ], + [ + "CommandOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "CommandStore", + ") => " + ], + [ + "key", + " " + ], + [ + "is", + " " + ], + [ + "K2" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "K2" + ] + ] + ], + "meta": { + "line": 161, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "first", + "description": "Obtains the first value(s) in this collection.", + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "Command", + "<" + ], + [ + "Args", + ", " + ], + [ + "CommandOptions", + ">" + ] + ] + ], + "returnsDescription": "A single value if no amount is provided or an array of values, starting from the end if amount is negative", + "meta": { + "line": 62, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "firstKey", + "description": "Obtains the first key(s) in this collection.", + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "string" + ] + ] + ], + "returnsDescription": "A single key if no amount is provided or an array of keys, starting from the end if\namount is negative", + "meta": { + "line": 72, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "flatMap", + "description": "Maps each item into a Collection, then joins the results into a single Collection. Identical in behavior to\n[Array.flatMap()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/flatMap).", + "see": [], + "examples": [ + "collection.flatMap(guild => guild.members.cache);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function that produces a new Collection", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Command", + "<" + ], + [ + "Args", + ", " + ], + [ + "CommandOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "CommandStore", + ") => " + ], + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 218, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "forEach", + "params": [ + { + "name": "callbackfn", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Command", + "<" + ], + [ + "Args", + ", " + ], + [ + "CommandOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "map", + ": " + ], + [ + "Map", + "<" + ], + [ + "string", + ", " + ], + [ + "Command", + "<" + ], + [ + "Args", + ", " + ], + [ + "CommandOptions", + ">>) => " + ], + [ + "void" + ] + ] + ] + }, + { + "name": "thisArg", + "optional": true, + "type": [ + [ + [ + "any" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "void" + ] + ] + ] + }, + { + "name": "get", + "description": "Looks up the name by the store, falling back to an alias lookup.", + "params": [ + { + "name": "key", + "description": "The key to look for.", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "Command", + "<" + ], + [ + "Args", + ", " + ], + [ + "CommandOptions", + ">" + ] + ] + ], + "meta": { + "line": 717, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "has", + "description": "Checks whether a key is in the store, or is an alias", + "params": [ + { + "name": "key", + "description": "The key to check", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "boolean" + ] + ] + ], + "meta": { + "line": 722, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "hasAll", + "description": "Checks if all of the elements exist in the collection.", + "params": [ + { + "name": "keys", + "description": "The keys of the elements to check for", + "optional": false, + "type": [ + [ + [ + "Array", + "<" + ], + [ + "string", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "boolean" + ] + ] + ], + "returnsDescription": "`true` if all of the elements exist, `false` if at least one does not exist.", + "meta": { + "line": 46, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "hasAny", + "description": "Checks if any of the elements exist in the collection.", + "params": [ + { + "name": "keys", + "description": "The keys of the elements to check for", + "optional": false, + "type": [ + [ + [ + "Array", + "<" + ], + [ + "string", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "boolean" + ] + ] + ], + "returnsDescription": "`true` if any of the elements exist, `false` if none exist.", + "meta": { + "line": 54, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "insert", + "description": "Inserts a piece into the store, and adds all the aliases.", + "params": [ + { + "name": "piece", + "description": "The piece to be inserted into the store.", + "optional": false, + "type": [ + [ + [ + "Command", + "<" + ], + [ + "Args", + ", " + ], + [ + "CommandOptions", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "Command", + "<" + ], + [ + "Args", + ", " + ], + [ + "CommandOptions", + ">>" + ] + ] + ], + "returnsDescription": "The inserted piece.", + "meta": { + "line": 734, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "intersect", + "description": "The intersect method returns a new structure containing items where the keys and values are present in both original structures.", + "params": [ + { + "name": "other", + "description": "The other Collection to filter against", + "optional": false, + "type": [ + [ + [ + "ReadonlyCollection", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 357, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "keyAt", + "description": "Identical to [Array.at()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/at).\nReturns the key at a given index, allowing for positive and negative integers.\nNegative integers count back from the last item in the collection.", + "params": [ + { + "name": "index", + "description": "The index of the key to obtain", + "optional": false, + "type": [ + [ + [ + "number" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "string" + ] + ] + ], + "meta": { + "line": 109, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "keys", + "description": "Returns an iterable of keys in the map", + "returns": [ + [ + [ + "IterableIterator", + "<" + ], + [ + "string", + ">" + ] + ] + ] + }, + { + "name": "last", + "description": "Obtains the last value(s) in this collection.", + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "Command", + "<" + ], + [ + "Args", + ", " + ], + [ + "CommandOptions", + ">" + ] + ] + ], + "returnsDescription": "A single value if no amount is provided or an array of values, starting from the start if\namount is negative", + "meta": { + "line": 82, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "lastKey", + "description": "Obtains the last key(s) in this collection.", + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "string" + ] + ] + ], + "returnsDescription": "A single key if no amount is provided or an array of keys, starting from the start if\namount is negative", + "meta": { + "line": 92, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "load", + "description": "Loads one or more pieces from a path.", + "params": [ + { + "name": "root", + "description": "The root directory the file is from.", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "path", + "description": "The path of the file to load, relative to the `root`.", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "Array", + "<" + ], + [ + "Command", + "<" + ], + [ + "Args", + ", " + ], + [ + "CommandOptions", + ">>>" + ] + ] + ], + "returnsDescription": "All the loaded pieces.", + "meta": { + "line": 312, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "loadAll", + "description": "Loads all pieces from all directories specified by {@link paths}.", + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "void", + ">" + ] + ] + ], + "meta": { + "line": 48, + "file": "CommandStore.ts", + "path": "src/lib/structures" + } + }, + { + "name": "map", + "description": "Maps each item to another value into an array. Identical in behavior to\n[Array.map()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/map).", + "see": [], + "examples": [ + "collection.map(user => user.tag);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function that produces an element of the new array, taking three arguments", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Command", + "<" + ], + [ + "Args", + ", " + ], + [ + "CommandOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "CommandStore", + ") => " + ], + [ + "T" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Array", + "<" + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 230, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "mapValues", + "description": "Maps each item to another value into a collection. Identical in behavior to\n[Array.map()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/map).", + "see": [], + "examples": [ + "collection.mapValues(user => user.tag);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function that produces an element of the new collection, taking three arguments", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Command", + "<" + ], + [ + "Args", + ", " + ], + [ + "CommandOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "CommandStore", + ") => " + ], + [ + "T" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 242, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "partition", + "description": "Partitions the collection into two collections where the first collection\ncontains the items that passed and the second contains the items that failed.", + "see": [], + "examples": [ + "const [big, small] = collection.partition(guild => guild.memberCount > 250);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function used to test (should return a boolean)", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Command", + "<" + ], + [ + "Args", + ", " + ], + [ + "CommandOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "CommandStore", + ") => " + ], + [ + "key", + " " + ], + [ + "is", + " " + ], + [ + "K2" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "[" + ], + [ + "Collection", + "<" + ], + [ + "K2", + ", " + ], + [ + "Command", + "<" + ], + [ + "Args", + ", " + ], + [ + "CommandOptions", + ">>, " + ], + [ + "Collection", + "<" + ], + [ + "Exclude", + "<" + ], + [ + "string", + ", " + ], + [ + "K2", + ">, " + ], + [ + "Command", + "<" + ], + [ + "Args", + ", " + ], + [ + "CommandOptions", + ">>]" + ] + ] + ], + "meta": { + "line": 202, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "random", + "description": "Obtains unique random value(s) from this collection.", + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "Command", + "<" + ], + [ + "Args", + ", " + ], + [ + "CommandOptions", + ">" + ] + ] + ], + "returnsDescription": "A single value if no amount is provided or an array of values", + "meta": { + "line": 117, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "randomKey", + "description": "Obtains unique random key(s) from this collection.", + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "string" + ] + ] + ], + "returnsDescription": "A single key if no amount is provided or an array", + "meta": { + "line": 126, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "reduce", + "description": "Applies a function to produce a single value. Identical in behavior to\n[Array.reduce()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/reduce).", + "see": [], + "examples": [ + "collection.reduce((acc, guild) => acc + guild.memberCount, 0);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function used to reduce, taking four arguments; `accumulator`, `currentValue`, `currentKey`,\nand `collection`", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "accumulator", + ": " + ], + [ + "T", + ", " + ], + [ + "value", + ": " + ], + [ + "Command", + "<" + ], + [ + "Args", + ", " + ], + [ + "CommandOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "CommandStore", + ") => " + ], + [ + "T" + ] + ] + ] + }, + { + "name": "initialValue", + "description": "Starting value for the accumulator", + "optional": true, + "type": [ + [ + [ + "T" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "T" + ] + ] + ], + "meta": { + "line": 283, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "registerPath", + "description": "Registers a directory into the store.", + "see": [], + "examples": [ + "```typescript\nstore\n .registerPath(resolve('commands'))\n .registerPath(resolve('third-party', 'commands'));\n```" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "path", + "description": "The path to be added.", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "CommandStore" + ] + ] + ], + "meta": { + "line": 305, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "resolve", + "description": "Resolves a piece by its name or its instance.", + "params": [ + { + "name": "name", + "description": "The name of the piece or the instance itself.", + "optional": false, + "type": [ + [ + [ + "string", + " | " + ], + [ + "Command", + "<" + ], + [ + "Args", + ", " + ], + [ + "CommandOptions", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Command", + "<" + ], + [ + "Args", + ", " + ], + [ + "CommandOptions", + ">" + ] + ] + ], + "returnsDescription": "The resolved piece.", + "meta": { + "line": 332, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "reverse", + "description": "Identical to [Array.reverse()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/reverse)\nbut returns a Collection instead of an Array.", + "returns": [ + [ + [ + "CommandStore" + ] + ] + ], + "meta": { + "line": 132, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "set", + "params": [ + { + "name": "key", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "value", + "optional": false, + "type": [ + [ + [ + "Command", + "<" + ], + [ + "Args", + ", " + ], + [ + "CommandOptions", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "CommandStore" + ] + ] + ] + }, + { + "name": "some", + "description": "Checks if there exists an item that passes a test. Identical in behavior to\n[Array.some()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/some).", + "see": [], + "examples": [ + "collection.some(user => user.discriminator === '0000');" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function used to test (should return a boolean)", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Command", + "<" + ], + [ + "Args", + ", " + ], + [ + "CommandOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "CommandStore", + ") => " + ], + [ + "boolean" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "boolean" + ] + ] + ], + "meta": { + "line": 254, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "sort", + "description": "The sort method sorts the items of a collection in place and returns it.\nThe sort is not necessarily stable in Node 10 or older.\nThe default sort order is according to string Unicode code points.", + "see": [], + "examples": [ + "collection.sort((userA, userB) => userA.createdTimestamp - userB.createdTimestamp);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "compareFunction", + "description": "Specifies a function that defines the sort order.\nIf omitted, the collection is sorted according to each character's Unicode code point value, according to the string conversion of each element.", + "optional": true, + "type": [ + [ + [ + "Comparator", + "<" + ], + [ + "string", + ", " + ], + [ + "Command", + "<" + ], + [ + "Args", + ", " + ], + [ + "CommandOptions", + ">>" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "CommandStore" + ] + ] + ], + "meta": { + "line": 351, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "sorted", + "description": "The sorted method sorts the items of a collection and returns it.\nThe sort is not necessarily stable in Node 10 or older.\nThe default sort order is according to string Unicode code points.", + "see": [], + "examples": [ + "collection.sorted((userA, userB) => userA.createdTimestamp - userB.createdTimestamp);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "compareFunction", + "description": "Specifies a function that defines the sort order.\nIf omitted, the collection is sorted according to each character's Unicode code point value,\naccording to the string conversion of each element.", + "optional": true, + "type": [ + [ + [ + "Comparator", + "<" + ], + [ + "string", + ", " + ], + [ + "Command", + "<" + ], + [ + "Args", + ", " + ], + [ + "CommandOptions", + ">>" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "Command", + "<" + ], + [ + "Args", + ", " + ], + [ + "CommandOptions", + ">>" + ] + ] + ], + "meta": { + "line": 376, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "sweep", + "description": "Removes items that satisfy the provided filter function.", + "params": [ + { + "name": "fn", + "description": "Function used to test (should return a boolean)", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Command", + "<" + ], + [ + "Args", + ", " + ], + [ + "CommandOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "CommandStore", + ") => " + ], + [ + "boolean" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "number" + ] + ] + ], + "returnsDescription": "The number of removed entries", + "meta": { + "line": 173, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "tap", + "description": "Runs a function on the collection and returns the collection.", + "see": [], + "examples": [ + "collection\n .tap(coll => console.log(coll.size))\n .filter(user => user.bot)\n .tap(coll => console.log(coll.size))" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function to execute", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "collection", + ": " + ], + [ + "CommandStore", + ") => " + ], + [ + "void" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "CommandStore" + ] + ] + ], + "meta": { + "line": 312, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "toJSON", + "returns": [ + [ + [ + "Array", + "<" + ], + [ + "Command", + "<" + ], + [ + "Args", + ", " + ], + [ + "CommandOptions", + ">>" + ] + ] + ], + "meta": { + "line": 377, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "unload", + "description": "Unloads a piece given its instance or its name, and removes all the aliases.", + "params": [ + { + "name": "name", + "optional": false, + "type": [ + [ + [ + "string", + " | " + ], + [ + "Command", + "<" + ], + [ + "Args", + ", " + ], + [ + "CommandOptions", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "Command", + "<" + ], + [ + "Args", + ", " + ], + [ + "CommandOptions", + ">>" + ] + ] + ], + "returnsDescription": "Returns the piece that was unloaded.", + "meta": { + "line": 24, + "file": "CommandStore.ts", + "path": "src/lib/structures" + } + }, + { + "name": "unloadAll", + "description": "Unloads all pieces from the store.", + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "Array", + "<" + ], + [ + "Command", + "<" + ], + [ + "Args", + ", " + ], + [ + "CommandOptions", + ">>>" + ] + ] + ], + "meta": { + "line": 322, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "values", + "description": "Returns an iterable of values in the map", + "returns": [ + [ + [ + "IterableIterator", + "<" + ], + [ + "Command", + "<" + ], + [ + "Args", + ", " + ], + [ + "CommandOptions", + ">>" + ] + ] + ] + } + ], + "meta": { + "line": 10, + "file": "CommandStore.ts", + "path": "src/lib/structures" + } + }, + { + "name": "ExtendedArgument", + "see": [], + "extends": [ + "Argument<T>" + ], + "examples": [ + "```typescript\nimport { ApplyOptions } from '@sapphire/decorators';\nimport { ExtendedArgument, ExtendedArgumentContext, ExtendedArgumentOptions } from '@sapphire/framework';\nimport type { Channel, TextChannel } from 'discord.js';\n\n(at)ApplyOptions<ExtendedArgumentOptions>({\n name: 'textChannel',\n baseArgument: 'channel'\n})\nexport class TextChannelArgument extends ExtendedArgument<'channel', TextChannel> {\n public handle(parsed: Channel, { argument }: ExtendedArgumentContext): Argument.Result<TextChannel> {\n return parsed.type === 'text'\n ? this.ok(parsed as TextChannel)\n : this.error({ identifier: 'ArgumentTextChannelInvalidTextChannel', message: 'The argument did not resolve to a text channel.' });\n }\n}\n```" + ], + "abstract": false, + "deprecated": true, + "construct": { + "name": "constructor", + "see": [], + "examples": [], + "abstract": false, + "deprecated": true, + "emits": [], + "params": [ + { + "name": "context", + "optional": false, + "type": [ + [ + [ + "PieceContext" + ] + ] + ] + }, + { + "name": "options", + "optional": false, + "type": [ + [ + [ + "ExtendedArgumentOptions", + "<" + ], + [ + "K", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "ExtendedArgument", + "<" + ], + [ + "K", + ", " + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 41, + "file": "ExtendedArgument.ts", + "path": "src/lib/structures" + } + }, + "props": [ + { + "name": "aliases", + "description": "The aliases for the piece.", + "type": [ + [ + [ + "readonly", + " " + ], + [ + "Array", + "<" + ], + [ + "string", + ">" + ] + ] + ], + "meta": { + "line": 690, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "baseArgument", + "type": [ + [ + [ + "K" + ] + ] + ], + "meta": { + "line": 36, + "file": "ExtendedArgument.ts", + "path": "src/lib/structures" + } + }, + { + "name": "enabled", + "description": "Whether or not the piece is enabled.", + "type": [ + [ + [ + "boolean" + ] + ] + ], + "meta": { + "line": 447, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "location", + "description": "The location metadata for the piece's file.", + "readonly": true, + "type": [ + [ + [ + "PieceLocation" + ] + ] + ], + "meta": { + "line": 439, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "name", + "description": "The name of the piece.", + "readonly": true, + "type": [ + [ + [ + "string" + ] + ] + ], + "meta": { + "line": 443, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "options", + "description": "The raw options passed to this {@link Piece}", + "readonly": true, + "type": [ + [ + [ + "ArgumentOptions" + ] + ] + ], + "meta": { + "line": 451, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "store", + "description": "The store that contains the piece.", + "readonly": true, + "type": [ + [ + [ + "Store", + "<" + ], + [ + "Piece", + "<" + ], + [ + "PieceOptions", + ">>" + ] + ] + ], + "meta": { + "line": 435, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "base", + "description": "Represents the underlying argument that transforms the raw argument\ninto the value used to compute the extended argument's value.", + "see": [], + "readonly": true, + "abstract": false, + "deprecated": true, + "type": [ + [ + [ + "IArgument", + "<" + ], + [ + "ArgType", + "[" + ], + [ + "K", + "]>" + ] + ] + ], + "meta": { + "line": 51, + "file": "ExtendedArgument.ts", + "path": "src/lib/structures" + } + }, + { + "name": "container", + "description": "A reference to the {@link Container} object for ease of use.", + "see": [ + "container" + ], + "readonly": true, + "abstract": false, + "deprecated": false, + "type": [ + [ + [ + "Container" + ] + ] + ], + "meta": { + "line": 457, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + } + ], + "methods": [ + { + "name": "error", + "description": "Constructs an {@link ArgumentError} with a custom type.", + "params": [ + { + "name": "options", + "optional": false, + "type": [ + [ + [ + "Omit", + "<" + ], + [ + "Options", + "<" + ], + [ + "T", + ">, " + ], + [ + "'argument'", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Result", + "<" + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 83, + "file": "Argument.ts", + "path": "src/lib/structures" + } + }, + { + "name": "handle", + "see": [], + "examples": [], + "abstract": false, + "deprecated": true, + "emits": [], + "params": [ + { + "name": "parsed", + "optional": false, + "type": [ + [ + [ + "ArgType", + "[" + ], + [ + "K", + "]" + ] + ] + ] + }, + { + "name": "context", + "optional": false, + "type": [ + [ + [ + "ExtendedArgumentContext" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Result", + "<" + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 69, + "file": "ExtendedArgument.ts", + "path": "src/lib/structures" + } + }, + { + "name": "ok", + "description": "Wraps a value into a successful value.", + "params": [ + { + "name": "value", + "description": "The value to wrap.", + "optional": false, + "type": [ + [ + [ + "T" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Result", + "<" + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 73, + "file": "Argument.ts", + "path": "src/lib/structures" + } + }, + { + "name": "onLoad", + "description": "Per-piece listener that is called when the piece is loaded into the store.\nUseful to set-up asynchronous initialization tasks.", + "returns": [ + [ + [ + "unknown" + ] + ] + ], + "meta": { + "line": 462, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "onUnload", + "description": "Per-piece listener that is called when the piece is unloaded from the store.\nUseful to set-up clean-up tasks.", + "returns": [ + [ + [ + "unknown" + ] + ] + ], + "meta": { + "line": 467, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "reload", + "description": "Reloads the piece by loading the same path in the store.", + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "void", + ">" + ] + ] + ], + "meta": { + "line": 475, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "run", + "see": [], + "examples": [], + "abstract": false, + "deprecated": true, + "emits": [], + "params": [ + { + "name": "parameter", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "context", + "optional": false, + "type": [ + [ + [ + "Context", + "<" + ], + [ + "T", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "AsyncResult", + "<" + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 58, + "file": "ExtendedArgument.ts", + "path": "src/lib/structures" + } + }, + { + "name": "toJSON", + "description": "Defines the `JSON.stringify` behavior of this alias piece.", + "returns": [ + [ + [ + "AliasPieceJSON" + ] + ] + ], + "meta": { + "line": 695, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "unload", + "description": "Unloads and disables the piece.", + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "void", + ">" + ] + ] + ], + "meta": { + "line": 471, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + } + ], + "meta": { + "line": 35, + "file": "ExtendedArgument.ts", + "path": "src/lib/structures" + } + }, + { + "name": "InteractionHandler", + "extends": [ + "Piece<O>" + ], + "construct": { + "name": "constructor", + "params": [ + { + "name": "context", + "optional": false, + "type": [ + [ + [ + "PieceContext" + ] + ] + ] + }, + { + "name": "options", + "optional": false, + "type": [ + [ + [ + "InteractionHandlerOptions" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "InteractionHandler", + "<" + ], + [ + "O", + ">" + ] + ] + ], + "meta": { + "line": 13, + "file": "InteractionHandler.ts", + "path": "src/lib/structures" + } + }, + "props": [ + { + "name": "enabled", + "description": "Whether or not the piece is enabled.", + "type": [ + [ + [ + "boolean" + ] + ] + ], + "meta": { + "line": 447, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "interactionHandlerType", + "description": "The type for this handler", + "see": [], + "readonly": true, + "abstract": false, + "deprecated": false, + "type": [ + [ + [ + "InteractionHandlerTypes" + ] + ] + ], + "meta": { + "line": 11, + "file": "InteractionHandler.ts", + "path": "src/lib/structures" + } + }, + { + "name": "location", + "description": "The location metadata for the piece's file.", + "readonly": true, + "type": [ + [ + [ + "PieceLocation" + ] + ] + ], + "meta": { + "line": 439, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "name", + "description": "The name of the piece.", + "readonly": true, + "type": [ + [ + [ + "string" + ] + ] + ], + "meta": { + "line": 443, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "options", + "description": "The raw options passed to this {@link Piece}", + "readonly": true, + "type": [ + [ + [ + "O" + ] + ] + ], + "meta": { + "line": 451, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "store", + "description": "The store that contains the piece.", + "readonly": true, + "type": [ + [ + [ + "Store", + "<" + ], + [ + "Piece", + "<" + ], + [ + "PieceOptions", + ">>" + ] + ] + ], + "meta": { + "line": 435, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "container", + "description": "A reference to the {@link Container} object for ease of use.", + "see": [ + "container" + ], + "readonly": true, + "abstract": false, + "deprecated": false, + "type": [ + [ + [ + "Container" + ] + ] + ], + "meta": { + "line": 457, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + } + ], + "methods": [ + { + "name": "none", + "returns": [ + [ + [ + "None" + ] + ] + ], + "meta": { + "line": 74, + "file": "InteractionHandler.ts", + "path": "src/lib/structures" + } + }, + { + "name": "onLoad", + "description": "Per-piece listener that is called when the piece is loaded into the store.\nUseful to set-up asynchronous initialization tasks.", + "returns": [ + [ + [ + "unknown" + ] + ] + ], + "meta": { + "line": 462, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "onUnload", + "description": "Per-piece listener that is called when the piece is unloaded from the store.\nUseful to set-up clean-up tasks.", + "returns": [ + [ + [ + "unknown" + ] + ] + ], + "meta": { + "line": 467, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "parse", + "description": "A custom function that will be called when checking if an interaction should be passed to this handler.\nYou can use this method to not only filter by ids, but also pre-parse the data from the id for use in the run method.", + "extendDescription": "By default, all interactions of the type you specified will run in a handler. You should override this method\nto change that behavior.", + "see": [], + "examples": [ + "```typescript\n// Parsing a button handler\npublic override parse(interaction: ButtonInteraction) {\n if (interaction.customId.startsWith('my-awesome-clicky-button')) {\n\t // Returning a `some` here means that the run method should be called next!\n return this.some({ isMyBotAwesome: true, awesomenessLevel: 9001 });\n }\n\n // Returning a `none` means this interaction shouldn't run in this handler\n return this.none();\n}\n```", + "```typescript\n// Getting data from a database based on the custom id\npublic override async parse(interaction: ButtonInteraction) {\n // This code is purely for demonstration purposes only!\n if (interaction.customId.startsWith('example-data')) {\n const [, userId, channelId] = interaction.customId.split('.');\n\n\t const dataFromDatabase = await container.prisma.exampleData.findFirst({ where: { userId, channelId } });\n\n // Returning a `some` here means that the run method should be called next!\n return this.some(dataFromDatabase);\n }\n\n // Returning a `none` means this interaction shouldn't run in this handler\n return this.none();\n}\n```" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "_interaction", + "optional": false, + "type": [ + [ + [ + "Interaction", + "<" + ], + [ + "CacheType", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Awaitable", + "<" + ], + [ + "Maybe", + "<" + ], + [ + "unknown", + ">>" + ] + ] + ], + "returnsDescription": "A {@link Maybe} (or a {@link Promise Promised} {@link Maybe}) that indicates if this interaction should be\nhandled by this handler, and any extra data that should be passed to the {@link InteractionHandler.run run method}", + "meta": { + "line": 64, + "file": "InteractionHandler.ts", + "path": "src/lib/structures" + } + }, + { + "name": "reload", + "description": "Reloads the piece by loading the same path in the store.", + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "void", + ">" + ] + ] + ], + "meta": { + "line": 475, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "run", + "params": [ + { + "name": "interaction", + "optional": false, + "type": [ + [ + [ + "Interaction", + "<" + ], + [ + "CacheType", + ">" + ] + ] + ] + }, + { + "name": "parsedData", + "optional": true, + "type": [ + [ + [ + "unknown" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "unknown" + ] + ] + ], + "meta": { + "line": 19, + "file": "InteractionHandler.ts", + "path": "src/lib/structures" + } + }, + { + "name": "some", + "returns": [ + [ + [ + "Maybe", + "<" + ], + [ + "never", + ">" + ] + ] + ], + "meta": { + "line": 68, + "file": "InteractionHandler.ts", + "path": "src/lib/structures" + } + }, + { + "name": "toJSON", + "description": "Defines the `JSON.stringify` behavior of this piece.", + "returns": [ + [ + [ + "InteractionHandlerJSON" + ] + ] + ], + "meta": { + "line": 78, + "file": "InteractionHandler.ts", + "path": "src/lib/structures" + } + }, + { + "name": "unload", + "description": "Unloads and disables the piece.", + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "void", + ">" + ] + ] + ], + "meta": { + "line": 471, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + } + ], + "meta": { + "line": 6, + "file": "InteractionHandler.ts", + "path": "src/lib/structures" + } + }, + { + "name": "InteractionHandlerStore", + "extends": [ + "Store<InteractionHandler>" + ], + "construct": { + "name": "constructor", + "returns": [ + [ + [ + "InteractionHandlerStore" + ] + ] + ], + "meta": { + "line": 8, + "file": "InteractionHandlerStore.ts", + "path": "src/lib/structures" + } + }, + "props": [ + { + "name": "Constructor", + "readonly": true, + "type": [ + [ + [ + "Constructor", + "<" + ], + [ + "InteractionHandler", + "<" + ], + [ + "InteractionHandlerOptions", + ">>" + ] + ] + ], + "meta": { + "line": 281, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "[toStringTag]", + "readonly": true, + "type": [ + [ + [ + "string" + ] + ] + ], + "meta": { + "line": 135, + "file": "lib.es2015.symbol.wellknown.d.ts", + "path": "node_modules/typescript/lib" + } + }, + { + "name": "constructor", + "type": [ + [ + [ + "CollectionConstructor" + ] + ] + ], + "meta": { + "line": 21, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "name", + "readonly": true, + "type": [ + [ + [ + "string" + ] + ] + ], + "meta": { + "line": 282, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "paths", + "readonly": true, + "type": [ + [ + [ + "Set", + "<" + ], + [ + "string", + ">" + ] + ] + ], + "meta": { + "line": 283, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "size", + "readonly": true, + "type": [ + [ + [ + "number" + ] + ] + ], + "meta": { + "line": 28, + "file": "lib.es2015.collection.d.ts", + "path": "node_modules/typescript/lib" + } + }, + { + "name": "strategy", + "readonly": true, + "type": [ + [ + [ + "ILoaderStrategy", + "<" + ], + [ + "InteractionHandler", + "<" + ], + [ + "InteractionHandlerOptions", + ">>" + ] + ] + ], + "meta": { + "line": 284, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "[species]", + "scope": "static", + "readonly": true, + "type": [ + [ + [ + "MapConstructor" + ] + ] + ], + "meta": { + "line": 317, + "file": "lib.es2015.symbol.wellknown.d.ts", + "path": "node_modules/typescript/lib" + } + }, + { + "name": "default", + "scope": "static", + "readonly": true, + "type": [ + [ + [ + "(" + ], + [ + "typeof", + " " + ], + [ + "Collection", + ")" + ] + ] + ], + "meta": { + "line": 28, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "defaultStrategy", + "description": "The default strategy, defaults to {@link LoaderStrategy}, which is constructed on demand when a store is constructed,\nwhen none was set beforehand.", + "scope": "static", + "type": [ + [ + [ + "ILoaderStrategy", + "<" + ], + [ + "any", + ">" + ] + ] + ], + "meta": { + "line": 369, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "logger", + "description": "The default logger, defaults to `null`.", + "scope": "static", + "type": [ + [ + [ + "null", + " | " + ], + [ + "StoreLogger" + ] + ] + ], + "meta": { + "line": 373, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "container", + "description": "A reference to the {@link Container} object for ease of use.", + "see": [ + "container" + ], + "readonly": true, + "abstract": false, + "deprecated": false, + "type": [ + [ + [ + "Container" + ] + ] + ], + "meta": { + "line": 294, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + } + ], + "methods": [ + { + "name": "[iterator]", + "description": "Returns an iterable of entries in the map.", + "returns": [ + [ + [ + "IterableIterator", + "<[" + ], + [ + "string", + ", " + ], + [ + "InteractionHandler", + "<" + ], + [ + "InteractionHandlerOptions", + ">]>" + ] + ] + ] + }, + { + "name": "at", + "description": "Identical to [Array.at()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/at).\nReturns the item at a given index, allowing for positive and negative integers.\nNegative integers count back from the last item in the collection.", + "params": [ + { + "name": "index", + "description": "The index of the element to obtain", + "optional": false, + "type": [ + [ + [ + "number" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "InteractionHandler", + "<" + ], + [ + "InteractionHandlerOptions", + ">" + ] + ] + ], + "meta": { + "line": 101, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "clear", + "returns": [ + [ + [ + "void" + ] + ] + ] + }, + { + "name": "clone", + "description": "Creates an identical shallow copy of this collection.", + "see": [], + "examples": [ + "const newColl = someColl.clone();" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "InteractionHandler", + "<" + ], + [ + "InteractionHandlerOptions", + ">>" + ] + ] + ], + "meta": { + "line": 320, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "concat", + "description": "Combines this collection with others into a new collection. None of the source collections are modified.", + "see": [], + "examples": [ + "const newColl = someColl.concat(someOtherColl, anotherColl, ohBoyAColl);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "collections", + "description": "Collections to merge", + "optional": false, + "type": [ + [ + [ + "Array", + "<" + ], + [ + "ReadonlyCollection", + "<" + ], + [ + "string", + ", " + ], + [ + "InteractionHandler", + "<" + ], + [ + "InteractionHandlerOptions", + ">>>" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "InteractionHandler", + "<" + ], + [ + "InteractionHandlerOptions", + ">>" + ] + ] + ], + "meta": { + "line": 329, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "construct", + "description": "Constructs a {@link Piece} instance.", + "params": [ + { + "name": "Ctor", + "description": "The {@link Piece}'s constructor used to build the instance.", + "optional": false, + "type": [ + [ + [ + "ILoaderResultEntry", + "<" + ], + [ + "InteractionHandler", + "<" + ], + [ + "InteractionHandlerOptions", + ">>" + ] + ] + ] + }, + { + "name": "data", + "description": "The module's information", + "optional": false, + "type": [ + [ + [ + "HydratedModuleData" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "InteractionHandler", + "<" + ], + [ + "InteractionHandlerOptions", + ">" + ] + ] + ], + "returnsDescription": "An instance of the constructed piece.", + "meta": { + "line": 345, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "delete", + "params": [ + { + "name": "key", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "boolean" + ] + ] + ] + }, + { + "name": "difference", + "description": "The difference method returns a new structure containing items where the key is present in one of the original structures but not the other.", + "params": [ + { + "name": "other", + "description": "The other Collection to filter against", + "optional": false, + "type": [ + [ + [ + "ReadonlyCollection", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "InteractionHandler", + "<" + ], + [ + "InteractionHandlerOptions", + "> | " + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 363, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "each", + "description": "Identical to\n[Map.forEach()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map/forEach),\nbut returns the collection instead of undefined.", + "see": [], + "examples": [ + "collection\n .each(user => console.log(user.username))\n .filter(user => user.bot)\n .each(user => console.log(user.username));" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function to execute for each element", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "InteractionHandler", + "<" + ], + [ + "InteractionHandlerOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "InteractionHandlerStore", + ") => " + ], + [ + "void" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "InteractionHandlerStore" + ] + ] + ], + "meta": { + "line": 298, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "ensure", + "description": "Obtains the value of the given key if it exists, otherwise sets and returns the value provided by the default value generator.", + "see": [], + "examples": [ + "collection.ensure(guildId, () => defaultGuildConfig);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "key", + "description": "The key to get if it exists, or set otherwise", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "defaultValueGenerator", + "description": "A function that generates the default value", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "InteractionHandlerStore", + ") => " + ], + [ + "InteractionHandler", + "<" + ], + [ + "InteractionHandlerOptions", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "InteractionHandler", + "<" + ], + [ + "InteractionHandlerOptions", + ">" + ] + ] + ], + "meta": { + "line": 38, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "entries", + "description": "Returns an iterable of key, value pairs for every entry in the map.", + "returns": [ + [ + [ + "IterableIterator", + "<[" + ], + [ + "string", + ", " + ], + [ + "InteractionHandler", + "<" + ], + [ + "InteractionHandlerOptions", + ">]>" + ] + ] + ] + }, + { + "name": "equals", + "description": "Checks if this collection shares identical items with another.\nThis is different to checking for equality using equal-signs, because\nthe collections may be different objects, but contain the same data.", + "params": [ + { + "name": "collection", + "description": "Collection to compare with", + "optional": false, + "type": [ + [ + [ + "ReadonlyCollection", + "<" + ], + [ + "string", + ", " + ], + [ + "InteractionHandler", + "<" + ], + [ + "InteractionHandlerOptions", + ">>" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "boolean" + ] + ] + ], + "returnsDescription": "Whether the collections have identical contents", + "meta": { + "line": 339, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "every", + "description": "Checks if all items passes a test. Identical in behavior to\n[Array.every()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/every).", + "see": [], + "examples": [ + "collection.every(user => !user.bot);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function used to test (should return a boolean)", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "InteractionHandler", + "<" + ], + [ + "InteractionHandlerOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "InteractionHandlerStore", + ") => " + ], + [ + "key", + " " + ], + [ + "is", + " " + ], + [ + "K2" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "this", + " " + ], + [ + "is", + " " + ], + [ + "Collection", + "<" + ], + [ + "K2", + ", " + ], + [ + "InteractionHandler", + "<" + ], + [ + "InteractionHandlerOptions", + ">>" + ] + ] + ], + "meta": { + "line": 266, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "filter", + "description": "Identical to\n[Array.filter()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/filter),\nbut returns a Collection instead of an Array.", + "see": [], + "examples": [ + "collection.filter(user => user.username === 'Bob');" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "The function to test with (should return boolean)", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "InteractionHandler", + "<" + ], + [ + "InteractionHandlerOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "InteractionHandlerStore", + ") => " + ], + [ + "key", + " " + ], + [ + "is", + " " + ], + [ + "K2" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "K2", + ", " + ], + [ + "InteractionHandler", + "<" + ], + [ + "InteractionHandlerOptions", + ">>" + ] + ] + ], + "meta": { + "line": 186, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "find", + "description": "Searches for a single item where the given function returns a truthy value. This behaves like\n[Array.find()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/find).\n<warn>All collections used in Discord.js are mapped using their `id` property, and if you want to find by id you\nshould use the `get` method. See\n[MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map/get) for details.</warn>", + "see": [], + "examples": [ + "collection.find(user => user.username === 'Bob');" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "The function to test with (should return boolean)", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "InteractionHandler", + "<" + ], + [ + "InteractionHandlerOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "InteractionHandlerStore", + ") => " + ], + [ + "value", + " " + ], + [ + "is", + " " + ], + [ + "V2" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "V2" + ] + ] + ], + "meta": { + "line": 146, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "findKey", + "description": "Searches for the key of a single item where the given function returns a truthy value. This behaves like\n[Array.findIndex()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/findIndex),\nbut returns the key rather than the positional index.", + "see": [], + "examples": [ + "collection.findKey(user => user.username === 'Bob');" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "The function to test with (should return boolean)", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "InteractionHandler", + "<" + ], + [ + "InteractionHandlerOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "InteractionHandlerStore", + ") => " + ], + [ + "key", + " " + ], + [ + "is", + " " + ], + [ + "K2" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "K2" + ] + ] + ], + "meta": { + "line": 161, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "first", + "description": "Obtains the first value(s) in this collection.", + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "InteractionHandler", + "<" + ], + [ + "InteractionHandlerOptions", + ">" + ] + ] + ], + "returnsDescription": "A single value if no amount is provided or an array of values, starting from the end if amount is negative", + "meta": { + "line": 62, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "firstKey", + "description": "Obtains the first key(s) in this collection.", + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "string" + ] + ] + ], + "returnsDescription": "A single key if no amount is provided or an array of keys, starting from the end if\namount is negative", + "meta": { + "line": 72, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "flatMap", + "description": "Maps each item into a Collection, then joins the results into a single Collection. Identical in behavior to\n[Array.flatMap()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/flatMap).", + "see": [], + "examples": [ + "collection.flatMap(guild => guild.members.cache);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function that produces a new Collection", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "InteractionHandler", + "<" + ], + [ + "InteractionHandlerOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "InteractionHandlerStore", + ") => " + ], + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 218, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "forEach", + "params": [ + { + "name": "callbackfn", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "InteractionHandler", + "<" + ], + [ + "InteractionHandlerOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "map", + ": " + ], + [ + "Map", + "<" + ], + [ + "string", + ", " + ], + [ + "InteractionHandler", + "<" + ], + [ + "InteractionHandlerOptions", + ">>) => " + ], + [ + "void" + ] + ] + ] + }, + { + "name": "thisArg", + "optional": true, + "type": [ + [ + [ + "any" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "void" + ] + ] + ] + }, + { + "name": "get", + "params": [ + { + "name": "key", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "InteractionHandler", + "<" + ], + [ + "InteractionHandlerOptions", + ">" + ] + ] + ] + }, + { + "name": "has", + "params": [ + { + "name": "key", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "boolean" + ] + ] + ] + }, + { + "name": "hasAll", + "description": "Checks if all of the elements exist in the collection.", + "params": [ + { + "name": "keys", + "description": "The keys of the elements to check for", + "optional": false, + "type": [ + [ + [ + "Array", + "<" + ], + [ + "string", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "boolean" + ] + ] + ], + "returnsDescription": "`true` if all of the elements exist, `false` if at least one does not exist.", + "meta": { + "line": 46, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "hasAny", + "description": "Checks if any of the elements exist in the collection.", + "params": [ + { + "name": "keys", + "description": "The keys of the elements to check for", + "optional": false, + "type": [ + [ + [ + "Array", + "<" + ], + [ + "string", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "boolean" + ] + ] + ], + "returnsDescription": "`true` if any of the elements exist, `false` if none exist.", + "meta": { + "line": 54, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "insert", + "description": "Inserts a piece into the store.", + "params": [ + { + "name": "piece", + "description": "The piece to be inserted into the store.", + "optional": false, + "type": [ + [ + [ + "InteractionHandler", + "<" + ], + [ + "InteractionHandlerOptions", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "InteractionHandler", + "<" + ], + [ + "InteractionHandlerOptions", + ">>" + ] + ] + ], + "returnsDescription": "The inserted piece.", + "meta": { + "line": 338, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "intersect", + "description": "The intersect method returns a new structure containing items where the keys and values are present in both original structures.", + "params": [ + { + "name": "other", + "description": "The other Collection to filter against", + "optional": false, + "type": [ + [ + [ + "ReadonlyCollection", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 357, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "keyAt", + "description": "Identical to [Array.at()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/at).\nReturns the key at a given index, allowing for positive and negative integers.\nNegative integers count back from the last item in the collection.", + "params": [ + { + "name": "index", + "description": "The index of the key to obtain", + "optional": false, + "type": [ + [ + [ + "number" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "string" + ] + ] + ], + "meta": { + "line": 109, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "keys", + "description": "Returns an iterable of keys in the map", + "returns": [ + [ + [ + "IterableIterator", + "<" + ], + [ + "string", + ">" + ] + ] + ] + }, + { + "name": "last", + "description": "Obtains the last value(s) in this collection.", + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "InteractionHandler", + "<" + ], + [ + "InteractionHandlerOptions", + ">" + ] + ] + ], + "returnsDescription": "A single value if no amount is provided or an array of values, starting from the start if\namount is negative", + "meta": { + "line": 82, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "lastKey", + "description": "Obtains the last key(s) in this collection.", + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "string" + ] + ] + ], + "returnsDescription": "A single key if no amount is provided or an array of keys, starting from the start if\namount is negative", + "meta": { + "line": 92, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "load", + "description": "Loads one or more pieces from a path.", + "params": [ + { + "name": "root", + "description": "The root directory the file is from.", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "path", + "description": "The path of the file to load, relative to the `root`.", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "Array", + "<" + ], + [ + "InteractionHandler", + "<" + ], + [ + "InteractionHandlerOptions", + ">>>" + ] + ] + ], + "returnsDescription": "All the loaded pieces.", + "meta": { + "line": 312, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "loadAll", + "description": "Loads all pieces from all directories specified by {@link paths}.", + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "void", + ">" + ] + ] + ], + "meta": { + "line": 326, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "map", + "description": "Maps each item to another value into an array. Identical in behavior to\n[Array.map()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/map).", + "see": [], + "examples": [ + "collection.map(user => user.tag);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function that produces an element of the new array, taking three arguments", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "InteractionHandler", + "<" + ], + [ + "InteractionHandlerOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "InteractionHandlerStore", + ") => " + ], + [ + "T" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Array", + "<" + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 230, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "mapValues", + "description": "Maps each item to another value into a collection. Identical in behavior to\n[Array.map()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/map).", + "see": [], + "examples": [ + "collection.mapValues(user => user.tag);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function that produces an element of the new collection, taking three arguments", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "InteractionHandler", + "<" + ], + [ + "InteractionHandlerOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "InteractionHandlerStore", + ") => " + ], + [ + "T" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 242, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "partition", + "description": "Partitions the collection into two collections where the first collection\ncontains the items that passed and the second contains the items that failed.", + "see": [], + "examples": [ + "const [big, small] = collection.partition(guild => guild.memberCount > 250);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function used to test (should return a boolean)", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "InteractionHandler", + "<" + ], + [ + "InteractionHandlerOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "InteractionHandlerStore", + ") => " + ], + [ + "key", + " " + ], + [ + "is", + " " + ], + [ + "K2" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "[" + ], + [ + "Collection", + "<" + ], + [ + "K2", + ", " + ], + [ + "InteractionHandler", + "<" + ], + [ + "InteractionHandlerOptions", + ">>, " + ], + [ + "Collection", + "<" + ], + [ + "Exclude", + "<" + ], + [ + "string", + ", " + ], + [ + "K2", + ">, " + ], + [ + "InteractionHandler", + "<" + ], + [ + "InteractionHandlerOptions", + ">>]" + ] + ] + ], + "meta": { + "line": 202, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "random", + "description": "Obtains unique random value(s) from this collection.", + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "InteractionHandler", + "<" + ], + [ + "InteractionHandlerOptions", + ">" + ] + ] + ], + "returnsDescription": "A single value if no amount is provided or an array of values", + "meta": { + "line": 117, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "randomKey", + "description": "Obtains unique random key(s) from this collection.", + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "string" + ] + ] + ], + "returnsDescription": "A single key if no amount is provided or an array", + "meta": { + "line": 126, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "reduce", + "description": "Applies a function to produce a single value. Identical in behavior to\n[Array.reduce()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/reduce).", + "see": [], + "examples": [ + "collection.reduce((acc, guild) => acc + guild.memberCount, 0);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function used to reduce, taking four arguments; `accumulator`, `currentValue`, `currentKey`,\nand `collection`", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "accumulator", + ": " + ], + [ + "T", + ", " + ], + [ + "value", + ": " + ], + [ + "InteractionHandler", + "<" + ], + [ + "InteractionHandlerOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "InteractionHandlerStore", + ") => " + ], + [ + "T" + ] + ] + ] + }, + { + "name": "initialValue", + "description": "Starting value for the accumulator", + "optional": true, + "type": [ + [ + [ + "T" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "T" + ] + ] + ], + "meta": { + "line": 283, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "registerPath", + "description": "Registers a directory into the store.", + "see": [], + "examples": [ + "```typescript\nstore\n .registerPath(resolve('commands'))\n .registerPath(resolve('third-party', 'commands'));\n```" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "path", + "description": "The path to be added.", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "InteractionHandlerStore" + ] + ] + ], + "meta": { + "line": 305, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "resolve", + "description": "Resolves a piece by its name or its instance.", + "params": [ + { + "name": "name", + "description": "The name of the piece or the instance itself.", + "optional": false, + "type": [ + [ + [ + "string", + " | " + ], + [ + "InteractionHandler", + "<" + ], + [ + "InteractionHandlerOptions", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "InteractionHandler", + "<" + ], + [ + "InteractionHandlerOptions", + ">" + ] + ] + ], + "returnsDescription": "The resolved piece.", + "meta": { + "line": 332, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "reverse", + "description": "Identical to [Array.reverse()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/reverse)\nbut returns a Collection instead of an Array.", + "returns": [ + [ + [ + "InteractionHandlerStore" + ] + ] + ], + "meta": { + "line": 132, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "run", + "params": [ + { + "name": "interaction", + "optional": false, + "type": [ + [ + [ + "Interaction", + "<" + ], + [ + "CacheType", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "boolean", + ">" + ] + ] + ], + "meta": { + "line": 12, + "file": "InteractionHandlerStore.ts", + "path": "src/lib/structures" + } + }, + { + "name": "set", + "params": [ + { + "name": "key", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "value", + "optional": false, + "type": [ + [ + [ + "InteractionHandler", + "<" + ], + [ + "InteractionHandlerOptions", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "InteractionHandlerStore" + ] + ] + ] + }, + { + "name": "some", + "description": "Checks if there exists an item that passes a test. Identical in behavior to\n[Array.some()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/some).", + "see": [], + "examples": [ + "collection.some(user => user.discriminator === '0000');" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function used to test (should return a boolean)", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "InteractionHandler", + "<" + ], + [ + "InteractionHandlerOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "InteractionHandlerStore", + ") => " + ], + [ + "boolean" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "boolean" + ] + ] + ], + "meta": { + "line": 254, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "sort", + "description": "The sort method sorts the items of a collection in place and returns it.\nThe sort is not necessarily stable in Node 10 or older.\nThe default sort order is according to string Unicode code points.", + "see": [], + "examples": [ + "collection.sort((userA, userB) => userA.createdTimestamp - userB.createdTimestamp);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "compareFunction", + "description": "Specifies a function that defines the sort order.\nIf omitted, the collection is sorted according to each character's Unicode code point value, according to the string conversion of each element.", + "optional": true, + "type": [ + [ + [ + "Comparator", + "<" + ], + [ + "string", + ", " + ], + [ + "InteractionHandler", + "<" + ], + [ + "InteractionHandlerOptions", + ">>" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "InteractionHandlerStore" + ] + ] + ], + "meta": { + "line": 351, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "sorted", + "description": "The sorted method sorts the items of a collection and returns it.\nThe sort is not necessarily stable in Node 10 or older.\nThe default sort order is according to string Unicode code points.", + "see": [], + "examples": [ + "collection.sorted((userA, userB) => userA.createdTimestamp - userB.createdTimestamp);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "compareFunction", + "description": "Specifies a function that defines the sort order.\nIf omitted, the collection is sorted according to each character's Unicode code point value,\naccording to the string conversion of each element.", + "optional": true, + "type": [ + [ + [ + "Comparator", + "<" + ], + [ + "string", + ", " + ], + [ + "InteractionHandler", + "<" + ], + [ + "InteractionHandlerOptions", + ">>" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "InteractionHandler", + "<" + ], + [ + "InteractionHandlerOptions", + ">>" + ] + ] + ], + "meta": { + "line": 376, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "sweep", + "description": "Removes items that satisfy the provided filter function.", + "params": [ + { + "name": "fn", + "description": "Function used to test (should return a boolean)", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "InteractionHandler", + "<" + ], + [ + "InteractionHandlerOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "InteractionHandlerStore", + ") => " + ], + [ + "boolean" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "number" + ] + ] + ], + "returnsDescription": "The number of removed entries", + "meta": { + "line": 173, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "tap", + "description": "Runs a function on the collection and returns the collection.", + "see": [], + "examples": [ + "collection\n .tap(coll => console.log(coll.size))\n .filter(user => user.bot)\n .tap(coll => console.log(coll.size))" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function to execute", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "collection", + ": " + ], + [ + "InteractionHandlerStore", + ") => " + ], + [ + "void" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "InteractionHandlerStore" + ] + ] + ], + "meta": { + "line": 312, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "toJSON", + "returns": [ + [ + [ + "Array", + "<" + ], + [ + "InteractionHandler", + "<" + ], + [ + "InteractionHandlerOptions", + ">>" + ] + ] + ], + "meta": { + "line": 377, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "unload", + "description": "Unloads a piece given its instance or its name.", + "params": [ + { + "name": "name", + "description": "The name of the file to load.", + "optional": false, + "type": [ + [ + [ + "string", + " | " + ], + [ + "InteractionHandler", + "<" + ], + [ + "InteractionHandlerOptions", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "InteractionHandler", + "<" + ], + [ + "InteractionHandlerOptions", + ">>" + ] + ] + ], + "returnsDescription": "Returns the piece that was unloaded.", + "meta": { + "line": 318, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "unloadAll", + "description": "Unloads all pieces from the store.", + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "Array", + "<" + ], + [ + "InteractionHandler", + "<" + ], + [ + "InteractionHandlerOptions", + ">>>" + ] + ] + ], + "meta": { + "line": 322, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "values", + "description": "Returns an iterable of values in the map", + "returns": [ + [ + [ + "IterableIterator", + "<" + ], + [ + "InteractionHandler", + "<" + ], + [ + "InteractionHandlerOptions", + ">>" + ] + ] + ] + } + ], + "meta": { + "line": 7, + "file": "InteractionHandlerStore.ts", + "path": "src/lib/structures" + } + }, + { + "name": "Listener", + "description": "The base event class. This class is abstract and is to be extended by subclasses, which should implement the methods. In\nSapphire's workflow, listeners are called when the emitter they listen on emits a new message with the same event name.", + "see": [], + "extends": [ + "Piece<O>" + ], + "examples": [ + "```typescript\nimport { Events, Listener } from '@sapphire/framework';\n\nexport class CoreListener extends Listener<typeof Events.Ready> {\n public constructor(context: Listener.Context) {\n super(context, { event: Events.Ready, once: true });\n }\n\n public run() {\n this.container.client.id ??= this.container.client.user?.id ?? null;\n }\n}\n```" + ], + "abstract": false, + "deprecated": false, + "construct": { + "name": "constructor", + "params": [ + { + "name": "context", + "optional": false, + "type": [ + [ + [ + "PieceContext" + ] + ] + ] + }, + { + "name": "options", + "optional": true, + "type": [ + [ + [ + "O" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Listener", + "<" + ], + [ + "E", + ", " + ], + [ + "O", + ">" + ] + ] + ], + "meta": { + "line": 47, + "file": "Listener.ts", + "path": "src/lib/structures" + } + }, + "props": [ + { + "name": "_listener", + "access": "private", + "type": [ + [ + [ + "null", + " | (" + ], + [ + "args", + ": " + ], + [ + "Array", + "<" + ], + [ + "any", + ">) => " + ], + [ + "void" + ] + ] + ], + "meta": { + "line": 45, + "file": "Listener.ts", + "path": "src/lib/structures" + } + }, + { + "name": "emitter", + "description": "The emitter, if any.", + "see": [], + "readonly": true, + "abstract": false, + "deprecated": false, + "type": [ + [ + [ + "null", + " | " + ], + [ + "EventEmitter" + ] + ] + ], + "meta": { + "line": 31, + "file": "Listener.ts", + "path": "src/lib/structures" + } + }, + { + "name": "enabled", + "description": "Whether or not the piece is enabled.", + "type": [ + [ + [ + "boolean" + ] + ] + ], + "meta": { + "line": 447, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "event", + "description": "The name of the event the listener listens to.", + "see": [], + "readonly": true, + "abstract": false, + "deprecated": false, + "type": [ + [ + [ + "string", + " | " + ], + [ + "symbol" + ] + ] + ], + "meta": { + "line": 37, + "file": "Listener.ts", + "path": "src/lib/structures" + } + }, + { + "name": "location", + "description": "The location metadata for the piece's file.", + "readonly": true, + "type": [ + [ + [ + "PieceLocation" + ] + ] + ], + "meta": { + "line": 439, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "name", + "description": "The name of the piece.", + "readonly": true, + "type": [ + [ + [ + "string" + ] + ] + ], + "meta": { + "line": 443, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "once", + "description": "Whether or not the listener will be unloaded after the first run.", + "see": [], + "readonly": true, + "abstract": false, + "deprecated": false, + "type": [ + [ + [ + "boolean" + ] + ] + ], + "meta": { + "line": 43, + "file": "Listener.ts", + "path": "src/lib/structures" + } + }, + { + "name": "options", + "description": "The raw options passed to this {@link Piece}", + "readonly": true, + "type": [ + [ + [ + "O" + ] + ] + ], + "meta": { + "line": 451, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "store", + "description": "The store that contains the piece.", + "readonly": true, + "type": [ + [ + [ + "Store", + "<" + ], + [ + "Piece", + "<" + ], + [ + "PieceOptions", + ">>" + ] + ] + ], + "meta": { + "line": 435, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "container", + "description": "A reference to the {@link Container} object for ease of use.", + "see": [ + "container" + ], + "readonly": true, + "abstract": false, + "deprecated": false, + "type": [ + [ + [ + "Container" + ] + ] + ], + "meta": { + "line": 457, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + } + ], + "methods": [ + { + "name": "_run", + "access": "private", + "params": [ + { + "name": "args", + "optional": false, + "type": [ + [ + [ + "Array", + "<" + ], + [ + "unknown", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "void", + ">" + ] + ] + ], + "meta": { + "line": 102, + "file": "Listener.ts", + "path": "src/lib/structures" + } + }, + { + "name": "_runOnce", + "access": "private", + "params": [ + { + "name": "args", + "optional": false, + "type": [ + [ + [ + "Array", + "<" + ], + [ + "unknown", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "void", + ">" + ] + ] + ], + "meta": { + "line": 110, + "file": "Listener.ts", + "path": "src/lib/structures" + } + }, + { + "name": "onLoad", + "description": "Per-piece listener that is called when the piece is loaded into the store.\nUseful to set-up asynchronous initialization tasks.", + "returns": [ + [ + [ + "unknown" + ] + ] + ], + "meta": { + "line": 66, + "file": "Listener.ts", + "path": "src/lib/structures" + } + }, + { + "name": "onUnload", + "description": "Per-piece listener that is called when the piece is unloaded from the store.\nUseful to set-up clean-up tasks.", + "returns": [ + [ + [ + "unknown" + ] + ] + ], + "meta": { + "line": 79, + "file": "Listener.ts", + "path": "src/lib/structures" + } + }, + { + "name": "reload", + "description": "Reloads the piece by loading the same path in the store.", + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "void", + ">" + ] + ] + ], + "meta": { + "line": 475, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "run", + "params": [ + { + "name": "args", + "optional": false, + "type": [ + [ + [ + "E", + " " + ], + [ + "extends", + " " + ], + [ + "keyof", + " " + ], + [ + "ClientEvents", + " ? " + ], + [ + "ClientEvents", + "[" + ], + [ + "E", + "] : " + ], + [ + "Array", + "<" + ], + [ + "unknown", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "unknown" + ] + ] + ], + "meta": { + "line": 64, + "file": "Listener.ts", + "path": "src/lib/structures" + } + }, + { + "name": "toJSON", + "description": "Defines the `JSON.stringify` behavior of this piece.", + "returns": [ + [ + [ + "ListenerJSON" + ] + ] + ], + "meta": { + "line": 94, + "file": "Listener.ts", + "path": "src/lib/structures" + } + }, + { + "name": "unload", + "description": "Unloads and disables the piece.", + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "void", + ">" + ] + ] + ], + "meta": { + "line": 471, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + } + ], + "meta": { + "line": 26, + "file": "Listener.ts", + "path": "src/lib/structures" + } + }, + { + "name": "ListenerStore", + "extends": [ + "Store<Listener>" + ], + "construct": { + "name": "constructor", + "returns": [ + [ + [ + "ListenerStore" + ] + ] + ], + "meta": { + "line": 5, + "file": "ListenerStore.ts", + "path": "src/lib/structures" + } + }, + "props": [ + { + "name": "Constructor", + "readonly": true, + "type": [ + [ + [ + "Constructor", + "<" + ], + [ + "Listener", + "<" + ], + [ + "''", + ", " + ], + [ + "ListenerOptions", + ">>" + ] + ] + ], + "meta": { + "line": 281, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "[toStringTag]", + "readonly": true, + "type": [ + [ + [ + "string" + ] + ] + ], + "meta": { + "line": 135, + "file": "lib.es2015.symbol.wellknown.d.ts", + "path": "node_modules/typescript/lib" + } + }, + { + "name": "constructor", + "type": [ + [ + [ + "CollectionConstructor" + ] + ] + ], + "meta": { + "line": 21, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "name", + "readonly": true, + "type": [ + [ + [ + "string" + ] + ] + ], + "meta": { + "line": 282, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "paths", + "readonly": true, + "type": [ + [ + [ + "Set", + "<" + ], + [ + "string", + ">" + ] + ] + ], + "meta": { + "line": 283, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "size", + "readonly": true, + "type": [ + [ + [ + "number" + ] + ] + ], + "meta": { + "line": 28, + "file": "lib.es2015.collection.d.ts", + "path": "node_modules/typescript/lib" + } + }, + { + "name": "strategy", + "readonly": true, + "type": [ + [ + [ + "ILoaderStrategy", + "<" + ], + [ + "Listener", + "<" + ], + [ + "''", + ", " + ], + [ + "ListenerOptions", + ">>" + ] + ] + ], + "meta": { + "line": 284, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "[species]", + "scope": "static", + "readonly": true, + "type": [ + [ + [ + "MapConstructor" + ] + ] + ], + "meta": { + "line": 317, + "file": "lib.es2015.symbol.wellknown.d.ts", + "path": "node_modules/typescript/lib" + } + }, + { + "name": "default", + "scope": "static", + "readonly": true, + "type": [ + [ + [ + "(" + ], + [ + "typeof", + " " + ], + [ + "Collection", + ")" + ] + ] + ], + "meta": { + "line": 28, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "defaultStrategy", + "description": "The default strategy, defaults to {@link LoaderStrategy}, which is constructed on demand when a store is constructed,\nwhen none was set beforehand.", + "scope": "static", + "type": [ + [ + [ + "ILoaderStrategy", + "<" + ], + [ + "any", + ">" + ] + ] + ], + "meta": { + "line": 369, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "logger", + "description": "The default logger, defaults to `null`.", + "scope": "static", + "type": [ + [ + [ + "null", + " | " + ], + [ + "StoreLogger" + ] + ] + ], + "meta": { + "line": 373, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "container", + "description": "A reference to the {@link Container} object for ease of use.", + "see": [ + "container" + ], + "readonly": true, + "abstract": false, + "deprecated": false, + "type": [ + [ + [ + "Container" + ] + ] + ], + "meta": { + "line": 294, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + } + ], + "methods": [ + { + "name": "[iterator]", + "description": "Returns an iterable of entries in the map.", + "returns": [ + [ + [ + "IterableIterator", + "<[" + ], + [ + "string", + ", " + ], + [ + "Listener", + "<" + ], + [ + "''", + ", " + ], + [ + "ListenerOptions", + ">]>" + ] + ] + ] + }, + { + "name": "at", + "description": "Identical to [Array.at()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/at).\nReturns the item at a given index, allowing for positive and negative integers.\nNegative integers count back from the last item in the collection.", + "params": [ + { + "name": "index", + "description": "The index of the element to obtain", + "optional": false, + "type": [ + [ + [ + "number" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "Listener", + "<" + ], + [ + "''", + ", " + ], + [ + "ListenerOptions", + ">" + ] + ] + ], + "meta": { + "line": 101, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "clear", + "returns": [ + [ + [ + "void" + ] + ] + ] + }, + { + "name": "clone", + "description": "Creates an identical shallow copy of this collection.", + "see": [], + "examples": [ + "const newColl = someColl.clone();" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "Listener", + "<" + ], + [ + "''", + ", " + ], + [ + "ListenerOptions", + ">>" + ] + ] + ], + "meta": { + "line": 320, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "concat", + "description": "Combines this collection with others into a new collection. None of the source collections are modified.", + "see": [], + "examples": [ + "const newColl = someColl.concat(someOtherColl, anotherColl, ohBoyAColl);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "collections", + "description": "Collections to merge", + "optional": false, + "type": [ + [ + [ + "Array", + "<" + ], + [ + "ReadonlyCollection", + "<" + ], + [ + "string", + ", " + ], + [ + "Listener", + "<" + ], + [ + "''", + ", " + ], + [ + "ListenerOptions", + ">>>" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "Listener", + "<" + ], + [ + "''", + ", " + ], + [ + "ListenerOptions", + ">>" + ] + ] + ], + "meta": { + "line": 329, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "construct", + "description": "Constructs a {@link Piece} instance.", + "params": [ + { + "name": "Ctor", + "description": "The {@link Piece}'s constructor used to build the instance.", + "optional": false, + "type": [ + [ + [ + "ILoaderResultEntry", + "<" + ], + [ + "Listener", + "<" + ], + [ + "''", + ", " + ], + [ + "ListenerOptions", + ">>" + ] + ] + ] + }, + { + "name": "data", + "description": "The module's information", + "optional": false, + "type": [ + [ + [ + "HydratedModuleData" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Listener", + "<" + ], + [ + "''", + ", " + ], + [ + "ListenerOptions", + ">" + ] + ] + ], + "returnsDescription": "An instance of the constructed piece.", + "meta": { + "line": 345, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "delete", + "params": [ + { + "name": "key", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "boolean" + ] + ] + ] + }, + { + "name": "difference", + "description": "The difference method returns a new structure containing items where the key is present in one of the original structures but not the other.", + "params": [ + { + "name": "other", + "description": "The other Collection to filter against", + "optional": false, + "type": [ + [ + [ + "ReadonlyCollection", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "Listener", + "<" + ], + [ + "''", + ", " + ], + [ + "ListenerOptions", + "> | " + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 363, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "each", + "description": "Identical to\n[Map.forEach()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map/forEach),\nbut returns the collection instead of undefined.", + "see": [], + "examples": [ + "collection\n .each(user => console.log(user.username))\n .filter(user => user.bot)\n .each(user => console.log(user.username));" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function to execute for each element", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Listener", + "<" + ], + [ + "''", + ", " + ], + [ + "ListenerOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "ListenerStore", + ") => " + ], + [ + "void" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "ListenerStore" + ] + ] + ], + "meta": { + "line": 298, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "ensure", + "description": "Obtains the value of the given key if it exists, otherwise sets and returns the value provided by the default value generator.", + "see": [], + "examples": [ + "collection.ensure(guildId, () => defaultGuildConfig);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "key", + "description": "The key to get if it exists, or set otherwise", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "defaultValueGenerator", + "description": "A function that generates the default value", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "ListenerStore", + ") => " + ], + [ + "Listener", + "<" + ], + [ + "''", + ", " + ], + [ + "ListenerOptions", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Listener", + "<" + ], + [ + "''", + ", " + ], + [ + "ListenerOptions", + ">" + ] + ] + ], + "meta": { + "line": 38, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "entries", + "description": "Returns an iterable of key, value pairs for every entry in the map.", + "returns": [ + [ + [ + "IterableIterator", + "<[" + ], + [ + "string", + ", " + ], + [ + "Listener", + "<" + ], + [ + "''", + ", " + ], + [ + "ListenerOptions", + ">]>" + ] + ] + ] + }, + { + "name": "equals", + "description": "Checks if this collection shares identical items with another.\nThis is different to checking for equality using equal-signs, because\nthe collections may be different objects, but contain the same data.", + "params": [ + { + "name": "collection", + "description": "Collection to compare with", + "optional": false, + "type": [ + [ + [ + "ReadonlyCollection", + "<" + ], + [ + "string", + ", " + ], + [ + "Listener", + "<" + ], + [ + "''", + ", " + ], + [ + "ListenerOptions", + ">>" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "boolean" + ] + ] + ], + "returnsDescription": "Whether the collections have identical contents", + "meta": { + "line": 339, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "every", + "description": "Checks if all items passes a test. Identical in behavior to\n[Array.every()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/every).", + "see": [], + "examples": [ + "collection.every(user => !user.bot);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function used to test (should return a boolean)", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Listener", + "<" + ], + [ + "''", + ", " + ], + [ + "ListenerOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "ListenerStore", + ") => " + ], + [ + "key", + " " + ], + [ + "is", + " " + ], + [ + "K2" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "this", + " " + ], + [ + "is", + " " + ], + [ + "Collection", + "<" + ], + [ + "K2", + ", " + ], + [ + "Listener", + "<" + ], + [ + "''", + ", " + ], + [ + "ListenerOptions", + ">>" + ] + ] + ], + "meta": { + "line": 266, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "filter", + "description": "Identical to\n[Array.filter()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/filter),\nbut returns a Collection instead of an Array.", + "see": [], + "examples": [ + "collection.filter(user => user.username === 'Bob');" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "The function to test with (should return boolean)", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Listener", + "<" + ], + [ + "''", + ", " + ], + [ + "ListenerOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "ListenerStore", + ") => " + ], + [ + "key", + " " + ], + [ + "is", + " " + ], + [ + "K2" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "K2", + ", " + ], + [ + "Listener", + "<" + ], + [ + "''", + ", " + ], + [ + "ListenerOptions", + ">>" + ] + ] + ], + "meta": { + "line": 186, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "find", + "description": "Searches for a single item where the given function returns a truthy value. This behaves like\n[Array.find()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/find).\n<warn>All collections used in Discord.js are mapped using their `id` property, and if you want to find by id you\nshould use the `get` method. See\n[MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map/get) for details.</warn>", + "see": [], + "examples": [ + "collection.find(user => user.username === 'Bob');" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "The function to test with (should return boolean)", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Listener", + "<" + ], + [ + "''", + ", " + ], + [ + "ListenerOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "ListenerStore", + ") => " + ], + [ + "value", + " " + ], + [ + "is", + " " + ], + [ + "V2" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "V2" + ] + ] + ], + "meta": { + "line": 146, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "findKey", + "description": "Searches for the key of a single item where the given function returns a truthy value. This behaves like\n[Array.findIndex()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/findIndex),\nbut returns the key rather than the positional index.", + "see": [], + "examples": [ + "collection.findKey(user => user.username === 'Bob');" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "The function to test with (should return boolean)", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Listener", + "<" + ], + [ + "''", + ", " + ], + [ + "ListenerOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "ListenerStore", + ") => " + ], + [ + "key", + " " + ], + [ + "is", + " " + ], + [ + "K2" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "K2" + ] + ] + ], + "meta": { + "line": 161, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "first", + "description": "Obtains the first value(s) in this collection.", + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "Listener", + "<" + ], + [ + "''", + ", " + ], + [ + "ListenerOptions", + ">" + ] + ] + ], + "returnsDescription": "A single value if no amount is provided or an array of values, starting from the end if amount is negative", + "meta": { + "line": 62, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "firstKey", + "description": "Obtains the first key(s) in this collection.", + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "string" + ] + ] + ], + "returnsDescription": "A single key if no amount is provided or an array of keys, starting from the end if\namount is negative", + "meta": { + "line": 72, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "flatMap", + "description": "Maps each item into a Collection, then joins the results into a single Collection. Identical in behavior to\n[Array.flatMap()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/flatMap).", + "see": [], + "examples": [ + "collection.flatMap(guild => guild.members.cache);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function that produces a new Collection", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Listener", + "<" + ], + [ + "''", + ", " + ], + [ + "ListenerOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "ListenerStore", + ") => " + ], + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 218, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "forEach", + "params": [ + { + "name": "callbackfn", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Listener", + "<" + ], + [ + "''", + ", " + ], + [ + "ListenerOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "map", + ": " + ], + [ + "Map", + "<" + ], + [ + "string", + ", " + ], + [ + "Listener", + "<" + ], + [ + "''", + ", " + ], + [ + "ListenerOptions", + ">>) => " + ], + [ + "void" + ] + ] + ] + }, + { + "name": "thisArg", + "optional": true, + "type": [ + [ + [ + "any" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "void" + ] + ] + ] + }, + { + "name": "get", + "params": [ + { + "name": "key", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "Listener", + "<" + ], + [ + "''", + ", " + ], + [ + "ListenerOptions", + ">" + ] + ] + ] + }, + { + "name": "has", + "params": [ + { + "name": "key", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "boolean" + ] + ] + ] + }, + { + "name": "hasAll", + "description": "Checks if all of the elements exist in the collection.", + "params": [ + { + "name": "keys", + "description": "The keys of the elements to check for", + "optional": false, + "type": [ + [ + [ + "Array", + "<" + ], + [ + "string", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "boolean" + ] + ] + ], + "returnsDescription": "`true` if all of the elements exist, `false` if at least one does not exist.", + "meta": { + "line": 46, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "hasAny", + "description": "Checks if any of the elements exist in the collection.", + "params": [ + { + "name": "keys", + "description": "The keys of the elements to check for", + "optional": false, + "type": [ + [ + [ + "Array", + "<" + ], + [ + "string", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "boolean" + ] + ] + ], + "returnsDescription": "`true` if any of the elements exist, `false` if none exist.", + "meta": { + "line": 54, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "insert", + "description": "Inserts a piece into the store.", + "params": [ + { + "name": "piece", + "description": "The piece to be inserted into the store.", + "optional": false, + "type": [ + [ + [ + "Listener", + "<" + ], + [ + "''", + ", " + ], + [ + "ListenerOptions", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "Listener", + "<" + ], + [ + "''", + ", " + ], + [ + "ListenerOptions", + ">>" + ] + ] + ], + "returnsDescription": "The inserted piece.", + "meta": { + "line": 338, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "intersect", + "description": "The intersect method returns a new structure containing items where the keys and values are present in both original structures.", + "params": [ + { + "name": "other", + "description": "The other Collection to filter against", + "optional": false, + "type": [ + [ + [ + "ReadonlyCollection", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 357, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "keyAt", + "description": "Identical to [Array.at()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/at).\nReturns the key at a given index, allowing for positive and negative integers.\nNegative integers count back from the last item in the collection.", + "params": [ + { + "name": "index", + "description": "The index of the key to obtain", + "optional": false, + "type": [ + [ + [ + "number" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "string" + ] + ] + ], + "meta": { + "line": 109, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "keys", + "description": "Returns an iterable of keys in the map", + "returns": [ + [ + [ + "IterableIterator", + "<" + ], + [ + "string", + ">" + ] + ] + ] + }, + { + "name": "last", + "description": "Obtains the last value(s) in this collection.", + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "Listener", + "<" + ], + [ + "''", + ", " + ], + [ + "ListenerOptions", + ">" + ] + ] + ], + "returnsDescription": "A single value if no amount is provided or an array of values, starting from the start if\namount is negative", + "meta": { + "line": 82, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "lastKey", + "description": "Obtains the last key(s) in this collection.", + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "string" + ] + ] + ], + "returnsDescription": "A single key if no amount is provided or an array of keys, starting from the start if\namount is negative", + "meta": { + "line": 92, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "load", + "description": "Loads one or more pieces from a path.", + "params": [ + { + "name": "root", + "description": "The root directory the file is from.", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "path", + "description": "The path of the file to load, relative to the `root`.", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "Array", + "<" + ], + [ + "Listener", + "<" + ], + [ + "''", + ", " + ], + [ + "ListenerOptions", + ">>>" + ] + ] + ], + "returnsDescription": "All the loaded pieces.", + "meta": { + "line": 312, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "loadAll", + "description": "Loads all pieces from all directories specified by {@link paths}.", + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "void", + ">" + ] + ] + ], + "meta": { + "line": 326, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "map", + "description": "Maps each item to another value into an array. Identical in behavior to\n[Array.map()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/map).", + "see": [], + "examples": [ + "collection.map(user => user.tag);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function that produces an element of the new array, taking three arguments", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Listener", + "<" + ], + [ + "''", + ", " + ], + [ + "ListenerOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "ListenerStore", + ") => " + ], + [ + "T" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Array", + "<" + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 230, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "mapValues", + "description": "Maps each item to another value into a collection. Identical in behavior to\n[Array.map()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/map).", + "see": [], + "examples": [ + "collection.mapValues(user => user.tag);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function that produces an element of the new collection, taking three arguments", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Listener", + "<" + ], + [ + "''", + ", " + ], + [ + "ListenerOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "ListenerStore", + ") => " + ], + [ + "T" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 242, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "partition", + "description": "Partitions the collection into two collections where the first collection\ncontains the items that passed and the second contains the items that failed.", + "see": [], + "examples": [ + "const [big, small] = collection.partition(guild => guild.memberCount > 250);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function used to test (should return a boolean)", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Listener", + "<" + ], + [ + "''", + ", " + ], + [ + "ListenerOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "ListenerStore", + ") => " + ], + [ + "key", + " " + ], + [ + "is", + " " + ], + [ + "K2" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "[" + ], + [ + "Collection", + "<" + ], + [ + "K2", + ", " + ], + [ + "Listener", + "<" + ], + [ + "''", + ", " + ], + [ + "ListenerOptions", + ">>, " + ], + [ + "Collection", + "<" + ], + [ + "Exclude", + "<" + ], + [ + "string", + ", " + ], + [ + "K2", + ">, " + ], + [ + "Listener", + "<" + ], + [ + "''", + ", " + ], + [ + "ListenerOptions", + ">>]" + ] + ] + ], + "meta": { + "line": 202, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "random", + "description": "Obtains unique random value(s) from this collection.", + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "Listener", + "<" + ], + [ + "''", + ", " + ], + [ + "ListenerOptions", + ">" + ] + ] + ], + "returnsDescription": "A single value if no amount is provided or an array of values", + "meta": { + "line": 117, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "randomKey", + "description": "Obtains unique random key(s) from this collection.", + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "string" + ] + ] + ], + "returnsDescription": "A single key if no amount is provided or an array", + "meta": { + "line": 126, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "reduce", + "description": "Applies a function to produce a single value. Identical in behavior to\n[Array.reduce()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/reduce).", + "see": [], + "examples": [ + "collection.reduce((acc, guild) => acc + guild.memberCount, 0);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function used to reduce, taking four arguments; `accumulator`, `currentValue`, `currentKey`,\nand `collection`", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "accumulator", + ": " + ], + [ + "T", + ", " + ], + [ + "value", + ": " + ], + [ + "Listener", + "<" + ], + [ + "''", + ", " + ], + [ + "ListenerOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "ListenerStore", + ") => " + ], + [ + "T" + ] + ] + ] + }, + { + "name": "initialValue", + "description": "Starting value for the accumulator", + "optional": true, + "type": [ + [ + [ + "T" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "T" + ] + ] + ], + "meta": { + "line": 283, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "registerPath", + "description": "Registers a directory into the store.", + "see": [], + "examples": [ + "```typescript\nstore\n .registerPath(resolve('commands'))\n .registerPath(resolve('third-party', 'commands'));\n```" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "path", + "description": "The path to be added.", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "ListenerStore" + ] + ] + ], + "meta": { + "line": 305, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "resolve", + "description": "Resolves a piece by its name or its instance.", + "params": [ + { + "name": "name", + "description": "The name of the piece or the instance itself.", + "optional": false, + "type": [ + [ + [ + "string", + " | " + ], + [ + "Listener", + "<" + ], + [ + "''", + ", " + ], + [ + "ListenerOptions", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Listener", + "<" + ], + [ + "''", + ", " + ], + [ + "ListenerOptions", + ">" + ] + ] + ], + "returnsDescription": "The resolved piece.", + "meta": { + "line": 332, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "reverse", + "description": "Identical to [Array.reverse()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/reverse)\nbut returns a Collection instead of an Array.", + "returns": [ + [ + [ + "ListenerStore" + ] + ] + ], + "meta": { + "line": 132, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "set", + "params": [ + { + "name": "key", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "value", + "optional": false, + "type": [ + [ + [ + "Listener", + "<" + ], + [ + "''", + ", " + ], + [ + "ListenerOptions", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "ListenerStore" + ] + ] + ] + }, + { + "name": "some", + "description": "Checks if there exists an item that passes a test. Identical in behavior to\n[Array.some()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/some).", + "see": [], + "examples": [ + "collection.some(user => user.discriminator === '0000');" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function used to test (should return a boolean)", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Listener", + "<" + ], + [ + "''", + ", " + ], + [ + "ListenerOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "ListenerStore", + ") => " + ], + [ + "boolean" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "boolean" + ] + ] + ], + "meta": { + "line": 254, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "sort", + "description": "The sort method sorts the items of a collection in place and returns it.\nThe sort is not necessarily stable in Node 10 or older.\nThe default sort order is according to string Unicode code points.", + "see": [], + "examples": [ + "collection.sort((userA, userB) => userA.createdTimestamp - userB.createdTimestamp);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "compareFunction", + "description": "Specifies a function that defines the sort order.\nIf omitted, the collection is sorted according to each character's Unicode code point value, according to the string conversion of each element.", + "optional": true, + "type": [ + [ + [ + "Comparator", + "<" + ], + [ + "string", + ", " + ], + [ + "Listener", + "<" + ], + [ + "''", + ", " + ], + [ + "ListenerOptions", + ">>" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "ListenerStore" + ] + ] + ], + "meta": { + "line": 351, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "sorted", + "description": "The sorted method sorts the items of a collection and returns it.\nThe sort is not necessarily stable in Node 10 or older.\nThe default sort order is according to string Unicode code points.", + "see": [], + "examples": [ + "collection.sorted((userA, userB) => userA.createdTimestamp - userB.createdTimestamp);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "compareFunction", + "description": "Specifies a function that defines the sort order.\nIf omitted, the collection is sorted according to each character's Unicode code point value,\naccording to the string conversion of each element.", + "optional": true, + "type": [ + [ + [ + "Comparator", + "<" + ], + [ + "string", + ", " + ], + [ + "Listener", + "<" + ], + [ + "''", + ", " + ], + [ + "ListenerOptions", + ">>" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "Listener", + "<" + ], + [ + "''", + ", " + ], + [ + "ListenerOptions", + ">>" + ] + ] + ], + "meta": { + "line": 376, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "sweep", + "description": "Removes items that satisfy the provided filter function.", + "params": [ + { + "name": "fn", + "description": "Function used to test (should return a boolean)", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Listener", + "<" + ], + [ + "''", + ", " + ], + [ + "ListenerOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "ListenerStore", + ") => " + ], + [ + "boolean" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "number" + ] + ] + ], + "returnsDescription": "The number of removed entries", + "meta": { + "line": 173, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "tap", + "description": "Runs a function on the collection and returns the collection.", + "see": [], + "examples": [ + "collection\n .tap(coll => console.log(coll.size))\n .filter(user => user.bot)\n .tap(coll => console.log(coll.size))" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function to execute", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "collection", + ": " + ], + [ + "ListenerStore", + ") => " + ], + [ + "void" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "ListenerStore" + ] + ] + ], + "meta": { + "line": 312, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "toJSON", + "returns": [ + [ + [ + "Array", + "<" + ], + [ + "Listener", + "<" + ], + [ + "''", + ", " + ], + [ + "ListenerOptions", + ">>" + ] + ] + ], + "meta": { + "line": 377, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "unload", + "description": "Unloads a piece given its instance or its name.", + "params": [ + { + "name": "name", + "description": "The name of the file to load.", + "optional": false, + "type": [ + [ + [ + "string", + " | " + ], + [ + "Listener", + "<" + ], + [ + "''", + ", " + ], + [ + "ListenerOptions", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "Listener", + "<" + ], + [ + "''", + ", " + ], + [ + "ListenerOptions", + ">>" + ] + ] + ], + "returnsDescription": "Returns the piece that was unloaded.", + "meta": { + "line": 318, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "unloadAll", + "description": "Unloads all pieces from the store.", + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "Array", + "<" + ], + [ + "Listener", + "<" + ], + [ + "''", + ", " + ], + [ + "ListenerOptions", + ">>>" + ] + ] + ], + "meta": { + "line": 322, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "values", + "description": "Returns an iterable of values in the map", + "returns": [ + [ + [ + "IterableIterator", + "<" + ], + [ + "Listener", + "<" + ], + [ + "''", + ", " + ], + [ + "ListenerOptions", + ">>" + ] + ] + ] + } + ], + "meta": { + "line": 4, + "file": "ListenerStore.ts", + "path": "src/lib/structures" + } + }, + { + "name": "LoaderError", + "description": "Describes a loader error with a type for easy indentification.", + "extends": [ + "Error" + ], + "construct": { + "name": "constructor", + "params": [ + { + "name": "type", + "optional": false, + "type": [ + [ + [ + "LoaderErrorType" + ] + ] + ] + }, + { + "name": "message", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "LoaderError" + ] + ] + ], + "meta": { + "line": 17, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + "props": [ + { + "name": "cause", + "type": [ + [ + [ + "Error" + ] + ] + ], + "meta": { + "line": 26, + "file": "lib.es2022.error.d.ts", + "path": "node_modules/typescript/lib" + } + }, + { + "name": "message", + "type": [ + [ + [ + "string" + ] + ] + ], + "meta": { + "line": 1023, + "file": "lib.es5.d.ts", + "path": "node_modules/typescript/lib" + } + }, + { + "name": "stack", + "type": [ + [ + [ + "string" + ] + ] + ], + "meta": { + "line": 1024, + "file": "lib.es5.d.ts", + "path": "node_modules/typescript/lib" + } + }, + { + "name": "type", + "description": "The type of the error that was thrown.", + "readonly": true, + "type": [ + [ + [ + "LoaderErrorType" + ] + ] + ], + "meta": { + "line": 16, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "prepareStackTrace", + "scope": "static", + "type": [ + [ + [ + "(" + ], + [ + "err", + ": " + ], + [ + "Error", + ", " + ], + [ + "stackTraces", + ": " + ], + [ + "Array", + "<" + ], + [ + "CallSite", + ">) => " + ], + [ + "any" + ] + ] + ], + "meta": { + "line": 11, + "file": "globals.d.ts", + "path": "node_modules/@types/node" + } + }, + { + "name": "stackTraceLimit", + "scope": "static", + "type": [ + [ + [ + "number" + ] + ] + ], + "meta": { + "line": 13, + "file": "globals.d.ts", + "path": "node_modules/@types/node" + } + }, + { + "name": "name", + "readonly": true, + "type": [ + [ + [ + "string" + ] + ] + ], + "meta": { + "line": 18, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + } + ], + "methods": [ + { + "name": "captureStackTrace", + "description": "Create .stack property on a target object", + "scope": "static", + "params": [ + { + "name": "targetObject", + "optional": false, + "type": [ + [ + [ + "object" + ] + ] + ] + }, + { + "name": "constructorOpt", + "optional": true, + "type": [ + [ + [ + "Function" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "void" + ] + ] + ] + } + ], + "meta": { + "line": 12, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + }, + "isExternal": true + }, + { + "name": "Logger", + "implements": [ + "ILogger" + ], + "construct": { + "name": "constructor", + "params": [ + { + "name": "level", + "optional": false, + "type": [ + [ + [ + "LogLevel" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Logger" + ] + ] + ], + "meta": { + "line": 6, + "file": "Logger.ts", + "path": "src/lib/utils/logger" + } + }, + "props": [ + { + "name": "level", + "type": [ + [ + [ + "LogLevel" + ] + ] + ], + "meta": { + "line": 4, + "file": "Logger.ts", + "path": "src/lib/utils/logger" + } + }, + { + "name": "levels", + "scope": "static", + "readonly": true, + "type": [ + [ + [ + "Map", + "<" + ], + [ + "LogLevel", + ", " + ], + [ + "LogMethods", + ">" + ] + ] + ], + "meta": { + "line": 44, + "file": "Logger.ts", + "path": "src/lib/utils/logger" + } + } + ], + "methods": [ + { + "name": "debug", + "description": "Alias of {@link ILogger.write} with {@link LogLevel.Debug} as level.", + "params": [ + { + "name": "values", + "optional": false, + "type": [ + [ + [ + "readonly", + " " + ], + [ + "Array", + "<" + ], + [ + "unknown", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "void" + ] + ] + ], + "meta": { + "line": 18, + "file": "Logger.ts", + "path": "src/lib/utils/logger" + } + }, + { + "name": "error", + "description": "Alias of {@link ILogger.write} with {@link LogLevel.Error} as level.", + "params": [ + { + "name": "values", + "optional": false, + "type": [ + [ + [ + "readonly", + " " + ], + [ + "Array", + "<" + ], + [ + "unknown", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "void" + ] + ] + ], + "meta": { + "line": 30, + "file": "Logger.ts", + "path": "src/lib/utils/logger" + } + }, + { + "name": "fatal", + "description": "Alias of {@link ILogger.write} with {@link LogLevel.Fatal} as level.", + "params": [ + { + "name": "values", + "optional": false, + "type": [ + [ + [ + "readonly", + " " + ], + [ + "Array", + "<" + ], + [ + "unknown", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "void" + ] + ] + ], + "meta": { + "line": 34, + "file": "Logger.ts", + "path": "src/lib/utils/logger" + } + }, + { + "name": "has", + "description": "Checks whether a level is supported.", + "params": [ + { + "name": "level", + "optional": false, + "type": [ + [ + [ + "LogLevel" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "boolean" + ] + ] + ], + "meta": { + "line": 10, + "file": "Logger.ts", + "path": "src/lib/utils/logger" + } + }, + { + "name": "info", + "description": "Alias of {@link ILogger.write} with {@link LogLevel.Info} as level.", + "params": [ + { + "name": "values", + "optional": false, + "type": [ + [ + [ + "readonly", + " " + ], + [ + "Array", + "<" + ], + [ + "unknown", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "void" + ] + ] + ], + "meta": { + "line": 22, + "file": "Logger.ts", + "path": "src/lib/utils/logger" + } + }, + { + "name": "trace", + "description": "Alias of {@link ILogger.write} with {@link LogLevel.Trace} as level.", + "params": [ + { + "name": "values", + "optional": false, + "type": [ + [ + [ + "readonly", + " " + ], + [ + "Array", + "<" + ], + [ + "unknown", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "void" + ] + ] + ], + "meta": { + "line": 14, + "file": "Logger.ts", + "path": "src/lib/utils/logger" + } + }, + { + "name": "warn", + "description": "Alias of {@link ILogger.write} with {@link LogLevel.Warn} as level.", + "params": [ + { + "name": "values", + "optional": false, + "type": [ + [ + [ + "readonly", + " " + ], + [ + "Array", + "<" + ], + [ + "unknown", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "void" + ] + ] + ], + "meta": { + "line": 26, + "file": "Logger.ts", + "path": "src/lib/utils/logger" + } + }, + { + "name": "write", + "description": "Writes the log message given a level and the value(s).", + "params": [ + { + "name": "level", + "optional": false, + "type": [ + [ + [ + "LogLevel" + ] + ] + ] + }, + { + "name": "values", + "optional": false, + "type": [ + [ + [ + "readonly", + " " + ], + [ + "Array", + "<" + ], + [ + "unknown", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "void" + ] + ] + ], + "meta": { + "line": 38, + "file": "Logger.ts", + "path": "src/lib/utils/logger" + } + } + ], + "meta": { + "line": 3, + "file": "Logger.ts", + "path": "src/lib/utils/logger" + } + }, + { + "name": "MissingExportsError", + "description": "Describes a {@link LoaderErrorType.EmptyModule} loader error and adds a path for easy identification.", + "extends": [ + "LoaderError" + ], + "construct": { + "name": "constructor", + "params": [ + { + "name": "path", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "MissingExportsError" + ] + ] + ], + "meta": { + "line": 29, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + "props": [ + { + "name": "cause", + "type": [ + [ + [ + "Error" + ] + ] + ], + "meta": { + "line": 26, + "file": "lib.es2022.error.d.ts", + "path": "node_modules/typescript/lib" + } + }, + { + "name": "message", + "type": [ + [ + [ + "string" + ] + ] + ], + "meta": { + "line": 1023, + "file": "lib.es5.d.ts", + "path": "node_modules/typescript/lib" + } + }, + { + "name": "path", + "description": "The path of the module that did not have exports.", + "readonly": true, + "type": [ + [ + [ + "string" + ] + ] + ], + "meta": { + "line": 28, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "stack", + "type": [ + [ + [ + "string" + ] + ] + ], + "meta": { + "line": 1024, + "file": "lib.es5.d.ts", + "path": "node_modules/typescript/lib" + } + }, + { + "name": "type", + "description": "The type of the error that was thrown.", + "readonly": true, + "type": [ + [ + [ + "LoaderErrorType" + ] + ] + ], + "meta": { + "line": 16, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "prepareStackTrace", + "scope": "static", + "type": [ + [ + [ + "(" + ], + [ + "err", + ": " + ], + [ + "Error", + ", " + ], + [ + "stackTraces", + ": " + ], + [ + "Array", + "<" + ], + [ + "CallSite", + ">) => " + ], + [ + "any" + ] + ] + ], + "meta": { + "line": 11, + "file": "globals.d.ts", + "path": "node_modules/@types/node" + } + }, + { + "name": "stackTraceLimit", + "scope": "static", + "type": [ + [ + [ + "number" + ] + ] + ], + "meta": { + "line": 13, + "file": "globals.d.ts", + "path": "node_modules/@types/node" + } + }, + { + "name": "name", + "readonly": true, + "type": [ + [ + [ + "string" + ] + ] + ], + "meta": { + "line": 18, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + } + ], + "methods": [ + { + "name": "captureStackTrace", + "description": "Create .stack property on a target object", + "scope": "static", + "params": [ + { + "name": "targetObject", + "optional": false, + "type": [ + [ + [ + "object" + ] + ] + ] + }, + { + "name": "constructorOpt", + "optional": true, + "type": [ + [ + [ + "Function" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "void" + ] + ] + ] + } + ], + "meta": { + "line": 24, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + }, + "isExternal": true + }, + { + "name": "Piece", + "description": "The piece to be stored in {@link Store} instances.", + "construct": { + "name": "constructor", + "params": [ + { + "name": "context", + "optional": false, + "type": [ + [ + [ + "PieceContext" + ] + ] + ] + }, + { + "name": "options", + "optional": true, + "type": [ + [ + [ + "PieceOptions" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Piece", + "<" + ], + [ + "O", + ">" + ] + ] + ], + "meta": { + "line": 452, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + "props": [ + { + "name": "enabled", + "description": "Whether or not the piece is enabled.", + "type": [ + [ + [ + "boolean" + ] + ] + ], + "meta": { + "line": 447, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "location", + "description": "The location metadata for the piece's file.", + "readonly": true, + "type": [ + [ + [ + "PieceLocation" + ] + ] + ], + "meta": { + "line": 439, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "name", + "description": "The name of the piece.", + "readonly": true, + "type": [ + [ + [ + "string" + ] + ] + ], + "meta": { + "line": 443, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "options", + "description": "The raw options passed to this {@link Piece}", + "readonly": true, + "type": [ + [ + [ + "O" + ] + ] + ], + "meta": { + "line": 451, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "store", + "description": "The store that contains the piece.", + "readonly": true, + "type": [ + [ + [ + "Store", + "<" + ], + [ + "Piece", + "<" + ], + [ + "PieceOptions", + ">>" + ] + ] + ], + "meta": { + "line": 435, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "container", + "description": "A reference to the {@link Container} object for ease of use.", + "see": [ + "container" + ], + "readonly": true, + "abstract": false, + "deprecated": false, + "type": [ + [ + [ + "Container" + ] + ] + ], + "meta": { + "line": 457, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + } + ], + "methods": [ + { + "name": "onLoad", + "description": "Per-piece listener that is called when the piece is loaded into the store.\nUseful to set-up asynchronous initialization tasks.", + "returns": [ + [ + [ + "unknown" + ] + ] + ], + "meta": { + "line": 462, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "onUnload", + "description": "Per-piece listener that is called when the piece is unloaded from the store.\nUseful to set-up clean-up tasks.", + "returns": [ + [ + [ + "unknown" + ] + ] + ], + "meta": { + "line": 467, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "reload", + "description": "Reloads the piece by loading the same path in the store.", + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "void", + ">" + ] + ] + ], + "meta": { + "line": 475, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "toJSON", + "description": "Defines the `JSON.stringify` behavior of this piece.", + "returns": [ + [ + [ + "PieceJSON" + ] + ] + ], + "meta": { + "line": 479, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "unload", + "description": "Unloads and disables the piece.", + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "void", + ">" + ] + ] + ], + "meta": { + "line": 471, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + } + ], + "meta": { + "line": 431, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + }, + "isExternal": true + }, + { + "name": "Plugin", + "construct": { + "name": "constructor", + "returns": [ + [ + [ + "Plugin" + ] + ] + ] + }, + "props": [ + { + "name": "[postInitialization]", + "scope": "static", + "type": [ + [ + [ + "(" + ], + [ + "this", + ": " + ], + [ + "SapphireClient", + "<" + ], + [ + "boolean", + ">, " + ], + [ + "options", + ": " + ], + [ + "ClientOptions", + ") => " + ], + [ + "void" + ] + ] + ], + "meta": { + "line": 10, + "file": "Plugin.ts", + "path": "src/lib/plugins" + } + }, + { + "name": "[postLogin]", + "scope": "static", + "type": [ + [ + [ + "(" + ], + [ + "this", + ": " + ], + [ + "SapphireClient", + "<" + ], + [ + "boolean", + ">, " + ], + [ + "options", + ": " + ], + [ + "ClientOptions", + ") => " + ], + [ + "Awaitable", + "<" + ], + [ + "void", + ">" + ] + ] + ], + "meta": { + "line": 12, + "file": "Plugin.ts", + "path": "src/lib/plugins" + } + }, + { + "name": "[preGenericsInitialization]", + "scope": "static", + "type": [ + [ + [ + "(" + ], + [ + "this", + ": " + ], + [ + "SapphireClient", + "<" + ], + [ + "boolean", + ">, " + ], + [ + "options", + ": " + ], + [ + "ClientOptions", + ") => " + ], + [ + "void" + ] + ] + ], + "meta": { + "line": 8, + "file": "Plugin.ts", + "path": "src/lib/plugins" + } + }, + { + "name": "[preInitialization]", + "scope": "static", + "type": [ + [ + [ + "(" + ], + [ + "this", + ": " + ], + [ + "SapphireClient", + "<" + ], + [ + "boolean", + ">, " + ], + [ + "options", + ": " + ], + [ + "ClientOptions", + ") => " + ], + [ + "void" + ] + ] + ], + "meta": { + "line": 9, + "file": "Plugin.ts", + "path": "src/lib/plugins" + } + }, + { + "name": "[preLogin]", + "scope": "static", + "type": [ + [ + [ + "(" + ], + [ + "this", + ": " + ], + [ + "SapphireClient", + "<" + ], + [ + "boolean", + ">, " + ], + [ + "options", + ": " + ], + [ + "ClientOptions", + ") => " + ], + [ + "Awaitable", + "<" + ], + [ + "void", + ">" + ] + ] + ], + "meta": { + "line": 11, + "file": "Plugin.ts", + "path": "src/lib/plugins" + } + } + ], + "meta": { + "line": 7, + "file": "Plugin.ts", + "path": "src/lib/plugins" + } + }, + { + "name": "PluginManager", + "construct": { + "name": "constructor", + "returns": [ + [ + [ + "PluginManager" + ] + ] + ] + }, + "props": [ + { + "name": "registry", + "readonly": true, + "type": [ + [ + [ + "Set", + "<" + ], + [ + "SapphirePluginHookEntry", + "<" + ], + [ + "SapphirePluginAsyncHook", + " | " + ], + [ + "SapphirePluginHook", + ">>" + ] + ] + ], + "meta": { + "line": 25, + "file": "PluginManager.ts", + "path": "src/lib/plugins" + } + } + ], + "methods": [ + { + "name": "registerHook", + "params": [ + { + "name": "hook", + "optional": false, + "type": [ + [ + [ + "SapphirePluginHook" + ] + ] + ] + }, + { + "name": "type", + "optional": false, + "type": [ + [ + [ + "SyncPluginHooks" + ] + ] + ] + }, + { + "name": "name", + "optional": true, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "PluginManager" + ] + ] + ], + "meta": { + "line": 27, + "file": "PluginManager.ts", + "path": "src/lib/plugins" + } + }, + { + "name": "registerPostInitializationHook", + "params": [ + { + "name": "hook", + "optional": false, + "type": [ + [ + [ + "SapphirePluginHook" + ] + ] + ] + }, + { + "name": "name", + "optional": true, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "PluginManager" + ] + ] + ], + "meta": { + "line": 43, + "file": "PluginManager.ts", + "path": "src/lib/plugins" + } + }, + { + "name": "registerPostLoginHook", + "params": [ + { + "name": "hook", + "optional": false, + "type": [ + [ + [ + "SapphirePluginAsyncHook" + ] + ] + ] + }, + { + "name": "name", + "optional": true, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "PluginManager" + ] + ] + ], + "meta": { + "line": 51, + "file": "PluginManager.ts", + "path": "src/lib/plugins" + } + }, + { + "name": "registerPreGenericsInitializationHook", + "params": [ + { + "name": "hook", + "optional": false, + "type": [ + [ + [ + "SapphirePluginHook" + ] + ] + ] + }, + { + "name": "name", + "optional": true, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "PluginManager" + ] + ] + ], + "meta": { + "line": 35, + "file": "PluginManager.ts", + "path": "src/lib/plugins" + } + }, + { + "name": "registerPreInitializationHook", + "params": [ + { + "name": "hook", + "optional": false, + "type": [ + [ + [ + "SapphirePluginHook" + ] + ] + ] + }, + { + "name": "name", + "optional": true, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "PluginManager" + ] + ] + ], + "meta": { + "line": 39, + "file": "PluginManager.ts", + "path": "src/lib/plugins" + } + }, + { + "name": "registerPreLoginHook", + "params": [ + { + "name": "hook", + "optional": false, + "type": [ + [ + [ + "SapphirePluginAsyncHook" + ] + ] + ] + }, + { + "name": "name", + "optional": true, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "PluginManager" + ] + ] + ], + "meta": { + "line": 47, + "file": "PluginManager.ts", + "path": "src/lib/plugins" + } + }, + { + "name": "use", + "params": [ + { + "name": "plugin", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "typeof", + " " + ], + [ + "Plugin", + ")" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "PluginManager" + ] + ] + ], + "meta": { + "line": 55, + "file": "PluginManager.ts", + "path": "src/lib/plugins" + } + }, + { + "name": "values", + "returns": [ + [ + [ + "Generator", + "<" + ], + [ + "SapphirePluginHookEntry", + "<" + ], + [ + "SapphirePluginAsyncHook", + " | " + ], + [ + "SapphirePluginHook", + ">, " + ], + [ + "void", + ", " + ], + [ + "unknown", + ">" + ] + ] + ], + "meta": { + "line": 71, + "file": "PluginManager.ts", + "path": "src/lib/plugins" + } + } + ], + "meta": { + "line": 24, + "file": "PluginManager.ts", + "path": "src/lib/plugins" + } + }, + { + "name": "Precondition", + "extends": [ + "Piece<O>" + ], + "construct": { + "name": "constructor", + "params": [ + { + "name": "context", + "optional": false, + "type": [ + [ + [ + "PieceContext" + ] + ] + ] + }, + { + "name": "options", + "optional": true, + "default": "{}", + "type": [ + [ + [ + "PreconditionOptions" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Precondition", + "<" + ], + [ + "O", + ">" + ] + ] + ], + "meta": { + "line": 16, + "file": "Precondition.ts", + "path": "src/lib/structures" + } + }, + "props": [ + { + "name": "enabled", + "description": "Whether or not the piece is enabled.", + "type": [ + [ + [ + "boolean" + ] + ] + ], + "meta": { + "line": 447, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "location", + "description": "The location metadata for the piece's file.", + "readonly": true, + "type": [ + [ + [ + "PieceLocation" + ] + ] + ], + "meta": { + "line": 439, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "name", + "description": "The name of the piece.", + "readonly": true, + "type": [ + [ + [ + "string" + ] + ] + ], + "meta": { + "line": 443, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "options", + "description": "The raw options passed to this {@link Piece}", + "readonly": true, + "type": [ + [ + [ + "O" + ] + ] + ], + "meta": { + "line": 451, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "position", + "readonly": true, + "type": [ + [ + [ + "null", + " | " + ], + [ + "number" + ] + ] + ], + "meta": { + "line": 14, + "file": "Precondition.ts", + "path": "src/lib/structures" + } + }, + { + "name": "store", + "description": "The store that contains the piece.", + "readonly": true, + "type": [ + [ + [ + "Store", + "<" + ], + [ + "Piece", + "<" + ], + [ + "PieceOptions", + ">>" + ] + ] + ], + "meta": { + "line": 435, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "container", + "description": "A reference to the {@link Container} object for ease of use.", + "see": [ + "container" + ], + "readonly": true, + "abstract": false, + "deprecated": false, + "type": [ + [ + [ + "Container" + ] + ] + ], + "meta": { + "line": 457, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + } + ], + "methods": [ + { + "name": "chatInputRun", + "params": [ + { + "name": "interaction", + "optional": false, + "type": [ + [ + [ + "CommandInteraction", + "<" + ], + [ + "CacheType", + ">" + ] + ] + ] + }, + { + "name": "command", + "optional": false, + "type": [ + [ + [ + "ChatInputCommand" + ] + ] + ] + }, + { + "name": "context", + "optional": false, + "type": [ + [ + [ + "PreconditionContext" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "PreconditionResult" + ] + ] + ], + "meta": { + "line": 23, + "file": "Precondition.ts", + "path": "src/lib/structures" + } + }, + { + "name": "contextMenuRun", + "params": [ + { + "name": "interaction", + "optional": false, + "type": [ + [ + [ + "ContextMenuInteraction", + "<" + ], + [ + "CacheType", + ">" + ] + ] + ] + }, + { + "name": "command", + "optional": false, + "type": [ + [ + [ + "ContextMenuCommand" + ] + ] + ] + }, + { + "name": "context", + "optional": false, + "type": [ + [ + [ + "PreconditionContext" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "PreconditionResult" + ] + ] + ], + "meta": { + "line": 25, + "file": "Precondition.ts", + "path": "src/lib/structures" + } + }, + { + "name": "error", + "description": "Constructs a {@link PreconditionError} with the precondition parameter set to `this`.", + "params": [ + { + "name": "options", + "description": "The information.", + "optional": true, + "default": "{}", + "type": [ + [ + [ + "Omit", + "<" + ], + [ + "Options", + ", " + ], + [ + "'precondition'", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "PreconditionResult" + ] + ] + ], + "meta": { + "line": 35, + "file": "Precondition.ts", + "path": "src/lib/structures" + } + }, + { + "name": "fetchChannelFromInteraction", + "params": [ + { + "name": "interaction", + "optional": false, + "type": [ + [ + [ + "BaseCommandInteraction", + "<" + ], + [ + "CacheType", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "TextBasedChannel", + ">" + ] + ] + ], + "meta": { + "line": 39, + "file": "Precondition.ts", + "path": "src/lib/structures" + } + }, + { + "name": "messageRun", + "params": [ + { + "name": "message", + "optional": false, + "type": [ + [ + [ + "Message", + "<" + ], + [ + "boolean", + ">" + ] + ] + ] + }, + { + "name": "command", + "optional": false, + "type": [ + [ + [ + "MessageCommand" + ] + ] + ] + }, + { + "name": "context", + "optional": false, + "type": [ + [ + [ + "PreconditionContext" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "PreconditionResult" + ] + ] + ], + "meta": { + "line": 21, + "file": "Precondition.ts", + "path": "src/lib/structures" + } + }, + { + "name": "ok", + "returns": [ + [ + [ + "PreconditionResult" + ] + ] + ], + "meta": { + "line": 27, + "file": "Precondition.ts", + "path": "src/lib/structures" + } + }, + { + "name": "onLoad", + "description": "Per-piece listener that is called when the piece is loaded into the store.\nUseful to set-up asynchronous initialization tasks.", + "returns": [ + [ + [ + "unknown" + ] + ] + ], + "meta": { + "line": 462, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "onUnload", + "description": "Per-piece listener that is called when the piece is unloaded from the store.\nUseful to set-up clean-up tasks.", + "returns": [ + [ + [ + "unknown" + ] + ] + ], + "meta": { + "line": 467, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "reload", + "description": "Reloads the piece by loading the same path in the store.", + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "void", + ">" + ] + ] + ], + "meta": { + "line": 475, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "toJSON", + "description": "Defines the `JSON.stringify` behavior of this piece.", + "returns": [ + [ + [ + "PieceJSON" + ] + ] + ], + "meta": { + "line": 479, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "unload", + "description": "Unloads and disables the piece.", + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "void", + ">" + ] + ] + ], + "meta": { + "line": 471, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + } + ], + "meta": { + "line": 13, + "file": "Precondition.ts", + "path": "src/lib/structures" + } + }, + { + "name": "PreconditionContainerArray", + "description": "An {@link IPreconditionContainer} that defines an array of multiple {@link IPreconditionContainer}s.", + "extendedDescription": "By default, array containers run either of two conditions: AND and OR ({@link PreconditionRunCondition}), the top level\nwill always default to AND, where the nested one flips the logic (OR, then children arrays are AND, then OR...).\n\nThis allows `['Connect', ['Moderator', ['DJ', 'SongAuthor']]]` to become a thrice-nested precondition container, where:\n- Level 1: [Single(Connect), Array] runs AND, both containers must return a successful value.\n- Level 2: [Single(Moderator), Array] runs OR, either container must return a successful value.\n- Level 3: [Single(DJ), Single(SongAuthor)] runs AND, both containers must return a successful value.\n\nIn other words, it is identical to doing:\n```typescript\nConnect && (Moderator || (DJ && SongAuthor));\n```", + "see": [], + "implements": [ + "IPreconditionContainer" + ], + "examples": [], + "abstract": false, + "deprecated": false, + "construct": { + "name": "constructor", + "params": [ + { + "name": "data", + "optional": true, + "default": "[]", + "type": [ + [ + [ + "PreconditionArrayResolvable" + ] + ] + ] + }, + { + "name": "parent", + "optional": true, + "default": "null", + "type": [ + [ + [ + "null", + " | " + ], + [ + "PreconditionContainerArray" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "PreconditionContainerArray" + ] + ] + ], + "meta": { + "line": 127, + "file": "PreconditionContainerArray.ts", + "path": "src/lib/utils/preconditions" + } + }, + "props": [ + { + "name": "entries", + "description": "The {@link IPreconditionContainer}s the array holds.", + "see": [], + "readonly": true, + "abstract": false, + "deprecated": false, + "type": [ + [ + [ + "Array", + "<" + ], + [ + "IPreconditionContainer", + ">" + ] + ] + ], + "meta": { + "line": 119, + "file": "PreconditionContainerArray.ts", + "path": "src/lib/utils/preconditions" + } + }, + { + "name": "mode", + "description": "The mode at which this precondition will run.", + "see": [], + "readonly": true, + "abstract": false, + "deprecated": false, + "type": [ + [ + [ + "PreconditionRunMode" + ] + ] + ], + "meta": { + "line": 113, + "file": "PreconditionContainerArray.ts", + "path": "src/lib/utils/preconditions" + } + }, + { + "name": "runCondition", + "description": "The {@link PreconditionRunCondition} that defines how entries must be handled.", + "see": [], + "readonly": true, + "abstract": false, + "deprecated": false, + "type": [ + [ + [ + "PreconditionRunCondition" + ] + ] + ], + "meta": { + "line": 125, + "file": "PreconditionContainerArray.ts", + "path": "src/lib/utils/preconditions" + } + }, + { + "name": "conditions", + "description": "The preconditions to be run. Extra ones can be added by augmenting {@link PreconditionRunCondition} and then\ninserting {@link IPreconditionCondition}s.", + "see": [], + "scope": "static", + "readonly": true, + "abstract": false, + "deprecated": false, + "type": [ + [ + [ + "Collection", + "<" + ], + [ + "PreconditionRunCondition", + ", " + ], + [ + "IPreconditionCondition", + ">" + ] + ] + ], + "meta": { + "line": 247, + "file": "PreconditionContainerArray.ts", + "path": "src/lib/utils/preconditions" + } + }, + { + "name": "condition", + "description": "Retrieves a condition from {@link PreconditionContainerArray.conditions}, assuming existence.", + "see": [], + "readonly": true, + "abstract": false, + "deprecated": false, + "type": [ + [ + [ + "IPreconditionCondition" + ] + ] + ], + "meta": { + "line": 222, + "file": "PreconditionContainerArray.ts", + "path": "src/lib/utils/preconditions" + } + } + ], + "methods": [ + { + "name": "add", + "description": "Adds a new entry to the array.", + "see": [], + "examples": [], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "entry", + "description": "The value to add to the entries.", + "optional": false, + "type": [ + [ + [ + "IPreconditionContainer" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "PreconditionContainerArray" + ] + ] + ], + "meta": { + "line": 149, + "file": "PreconditionContainerArray.ts", + "path": "src/lib/utils/preconditions" + } + }, + { + "name": "append", + "params": [ + { + "name": "keyOrEntries", + "optional": false, + "type": [ + [ + [ + "PreconditionContainerArray", + " | " + ], + [ + "SimplePreconditionKeys", + " | " + ], + [ + "SimplePreconditionSingleResolvableDetails" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "PreconditionContainerArray" + ] + ] + ], + "meta": { + "line": 154, + "file": "PreconditionContainerArray.ts", + "path": "src/lib/utils/preconditions" + } + }, + { + "name": "chatInputRun", + "description": "Runs the container.", + "see": [], + "examples": [], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "interaction", + "description": "The interaction that ran this precondition.", + "optional": false, + "type": [ + [ + [ + "CommandInteraction", + "<" + ], + [ + "CacheType", + ">" + ] + ] + ] + }, + { + "name": "command", + "description": "The command the interaction invoked.", + "optional": false, + "type": [ + [ + [ + "ChatInputCommand" + ] + ] + ] + }, + { + "name": "context", + "optional": true, + "default": "{}", + "type": [ + [ + [ + "PreconditionContext" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "PreconditionContainerReturn" + ] + ] + ], + "meta": { + "line": 179, + "file": "PreconditionContainerArray.ts", + "path": "src/lib/utils/preconditions" + } + }, + { + "name": "contextMenuRun", + "description": "Runs the container.", + "see": [], + "examples": [], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "interaction", + "description": "The interaction that ran this precondition.", + "optional": false, + "type": [ + [ + [ + "ContextMenuInteraction", + "<" + ], + [ + "CacheType", + ">" + ] + ] + ] + }, + { + "name": "command", + "description": "The command the interaction invoked.", + "optional": false, + "type": [ + [ + [ + "ContextMenuCommand" + ] + ] + ] + }, + { + "name": "context", + "optional": true, + "default": "{}", + "type": [ + [ + [ + "PreconditionContext" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "PreconditionContainerReturn" + ] + ] + ], + "meta": { + "line": 191, + "file": "PreconditionContainerArray.ts", + "path": "src/lib/utils/preconditions" + } + }, + { + "name": "messageRun", + "description": "Runs the container.", + "see": [], + "examples": [], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "message", + "description": "The message that ran this precondition.", + "optional": false, + "type": [ + [ + [ + "Message", + "<" + ], + [ + "boolean", + ">" + ] + ] + ] + }, + { + "name": "command", + "description": "The command the message invoked.", + "optional": false, + "type": [ + [ + [ + "MessageCommand" + ] + ] + ] + }, + { + "name": "context", + "optional": true, + "default": "{}", + "type": [ + [ + [ + "PreconditionContext" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "PreconditionContainerReturn" + ] + ] + ], + "meta": { + "line": 167, + "file": "PreconditionContainerArray.ts", + "path": "src/lib/utils/preconditions" + } + }, + { + "name": "parse", + "description": "Parses the precondition entry resolvables, and adds them to the entries.", + "see": [], + "examples": [], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "entries", + "description": "The entries to parse.", + "optional": false, + "type": [ + [ + [ + "Iterable", + "<" + ], + [ + "PreconditionEntryResolvable", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "PreconditionContainerArray" + ] + ] + ], + "meta": { + "line": 206, + "file": "PreconditionContainerArray.ts", + "path": "src/lib/utils/preconditions" + } + } + ], + "meta": { + "line": 108, + "file": "PreconditionContainerArray.ts", + "path": "src/lib/utils/preconditions" + } + }, + { + "name": "PreconditionContainerSingle", + "description": "An {@link IPreconditionContainer} which runs a single precondition from {@link SapphireClient.preconditions}.", + "see": [], + "implements": [ + "IPreconditionContainer" + ], + "examples": [], + "abstract": false, + "deprecated": false, + "construct": { + "name": "constructor", + "params": [ + { + "name": "data", + "optional": false, + "type": [ + [ + [ + "PreconditionSingleResolvable" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "PreconditionContainerSingle" + ] + ] + ], + "meta": { + "line": 64, + "file": "PreconditionContainerSingle.ts", + "path": "src/lib/utils/preconditions" + } + }, + "props": [ + { + "name": "context", + "description": "The context to be used when calling {@link Precondition.run}. This will always be an empty object (`{}`) when the\ncontainer was constructed with a string, otherwise it is a direct reference to the value from\n{@link PreconditionSingleResolvableDetails.context}.", + "see": [], + "readonly": true, + "abstract": false, + "deprecated": false, + "type": [ + [ + [ + "Record", + "<" + ], + [ + "PropertyKey", + ", " + ], + [ + "unknown", + ">" + ] + ] + ], + "meta": { + "line": 56, + "file": "PreconditionContainerSingle.ts", + "path": "src/lib/utils/preconditions" + } + }, + { + "name": "name", + "description": "The name of the precondition to run.", + "see": [], + "readonly": true, + "abstract": false, + "deprecated": false, + "type": [ + [ + [ + "string" + ] + ] + ], + "meta": { + "line": 62, + "file": "PreconditionContainerSingle.ts", + "path": "src/lib/utils/preconditions" + } + } + ], + "methods": [ + { + "name": "chatInputRun", + "description": "Runs the container.", + "see": [], + "examples": [], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "interaction", + "description": "The interaction that ran this precondition.", + "optional": false, + "type": [ + [ + [ + "CommandInteraction", + "<" + ], + [ + "CacheType", + ">" + ] + ] + ] + }, + { + "name": "command", + "description": "The command the interaction invoked.", + "optional": false, + "type": [ + [ + [ + "ChatInputCommand" + ] + ] + ] + }, + { + "name": "context", + "optional": true, + "default": "{}", + "type": [ + [ + [ + "PreconditionContext" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "PreconditionResult" + ] + ] + ], + "meta": { + "line": 97, + "file": "PreconditionContainerSingle.ts", + "path": "src/lib/utils/preconditions" + } + }, + { + "name": "contextMenuRun", + "description": "Runs the container.", + "see": [], + "examples": [], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "interaction", + "description": "The interaction that ran this precondition.", + "optional": false, + "type": [ + [ + [ + "ContextMenuInteraction", + "<" + ], + [ + "CacheType", + ">" + ] + ] + ] + }, + { + "name": "command", + "description": "The command the interaction invoked.", + "optional": false, + "type": [ + [ + [ + "ContextMenuCommand" + ] + ] + ] + }, + { + "name": "context", + "optional": true, + "default": "{}", + "type": [ + [ + [ + "PreconditionContext" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "PreconditionResult" + ] + ] + ], + "meta": { + "line": 114, + "file": "PreconditionContainerSingle.ts", + "path": "src/lib/utils/preconditions" + } + }, + { + "name": "messageRun", + "description": "Runs the container.", + "see": [], + "examples": [], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "message", + "description": "The message that ran this precondition.", + "optional": false, + "type": [ + [ + [ + "Message", + "<" + ], + [ + "boolean", + ">" + ] + ] + ] + }, + { + "name": "command", + "description": "The command the message invoked.", + "optional": false, + "type": [ + [ + [ + "MessageCommand" + ] + ] + ] + }, + { + "name": "context", + "optional": true, + "default": "{}", + "type": [ + [ + [ + "PreconditionContext" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "PreconditionResult" + ] + ] + ], + "meta": { + "line": 80, + "file": "PreconditionContainerSingle.ts", + "path": "src/lib/utils/preconditions" + } + } + ], + "meta": { + "line": 49, + "file": "PreconditionContainerSingle.ts", + "path": "src/lib/utils/preconditions" + } + }, + { + "name": "PreconditionError", + "description": "Errors thrown by preconditions", + "see": [], + "extends": [ + "UserError" + ], + "examples": [], + "abstract": false, + "deprecated": false, + "construct": { + "name": "constructor", + "description": "Constructs an UserError.", + "params": [ + { + "name": "options", + "optional": false, + "type": [ + [ + [ + "Options" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "PreconditionError" + ] + ] + ], + "meta": { + "line": 11, + "file": "PreconditionError.ts", + "path": "src/lib/errors" + } + }, + "props": [ + { + "name": "cause", + "type": [ + [ + [ + "Error" + ] + ] + ], + "meta": { + "line": 26, + "file": "lib.es2022.error.d.ts", + "path": "node_modules/typescript/lib" + } + }, + { + "name": "context", + "description": "User-provided context.", + "readonly": true, + "type": [ + [ + [ + "unknown" + ] + ] + ], + "meta": { + "line": 14, + "file": "UserError.ts", + "path": "src/lib/errors" + } + }, + { + "name": "identifier", + "description": "An identifier, useful to localize emitted errors.", + "readonly": true, + "type": [ + [ + [ + "string" + ] + ] + ], + "meta": { + "line": 9, + "file": "UserError.ts", + "path": "src/lib/errors" + } + }, + { + "name": "message", + "type": [ + [ + [ + "string" + ] + ] + ], + "meta": { + "line": 1023, + "file": "lib.es5.d.ts", + "path": "node_modules/typescript/lib" + } + }, + { + "name": "precondition", + "readonly": true, + "type": [ + [ + [ + "Precondition", + "<" + ], + [ + "PreconditionOptions", + ">" + ] + ] + ], + "meta": { + "line": 9, + "file": "PreconditionError.ts", + "path": "src/lib/errors" + } + }, + { + "name": "stack", + "type": [ + [ + [ + "string" + ] + ] + ], + "meta": { + "line": 1024, + "file": "lib.es5.d.ts", + "path": "node_modules/typescript/lib" + } + }, + { + "name": "prepareStackTrace", + "description": "Optional override for formatting stack traces", + "scope": "static", + "type": [ + [ + [ + "(" + ], + [ + "err", + ": " + ], + [ + "Error", + ", " + ], + [ + "stackTraces", + ": " + ], + [ + "Array", + "<" + ], + [ + "CallSite", + ">) => " + ], + [ + "any" + ] + ] + ], + "meta": { + "line": 11, + "file": "globals.d.ts", + "path": "node_modules/@types/node" + } + }, + { + "name": "stackTraceLimit", + "scope": "static", + "type": [ + [ + [ + "number" + ] + ] + ], + "meta": { + "line": 13, + "file": "globals.d.ts", + "path": "node_modules/@types/node" + } + }, + { + "name": "name", + "readonly": true, + "type": [ + [ + [ + "string" + ] + ] + ], + "meta": { + "line": 17, + "file": "PreconditionError.ts", + "path": "src/lib/errors" + } + } + ], + "methods": [ + { + "name": "captureStackTrace", + "description": "Create .stack property on a target object", + "scope": "static", + "params": [ + { + "name": "targetObject", + "optional": false, + "type": [ + [ + [ + "object" + ] + ] + ] + }, + { + "name": "constructorOpt", + "optional": true, + "type": [ + [ + [ + "Function" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "void" + ] + ] + ] + } + ], + "meta": { + "line": 8, + "file": "PreconditionError.ts", + "path": "src/lib/errors" + } + }, + { + "name": "PreconditionStore", + "extends": [ + "Store<Precondition>" + ], + "construct": { + "name": "constructor", + "returns": [ + [ + [ + "PreconditionStore" + ] + ] + ], + "meta": { + "line": 11, + "file": "PreconditionStore.ts", + "path": "src/lib/structures" + } + }, + "props": [ + { + "name": "Constructor", + "readonly": true, + "type": [ + [ + [ + "Constructor", + "<" + ], + [ + "Precondition", + "<" + ], + [ + "PreconditionOptions", + ">>" + ] + ] + ], + "meta": { + "line": 281, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "[toStringTag]", + "readonly": true, + "type": [ + [ + [ + "string" + ] + ] + ], + "meta": { + "line": 135, + "file": "lib.es2015.symbol.wellknown.d.ts", + "path": "node_modules/typescript/lib" + } + }, + { + "name": "constructor", + "type": [ + [ + [ + "CollectionConstructor" + ] + ] + ], + "meta": { + "line": 21, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "globalPreconditions", + "access": "private", + "readonly": true, + "default": "[]", + "type": [ + [ + [ + "Array", + "<" + ], + [ + "Precondition", + "<" + ], + [ + "PreconditionOptions", + ">>" + ] + ] + ], + "meta": { + "line": 9, + "file": "PreconditionStore.ts", + "path": "src/lib/structures" + } + }, + { + "name": "name", + "readonly": true, + "type": [ + [ + [ + "string" + ] + ] + ], + "meta": { + "line": 282, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "paths", + "readonly": true, + "type": [ + [ + [ + "Set", + "<" + ], + [ + "string", + ">" + ] + ] + ], + "meta": { + "line": 283, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "size", + "readonly": true, + "type": [ + [ + [ + "number" + ] + ] + ], + "meta": { + "line": 28, + "file": "lib.es2015.collection.d.ts", + "path": "node_modules/typescript/lib" + } + }, + { + "name": "strategy", + "readonly": true, + "type": [ + [ + [ + "ILoaderStrategy", + "<" + ], + [ + "Precondition", + "<" + ], + [ + "PreconditionOptions", + ">>" + ] + ] + ], + "meta": { + "line": 284, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "[species]", + "scope": "static", + "readonly": true, + "type": [ + [ + [ + "MapConstructor" + ] + ] + ], + "meta": { + "line": 317, + "file": "lib.es2015.symbol.wellknown.d.ts", + "path": "node_modules/typescript/lib" + } + }, + { + "name": "default", + "scope": "static", + "readonly": true, + "type": [ + [ + [ + "(" + ], + [ + "typeof", + " " + ], + [ + "Collection", + ")" + ] + ] + ], + "meta": { + "line": 28, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "defaultStrategy", + "description": "The default strategy, defaults to {@link LoaderStrategy}, which is constructed on demand when a store is constructed,\nwhen none was set beforehand.", + "scope": "static", + "type": [ + [ + [ + "ILoaderStrategy", + "<" + ], + [ + "any", + ">" + ] + ] + ], + "meta": { + "line": 369, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "logger", + "description": "The default logger, defaults to `null`.", + "scope": "static", + "type": [ + [ + [ + "null", + " | " + ], + [ + "StoreLogger" + ] + ] + ], + "meta": { + "line": 373, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "container", + "description": "A reference to the {@link Container} object for ease of use.", + "see": [ + "container" + ], + "readonly": true, + "abstract": false, + "deprecated": false, + "type": [ + [ + [ + "Container" + ] + ] + ], + "meta": { + "line": 294, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + } + ], + "methods": [ + { + "name": "[iterator]", + "description": "Returns an iterable of entries in the map.", + "returns": [ + [ + [ + "IterableIterator", + "<[" + ], + [ + "string", + ", " + ], + [ + "Precondition", + "<" + ], + [ + "PreconditionOptions", + ">]>" + ] + ] + ] + }, + { + "name": "at", + "description": "Identical to [Array.at()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/at).\nReturns the item at a given index, allowing for positive and negative integers.\nNegative integers count back from the last item in the collection.", + "params": [ + { + "name": "index", + "description": "The index of the element to obtain", + "optional": false, + "type": [ + [ + [ + "number" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "Precondition", + "<" + ], + [ + "PreconditionOptions", + ">" + ] + ] + ], + "meta": { + "line": 101, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "chatInputRun", + "params": [ + { + "name": "interaction", + "optional": false, + "type": [ + [ + [ + "CommandInteraction", + "<" + ], + [ + "CacheType", + ">" + ] + ] + ] + }, + { + "name": "command", + "optional": false, + "type": [ + [ + [ + "ChatInputCommand" + ] + ] + ] + }, + { + "name": "context", + "optional": true, + "default": "{}", + "type": [ + [ + [ + "PreconditionContext" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "AsyncPreconditionResult" + ] + ] + ], + "meta": { + "line": 30, + "file": "PreconditionStore.ts", + "path": "src/lib/structures" + } + }, + { + "name": "clear", + "returns": [ + [ + [ + "void" + ] + ] + ], + "meta": { + "line": 89, + "file": "PreconditionStore.ts", + "path": "src/lib/structures" + } + }, + { + "name": "clone", + "description": "Creates an identical shallow copy of this collection.", + "see": [], + "examples": [ + "const newColl = someColl.clone();" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "Precondition", + "<" + ], + [ + "PreconditionOptions", + ">>" + ] + ] + ], + "meta": { + "line": 320, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "concat", + "description": "Combines this collection with others into a new collection. None of the source collections are modified.", + "see": [], + "examples": [ + "const newColl = someColl.concat(someOtherColl, anotherColl, ohBoyAColl);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "collections", + "description": "Collections to merge", + "optional": false, + "type": [ + [ + [ + "Array", + "<" + ], + [ + "ReadonlyCollection", + "<" + ], + [ + "string", + ", " + ], + [ + "Precondition", + "<" + ], + [ + "PreconditionOptions", + ">>>" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "Precondition", + "<" + ], + [ + "PreconditionOptions", + ">>" + ] + ] + ], + "meta": { + "line": 329, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "construct", + "description": "Constructs a {@link Piece} instance.", + "params": [ + { + "name": "Ctor", + "description": "The {@link Piece}'s constructor used to build the instance.", + "optional": false, + "type": [ + [ + [ + "ILoaderResultEntry", + "<" + ], + [ + "Precondition", + "<" + ], + [ + "PreconditionOptions", + ">>" + ] + ] + ] + }, + { + "name": "data", + "description": "The module's information", + "optional": false, + "type": [ + [ + [ + "HydratedModuleData" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Precondition", + "<" + ], + [ + "PreconditionOptions", + ">" + ] + ] + ], + "returnsDescription": "An instance of the constructed piece.", + "meta": { + "line": 345, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "contextMenuRun", + "params": [ + { + "name": "interaction", + "optional": false, + "type": [ + [ + [ + "ContextMenuInteraction", + "<" + ], + [ + "CacheType", + ">" + ] + ] + ] + }, + { + "name": "command", + "optional": false, + "type": [ + [ + [ + "ContextMenuCommand" + ] + ] + ] + }, + { + "name": "context", + "optional": true, + "default": "{}", + "type": [ + [ + [ + "PreconditionContext" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "AsyncPreconditionResult" + ] + ] + ], + "meta": { + "line": 49, + "file": "PreconditionStore.ts", + "path": "src/lib/structures" + } + }, + { + "name": "delete", + "params": [ + { + "name": "key", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "boolean" + ] + ] + ], + "meta": { + "line": 80, + "file": "PreconditionStore.ts", + "path": "src/lib/structures" + } + }, + { + "name": "difference", + "description": "The difference method returns a new structure containing items where the key is present in one of the original structures but not the other.", + "params": [ + { + "name": "other", + "description": "The other Collection to filter against", + "optional": false, + "type": [ + [ + [ + "ReadonlyCollection", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "Precondition", + "<" + ], + [ + "PreconditionOptions", + "> | " + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 363, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "each", + "description": "Identical to\n[Map.forEach()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map/forEach),\nbut returns the collection instead of undefined.", + "see": [], + "examples": [ + "collection\n .each(user => console.log(user.username))\n .filter(user => user.bot)\n .each(user => console.log(user.username));" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function to execute for each element", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Precondition", + "<" + ], + [ + "PreconditionOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "PreconditionStore", + ") => " + ], + [ + "void" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "PreconditionStore" + ] + ] + ], + "meta": { + "line": 298, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "ensure", + "description": "Obtains the value of the given key if it exists, otherwise sets and returns the value provided by the default value generator.", + "see": [], + "examples": [ + "collection.ensure(guildId, () => defaultGuildConfig);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "key", + "description": "The key to get if it exists, or set otherwise", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "defaultValueGenerator", + "description": "A function that generates the default value", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "PreconditionStore", + ") => " + ], + [ + "Precondition", + "<" + ], + [ + "PreconditionOptions", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Precondition", + "<" + ], + [ + "PreconditionOptions", + ">" + ] + ] + ], + "meta": { + "line": 38, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "entries", + "description": "Returns an iterable of key, value pairs for every entry in the map.", + "returns": [ + [ + [ + "IterableIterator", + "<[" + ], + [ + "string", + ", " + ], + [ + "Precondition", + "<" + ], + [ + "PreconditionOptions", + ">]>" + ] + ] + ] + }, + { + "name": "equals", + "description": "Checks if this collection shares identical items with another.\nThis is different to checking for equality using equal-signs, because\nthe collections may be different objects, but contain the same data.", + "params": [ + { + "name": "collection", + "description": "Collection to compare with", + "optional": false, + "type": [ + [ + [ + "ReadonlyCollection", + "<" + ], + [ + "string", + ", " + ], + [ + "Precondition", + "<" + ], + [ + "PreconditionOptions", + ">>" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "boolean" + ] + ] + ], + "returnsDescription": "Whether the collections have identical contents", + "meta": { + "line": 339, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "every", + "description": "Checks if all items passes a test. Identical in behavior to\n[Array.every()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/every).", + "see": [], + "examples": [ + "collection.every(user => !user.bot);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function used to test (should return a boolean)", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Precondition", + "<" + ], + [ + "PreconditionOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "PreconditionStore", + ") => " + ], + [ + "key", + " " + ], + [ + "is", + " " + ], + [ + "K2" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "this", + " " + ], + [ + "is", + " " + ], + [ + "Collection", + "<" + ], + [ + "K2", + ", " + ], + [ + "Precondition", + "<" + ], + [ + "PreconditionOptions", + ">>" + ] + ] + ], + "meta": { + "line": 266, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "filter", + "description": "Identical to\n[Array.filter()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/filter),\nbut returns a Collection instead of an Array.", + "see": [], + "examples": [ + "collection.filter(user => user.username === 'Bob');" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "The function to test with (should return boolean)", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Precondition", + "<" + ], + [ + "PreconditionOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "PreconditionStore", + ") => " + ], + [ + "key", + " " + ], + [ + "is", + " " + ], + [ + "K2" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "K2", + ", " + ], + [ + "Precondition", + "<" + ], + [ + "PreconditionOptions", + ">>" + ] + ] + ], + "meta": { + "line": 186, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "find", + "description": "Searches for a single item where the given function returns a truthy value. This behaves like\n[Array.find()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/find).\n<warn>All collections used in Discord.js are mapped using their `id` property, and if you want to find by id you\nshould use the `get` method. See\n[MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map/get) for details.</warn>", + "see": [], + "examples": [ + "collection.find(user => user.username === 'Bob');" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "The function to test with (should return boolean)", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Precondition", + "<" + ], + [ + "PreconditionOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "PreconditionStore", + ") => " + ], + [ + "value", + " " + ], + [ + "is", + " " + ], + [ + "V2" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "V2" + ] + ] + ], + "meta": { + "line": 146, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "findKey", + "description": "Searches for the key of a single item where the given function returns a truthy value. This behaves like\n[Array.findIndex()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/findIndex),\nbut returns the key rather than the positional index.", + "see": [], + "examples": [ + "collection.findKey(user => user.username === 'Bob');" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "The function to test with (should return boolean)", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Precondition", + "<" + ], + [ + "PreconditionOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "PreconditionStore", + ") => " + ], + [ + "key", + " " + ], + [ + "is", + " " + ], + [ + "K2" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "K2" + ] + ] + ], + "meta": { + "line": 161, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "first", + "description": "Obtains the first value(s) in this collection.", + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "Precondition", + "<" + ], + [ + "PreconditionOptions", + ">" + ] + ] + ], + "returnsDescription": "A single value if no amount is provided or an array of values, starting from the end if amount is negative", + "meta": { + "line": 62, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "firstKey", + "description": "Obtains the first key(s) in this collection.", + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "string" + ] + ] + ], + "returnsDescription": "A single key if no amount is provided or an array of keys, starting from the end if\namount is negative", + "meta": { + "line": 72, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "flatMap", + "description": "Maps each item into a Collection, then joins the results into a single Collection. Identical in behavior to\n[Array.flatMap()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/flatMap).", + "see": [], + "examples": [ + "collection.flatMap(guild => guild.members.cache);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function that produces a new Collection", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Precondition", + "<" + ], + [ + "PreconditionOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "PreconditionStore", + ") => " + ], + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 218, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "forEach", + "params": [ + { + "name": "callbackfn", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Precondition", + "<" + ], + [ + "PreconditionOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "map", + ": " + ], + [ + "Map", + "<" + ], + [ + "string", + ", " + ], + [ + "Precondition", + "<" + ], + [ + "PreconditionOptions", + ">>) => " + ], + [ + "void" + ] + ] + ] + }, + { + "name": "thisArg", + "optional": true, + "type": [ + [ + [ + "any" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "void" + ] + ] + ] + }, + { + "name": "get", + "params": [ + { + "name": "key", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "Precondition", + "<" + ], + [ + "PreconditionOptions", + ">" + ] + ] + ] + }, + { + "name": "has", + "params": [ + { + "name": "key", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "boolean" + ] + ] + ] + }, + { + "name": "hasAll", + "description": "Checks if all of the elements exist in the collection.", + "params": [ + { + "name": "keys", + "description": "The keys of the elements to check for", + "optional": false, + "type": [ + [ + [ + "Array", + "<" + ], + [ + "string", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "boolean" + ] + ] + ], + "returnsDescription": "`true` if all of the elements exist, `false` if at least one does not exist.", + "meta": { + "line": 46, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "hasAny", + "description": "Checks if any of the elements exist in the collection.", + "params": [ + { + "name": "keys", + "description": "The keys of the elements to check for", + "optional": false, + "type": [ + [ + [ + "Array", + "<" + ], + [ + "string", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "boolean" + ] + ] + ], + "returnsDescription": "`true` if any of the elements exist, `false` if none exist.", + "meta": { + "line": 54, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "insert", + "description": "Inserts a piece into the store.", + "params": [ + { + "name": "piece", + "description": "The piece to be inserted into the store.", + "optional": false, + "type": [ + [ + [ + "Precondition", + "<" + ], + [ + "PreconditionOptions", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "Precondition", + "<" + ], + [ + "PreconditionOptions", + ">>" + ] + ] + ], + "returnsDescription": "The inserted piece.", + "meta": { + "line": 338, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "intersect", + "description": "The intersect method returns a new structure containing items where the keys and values are present in both original structures.", + "params": [ + { + "name": "other", + "description": "The other Collection to filter against", + "optional": false, + "type": [ + [ + [ + "ReadonlyCollection", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 357, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "keyAt", + "description": "Identical to [Array.at()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/at).\nReturns the key at a given index, allowing for positive and negative integers.\nNegative integers count back from the last item in the collection.", + "params": [ + { + "name": "index", + "description": "The index of the key to obtain", + "optional": false, + "type": [ + [ + [ + "number" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "string" + ] + ] + ], + "meta": { + "line": 109, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "keys", + "description": "Returns an iterable of keys in the map", + "returns": [ + [ + [ + "IterableIterator", + "<" + ], + [ + "string", + ">" + ] + ] + ] + }, + { + "name": "last", + "description": "Obtains the last value(s) in this collection.", + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "Precondition", + "<" + ], + [ + "PreconditionOptions", + ">" + ] + ] + ], + "returnsDescription": "A single value if no amount is provided or an array of values, starting from the start if\namount is negative", + "meta": { + "line": 82, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "lastKey", + "description": "Obtains the last key(s) in this collection.", + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "string" + ] + ] + ], + "returnsDescription": "A single key if no amount is provided or an array of keys, starting from the start if\namount is negative", + "meta": { + "line": 92, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "load", + "description": "Loads one or more pieces from a path.", + "params": [ + { + "name": "root", + "description": "The root directory the file is from.", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "path", + "description": "The path of the file to load, relative to the `root`.", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "Array", + "<" + ], + [ + "Precondition", + "<" + ], + [ + "PreconditionOptions", + ">>>" + ] + ] + ], + "returnsDescription": "All the loaded pieces.", + "meta": { + "line": 312, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "loadAll", + "description": "Loads all pieces from all directories specified by {@link paths}.", + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "void", + ">" + ] + ] + ], + "meta": { + "line": 326, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "map", + "description": "Maps each item to another value into an array. Identical in behavior to\n[Array.map()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/map).", + "see": [], + "examples": [ + "collection.map(user => user.tag);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function that produces an element of the new array, taking three arguments", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Precondition", + "<" + ], + [ + "PreconditionOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "PreconditionStore", + ") => " + ], + [ + "T" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Array", + "<" + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 230, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "mapValues", + "description": "Maps each item to another value into a collection. Identical in behavior to\n[Array.map()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/map).", + "see": [], + "examples": [ + "collection.mapValues(user => user.tag);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function that produces an element of the new collection, taking three arguments", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Precondition", + "<" + ], + [ + "PreconditionOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "PreconditionStore", + ") => " + ], + [ + "T" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 242, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "messageRun", + "params": [ + { + "name": "message", + "optional": false, + "type": [ + [ + [ + "Message", + "<" + ], + [ + "boolean", + ">" + ] + ] + ] + }, + { + "name": "command", + "optional": false, + "type": [ + [ + [ + "MessageCommand" + ] + ] + ] + }, + { + "name": "context", + "optional": true, + "default": "{}", + "type": [ + [ + [ + "PreconditionContext" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "AsyncPreconditionResult" + ] + ] + ], + "meta": { + "line": 15, + "file": "PreconditionStore.ts", + "path": "src/lib/structures" + } + }, + { + "name": "partition", + "description": "Partitions the collection into two collections where the first collection\ncontains the items that passed and the second contains the items that failed.", + "see": [], + "examples": [ + "const [big, small] = collection.partition(guild => guild.memberCount > 250);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function used to test (should return a boolean)", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Precondition", + "<" + ], + [ + "PreconditionOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "PreconditionStore", + ") => " + ], + [ + "key", + " " + ], + [ + "is", + " " + ], + [ + "K2" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "[" + ], + [ + "Collection", + "<" + ], + [ + "K2", + ", " + ], + [ + "Precondition", + "<" + ], + [ + "PreconditionOptions", + ">>, " + ], + [ + "Collection", + "<" + ], + [ + "Exclude", + "<" + ], + [ + "string", + ", " + ], + [ + "K2", + ">, " + ], + [ + "Precondition", + "<" + ], + [ + "PreconditionOptions", + ">>]" + ] + ] + ], + "meta": { + "line": 202, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "random", + "description": "Obtains unique random value(s) from this collection.", + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "Precondition", + "<" + ], + [ + "PreconditionOptions", + ">" + ] + ] + ], + "returnsDescription": "A single value if no amount is provided or an array of values", + "meta": { + "line": 117, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "randomKey", + "description": "Obtains unique random key(s) from this collection.", + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "string" + ] + ] + ], + "returnsDescription": "A single key if no amount is provided or an array", + "meta": { + "line": 126, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "reduce", + "description": "Applies a function to produce a single value. Identical in behavior to\n[Array.reduce()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/reduce).", + "see": [], + "examples": [ + "collection.reduce((acc, guild) => acc + guild.memberCount, 0);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function used to reduce, taking four arguments; `accumulator`, `currentValue`, `currentKey`,\nand `collection`", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "accumulator", + ": " + ], + [ + "T", + ", " + ], + [ + "value", + ": " + ], + [ + "Precondition", + "<" + ], + [ + "PreconditionOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "PreconditionStore", + ") => " + ], + [ + "T" + ] + ] + ] + }, + { + "name": "initialValue", + "description": "Starting value for the accumulator", + "optional": true, + "type": [ + [ + [ + "T" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "T" + ] + ] + ], + "meta": { + "line": 283, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "registerPath", + "description": "Registers a directory into the store.", + "see": [], + "examples": [ + "```typescript\nstore\n .registerPath(resolve('commands'))\n .registerPath(resolve('third-party', 'commands'));\n```" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "path", + "description": "The path to be added.", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "PreconditionStore" + ] + ] + ], + "meta": { + "line": 305, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "resolve", + "description": "Resolves a piece by its name or its instance.", + "params": [ + { + "name": "name", + "description": "The name of the piece or the instance itself.", + "optional": false, + "type": [ + [ + [ + "string", + " | " + ], + [ + "Precondition", + "<" + ], + [ + "PreconditionOptions", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Precondition", + "<" + ], + [ + "PreconditionOptions", + ">" + ] + ] + ], + "returnsDescription": "The resolved piece.", + "meta": { + "line": 332, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "reverse", + "description": "Identical to [Array.reverse()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/reverse)\nbut returns a Collection instead of an Array.", + "returns": [ + [ + [ + "PreconditionStore" + ] + ] + ], + "meta": { + "line": 132, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "set", + "params": [ + { + "name": "key", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "value", + "optional": false, + "type": [ + [ + [ + "Precondition", + "<" + ], + [ + "PreconditionOptions", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "PreconditionStore" + ] + ] + ], + "meta": { + "line": 68, + "file": "PreconditionStore.ts", + "path": "src/lib/structures" + } + }, + { + "name": "some", + "description": "Checks if there exists an item that passes a test. Identical in behavior to\n[Array.some()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/some).", + "see": [], + "examples": [ + "collection.some(user => user.discriminator === '0000');" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function used to test (should return a boolean)", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Precondition", + "<" + ], + [ + "PreconditionOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "PreconditionStore", + ") => " + ], + [ + "boolean" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "boolean" + ] + ] + ], + "meta": { + "line": 254, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "sort", + "description": "The sort method sorts the items of a collection in place and returns it.\nThe sort is not necessarily stable in Node 10 or older.\nThe default sort order is according to string Unicode code points.", + "see": [], + "examples": [ + "collection.sort((userA, userB) => userA.createdTimestamp - userB.createdTimestamp);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "compareFunction", + "description": "Specifies a function that defines the sort order.\nIf omitted, the collection is sorted according to each character's Unicode code point value, according to the string conversion of each element.", + "optional": true, + "type": [ + [ + [ + "Comparator", + "<" + ], + [ + "string", + ", " + ], + [ + "Precondition", + "<" + ], + [ + "PreconditionOptions", + ">>" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "PreconditionStore" + ] + ] + ], + "meta": { + "line": 351, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "sorted", + "description": "The sorted method sorts the items of a collection and returns it.\nThe sort is not necessarily stable in Node 10 or older.\nThe default sort order is according to string Unicode code points.", + "see": [], + "examples": [ + "collection.sorted((userA, userB) => userA.createdTimestamp - userB.createdTimestamp);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "compareFunction", + "description": "Specifies a function that defines the sort order.\nIf omitted, the collection is sorted according to each character's Unicode code point value,\naccording to the string conversion of each element.", + "optional": true, + "type": [ + [ + [ + "Comparator", + "<" + ], + [ + "string", + ", " + ], + [ + "Precondition", + "<" + ], + [ + "PreconditionOptions", + ">>" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "Precondition", + "<" + ], + [ + "PreconditionOptions", + ">>" + ] + ] + ], + "meta": { + "line": 376, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "sweep", + "description": "Removes items that satisfy the provided filter function.", + "params": [ + { + "name": "fn", + "description": "Function used to test (should return a boolean)", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Precondition", + "<" + ], + [ + "PreconditionOptions", + ">, " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "PreconditionStore", + ") => " + ], + [ + "boolean" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "number" + ] + ] + ], + "returnsDescription": "The number of removed entries", + "meta": { + "line": 173, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "tap", + "description": "Runs a function on the collection and returns the collection.", + "see": [], + "examples": [ + "collection\n .tap(coll => console.log(coll.size))\n .filter(user => user.bot)\n .tap(coll => console.log(coll.size))" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function to execute", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "collection", + ": " + ], + [ + "PreconditionStore", + ") => " + ], + [ + "void" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "PreconditionStore" + ] + ] + ], + "meta": { + "line": 312, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "toJSON", + "returns": [ + [ + [ + "Array", + "<" + ], + [ + "Precondition", + "<" + ], + [ + "PreconditionOptions", + ">>" + ] + ] + ], + "meta": { + "line": 377, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "unload", + "description": "Unloads a piece given its instance or its name.", + "params": [ + { + "name": "name", + "description": "The name of the file to load.", + "optional": false, + "type": [ + [ + [ + "string", + " | " + ], + [ + "Precondition", + "<" + ], + [ + "PreconditionOptions", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "Precondition", + "<" + ], + [ + "PreconditionOptions", + ">>" + ] + ] + ], + "returnsDescription": "Returns the piece that was unloaded.", + "meta": { + "line": 318, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "unloadAll", + "description": "Unloads all pieces from the store.", + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "Array", + "<" + ], + [ + "Precondition", + "<" + ], + [ + "PreconditionOptions", + ">>>" + ] + ] + ], + "meta": { + "line": 322, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "values", + "description": "Returns an iterable of values in the map", + "returns": [ + [ + [ + "IterableIterator", + "<" + ], + [ + "Precondition", + "<" + ], + [ + "PreconditionOptions", + ">>" + ] + ] + ] + } + ], + "meta": { + "line": 8, + "file": "PreconditionStore.ts", + "path": "src/lib/structures" + } + }, + { + "name": "SapphireClient", + "description": "The base {@link Client} extension that makes Sapphire work. When building a Discord bot with the framework, the developer\nmust either use this class, or extend it.", + "extendedDescription": "Sapphire also automatically detects the folders to scan for pieces, please read {@link StoreRegistry.registerPath}\nfor reference. This method is called at the start of the {@link SapphireClient.login} method.", + "see": [ + "{@link SapphireClientOptions} for all options available to the Sapphire Client. You can also provide all of discord.js' [ClientOptions](https://discord.js.org/#/docs/main/stable/typedef/ClientOptions)" + ], + "extends": [ + "Client<Ready>" + ], + "examples": [ + "```typescript\nconst client = new SapphireClient({\n presence: {\n activity: {\n name: 'for commands!',\n type: 'LISTENING'\n }\n }\n});\n\nclient.login(process.env.DISCORD_TOKEN)\n .catch(console.error);\n```", + "```typescript\n// Automatically scan from a specific directory, e.g. the main\n// file is at `/home/me/bot/index.js` and all your pieces are at\n// `/home/me/bot/pieces` (e.g. `/home/me/bot/pieces/commands/MyCommand.js`):\nconst client = new SapphireClient({\n baseUserDirectory: join(__dirname, 'pieces'),\n // More options...\n});\n```", + "```typescript\n// Opt-out automatic scanning:\nconst client = new SapphireClient({\n baseUserDirectory: null,\n // More options...\n});\n```" + ], + "abstract": false, + "deprecated": false, + "construct": { + "name": "constructor", + "params": [ + { + "name": "options", + "optional": false, + "type": [ + [ + [ + "ClientOptions" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "SapphireClient", + "<" + ], + [ + "Ready", + ">" + ] + ] + ], + "meta": { + "line": 262, + "file": "SapphireClient.ts", + "path": "src/lib" + } + }, + "props": [ + { + "name": "application", + "type": [ + [ + [ + "If", + "<" + ], + [ + "Ready", + ", " + ], + [ + "ClientApplication", + ", " + ], + [ + "null", + ">" + ] + ] + ], + "meta": { + "line": 543, + "file": "index.d.ts", + "path": "node_modules/discord.js/typings" + } + }, + { + "name": "channels", + "type": [ + [ + [ + "ChannelManager" + ] + ] + ], + "meta": { + "line": 544, + "file": "index.d.ts", + "path": "node_modules/discord.js/typings" + } + }, + { + "name": "disableMentionPrefix", + "description": "Whether the bot has mention as a prefix disabled", + "see": [], + "abstract": false, + "deprecated": false, + "default": "false", + "type": [ + [ + [ + "boolean" + ] + ] + ], + "meta": { + "line": 254, + "file": "SapphireClient.ts", + "path": "src/lib" + } + }, + { + "name": "emojis", + "readonly": true, + "type": [ + [ + [ + "BaseGuildEmojiManager" + ] + ] + ], + "meta": { + "line": 545, + "file": "index.d.ts", + "path": "node_modules/discord.js/typings" + } + }, + { + "name": "fetchPrefix", + "description": "The method to be overridden by the developer.", + "see": [], + "abstract": false, + "deprecated": false, + "type": [ + [ + [ + "SapphirePrefixHook" + ] + ] + ], + "meta": { + "line": 237, + "file": "SapphireClient.ts", + "path": "src/lib" + } + }, + { + "name": "guilds", + "type": [ + [ + [ + "GuildManager" + ] + ] + ], + "meta": { + "line": 546, + "file": "index.d.ts", + "path": "node_modules/discord.js/typings" + } + }, + { + "name": "id", + "description": "The client's ID, used for the user prefix.", + "see": [], + "abstract": false, + "deprecated": false, + "default": "null", + "type": [ + [ + [ + "null", + " | " + ], + [ + "string" + ] + ] + ], + "meta": { + "line": 207, + "file": "SapphireClient.ts", + "path": "src/lib" + } + }, + { + "name": "logger", + "description": "The logger to be used by the framework and plugins. By default, a {@link Logger} instance is used, which emits the\nmessages to the console.", + "see": [], + "abstract": false, + "deprecated": false, + "type": [ + [ + [ + "ILogger" + ] + ] + ], + "meta": { + "line": 244, + "file": "SapphireClient.ts", + "path": "src/lib" + } + }, + { + "name": "options", + "type": [ + [ + [ + "ClientOptions" + ] + ] + ], + "meta": { + "line": 547, + "file": "index.d.ts", + "path": "node_modules/discord.js/typings" + } + }, + { + "name": "readyAt", + "type": [ + [ + [ + "If", + "<" + ], + [ + "Ready", + ", " + ], + [ + "Date", + ", " + ], + [ + "null", + ">" + ] + ] + ], + "meta": { + "line": 548, + "file": "index.d.ts", + "path": "node_modules/discord.js/typings" + } + }, + { + "name": "readyTimestamp", + "readonly": true, + "type": [ + [ + [ + "If", + "<" + ], + [ + "Ready", + ", " + ], + [ + "number", + ", " + ], + [ + "null", + ">" + ] + ] + ], + "meta": { + "line": 549, + "file": "index.d.ts", + "path": "node_modules/discord.js/typings" + } + }, + { + "name": "shard", + "type": [ + [ + [ + "null", + " | " + ], + [ + "ShardClientUtil" + ] + ] + ], + "meta": { + "line": 551, + "file": "index.d.ts", + "path": "node_modules/discord.js/typings" + } + }, + { + "name": "stores", + "description": "The registered stores.", + "see": [], + "abstract": false, + "deprecated": false, + "type": [ + [ + [ + "StoreRegistry" + ] + ] + ], + "meta": { + "line": 260, + "file": "SapphireClient.ts", + "path": "src/lib" + } + }, + { + "name": "sweepers", + "type": [ + [ + [ + "Sweepers" + ] + ] + ], + "meta": { + "line": 550, + "file": "index.d.ts", + "path": "node_modules/discord.js/typings" + } + }, + { + "name": "token", + "type": [ + [ + [ + "If", + "<" + ], + [ + "Ready", + ", " + ], + [ + "string", + ", " + ], + [ + "null", + " | " + ], + [ + "string", + ">" + ] + ] + ], + "meta": { + "line": 552, + "file": "index.d.ts", + "path": "node_modules/discord.js/typings" + } + }, + { + "name": "uptime", + "type": [ + [ + [ + "If", + "<" + ], + [ + "Ready", + ", " + ], + [ + "number", + ", " + ], + [ + "null", + ">" + ] + ] + ], + "meta": { + "line": 553, + "file": "index.d.ts", + "path": "node_modules/discord.js/typings" + } + }, + { + "name": "user", + "type": [ + [ + [ + "If", + "<" + ], + [ + "Ready", + ", " + ], + [ + "ClientUser", + ", " + ], + [ + "null", + ">" + ] + ] + ], + "meta": { + "line": 554, + "file": "index.d.ts", + "path": "node_modules/discord.js/typings" + } + }, + { + "name": "users", + "type": [ + [ + [ + "UserManager" + ] + ] + ], + "meta": { + "line": 555, + "file": "index.d.ts", + "path": "node_modules/discord.js/typings" + } + }, + { + "name": "voice", + "type": [ + [ + [ + "ClientVoiceManager" + ] + ] + ], + "meta": { + "line": 556, + "file": "index.d.ts", + "path": "node_modules/discord.js/typings" + } + }, + { + "name": "ws", + "type": [ + [ + [ + "WebSocketManager" + ] + ] + ], + "meta": { + "line": 557, + "file": "index.d.ts", + "path": "node_modules/discord.js/typings" + } + }, + { + "name": "captureRejectionSymbol", + "scope": "static", + "readonly": true, + "type": [ + [ + [ + "(" + ], + [ + "typeof", + " " + ], + [ + "captureRejectionSymbol", + ")" + ] + ] + ], + "meta": { + "line": 301, + "file": "events.d.ts", + "path": "node_modules/@types/node" + } + }, + { + "name": "captureRejections", + "description": "Sets or gets the default captureRejection value for all emitters.", + "scope": "static", + "type": [ + [ + [ + "boolean" + ] + ] + ], + "meta": { + "line": 306, + "file": "events.d.ts", + "path": "node_modules/@types/node" + } + }, + { + "name": "defaultMaxListeners", + "scope": "static", + "type": [ + [ + [ + "number" + ] + ] + ], + "meta": { + "line": 307, + "file": "events.d.ts", + "path": "node_modules/@types/node" + } + }, + { + "name": "errorMonitor", + "description": "This symbol shall be used to install a listener for only monitoring `'error'`\nevents. Listeners installed using this symbol are called before the regular\n`'error'` listeners are called.", + "extendedDescription": "Installing a listener using this symbol does not change the behavior once an\n`'error'` event is emitted, therefore the process will still crash if no\nregular `'error'` listener is installed.", + "scope": "static", + "readonly": true, + "type": [ + [ + [ + "(" + ], + [ + "typeof", + " " + ], + [ + "errorMonitor", + ")" + ] + ] + ], + "meta": { + "line": 300, + "file": "events.d.ts", + "path": "node_modules/@types/node" + } + }, + { + "name": "plugins", + "scope": "static", + "type": [ + [ + [ + "PluginManager" + ] + ] + ], + "meta": { + "line": 345, + "file": "SapphireClient.ts", + "path": "src/lib" + } + } + ], + "methods": [ + { + "name": "addListener", + "description": "Alias for `emitter.on(eventName, listener)`.", + "see": [], + "examples": [], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "eventName", + "optional": false, + "type": [ + [ + [ + "string", + " | " + ], + [ + "symbol" + ] + ] + ] + }, + { + "name": "listener", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "args", + ": " + ], + [ + "Array", + "<" + ], + [ + "any", + ">) => " + ], + [ + "void" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "SapphireClient", + "<" + ], + [ + "Ready", + ">" + ] + ] + ] + }, + { + "name": "destroy", + "returns": [ + [ + [ + "void" + ] + ] + ], + "meta": { + "line": 558, + "file": "index.d.ts", + "path": "node_modules/discord.js/typings" + } + }, + { + "name": "emit", + "params": [ + { + "name": "event", + "optional": false, + "type": [ + [ + [ + "K" + ] + ] + ] + }, + { + "name": "args", + "optional": false, + "type": [ + [ + [ + "ClientEvents", + "[" + ], + [ + "K", + "]" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "boolean" + ] + ] + ], + "meta": { + "line": 586, + "file": "index.d.ts", + "path": "node_modules/discord.js/typings" + } + }, + { + "name": "eventNames", + "description": "Returns an array listing the events for which the emitter has registered\nlisteners. The values in the array are strings or `Symbol`s.", + "extendDescription": "```js\nconst EventEmitter = require('events');\nconst myEE = new EventEmitter();\nmyEE.on('foo', () => {});\nmyEE.on('bar', () => {});\n\nconst sym = Symbol('symbol');\nmyEE.on(sym, () => {});\n\nconsole.log(myEE.eventNames());\n// Prints: [ 'foo', 'bar', Symbol(symbol) ]\n```", + "see": [], + "examples": [], + "abstract": false, + "deprecated": false, + "emits": [], + "returns": [ + [ + [ + "Array", + "<" + ], + [ + "string", + " | " + ], + [ + "symbol", + ">" + ] + ] + ] + }, + { + "name": "fetchGuildPreview", + "params": [ + { + "name": "guild", + "optional": false, + "type": [ + [ + [ + "GuildResolvable" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "GuildPreview", + ">" + ] + ] + ], + "meta": { + "line": 559, + "file": "index.d.ts", + "path": "node_modules/discord.js/typings" + } + }, + { + "name": "fetchGuildTemplate", + "params": [ + { + "name": "template", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "GuildTemplate", + ">" + ] + ] + ], + "meta": { + "line": 561, + "file": "index.d.ts", + "path": "node_modules/discord.js/typings" + } + }, + { + "name": "fetchGuildWidget", + "params": [ + { + "name": "guild", + "optional": false, + "type": [ + [ + [ + "GuildResolvable" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "Widget", + ">" + ] + ] + ], + "meta": { + "line": 566, + "file": "index.d.ts", + "path": "node_modules/discord.js/typings" + } + }, + { + "name": "fetchInvite", + "params": [ + { + "name": "invite", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "options", + "optional": true, + "type": [ + [ + [ + "ClientFetchInviteOptions" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "Invite", + ">" + ] + ] + ], + "meta": { + "line": 560, + "file": "index.d.ts", + "path": "node_modules/discord.js/typings" + } + }, + { + "name": "fetchPremiumStickerPacks", + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "StickerPack", + ">>" + ] + ] + ], + "meta": { + "line": 564, + "file": "index.d.ts", + "path": "node_modules/discord.js/typings" + } + }, + { + "name": "fetchSticker", + "params": [ + { + "name": "id", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "Sticker", + ">" + ] + ] + ], + "meta": { + "line": 563, + "file": "index.d.ts", + "path": "node_modules/discord.js/typings" + } + }, + { + "name": "fetchVoiceRegions", + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "VoiceRegion", + ">>" + ] + ] + ], + "meta": { + "line": 562, + "file": "index.d.ts", + "path": "node_modules/discord.js/typings" + } + }, + { + "name": "fetchWebhook", + "params": [ + { + "name": "id", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "token", + "optional": true, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "Webhook", + ">" + ] + ] + ], + "meta": { + "line": 565, + "file": "index.d.ts", + "path": "node_modules/discord.js/typings" + } + }, + { + "name": "generateInvite", + "params": [ + { + "name": "options", + "optional": true, + "type": [ + [ + [ + "InviteGenerationOptions" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "string" + ] + ] + ], + "meta": { + "line": 567, + "file": "index.d.ts", + "path": "node_modules/discord.js/typings" + } + }, + { + "name": "getMaxListeners", + "description": "Returns the current max listener value for the `EventEmitter` which is either\nset by `emitter.setMaxListeners(n)` or defaults to {@link defaultMaxListeners}.", + "see": [], + "examples": [], + "abstract": false, + "deprecated": false, + "emits": [], + "returns": [ + [ + [ + "number" + ] + ] + ] + }, + { + "name": "isReady", + "returns": [ + [ + [ + "this", + " " + ], + [ + "is", + " " + ], + [ + "Client", + "<" + ], + [ + "true", + ">" + ] + ] + ], + "meta": { + "line": 569, + "file": "index.d.ts", + "path": "node_modules/discord.js/typings" + } + }, + { + "name": "listenerCount", + "description": "Returns the number of listeners listening to the event named `eventName`.", + "see": [], + "examples": [], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "eventName", + "description": "The name of the event being listened for", + "optional": false, + "type": [ + [ + [ + "string", + " | " + ], + [ + "symbol" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "number" + ] + ] + ] + }, + { + "name": "listeners", + "description": "Returns a copy of the array of listeners for the event named `eventName`.", + "extendDescription": "```js\nserver.on('connection', (stream) => {\n console.log('someone connected!');\n});\nconsole.log(util.inspect(server.listeners('connection')));\n// Prints: [ [Function] ]\n```", + "see": [], + "examples": [], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "eventName", + "optional": false, + "type": [ + [ + [ + "string", + " | " + ], + [ + "symbol" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Array", + "<" + ], + [ + "Function", + ">" + ] + ] + ] + }, + { + "name": "login", + "description": "Loads all pieces, then logs the client in, establishing a websocket connection to Discord.", + "see": [], + "examples": [], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "token", + "description": "Token of the account to log in with.", + "optional": true, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "string", + ">" + ] + ] + ], + "returnsDescription": "Token of the account used.", + "meta": { + "line": 320, + "file": "SapphireClient.ts", + "path": "src/lib" + } + }, + { + "name": "off", + "params": [ + { + "name": "event", + "optional": false, + "type": [ + [ + [ + "K" + ] + ] + ] + }, + { + "name": "listener", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "args", + ": " + ], + [ + "ClientEvents", + "[" + ], + [ + "K", + "]) => " + ], + [ + "Awaitable", + "<" + ], + [ + "void", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "SapphireClient", + "<" + ], + [ + "Ready", + ">" + ] + ] + ], + "meta": { + "line": 589, + "file": "index.d.ts", + "path": "node_modules/discord.js/typings" + } + }, + { + "name": "on", + "params": [ + { + "name": "event", + "optional": false, + "type": [ + [ + [ + "K" + ] + ] + ] + }, + { + "name": "listener", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "args", + ": " + ], + [ + "ClientEvents", + "[" + ], + [ + "K", + "]) => " + ], + [ + "Awaitable", + "<" + ], + [ + "void", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "SapphireClient", + "<" + ], + [ + "Ready", + ">" + ] + ] + ], + "meta": { + "line": 574, + "file": "index.d.ts", + "path": "node_modules/discord.js/typings" + } + }, + { + "name": "once", + "params": [ + { + "name": "event", + "optional": false, + "type": [ + [ + [ + "K" + ] + ] + ] + }, + { + "name": "listener", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "args", + ": " + ], + [ + "ClientEvents", + "[" + ], + [ + "K", + "]) => " + ], + [ + "Awaitable", + "<" + ], + [ + "void", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "SapphireClient", + "<" + ], + [ + "Ready", + ">" + ] + ] + ], + "meta": { + "line": 580, + "file": "index.d.ts", + "path": "node_modules/discord.js/typings" + } + }, + { + "name": "prependListener", + "description": "Adds the `listener` function to the _beginning_ of the listeners array for the\nevent named `eventName`. No checks are made to see if the `listener` has\nalready been added. Multiple calls passing the same combination of `eventName`and `listener` will result in the `listener` being added, and called, multiple\ntimes.", + "extendDescription": "```js\nserver.prependListener('connection', (stream) => {\n console.log('someone connected!');\n});\n```\n\nReturns a reference to the `EventEmitter`, so that calls can be chained.", + "see": [], + "examples": [], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "eventName", + "description": "The name of the event.", + "optional": false, + "type": [ + [ + [ + "string", + " | " + ], + [ + "symbol" + ] + ] + ] + }, + { + "name": "listener", + "description": "The callback function", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "args", + ": " + ], + [ + "Array", + "<" + ], + [ + "any", + ">) => " + ], + [ + "void" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "SapphireClient", + "<" + ], + [ + "Ready", + ">" + ] + ] + ] + }, + { + "name": "prependOnceListener", + "description": "Adds a **one-time**`listener` function for the event named `eventName` to the_beginning_ of the listeners array. The next time `eventName` is triggered, this\nlistener is removed, and then invoked.", + "extendDescription": "```js\nserver.prependOnceListener('connection', (stream) => {\n console.log('Ah, we have our first user!');\n});\n```\n\nReturns a reference to the `EventEmitter`, so that calls can be chained.", + "see": [], + "examples": [], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "eventName", + "description": "The name of the event.", + "optional": false, + "type": [ + [ + [ + "string", + " | " + ], + [ + "symbol" + ] + ] + ] + }, + { + "name": "listener", + "description": "The callback function", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "args", + ": " + ], + [ + "Array", + "<" + ], + [ + "any", + ">) => " + ], + [ + "void" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "SapphireClient", + "<" + ], + [ + "Ready", + ">" + ] + ] + ] + }, + { + "name": "rawListeners", + "description": "Returns a copy of the array of listeners for the event named `eventName`,\nincluding any wrappers (such as those created by `.once()`).", + "extendDescription": "```js\nconst emitter = new EventEmitter();\nemitter.once('log', () => console.log('log once'));\n\n// Returns a new Array with a function `onceWrapper` which has a property\n// `listener` which contains the original listener bound above\nconst listeners = emitter.rawListeners('log');\nconst logFnWrapper = listeners[0];\n\n// Logs \"log once\" to the console and does not unbind the `once` event\nlogFnWrapper.listener();\n\n// Logs \"log once\" to the console and removes the listener\nlogFnWrapper();\n\nemitter.on('log', () => console.log('log persistently'));\n// Will return a new Array with a single function bound by `.on()` above\nconst newListeners = emitter.rawListeners('log');\n\n// Logs \"log persistently\" twice\nnewListeners[0]();\nemitter.emit('log');\n```", + "see": [], + "examples": [], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "eventName", + "optional": false, + "type": [ + [ + [ + "string", + " | " + ], + [ + "symbol" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Array", + "<" + ], + [ + "Function", + ">" + ] + ] + ] + }, + { + "name": "removeAllListeners", + "params": [ + { + "name": "event", + "optional": true, + "type": [ + [ + [ + "K" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "SapphireClient", + "<" + ], + [ + "Ready", + ">" + ] + ] + ], + "meta": { + "line": 595, + "file": "index.d.ts", + "path": "node_modules/discord.js/typings" + } + }, + { + "name": "removeListener", + "description": "Removes the specified `listener` from the listener array for the event named`eventName`.", + "extendDescription": "```js\nconst callback = (stream) => {\n console.log('someone connected!');\n};\nserver.on('connection', callback);\n// ...\nserver.removeListener('connection', callback);\n```\n\n`removeListener()` will remove, at most, one instance of a listener from the\nlistener array. If any single listener has been added multiple times to the\nlistener array for the specified `eventName`, then `removeListener()` must be\ncalled multiple times to remove each instance.\n\nOnce an event is emitted, all listeners attached to it at the\ntime of emitting are called in order. This implies that any`removeListener()` or `removeAllListeners()` calls _after_ emitting and_before_ the last listener finishes execution will\nnot remove them from`emit()` in progress. Subsequent events behave as expected.\n\n```js\nconst myEmitter = new MyEmitter();\n\nconst callbackA = () => {\n console.log('A');\n myEmitter.removeListener('event', callbackB);\n};\n\nconst callbackB = () => {\n console.log('B');\n};\n\nmyEmitter.on('event', callbackA);\n\nmyEmitter.on('event', callbackB);\n\n// callbackA removes listener callbackB but it will still be called.\n// Internal listener array at time of emit [callbackA, callbackB]\nmyEmitter.emit('event');\n// Prints:\n// A\n// B\n\n// callbackB is now removed.\n// Internal listener array [callbackA]\nmyEmitter.emit('event');\n// Prints:\n// A\n```\n\nBecause listeners are managed using an internal array, calling this will\nchange the position indices of any listener registered _after_ the listener\nbeing removed. This will not impact the order in which listeners are called,\nbut it means that any copies of the listener array as returned by\nthe `emitter.listeners()` method will need to be recreated.\n\nWhen a single function has been added as a handler multiple times for a single\nevent (as in the example below), `removeListener()` will remove the most\nrecently added instance. In the example the `once('ping')`listener is removed:\n\n```js\nconst ee = new EventEmitter();\n\nfunction pong() {\n console.log('pong');\n}\n\nee.on('ping', pong);\nee.once('ping', pong);\nee.removeListener('ping', pong);\n\nee.emit('ping');\nee.emit('ping');\n```\n\nReturns a reference to the `EventEmitter`, so that calls can be chained.", + "see": [], + "examples": [], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "eventName", + "optional": false, + "type": [ + [ + [ + "string", + " | " + ], + [ + "symbol" + ] + ] + ] + }, + { + "name": "listener", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "args", + ": " + ], + [ + "Array", + "<" + ], + [ + "any", + ">) => " + ], + [ + "void" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "SapphireClient", + "<" + ], + [ + "Ready", + ">" + ] + ] + ] + }, + { + "name": "setMaxListeners", + "description": "By default `EventEmitter`s will print a warning if more than `10` listeners are\nadded for a particular event. This is a useful default that helps finding\nmemory leaks. The `emitter.setMaxListeners()` method allows the limit to be\nmodified for this specific `EventEmitter` instance. The value can be set to`Infinity` (or `0`) to indicate an unlimited number of listeners.", + "extendDescription": "Returns a reference to the `EventEmitter`, so that calls can be chained.", + "see": [], + "examples": [], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "n", + "optional": false, + "type": [ + [ + [ + "number" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "SapphireClient", + "<" + ], + [ + "Ready", + ">" + ] + ] + ] + }, + { + "name": "sweepMessages", + "see": [], + "examples": [], + "abstract": false, + "deprecated": true, + "emits": [], + "params": [ + { + "name": "lifetime", + "optional": true, + "type": [ + [ + [ + "number" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "number" + ] + ] + ], + "meta": { + "line": 571, + "file": "index.d.ts", + "path": "node_modules/discord.js/typings" + } + }, + { + "name": "toJSON", + "returns": [ + [ + [ + "unknown" + ] + ] + ], + "meta": { + "line": 572, + "file": "index.d.ts", + "path": "node_modules/discord.js/typings" + } + }, + { + "name": "getEventListeners", + "description": "Returns a copy of the array of listeners for the event named `eventName`.", + "extendDescription": "For `EventEmitter`s this behaves exactly the same as calling `.listeners` on\nthe emitter.\n\nFor `EventTarget`s this is the only way to get the event listeners for the\nevent target. This is useful for debugging and diagnostic purposes.\n\n```js\nconst { getEventListeners, EventEmitter } = require('events');\n\n{\n const ee = new EventEmitter();\n const listener = () => console.log('Events are fun');\n ee.on('foo', listener);\n getEventListeners(ee, 'foo'); // [listener]\n}\n{\n const et = new EventTarget();\n const listener = () => console.log('Events are fun');\n et.addEventListener('foo', listener);\n getEventListeners(et, 'foo'); // [listener]\n}\n```", + "see": [], + "scope": "static", + "examples": [], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "emitter", + "optional": false, + "type": [ + [ + [ + "EventEmitter", + " | " + ], + [ + "DOMEventTarget" + ] + ] + ] + }, + { + "name": "name", + "optional": false, + "type": [ + [ + [ + "string", + " | " + ], + [ + "symbol" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Array", + "<" + ], + [ + "Function", + ">" + ] + ] + ], + "meta": { + "line": 270, + "file": "events.d.ts", + "path": "node_modules/@types/node" + } + }, + { + "name": "listenerCount", + "description": "A class method that returns the number of listeners for the given `eventName`registered on the given `emitter`.", + "extendDescription": "```js\nconst { EventEmitter, listenerCount } = require('events');\nconst myEmitter = new EventEmitter();\nmyEmitter.on('event', () => {});\nmyEmitter.on('event', () => {});\nconsole.log(listenerCount(myEmitter, 'event'));\n// Prints: 2\n```", + "see": [], + "scope": "static", + "examples": [], + "abstract": false, + "deprecated": true, + "emits": [], + "params": [ + { + "name": "emitter", + "description": "The emitter to query", + "optional": false, + "type": [ + [ + [ + "EventEmitter" + ] + ] + ] + }, + { + "name": "eventName", + "description": "The event name", + "optional": false, + "type": [ + [ + [ + "string", + " | " + ], + [ + "symbol" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "number" + ] + ] + ], + "meta": { + "line": 242, + "file": "events.d.ts", + "path": "node_modules/@types/node" + } + }, + { + "name": "on", + "description": "```js\nconst { on, EventEmitter } = require('events');", + "extendDescription": "(async () => {\n const ee = new EventEmitter();\n\n // Emit later on\n process.nextTick(() => {\n ee.emit('foo', 'bar');\n ee.emit('foo', 42);\n });\n\n for await (const event of on(ee, 'foo')) {\n // The execution of this inner block is synchronous and it\n // processes one event at a time (even with await). Do not use\n // if concurrent execution is required.\n console.log(event); // prints ['bar'] [42]\n }\n // Unreachable here\n})();\n```\n\nReturns an `AsyncIterator` that iterates `eventName` events. It will throw\nif the `EventEmitter` emits `'error'`. It removes all listeners when\nexiting the loop. The `value` returned by each iteration is an array\ncomposed of the emitted event arguments.\n\nAn `AbortSignal` can be used to cancel waiting on events:\n\n```js\nconst { on, EventEmitter } = require('events');\nconst ac = new AbortController();\n\n(async () => {\n const ee = new EventEmitter();\n\n // Emit later on\n process.nextTick(() => {\n ee.emit('foo', 'bar');\n ee.emit('foo', 42);\n });\n\n for await (const event of on(ee, 'foo', { signal: ac.signal })) {\n // The execution of this inner block is synchronous and it\n // processes one event at a time (even with await). Do not use\n // if concurrent execution is required.\n console.log(event); // prints ['bar'] [42]\n }\n // Unreachable here\n})();\n\nprocess.nextTick(() => ac.abort());\n```", + "see": [], + "scope": "static", + "examples": [], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "emitter", + "optional": false, + "type": [ + [ + [ + "EventEmitter" + ] + ] + ] + }, + { + "name": "eventName", + "description": "The name of the event being listened for", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "options", + "optional": true, + "type": [ + [ + [ + "StaticEventEmitterOptions" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "AsyncIterableIterator", + "<" + ], + [ + "any", + ">" + ] + ] + ], + "returnsDescription": "that iterates `eventName` events emitted by the `emitter`", + "meta": { + "line": 221, + "file": "events.d.ts", + "path": "node_modules/@types/node" + } + }, + { + "name": "once", + "description": "Creates a `Promise` that is fulfilled when the `EventEmitter` emits the given\nevent or that is rejected if the `EventEmitter` emits `'error'` while waiting.\nThe `Promise` will resolve with an array of all the arguments emitted to the\ngiven event.", + "extendDescription": "This method is intentionally generic and works with the web platform [EventTarget](https://dom.spec.whatwg.org/#interface-eventtarget) interface, which has no special`'error'` event\nsemantics and does not listen to the `'error'` event.\n\n```js\nconst { once, EventEmitter } = require('events');\n\nasync function run() {\n const ee = new EventEmitter();\n\n process.nextTick(() => {\n ee.emit('myevent', 42);\n });\n\n const [value] = await once(ee, 'myevent');\n console.log(value);\n\n const err = new Error('kaboom');\n process.nextTick(() => {\n ee.emit('error', err);\n });\n\n try {\n await once(ee, 'myevent');\n } catch (err) {\n console.log('error happened', err);\n }\n}\n\nrun();\n```\n\nThe special handling of the `'error'` event is only used when `events.once()`is used to wait for another event. If `events.once()` is used to wait for the\n'`error'` event itself, then it is treated as any other kind of event without\nspecial handling:\n\n```js\nconst { EventEmitter, once } = require('events');\n\nconst ee = new EventEmitter();\n\nonce(ee, 'error')\n .then(([err]) => console.log('ok', err.message))\n .catch((err) => console.log('error', err.message));\n\nee.emit('error', new Error('boom'));\n\n// Prints: ok boom\n```\n\nAn `AbortSignal` can be used to cancel waiting for the event:\n\n```js\nconst { EventEmitter, once } = require('events');\n\nconst ee = new EventEmitter();\nconst ac = new AbortController();\n\nasync function foo(emitter, event, signal) {\n try {\n await once(emitter, event, { signal });\n console.log('event emitted!');\n } catch (error) {\n if (error.name === 'AbortError') {\n console.error('Waiting for the event was canceled!');\n } else {\n console.error('There was an error', error.message);\n }\n }\n}\n\nfoo(ee, 'foo', ac.signal);\nac.abort(); // Abort waiting for the event\nee.emit('foo'); // Prints: Waiting for the event was canceled!\n```", + "see": [], + "scope": "static", + "examples": [], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "emitter", + "optional": false, + "type": [ + [ + [ + "NodeEventTarget" + ] + ] + ] + }, + { + "name": "eventName", + "optional": false, + "type": [ + [ + [ + "string", + " | " + ], + [ + "symbol" + ] + ] + ] + }, + { + "name": "options", + "optional": true, + "type": [ + [ + [ + "StaticEventEmitterOptions" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "Array", + "<" + ], + [ + "any", + ">>" + ] + ] + ], + "meta": { + "line": 157, + "file": "events.d.ts", + "path": "node_modules/@types/node" + } + }, + { + "name": "setMaxListeners", + "description": "By default `EventEmitter`s will print a warning if more than `10` listeners are\nadded for a particular event. This is a useful default that helps finding\nmemory leaks. The `EventEmitter.setMaxListeners()` method allows the default limit to be\nmodified (if eventTargets is empty) or modify the limit specified in every `EventTarget` | `EventEmitter` passed as arguments.\nThe value can be set to`Infinity` (or `0`) to indicate an unlimited number of listeners.", + "extendDescription": "```js\nEventEmitter.setMaxListeners(20);\n// Equivalent to\nEventEmitter.defaultMaxListeners = 20;\n\nconst eventTarget = new EventTarget();\n// Only way to increase limit for `EventTarget` instances\n// as these doesn't expose its own `setMaxListeners` method\nEventEmitter.setMaxListeners(20, eventTarget);\n```", + "see": [], + "scope": "static", + "examples": [], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "n", + "optional": true, + "type": [ + [ + [ + "number" + ] + ] + ] + }, + { + "name": "eventTargets", + "optional": false, + "type": [ + [ + [ + "Array", + "<" + ], + [ + "EventEmitter", + " | " + ], + [ + "DOMEventTarget", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "void" + ] + ] + ], + "meta": { + "line": 290, + "file": "events.d.ts", + "path": "node_modules/@types/node" + } + }, + { + "name": "use", + "scope": "static", + "params": [ + { + "name": "plugin", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "typeof", + " " + ], + [ + "Plugin", + ")" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "(" + ], + [ + "typeof", + " " + ], + [ + "SapphireClient", + ")" + ] + ] + ], + "meta": { + "line": 347, + "file": "SapphireClient.ts", + "path": "src/lib" + } + } + ], + "meta": { + "line": 202, + "file": "SapphireClient.ts", + "path": "src/lib" + } + }, + { + "name": "Store", + "description": "The store class which contains {@link Piece}s.", + "extends": [ + "Collection<string, T>" + ], + "construct": { + "name": "constructor", + "params": [ + { + "name": "constructor", + "description": "The piece constructor this store loads.", + "optional": false, + "type": [ + [ + [ + "Constructor", + "<" + ], + [ + "T", + ">" + ] + ] + ] + }, + { + "name": "options", + "description": "The options for the store.", + "optional": false, + "type": [ + [ + [ + "StoreOptions", + "<" + ], + [ + "T", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Store", + "<" + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 289, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + "props": [ + { + "name": "Constructor", + "readonly": true, + "type": [ + [ + [ + "Constructor", + "<" + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 281, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "[toStringTag]", + "readonly": true, + "type": [ + [ + [ + "string" + ] + ] + ], + "meta": { + "line": 135, + "file": "lib.es2015.symbol.wellknown.d.ts", + "path": "node_modules/typescript/lib" + } + }, + { + "name": "constructor", + "type": [ + [ + [ + "CollectionConstructor" + ] + ] + ], + "meta": { + "line": 21, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "hydrateModuleData", + "description": "Adds the final module data properties.", + "see": [], + "access": "private", + "abstract": false, + "deprecated": false, + "type": [ + [ + [ + "any" + ] + ] + ], + "meta": { + "line": 352, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "loadPath", + "description": "Loads a directory into the store.", + "see": [], + "access": "private", + "abstract": false, + "deprecated": false, + "type": [ + [ + [ + "any" + ] + ] + ], + "meta": { + "line": 358, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "name", + "readonly": true, + "type": [ + [ + [ + "string" + ] + ] + ], + "meta": { + "line": 282, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "paths", + "readonly": true, + "type": [ + [ + [ + "Set", + "<" + ], + [ + "string", + ">" + ] + ] + ], + "meta": { + "line": 283, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "size", + "readonly": true, + "type": [ + [ + [ + "number" + ] + ] + ], + "meta": { + "line": 28, + "file": "lib.es2015.collection.d.ts", + "path": "node_modules/typescript/lib" + } + }, + { + "name": "strategy", + "readonly": true, + "type": [ + [ + [ + "ILoaderStrategy", + "<" + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 284, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "walk", + "description": "Retrieves all possible pieces.", + "see": [], + "access": "private", + "abstract": false, + "deprecated": false, + "type": [ + [ + [ + "any" + ] + ] + ], + "meta": { + "line": 364, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "[species]", + "scope": "static", + "readonly": true, + "type": [ + [ + [ + "MapConstructor" + ] + ] + ], + "meta": { + "line": 317, + "file": "lib.es2015.symbol.wellknown.d.ts", + "path": "node_modules/typescript/lib" + } + }, + { + "name": "default", + "scope": "static", + "readonly": true, + "type": [ + [ + [ + "(" + ], + [ + "typeof", + " " + ], + [ + "Collection", + ")" + ] + ] + ], + "meta": { + "line": 28, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "defaultStrategy", + "description": "The default strategy, defaults to {@link LoaderStrategy}, which is constructed on demand when a store is constructed,\nwhen none was set beforehand.", + "scope": "static", + "type": [ + [ + [ + "ILoaderStrategy", + "<" + ], + [ + "any", + ">" + ] + ] + ], + "meta": { + "line": 369, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "logger", + "description": "The default logger, defaults to `null`.", + "scope": "static", + "type": [ + [ + [ + "null", + " | " + ], + [ + "StoreLogger" + ] + ] + ], + "meta": { + "line": 373, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "container", + "description": "A reference to the {@link Container} object for ease of use.", + "see": [ + "container" + ], + "readonly": true, + "abstract": false, + "deprecated": false, + "type": [ + [ + [ + "Container" + ] + ] + ], + "meta": { + "line": 294, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + } + ], + "methods": [ + { + "name": "[iterator]", + "description": "Returns an iterable of entries in the map.", + "returns": [ + [ + [ + "IterableIterator", + "<[" + ], + [ + "string", + ", " + ], + [ + "T", + "]>" + ] + ] + ] + }, + { + "name": "at", + "description": "Identical to [Array.at()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/at).\nReturns the item at a given index, allowing for positive and negative integers.\nNegative integers count back from the last item in the collection.", + "params": [ + { + "name": "index", + "description": "The index of the element to obtain", + "optional": false, + "type": [ + [ + [ + "number" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "T" + ] + ] + ], + "meta": { + "line": 101, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "clear", + "returns": [ + [ + [ + "void" + ] + ] + ] + }, + { + "name": "clone", + "description": "Creates an identical shallow copy of this collection.", + "see": [], + "examples": [ + "const newColl = someColl.clone();" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 320, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "concat", + "description": "Combines this collection with others into a new collection. None of the source collections are modified.", + "see": [], + "examples": [ + "const newColl = someColl.concat(someOtherColl, anotherColl, ohBoyAColl);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "collections", + "description": "Collections to merge", + "optional": false, + "type": [ + [ + [ + "Array", + "<" + ], + [ + "ReadonlyCollection", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">>" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 329, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "construct", + "description": "Constructs a {@link Piece} instance.", + "params": [ + { + "name": "Ctor", + "description": "The {@link Piece}'s constructor used to build the instance.", + "optional": false, + "type": [ + [ + [ + "ILoaderResultEntry", + "<" + ], + [ + "T", + ">" + ] + ] + ] + }, + { + "name": "data", + "description": "The module's information", + "optional": false, + "type": [ + [ + [ + "HydratedModuleData" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "T" + ] + ] + ], + "returnsDescription": "An instance of the constructed piece.", + "meta": { + "line": 345, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "delete", + "params": [ + { + "name": "key", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "boolean" + ] + ] + ] + }, + { + "name": "difference", + "description": "The difference method returns a new structure containing items where the key is present in one of the original structures but not the other.", + "params": [ + { + "name": "other", + "description": "The other Collection to filter against", + "optional": false, + "type": [ + [ + [ + "ReadonlyCollection", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + " | " + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 363, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "each", + "description": "Identical to\n[Map.forEach()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map/forEach),\nbut returns the collection instead of undefined.", + "see": [], + "examples": [ + "collection\n .each(user => console.log(user.username))\n .filter(user => user.bot)\n .each(user => console.log(user.username));" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function to execute for each element", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "T", + ", " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "Store", + "<" + ], + [ + "T", + ">) => " + ], + [ + "void" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Store", + "<" + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 298, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "ensure", + "description": "Obtains the value of the given key if it exists, otherwise sets and returns the value provided by the default value generator.", + "see": [], + "examples": [ + "collection.ensure(guildId, () => defaultGuildConfig);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "key", + "description": "The key to get if it exists, or set otherwise", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "defaultValueGenerator", + "description": "A function that generates the default value", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "Store", + "<" + ], + [ + "T", + ">) => " + ], + [ + "T" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "T" + ] + ] + ], + "meta": { + "line": 38, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "entries", + "description": "Returns an iterable of key, value pairs for every entry in the map.", + "returns": [ + [ + [ + "IterableIterator", + "<[" + ], + [ + "string", + ", " + ], + [ + "T", + "]>" + ] + ] + ] + }, + { + "name": "equals", + "description": "Checks if this collection shares identical items with another.\nThis is different to checking for equality using equal-signs, because\nthe collections may be different objects, but contain the same data.", + "params": [ + { + "name": "collection", + "description": "Collection to compare with", + "optional": false, + "type": [ + [ + [ + "ReadonlyCollection", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "boolean" + ] + ] + ], + "returnsDescription": "Whether the collections have identical contents", + "meta": { + "line": 339, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "every", + "description": "Checks if all items passes a test. Identical in behavior to\n[Array.every()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/every).", + "see": [], + "examples": [ + "collection.every(user => !user.bot);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function used to test (should return a boolean)", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "T", + ", " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "Store", + "<" + ], + [ + "T", + ">) => " + ], + [ + "key", + " " + ], + [ + "is", + " " + ], + [ + "K2" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "this", + " " + ], + [ + "is", + " " + ], + [ + "Collection", + "<" + ], + [ + "K2", + ", " + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 266, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "filter", + "description": "Identical to\n[Array.filter()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/filter),\nbut returns a Collection instead of an Array.", + "see": [], + "examples": [ + "collection.filter(user => user.username === 'Bob');" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "The function to test with (should return boolean)", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "T", + ", " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "Store", + "<" + ], + [ + "T", + ">) => " + ], + [ + "key", + " " + ], + [ + "is", + " " + ], + [ + "K2" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "K2", + ", " + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 186, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "find", + "description": "Searches for a single item where the given function returns a truthy value. This behaves like\n[Array.find()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/find).\n<warn>All collections used in Discord.js are mapped using their `id` property, and if you want to find by id you\nshould use the `get` method. See\n[MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map/get) for details.</warn>", + "see": [], + "examples": [ + "collection.find(user => user.username === 'Bob');" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "The function to test with (should return boolean)", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "T", + ", " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "Store", + "<" + ], + [ + "T", + ">) => " + ], + [ + "value", + " " + ], + [ + "is", + " " + ], + [ + "V2" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "V2" + ] + ] + ], + "meta": { + "line": 146, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "findKey", + "description": "Searches for the key of a single item where the given function returns a truthy value. This behaves like\n[Array.findIndex()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/findIndex),\nbut returns the key rather than the positional index.", + "see": [], + "examples": [ + "collection.findKey(user => user.username === 'Bob');" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "The function to test with (should return boolean)", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "T", + ", " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "Store", + "<" + ], + [ + "T", + ">) => " + ], + [ + "key", + " " + ], + [ + "is", + " " + ], + [ + "K2" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "K2" + ] + ] + ], + "meta": { + "line": 161, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "first", + "description": "Obtains the first value(s) in this collection.", + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "T" + ] + ] + ], + "returnsDescription": "A single value if no amount is provided or an array of values, starting from the end if amount is negative", + "meta": { + "line": 62, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "firstKey", + "description": "Obtains the first key(s) in this collection.", + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "string" + ] + ] + ], + "returnsDescription": "A single key if no amount is provided or an array of keys, starting from the end if\namount is negative", + "meta": { + "line": 72, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "flatMap", + "description": "Maps each item into a Collection, then joins the results into a single Collection. Identical in behavior to\n[Array.flatMap()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/flatMap).", + "see": [], + "examples": [ + "collection.flatMap(guild => guild.members.cache);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function that produces a new Collection", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "T", + ", " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "Store", + "<" + ], + [ + "T", + ">) => " + ], + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 218, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "forEach", + "params": [ + { + "name": "callbackfn", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "T", + ", " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "map", + ": " + ], + [ + "Map", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">) => " + ], + [ + "void" + ] + ] + ] + }, + { + "name": "thisArg", + "optional": true, + "type": [ + [ + [ + "any" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "void" + ] + ] + ] + }, + { + "name": "get", + "params": [ + { + "name": "key", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "T" + ] + ] + ] + }, + { + "name": "has", + "params": [ + { + "name": "key", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "boolean" + ] + ] + ] + }, + { + "name": "hasAll", + "description": "Checks if all of the elements exist in the collection.", + "params": [ + { + "name": "keys", + "description": "The keys of the elements to check for", + "optional": false, + "type": [ + [ + [ + "Array", + "<" + ], + [ + "string", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "boolean" + ] + ] + ], + "returnsDescription": "`true` if all of the elements exist, `false` if at least one does not exist.", + "meta": { + "line": 46, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "hasAny", + "description": "Checks if any of the elements exist in the collection.", + "params": [ + { + "name": "keys", + "description": "The keys of the elements to check for", + "optional": false, + "type": [ + [ + [ + "Array", + "<" + ], + [ + "string", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "boolean" + ] + ] + ], + "returnsDescription": "`true` if any of the elements exist, `false` if none exist.", + "meta": { + "line": 54, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "insert", + "description": "Inserts a piece into the store.", + "params": [ + { + "name": "piece", + "description": "The piece to be inserted into the store.", + "optional": false, + "type": [ + [ + [ + "T" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "T", + ">" + ] + ] + ], + "returnsDescription": "The inserted piece.", + "meta": { + "line": 338, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "intersect", + "description": "The intersect method returns a new structure containing items where the keys and values are present in both original structures.", + "params": [ + { + "name": "other", + "description": "The other Collection to filter against", + "optional": false, + "type": [ + [ + [ + "ReadonlyCollection", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 357, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "keyAt", + "description": "Identical to [Array.at()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/at).\nReturns the key at a given index, allowing for positive and negative integers.\nNegative integers count back from the last item in the collection.", + "params": [ + { + "name": "index", + "description": "The index of the key to obtain", + "optional": false, + "type": [ + [ + [ + "number" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "string" + ] + ] + ], + "meta": { + "line": 109, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "keys", + "description": "Returns an iterable of keys in the map", + "returns": [ + [ + [ + "IterableIterator", + "<" + ], + [ + "string", + ">" + ] + ] + ] + }, + { + "name": "last", + "description": "Obtains the last value(s) in this collection.", + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "T" + ] + ] + ], + "returnsDescription": "A single value if no amount is provided or an array of values, starting from the start if\namount is negative", + "meta": { + "line": 82, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "lastKey", + "description": "Obtains the last key(s) in this collection.", + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "string" + ] + ] + ], + "returnsDescription": "A single key if no amount is provided or an array of keys, starting from the start if\namount is negative", + "meta": { + "line": 92, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "load", + "description": "Loads one or more pieces from a path.", + "params": [ + { + "name": "root", + "description": "The root directory the file is from.", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "path", + "description": "The path of the file to load, relative to the `root`.", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "Array", + "<" + ], + [ + "T", + ">>" + ] + ] + ], + "returnsDescription": "All the loaded pieces.", + "meta": { + "line": 312, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "loadAll", + "description": "Loads all pieces from all directories specified by {@link paths}.", + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "void", + ">" + ] + ] + ], + "meta": { + "line": 326, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "map", + "description": "Maps each item to another value into an array. Identical in behavior to\n[Array.map()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/map).", + "see": [], + "examples": [ + "collection.map(user => user.tag);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function that produces an element of the new array, taking three arguments", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "T", + ", " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "Store", + "<" + ], + [ + "T", + ">) => " + ], + [ + "T" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Array", + "<" + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 230, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "mapValues", + "description": "Maps each item to another value into a collection. Identical in behavior to\n[Array.map()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/map).", + "see": [], + "examples": [ + "collection.mapValues(user => user.tag);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function that produces an element of the new collection, taking three arguments", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "T", + ", " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "Store", + "<" + ], + [ + "T", + ">) => " + ], + [ + "T" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 242, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "partition", + "description": "Partitions the collection into two collections where the first collection\ncontains the items that passed and the second contains the items that failed.", + "see": [], + "examples": [ + "const [big, small] = collection.partition(guild => guild.memberCount > 250);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function used to test (should return a boolean)", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "T", + ", " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "Store", + "<" + ], + [ + "T", + ">) => " + ], + [ + "key", + " " + ], + [ + "is", + " " + ], + [ + "K2" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "[" + ], + [ + "Collection", + "<" + ], + [ + "K2", + ", " + ], + [ + "T", + ">, " + ], + [ + "Collection", + "<" + ], + [ + "Exclude", + "<" + ], + [ + "string", + ", " + ], + [ + "K2", + ">, " + ], + [ + "T", + ">]" + ] + ] + ], + "meta": { + "line": 202, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "random", + "description": "Obtains unique random value(s) from this collection.", + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "T" + ] + ] + ], + "returnsDescription": "A single value if no amount is provided or an array of values", + "meta": { + "line": 117, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "randomKey", + "description": "Obtains unique random key(s) from this collection.", + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "string" + ] + ] + ], + "returnsDescription": "A single key if no amount is provided or an array", + "meta": { + "line": 126, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "reduce", + "description": "Applies a function to produce a single value. Identical in behavior to\n[Array.reduce()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/reduce).", + "see": [], + "examples": [ + "collection.reduce((acc, guild) => acc + guild.memberCount, 0);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function used to reduce, taking four arguments; `accumulator`, `currentValue`, `currentKey`,\nand `collection`", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "accumulator", + ": " + ], + [ + "T", + ", " + ], + [ + "value", + ": " + ], + [ + "T", + ", " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "Store", + "<" + ], + [ + "T", + ">) => " + ], + [ + "T" + ] + ] + ] + }, + { + "name": "initialValue", + "description": "Starting value for the accumulator", + "optional": true, + "type": [ + [ + [ + "T" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "T" + ] + ] + ], + "meta": { + "line": 283, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "registerPath", + "description": "Registers a directory into the store.", + "see": [], + "examples": [ + "```typescript\nstore\n .registerPath(resolve('commands'))\n .registerPath(resolve('third-party', 'commands'));\n```" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "path", + "description": "The path to be added.", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Store", + "<" + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 305, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "resolve", + "description": "Resolves a piece by its name or its instance.", + "params": [ + { + "name": "name", + "description": "The name of the piece or the instance itself.", + "optional": false, + "type": [ + [ + [ + "string", + " | " + ], + [ + "T" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "T" + ] + ] + ], + "returnsDescription": "The resolved piece.", + "meta": { + "line": 332, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "reverse", + "description": "Identical to [Array.reverse()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/reverse)\nbut returns a Collection instead of an Array.", + "returns": [ + [ + [ + "Store", + "<" + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 132, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "set", + "params": [ + { + "name": "key", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "value", + "optional": false, + "type": [ + [ + [ + "T" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Store", + "<" + ], + [ + "T", + ">" + ] + ] + ] + }, + { + "name": "some", + "description": "Checks if there exists an item that passes a test. Identical in behavior to\n[Array.some()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/some).", + "see": [], + "examples": [ + "collection.some(user => user.discriminator === '0000');" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function used to test (should return a boolean)", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "T", + ", " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "Store", + "<" + ], + [ + "T", + ">) => " + ], + [ + "boolean" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "boolean" + ] + ] + ], + "meta": { + "line": 254, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "sort", + "description": "The sort method sorts the items of a collection in place and returns it.\nThe sort is not necessarily stable in Node 10 or older.\nThe default sort order is according to string Unicode code points.", + "see": [], + "examples": [ + "collection.sort((userA, userB) => userA.createdTimestamp - userB.createdTimestamp);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "compareFunction", + "description": "Specifies a function that defines the sort order.\nIf omitted, the collection is sorted according to each character's Unicode code point value, according to the string conversion of each element.", + "optional": true, + "type": [ + [ + [ + "Comparator", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Store", + "<" + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 351, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "sorted", + "description": "The sorted method sorts the items of a collection and returns it.\nThe sort is not necessarily stable in Node 10 or older.\nThe default sort order is according to string Unicode code points.", + "see": [], + "examples": [ + "collection.sorted((userA, userB) => userA.createdTimestamp - userB.createdTimestamp);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "compareFunction", + "description": "Specifies a function that defines the sort order.\nIf omitted, the collection is sorted according to each character's Unicode code point value,\naccording to the string conversion of each element.", + "optional": true, + "type": [ + [ + [ + "Comparator", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "string", + ", " + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 376, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "sweep", + "description": "Removes items that satisfy the provided filter function.", + "params": [ + { + "name": "fn", + "description": "Function used to test (should return a boolean)", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "T", + ", " + ], + [ + "key", + ": " + ], + [ + "string", + ", " + ], + [ + "collection", + ": " + ], + [ + "Store", + "<" + ], + [ + "T", + ">) => " + ], + [ + "boolean" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "number" + ] + ] + ], + "returnsDescription": "The number of removed entries", + "meta": { + "line": 173, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "tap", + "description": "Runs a function on the collection and returns the collection.", + "see": [], + "examples": [ + "collection\n .tap(coll => console.log(coll.size))\n .filter(user => user.bot)\n .tap(coll => console.log(coll.size))" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function to execute", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "collection", + ": " + ], + [ + "Store", + "<" + ], + [ + "T", + ">) => " + ], + [ + "void" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Store", + "<" + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 312, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "toJSON", + "returns": [ + [ + [ + "Array", + "<" + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 377, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "unload", + "description": "Unloads a piece given its instance or its name.", + "params": [ + { + "name": "name", + "description": "The name of the file to load.", + "optional": false, + "type": [ + [ + [ + "string", + " | " + ], + [ + "T" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "T", + ">" + ] + ] + ], + "returnsDescription": "Returns the piece that was unloaded.", + "meta": { + "line": 318, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "unloadAll", + "description": "Unloads all pieces from the store.", + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "Array", + "<" + ], + [ + "T", + ">>" + ] + ] + ], + "meta": { + "line": 322, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "values", + "description": "Returns an iterable of values in the map", + "returns": [ + [ + [ + "IterableIterator", + "<" + ], + [ + "T", + ">" + ] + ] + ] + } + ], + "meta": { + "line": 280, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + }, + "isExternal": true + }, + { + "name": "StoreRegistry", + "description": "A strict-typed store registry. This is available in {@link container}.", + "see": [], + "extends": [ + "Collection<Key, Value>" + ], + "examples": [ + "```typescript\n// Adding new stores\n\n// Register the store:\ncontainer.stores.register(new RouteStore());\n\n// Augment Sapphire to add the new store, in case of a JavaScript\n// project, this can be moved to an `Augments.d.ts` (or any other name)\n// file somewhere:\ndeclare module '@sapphire/pieces' {\n export interface StoreRegistryEntries {\n routes: RouteStore;\n }\n}\n```" + ], + "abstract": false, + "deprecated": false, + "construct": { + "name": "constructor", + "params": [ + { + "name": "entries", + "optional": true, + "type": [ + [ + [ + "null", + " | " + ], + [ + "readonly", + " " + ], + [ + "Array", + "<" + ], + [ + "readonly", + " [" + ], + [ + "keyof", + " " + ], + [ + "StoreRegistryEntries", + ", " + ], + [ + "Value", + "]>" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "StoreRegistry" + ] + ] + ] + }, + "props": [ + { + "name": "[toStringTag]", + "readonly": true, + "type": [ + [ + [ + "string" + ] + ] + ], + "meta": { + "line": 135, + "file": "lib.es2015.symbol.wellknown.d.ts", + "path": "node_modules/typescript/lib" + } + }, + { + "name": "constructor", + "type": [ + [ + [ + "CollectionConstructor" + ] + ] + ], + "meta": { + "line": 21, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "size", + "readonly": true, + "type": [ + [ + [ + "number" + ] + ] + ], + "meta": { + "line": 28, + "file": "lib.es2015.collection.d.ts", + "path": "node_modules/typescript/lib" + } + }, + { + "name": "[species]", + "scope": "static", + "readonly": true, + "type": [ + [ + [ + "MapConstructor" + ] + ] + ], + "meta": { + "line": 317, + "file": "lib.es2015.symbol.wellknown.d.ts", + "path": "node_modules/typescript/lib" + } + }, + { + "name": "default", + "scope": "static", + "readonly": true, + "type": [ + [ + [ + "(" + ], + [ + "typeof", + " " + ], + [ + "Collection", + ")" + ] + ] + ], + "meta": { + "line": 28, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + } + ], + "methods": [ + { + "name": "[iterator]", + "description": "Returns an iterable of entries in the map.", + "returns": [ + [ + [ + "IterableIterator", + "<[" + ], + [ + "keyof", + " " + ], + [ + "StoreRegistryEntries", + ", " + ], + [ + "Value", + "]>" + ] + ] + ] + }, + { + "name": "at", + "description": "Identical to [Array.at()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/at).\nReturns the item at a given index, allowing for positive and negative integers.\nNegative integers count back from the last item in the collection.", + "params": [ + { + "name": "index", + "description": "The index of the element to obtain", + "optional": false, + "type": [ + [ + [ + "number" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "Value" + ] + ] + ], + "meta": { + "line": 101, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "clear", + "returns": [ + [ + [ + "void" + ] + ] + ] + }, + { + "name": "clone", + "description": "Creates an identical shallow copy of this collection.", + "see": [], + "examples": [ + "const newColl = someColl.clone();" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "keyof", + " " + ], + [ + "StoreRegistryEntries", + ", " + ], + [ + "Value", + ">" + ] + ] + ], + "meta": { + "line": 320, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "concat", + "description": "Combines this collection with others into a new collection. None of the source collections are modified.", + "see": [], + "examples": [ + "const newColl = someColl.concat(someOtherColl, anotherColl, ohBoyAColl);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "collections", + "description": "Collections to merge", + "optional": false, + "type": [ + [ + [ + "Array", + "<" + ], + [ + "ReadonlyCollection", + "<" + ], + [ + "keyof", + " " + ], + [ + "StoreRegistryEntries", + ", " + ], + [ + "Value", + ">>" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "keyof", + " " + ], + [ + "StoreRegistryEntries", + ", " + ], + [ + "Value", + ">" + ] + ] + ], + "meta": { + "line": 329, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "delete", + "params": [ + { + "name": "key", + "optional": false, + "type": [ + [ + [ + "keyof", + " " + ], + [ + "StoreRegistryEntries" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "boolean" + ] + ] + ] + }, + { + "name": "deregister", + "description": "Deregisters a store.", + "see": [], + "examples": [], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "store", + "description": "The store to deregister.", + "optional": false, + "type": [ + [ + [ + "Store", + "<" + ], + [ + "T", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "StoreRegistry" + ] + ] + ], + "meta": { + "line": 553, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "difference", + "description": "The difference method returns a new structure containing items where the key is present in one of the original structures but not the other.", + "params": [ + { + "name": "other", + "description": "The other Collection to filter against", + "optional": false, + "type": [ + [ + [ + "ReadonlyCollection", + "<" + ], + [ + "keyof", + " " + ], + [ + "StoreRegistryEntries", + ", " + ], + [ + "T", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "keyof", + " " + ], + [ + "StoreRegistryEntries", + ", " + ], + [ + "Value", + " | " + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 363, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "each", + "description": "Identical to\n[Map.forEach()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map/forEach),\nbut returns the collection instead of undefined.", + "see": [], + "examples": [ + "collection\n .each(user => console.log(user.username))\n .filter(user => user.bot)\n .each(user => console.log(user.username));" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function to execute for each element", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Value", + ", " + ], + [ + "key", + ": " + ], + [ + "keyof", + " " + ], + [ + "StoreRegistryEntries", + ", " + ], + [ + "collection", + ": " + ], + [ + "StoreRegistry", + ") => " + ], + [ + "void" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "StoreRegistry" + ] + ] + ], + "meta": { + "line": 298, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "ensure", + "description": "Obtains the value of the given key if it exists, otherwise sets and returns the value provided by the default value generator.", + "see": [], + "examples": [ + "collection.ensure(guildId, () => defaultGuildConfig);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "key", + "description": "The key to get if it exists, or set otherwise", + "optional": false, + "type": [ + [ + [ + "keyof", + " " + ], + [ + "StoreRegistryEntries" + ] + ] + ] + }, + { + "name": "defaultValueGenerator", + "description": "A function that generates the default value", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "key", + ": " + ], + [ + "keyof", + " " + ], + [ + "StoreRegistryEntries", + ", " + ], + [ + "collection", + ": " + ], + [ + "StoreRegistry", + ") => " + ], + [ + "Value" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Value" + ] + ] + ], + "meta": { + "line": 38, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "entries", + "description": "Returns an iterable of key, value pairs for every entry in the map.", + "returns": [ + [ + [ + "IterableIterator", + "<[" + ], + [ + "keyof", + " " + ], + [ + "StoreRegistryEntries", + ", " + ], + [ + "Value", + "]>" + ] + ] + ] + }, + { + "name": "equals", + "description": "Checks if this collection shares identical items with another.\nThis is different to checking for equality using equal-signs, because\nthe collections may be different objects, but contain the same data.", + "params": [ + { + "name": "collection", + "description": "Collection to compare with", + "optional": false, + "type": [ + [ + [ + "ReadonlyCollection", + "<" + ], + [ + "keyof", + " " + ], + [ + "StoreRegistryEntries", + ", " + ], + [ + "Value", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "boolean" + ] + ] + ], + "returnsDescription": "Whether the collections have identical contents", + "meta": { + "line": 339, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "every", + "description": "Checks if all items passes a test. Identical in behavior to\n[Array.every()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/every).", + "see": [], + "examples": [ + "collection.every(user => !user.bot);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function used to test (should return a boolean)", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Value", + ", " + ], + [ + "key", + ": " + ], + [ + "keyof", + " " + ], + [ + "StoreRegistryEntries", + ", " + ], + [ + "collection", + ": " + ], + [ + "StoreRegistry", + ") => " + ], + [ + "key", + " " + ], + [ + "is", + " " + ], + [ + "K2" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "this", + " " + ], + [ + "is", + " " + ], + [ + "Collection", + "<" + ], + [ + "K2", + ", " + ], + [ + "Value", + ">" + ] + ] + ], + "meta": { + "line": 266, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "filter", + "description": "Identical to\n[Array.filter()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/filter),\nbut returns a Collection instead of an Array.", + "see": [], + "examples": [ + "collection.filter(user => user.username === 'Bob');" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "The function to test with (should return boolean)", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Value", + ", " + ], + [ + "key", + ": " + ], + [ + "keyof", + " " + ], + [ + "StoreRegistryEntries", + ", " + ], + [ + "collection", + ": " + ], + [ + "StoreRegistry", + ") => " + ], + [ + "key", + " " + ], + [ + "is", + " " + ], + [ + "K2" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "K2", + ", " + ], + [ + "Value", + ">" + ] + ] + ], + "meta": { + "line": 186, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "find", + "description": "Searches for a single item where the given function returns a truthy value. This behaves like\n[Array.find()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/find).\n<warn>All collections used in Discord.js are mapped using their `id` property, and if you want to find by id you\nshould use the `get` method. See\n[MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map/get) for details.</warn>", + "see": [], + "examples": [ + "collection.find(user => user.username === 'Bob');" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "The function to test with (should return boolean)", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Value", + ", " + ], + [ + "key", + ": " + ], + [ + "keyof", + " " + ], + [ + "StoreRegistryEntries", + ", " + ], + [ + "collection", + ": " + ], + [ + "StoreRegistry", + ") => " + ], + [ + "value", + " " + ], + [ + "is", + " " + ], + [ + "V2" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "V2" + ] + ] + ], + "meta": { + "line": 146, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "findKey", + "description": "Searches for the key of a single item where the given function returns a truthy value. This behaves like\n[Array.findIndex()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/findIndex),\nbut returns the key rather than the positional index.", + "see": [], + "examples": [ + "collection.findKey(user => user.username === 'Bob');" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "The function to test with (should return boolean)", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Value", + ", " + ], + [ + "key", + ": " + ], + [ + "keyof", + " " + ], + [ + "StoreRegistryEntries", + ", " + ], + [ + "collection", + ": " + ], + [ + "StoreRegistry", + ") => " + ], + [ + "key", + " " + ], + [ + "is", + " " + ], + [ + "K2" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "K2" + ] + ] + ], + "meta": { + "line": 161, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "first", + "description": "Obtains the first value(s) in this collection.", + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "Value" + ] + ] + ], + "returnsDescription": "A single value if no amount is provided or an array of values, starting from the end if amount is negative", + "meta": { + "line": 62, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "firstKey", + "description": "Obtains the first key(s) in this collection.", + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "keyof", + " " + ], + [ + "StoreRegistryEntries" + ] + ] + ], + "returnsDescription": "A single key if no amount is provided or an array of keys, starting from the end if\namount is negative", + "meta": { + "line": 72, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "flatMap", + "description": "Maps each item into a Collection, then joins the results into a single Collection. Identical in behavior to\n[Array.flatMap()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/flatMap).", + "see": [], + "examples": [ + "collection.flatMap(guild => guild.members.cache);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function that produces a new Collection", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Value", + ", " + ], + [ + "key", + ": " + ], + [ + "keyof", + " " + ], + [ + "StoreRegistryEntries", + ", " + ], + [ + "collection", + ": " + ], + [ + "StoreRegistry", + ") => " + ], + [ + "Collection", + "<" + ], + [ + "keyof", + " " + ], + [ + "StoreRegistryEntries", + ", " + ], + [ + "T", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "keyof", + " " + ], + [ + "StoreRegistryEntries", + ", " + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 218, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "forEach", + "params": [ + { + "name": "callbackfn", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Value", + ", " + ], + [ + "key", + ": " + ], + [ + "keyof", + " " + ], + [ + "StoreRegistryEntries", + ", " + ], + [ + "map", + ": " + ], + [ + "Map", + "<" + ], + [ + "keyof", + " " + ], + [ + "StoreRegistryEntries", + ", " + ], + [ + "Value", + ">) => " + ], + [ + "void" + ] + ] + ] + }, + { + "name": "thisArg", + "optional": true, + "type": [ + [ + [ + "any" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "void" + ] + ] + ] + }, + { + "name": "get", + "params": [ + { + "name": "key", + "optional": false, + "type": [ + [ + [ + "K" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "StoreRegistryEntries", + "[" + ], + [ + "K", + "]" + ] + ] + ] + }, + { + "name": "has", + "params": [ + { + "name": "key", + "optional": false, + "type": [ + [ + [ + "keyof", + " " + ], + [ + "StoreRegistryEntries" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "true" + ] + ] + ] + }, + { + "name": "hasAll", + "description": "Checks if all of the elements exist in the collection.", + "params": [ + { + "name": "keys", + "description": "The keys of the elements to check for", + "optional": false, + "type": [ + [ + [ + "Array", + "<" + ], + [ + "keyof", + " " + ], + [ + "StoreRegistryEntries", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "boolean" + ] + ] + ], + "returnsDescription": "`true` if all of the elements exist, `false` if at least one does not exist.", + "meta": { + "line": 46, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "hasAny", + "description": "Checks if any of the elements exist in the collection.", + "params": [ + { + "name": "keys", + "description": "The keys of the elements to check for", + "optional": false, + "type": [ + [ + [ + "Array", + "<" + ], + [ + "keyof", + " " + ], + [ + "StoreRegistryEntries", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "boolean" + ] + ] + ], + "returnsDescription": "`true` if any of the elements exist, `false` if none exist.", + "meta": { + "line": 54, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "intersect", + "description": "The intersect method returns a new structure containing items where the keys and values are present in both original structures.", + "params": [ + { + "name": "other", + "description": "The other Collection to filter against", + "optional": false, + "type": [ + [ + [ + "ReadonlyCollection", + "<" + ], + [ + "keyof", + " " + ], + [ + "StoreRegistryEntries", + ", " + ], + [ + "T", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "keyof", + " " + ], + [ + "StoreRegistryEntries", + ", " + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 357, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "keyAt", + "description": "Identical to [Array.at()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/at).\nReturns the key at a given index, allowing for positive and negative integers.\nNegative integers count back from the last item in the collection.", + "params": [ + { + "name": "index", + "description": "The index of the key to obtain", + "optional": false, + "type": [ + [ + [ + "number" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "keyof", + " " + ], + [ + "StoreRegistryEntries" + ] + ] + ], + "meta": { + "line": 109, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "keys", + "description": "Returns an iterable of keys in the map", + "returns": [ + [ + [ + "IterableIterator", + "<" + ], + [ + "keyof", + " " + ], + [ + "StoreRegistryEntries", + ">" + ] + ] + ] + }, + { + "name": "last", + "description": "Obtains the last value(s) in this collection.", + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "Value" + ] + ] + ], + "returnsDescription": "A single value if no amount is provided or an array of values, starting from the start if\namount is negative", + "meta": { + "line": 82, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "lastKey", + "description": "Obtains the last key(s) in this collection.", + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "keyof", + " " + ], + [ + "StoreRegistryEntries" + ] + ] + ], + "returnsDescription": "A single key if no amount is provided or an array of keys, starting from the start if\namount is negative", + "meta": { + "line": 92, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "load", + "description": "Loads all the registered stores.", + "see": [], + "examples": [], + "abstract": false, + "deprecated": false, + "emits": [], + "returns": [ + [ + [ + "Promise", + "<" + ], + [ + "void", + ">" + ] + ] + ], + "meta": { + "line": 516, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "map", + "description": "Maps each item to another value into an array. Identical in behavior to\n[Array.map()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/map).", + "see": [], + "examples": [ + "collection.map(user => user.tag);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function that produces an element of the new array, taking three arguments", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Value", + ", " + ], + [ + "key", + ": " + ], + [ + "keyof", + " " + ], + [ + "StoreRegistryEntries", + ", " + ], + [ + "collection", + ": " + ], + [ + "StoreRegistry", + ") => " + ], + [ + "T" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Array", + "<" + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 230, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "mapValues", + "description": "Maps each item to another value into a collection. Identical in behavior to\n[Array.map()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/map).", + "see": [], + "examples": [ + "collection.mapValues(user => user.tag);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function that produces an element of the new collection, taking three arguments", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Value", + ", " + ], + [ + "key", + ": " + ], + [ + "keyof", + " " + ], + [ + "StoreRegistryEntries", + ", " + ], + [ + "collection", + ": " + ], + [ + "StoreRegistry", + ") => " + ], + [ + "T" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "keyof", + " " + ], + [ + "StoreRegistryEntries", + ", " + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 242, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "partition", + "description": "Partitions the collection into two collections where the first collection\ncontains the items that passed and the second contains the items that failed.", + "see": [], + "examples": [ + "const [big, small] = collection.partition(guild => guild.memberCount > 250);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function used to test (should return a boolean)", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Value", + ", " + ], + [ + "key", + ": " + ], + [ + "keyof", + " " + ], + [ + "StoreRegistryEntries", + ", " + ], + [ + "collection", + ": " + ], + [ + "StoreRegistry", + ") => " + ], + [ + "key", + " " + ], + [ + "is", + " " + ], + [ + "K2" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "[" + ], + [ + "Collection", + "<" + ], + [ + "K2", + ", " + ], + [ + "Value", + ">, " + ], + [ + "Collection", + "<" + ], + [ + "Exclude", + "<" + ], + [ + "'arguments'", + ", " + ], + [ + "K2", + "> | " + ], + [ + "Exclude", + "<" + ], + [ + "'commands'", + ", " + ], + [ + "K2", + "> | " + ], + [ + "Exclude", + "<" + ], + [ + "'interaction", + "-" + ], + [ + "handlers'", + ", " + ], + [ + "K2", + "> | " + ], + [ + "Exclude", + "<" + ], + [ + "'listeners'", + ", " + ], + [ + "K2", + "> | " + ], + [ + "Exclude", + "<" + ], + [ + "'preconditions'", + ", " + ], + [ + "K2", + ">, " + ], + [ + "Value", + ">]" + ] + ] + ], + "meta": { + "line": 202, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "random", + "description": "Obtains unique random value(s) from this collection.", + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "Value" + ] + ] + ], + "returnsDescription": "A single value if no amount is provided or an array of values", + "meta": { + "line": 117, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "randomKey", + "description": "Obtains unique random key(s) from this collection.", + "returns": [ + [ + [ + "undefined", + " | " + ], + [ + "keyof", + " " + ], + [ + "StoreRegistryEntries" + ] + ] + ], + "returnsDescription": "A single key if no amount is provided or an array", + "meta": { + "line": 126, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "reduce", + "description": "Applies a function to produce a single value. Identical in behavior to\n[Array.reduce()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/reduce).", + "see": [], + "examples": [ + "collection.reduce((acc, guild) => acc + guild.memberCount, 0);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function used to reduce, taking four arguments; `accumulator`, `currentValue`, `currentKey`,\nand `collection`", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "accumulator", + ": " + ], + [ + "T", + ", " + ], + [ + "value", + ": " + ], + [ + "Value", + ", " + ], + [ + "key", + ": " + ], + [ + "keyof", + " " + ], + [ + "StoreRegistryEntries", + ", " + ], + [ + "collection", + ": " + ], + [ + "StoreRegistry", + ") => " + ], + [ + "T" + ] + ] + ] + }, + { + "name": "initialValue", + "description": "Starting value for the accumulator", + "optional": true, + "type": [ + [ + [ + "T" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "T" + ] + ] + ], + "meta": { + "line": 283, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "register", + "description": "Registers a store.", + "see": [], + "examples": [], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "store", + "description": "The store to register.", + "optional": false, + "type": [ + [ + [ + "Store", + "<" + ], + [ + "T", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "StoreRegistry" + ] + ] + ], + "meta": { + "line": 547, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "registerPath", + "description": "Registers all user directories from the process working directory, the default value is obtained by assuming\nCommonJS (high accuracy) but with fallback for ECMAScript Modules (reads package.json's `main` entry, fallbacks\nto `process.cwd()`).", + "extendDescription": "By default, if you have this folder structure:\n```\n/home/me/my-bot\nββ src\nβ ββ commands\nβ ββ events\nβ ββ main.js\nββ package.json\n```\n\nAnd you run `node src/main.js`, the directories `/home/me/my-bot/src/commands` and `/home/me/my-bot/src/events` will\nbe registered for the commands and events stores respectively, since both directories are located in the same\ndirectory as your main file.\n\n**Note**: this also registers directories for all other stores, even if they don't have a folder, this allows you\nto create new pieces and hot-load them later anytime.", + "see": [], + "examples": [], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "rootDirectory", + "description": "The root directory to register pieces at.", + "optional": true, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "void" + ] + ] + ], + "meta": { + "line": 541, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + } + }, + { + "name": "reverse", + "description": "Identical to [Array.reverse()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/reverse)\nbut returns a Collection instead of an Array.", + "returns": [ + [ + [ + "StoreRegistry" + ] + ] + ], + "meta": { + "line": 132, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "set", + "params": [ + { + "name": "key", + "optional": false, + "type": [ + [ + [ + "keyof", + " " + ], + [ + "StoreRegistryEntries" + ] + ] + ] + }, + { + "name": "value", + "optional": false, + "type": [ + [ + [ + "Value" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "StoreRegistry" + ] + ] + ] + }, + { + "name": "some", + "description": "Checks if there exists an item that passes a test. Identical in behavior to\n[Array.some()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/some).", + "see": [], + "examples": [ + "collection.some(user => user.discriminator === '0000');" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function used to test (should return a boolean)", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Value", + ", " + ], + [ + "key", + ": " + ], + [ + "keyof", + " " + ], + [ + "StoreRegistryEntries", + ", " + ], + [ + "collection", + ": " + ], + [ + "StoreRegistry", + ") => " + ], + [ + "boolean" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "boolean" + ] + ] + ], + "meta": { + "line": 254, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "sort", + "description": "The sort method sorts the items of a collection in place and returns it.\nThe sort is not necessarily stable in Node 10 or older.\nThe default sort order is according to string Unicode code points.", + "see": [], + "examples": [ + "collection.sort((userA, userB) => userA.createdTimestamp - userB.createdTimestamp);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "compareFunction", + "description": "Specifies a function that defines the sort order.\nIf omitted, the collection is sorted according to each character's Unicode code point value, according to the string conversion of each element.", + "optional": true, + "type": [ + [ + [ + "Comparator", + "<" + ], + [ + "keyof", + " " + ], + [ + "StoreRegistryEntries", + ", " + ], + [ + "Value", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "StoreRegistry" + ] + ] + ], + "meta": { + "line": 351, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "sorted", + "description": "The sorted method sorts the items of a collection and returns it.\nThe sort is not necessarily stable in Node 10 or older.\nThe default sort order is according to string Unicode code points.", + "see": [], + "examples": [ + "collection.sorted((userA, userB) => userA.createdTimestamp - userB.createdTimestamp);" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "compareFunction", + "description": "Specifies a function that defines the sort order.\nIf omitted, the collection is sorted according to each character's Unicode code point value,\naccording to the string conversion of each element.", + "optional": true, + "type": [ + [ + [ + "Comparator", + "<" + ], + [ + "keyof", + " " + ], + [ + "StoreRegistryEntries", + ", " + ], + [ + "Value", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Collection", + "<" + ], + [ + "keyof", + " " + ], + [ + "StoreRegistryEntries", + ", " + ], + [ + "Value", + ">" + ] + ] + ], + "meta": { + "line": 376, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "sweep", + "description": "Removes items that satisfy the provided filter function.", + "params": [ + { + "name": "fn", + "description": "Function used to test (should return a boolean)", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "value", + ": " + ], + [ + "Value", + ", " + ], + [ + "key", + ": " + ], + [ + "keyof", + " " + ], + [ + "StoreRegistryEntries", + ", " + ], + [ + "collection", + ": " + ], + [ + "StoreRegistry", + ") => " + ], + [ + "boolean" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "number" + ] + ] + ], + "returnsDescription": "The number of removed entries", + "meta": { + "line": 173, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "tap", + "description": "Runs a function on the collection and returns the collection.", + "see": [], + "examples": [ + "collection\n .tap(coll => console.log(coll.size))\n .filter(user => user.bot)\n .tap(coll => console.log(coll.size))" + ], + "abstract": false, + "deprecated": false, + "emits": [], + "params": [ + { + "name": "fn", + "description": "Function to execute", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "collection", + ": " + ], + [ + "StoreRegistry", + ") => " + ], + [ + "void" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "StoreRegistry" + ] + ] + ], + "meta": { + "line": 312, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "toJSON", + "returns": [ + [ + [ + "Array", + "<" + ], + [ + "Value", + ">" + ] + ] + ], + "meta": { + "line": 377, + "file": "index.d.ts", + "path": "node_modules/@discordjs/collection/dist" + } + }, + { + "name": "values", + "description": "Returns an iterable of values in the map", + "returns": [ + [ + [ + "IterableIterator", + "<" + ], + [ + "Value", + ">" + ] + ] + ] + } + ], + "meta": { + "line": 511, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + }, + "isExternal": true + }, + { + "name": "UserError", + "description": "The UserError class to be emitted in the pieces.", + "see": [], + "extends": [ + "Error" + ], + "examples": [], + "abstract": false, + "deprecated": false, + "construct": { + "name": "constructor", + "description": "Constructs an UserError.", + "params": [ + { + "name": "options", + "optional": false, + "type": [ + [ + [ + "Options" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "UserError" + ] + ] + ], + "meta": { + "line": 21, + "file": "UserError.ts", + "path": "src/lib/errors" + } + }, + "props": [ + { + "name": "cause", + "type": [ + [ + [ + "Error" + ] + ] + ], + "meta": { + "line": 26, + "file": "lib.es2022.error.d.ts", + "path": "node_modules/typescript/lib" + } + }, + { + "name": "context", + "description": "User-provided context.", + "readonly": true, + "type": [ + [ + [ + "unknown" + ] + ] + ], + "meta": { + "line": 14, + "file": "UserError.ts", + "path": "src/lib/errors" + } + }, + { + "name": "identifier", + "description": "An identifier, useful to localize emitted errors.", + "readonly": true, + "type": [ + [ + [ + "string" + ] + ] + ], + "meta": { + "line": 9, + "file": "UserError.ts", + "path": "src/lib/errors" + } + }, + { + "name": "message", + "type": [ + [ + [ + "string" + ] + ] + ], + "meta": { + "line": 1023, + "file": "lib.es5.d.ts", + "path": "node_modules/typescript/lib" + } + }, + { + "name": "stack", + "type": [ + [ + [ + "string" + ] + ] + ], + "meta": { + "line": 1024, + "file": "lib.es5.d.ts", + "path": "node_modules/typescript/lib" + } + }, + { + "name": "prepareStackTrace", + "scope": "static", + "type": [ + [ + [ + "(" + ], + [ + "err", + ": " + ], + [ + "Error", + ", " + ], + [ + "stackTraces", + ": " + ], + [ + "Array", + "<" + ], + [ + "CallSite", + ">) => " + ], + [ + "any" + ] + ] + ], + "meta": { + "line": 11, + "file": "globals.d.ts", + "path": "node_modules/@types/node" + } + }, + { + "name": "stackTraceLimit", + "scope": "static", + "type": [ + [ + [ + "number" + ] + ] + ], + "meta": { + "line": 13, + "file": "globals.d.ts", + "path": "node_modules/@types/node" + } + }, + { + "name": "name", + "readonly": true, + "type": [ + [ + [ + "string" + ] + ] + ], + "meta": { + "line": 28, + "file": "UserError.ts", + "path": "src/lib/errors" + } + } + ], + "methods": [ + { + "name": "captureStackTrace", + "description": "Create .stack property on a target object", + "scope": "static", + "params": [ + { + "name": "targetObject", + "optional": false, + "type": [ + [ + [ + "object" + ] + ] + ] + }, + { + "name": "constructorOpt", + "optional": true, + "type": [ + [ + [ + "Function" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "void" + ] + ] + ] + } + ], + "meta": { + "line": 5, + "file": "UserError.ts", + "path": "src/lib/errors" + } + }, + { + "name": "UserPermissionsPrecondition", + "description": "Constructs a contextful permissions precondition requirement.", + "see": [], + "implements": [ + "PreconditionSingleResolvableDetails<'UserPermissions'>" + ], + "examples": [ + "```typescript\nexport class CoreCommand extends Command {\n public constructor(context: PieceContext) {\n super(context, {\n preconditions: [\n 'GuildOnly',\n new UserPermissionsPrecondition('ADD_REACTIONS')\n ]\n });\n }\n\n public messageRun(message: Message, args: Args) {\n // ...\n }\n}\n```" + ], + "abstract": false, + "deprecated": false, + "construct": { + "name": "constructor", + "description": "Constructs a precondition container entry.", + "params": [ + { + "name": "permissions", + "description": "The permissions that will be required by this command.", + "optional": false, + "type": [ + [ + [ + "PermissionResolvable" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "UserPermissionsPrecondition" + ] + ] + ], + "meta": { + "line": 33, + "file": "UserPermissionsPrecondition.ts", + "path": "src/lib/utils/preconditions/containers" + } + }, + "props": [ + { + "name": "context", + "description": "The context to be set at {@link PreconditionContainerSingle.context}.", + "type": [ + [ + [ + "{" + ], + [ + "\npermissions", + ": " + ], + [ + "Permissions\n", + "}" + ] + ] + ], + "meta": { + "line": 27, + "file": "UserPermissionsPrecondition.ts", + "path": "src/lib/utils/preconditions/containers" + } + }, + { + "name": "name", + "description": "The name of the precondition to retrieve from {@link SapphireClient.preconditions}.", + "type": [ + [ + [ + "'UserPermissions'" + ] + ] + ], + "meta": { + "line": 26, + "file": "UserPermissionsPrecondition.ts", + "path": "src/lib/utils/preconditions/containers" + } + } + ], + "meta": { + "line": 25, + "file": "UserPermissionsPrecondition.ts", + "path": "src/lib/utils/preconditions/containers" + } + } + ], + "typedefs": [ + { + "name": "BucketScope", + "description": "The scope the cooldown applies to.", + "meta": { + "line": 18, + "file": "Enums.ts", + "path": "src/lib/types" + }, + "variant": "enum", + "props": [ + { + "name": "Channel", + "description": "Per channel cooldowns.", + "type": [ + [ + [ + "0" + ] + ] + ] + }, + { + "name": "Global", + "description": "Global cooldowns.", + "type": [ + [ + [ + "1" + ] + ] + ] + }, + { + "name": "Guild", + "description": "Per guild cooldowns.", + "type": [ + [ + [ + "2" + ] + ] + ] + }, + { + "name": "User", + "description": "Per user cooldowns.", + "type": [ + [ + [ + "3" + ] + ] + ] + } + ] + }, + { + "name": "CommandOptionsRunTypeEnum", + "description": "The allowed values for {@link Command.Options.runIn} as an enum.", + "see": [], + "deprecated": false, + "meta": { + "line": 557, + "file": "Command.ts", + "path": "src/lib/structures" + }, + "variant": "enum", + "props": [ + { + "name": "Dm", + "type": [ + [ + [ + "\"DM\"" + ] + ] + ] + }, + { + "name": "GuildAny", + "type": [ + [ + [ + "\"GUILD_ANY\"" + ] + ] + ] + }, + { + "name": "GuildNews", + "type": [ + [ + [ + "\"GUILD_NEWS\"" + ] + ] + ] + }, + { + "name": "GuildNewsThread", + "type": [ + [ + [ + "\"GUILD_NEWS_THREAD\"" + ] + ] + ] + }, + { + "name": "GuildPrivateThread", + "type": [ + [ + [ + "\"GUILD_PRIVATE_THREAD\"" + ] + ] + ] + }, + { + "name": "GuildPublicThread", + "type": [ + [ + [ + "\"GUILD_PUBLIC_THREAD\"" + ] + ] + ] + }, + { + "name": "GuildText", + "type": [ + [ + [ + "\"GUILD_TEXT\"" + ] + ] + ] + } + ] + }, + { + "name": "CommandPreConditions", + "description": "The available command pre-conditions.", + "see": [], + "deprecated": false, + "meta": { + "line": 571, + "file": "Command.ts", + "path": "src/lib/structures" + }, + "variant": "enum", + "props": [ + { + "name": "ClientPermissions", + "type": [ + [ + [ + "\"ClientPermissions\"" + ] + ] + ] + }, + { + "name": "Cooldown", + "type": [ + [ + [ + "\"Cooldown\"" + ] + ] + ] + }, + { + "name": "DirectMessageOnly", + "type": [ + [ + [ + "\"DMOnly\"" + ] + ] + ] + }, + { + "name": "GuildNewsOnly", + "type": [ + [ + [ + "\"GuildNewsOnly\"" + ] + ] + ] + }, + { + "name": "GuildNewsThreadOnly", + "type": [ + [ + [ + "\"GuildNewsThreadOnly\"" + ] + ] + ] + }, + { + "name": "GuildOnly", + "type": [ + [ + [ + "\"GuildOnly\"" + ] + ] + ] + }, + { + "name": "GuildPrivateThreadOnly", + "type": [ + [ + [ + "\"GuildPrivateThreadOnly\"" + ] + ] + ] + }, + { + "name": "GuildPublicThreadOnly", + "type": [ + [ + [ + "\"GuildPublicThreadOnly\"" + ] + ] + ] + }, + { + "name": "GuildTextOnly", + "type": [ + [ + [ + "\"GuildTextOnly\"" + ] + ] + ] + }, + { + "name": "GuildThreadOnly", + "type": [ + [ + [ + "\"GuildThreadOnly\"" + ] + ] + ] + }, + { + "name": "NotSafeForWork", + "type": [ + [ + [ + "\"NSFW\"" + ] + ] + ] + }, + { + "name": "UserPermissions", + "type": [ + [ + [ + "\"UserPermissions\"" + ] + ] + ] + } + ] + }, + { + "name": "CooldownLevel", + "meta": { + "line": 1, + "file": "Enums.ts", + "path": "src/lib/types" + }, + "variant": "enum", + "props": [ + { + "name": "Author", + "type": [ + [ + [ + "\"author\"" + ] + ] + ] + }, + { + "name": "Channel", + "type": [ + [ + [ + "\"channel\"" + ] + ] + ] + }, + { + "name": "Guild", + "type": [ + [ + [ + "\"guild\"" + ] + ] + ] + } + ] + }, + { + "name": "Identifiers", + "meta": { + "line": 1, + "file": "Identifiers.ts", + "path": "src/lib/errors" + }, + "variant": "enum", + "props": [ + { + "name": "ArgsMissing", + "type": [ + [ + [ + "\"argsMissing\"" + ] + ] + ] + }, + { + "name": "ArgsUnavailable", + "type": [ + [ + [ + "\"argsUnavailable\"" + ] + ] + ] + }, + { + "name": "ArgumentBooleanError", + "type": [ + [ + [ + "\"booleanError\"" + ] + ] + ] + }, + { + "name": "ArgumentChannelError", + "type": [ + [ + [ + "\"channelError\"" + ] + ] + ] + }, + { + "name": "ArgumentDMChannelError", + "type": [ + [ + [ + "\"dmChannelError\"" + ] + ] + ] + }, + { + "name": "ArgumentDateError", + "type": [ + [ + [ + "\"dateError\"" + ] + ] + ] + }, + { + "name": "ArgumentDateTooEarly", + "type": [ + [ + [ + "\"dateTooEarly\"" + ] + ] + ] + }, + { + "name": "ArgumentDateTooFar", + "type": [ + [ + [ + "\"dateTooFar\"" + ] + ] + ] + }, + { + "name": "ArgumentEmojiError", + "type": [ + [ + [ + "\"emojiError\"" + ] + ] + ] + }, + { + "name": "ArgumentEnumEmptyError", + "type": [ + [ + [ + "\"enumEmptyError\"" + ] + ] + ] + }, + { + "name": "ArgumentEnumError", + "type": [ + [ + [ + "\"enumError\"" + ] + ] + ] + }, + { + "name": "ArgumentFloatError", + "type": [ + [ + [ + "\"floatError\"" + ] + ] + ] + }, + { + "name": "ArgumentFloatTooLarge", + "type": [ + [ + [ + "\"floatTooLarge\"" + ] + ] + ] + }, + { + "name": "ArgumentFloatTooSmall", + "type": [ + [ + [ + "\"floatTooSmall\"" + ] + ] + ] + }, + { + "name": "ArgumentGuildCategoryChannelError", + "type": [ + [ + [ + "\"categoryChannelError\"" + ] + ] + ] + }, + { + "name": "ArgumentGuildChannelError", + "type": [ + [ + [ + "\"guildChannelError\"" + ] + ] + ] + }, + { + "name": "ArgumentGuildChannelMissingGuildError", + "type": [ + [ + [ + "\"guildChannelMissingGuildError\"" + ] + ] + ] + }, + { + "name": "ArgumentGuildNewsChannelError", + "type": [ + [ + [ + "\"guildNewsChannelError\"" + ] + ] + ] + }, + { + "name": "ArgumentGuildNewsThreadChannelError", + "type": [ + [ + [ + "\"guildNewsChannelError\"" + ] + ] + ] + }, + { + "name": "ArgumentGuildPrivateThreadChannelError", + "type": [ + [ + [ + "\"guildPrivateThreadChannelError\"" + ] + ] + ] + }, + { + "name": "ArgumentGuildPublicThreadChannelError", + "type": [ + [ + [ + "\"guildPublicThreadChannelError\"" + ] + ] + ] + }, + { + "name": "ArgumentGuildStageVoiceChannelError", + "type": [ + [ + [ + "\"guildStageVoiceChannelError\"" + ] + ] + ] + }, + { + "name": "ArgumentGuildTextChannelError", + "type": [ + [ + [ + "\"guildTextChannelError\"" + ] + ] + ] + }, + { + "name": "ArgumentGuildThreadChannelError", + "type": [ + [ + [ + "\"guildThreadChannelError\"" + ] + ] + ] + }, + { + "name": "ArgumentGuildVoiceChannelError", + "type": [ + [ + [ + "\"guildVoiceChannelError\"" + ] + ] + ] + }, + { + "name": "ArgumentHyperlinkError", + "type": [ + [ + [ + "\"hyperlinkError\"" + ] + ] + ] + }, + { + "name": "ArgumentIntegerError", + "type": [ + [ + [ + "\"integerError\"" + ] + ] + ] + }, + { + "name": "ArgumentIntegerTooLarge", + "type": [ + [ + [ + "\"integerTooLarge\"" + ] + ] + ] + }, + { + "name": "ArgumentIntegerTooSmall", + "type": [ + [ + [ + "\"integerTooSmall\"" + ] + ] + ] + }, + { + "name": "ArgumentMemberError", + "type": [ + [ + [ + "\"memberError\"" + ] + ] + ] + }, + { + "name": "ArgumentMemberMissingGuild", + "type": [ + [ + [ + "\"memberMissingGuild\"" + ] + ] + ] + }, + { + "name": "ArgumentMessageError", + "type": [ + [ + [ + "\"messageError\"" + ] + ] + ] + }, + { + "name": "ArgumentNumberError", + "type": [ + [ + [ + "\"numberError\"" + ] + ] + ] + }, + { + "name": "ArgumentNumberTooLarge", + "type": [ + [ + [ + "\"numberTooLarge\"" + ] + ] + ] + }, + { + "name": "ArgumentNumberTooSmall", + "type": [ + [ + [ + "\"numberTooSmall\"" + ] + ] + ] + }, + { + "name": "ArgumentRoleError", + "type": [ + [ + [ + "\"roleError\"" + ] + ] + ] + }, + { + "name": "ArgumentRoleMissingGuild", + "type": [ + [ + [ + "\"roleMissingGuild\"" + ] + ] + ] + }, + { + "name": "ArgumentStringTooLong", + "type": [ + [ + [ + "\"stringTooLong\"" + ] + ] + ] + }, + { + "name": "ArgumentStringTooShort", + "type": [ + [ + [ + "\"stringTooShort\"" + ] + ] + ] + }, + { + "name": "ArgumentUserError", + "type": [ + [ + [ + "\"userError\"" + ] + ] + ] + }, + { + "name": "CommandDisabled", + "type": [ + [ + [ + "\"commandDisabled\"" + ] + ] + ] + }, + { + "name": "PreconditionClientPermissions", + "type": [ + [ + [ + "\"preconditionClientPermissions\"" + ] + ] + ] + }, + { + "name": "PreconditionClientPermissionsNoClient", + "type": [ + [ + [ + "\"preconditionClientPermissionsNoClient\"" + ] + ] + ] + }, + { + "name": "PreconditionClientPermissionsNoPermissions", + "type": [ + [ + [ + "\"preconditionClientPermissionsNoPermissions\"" + ] + ] + ] + }, + { + "name": "PreconditionCooldown", + "type": [ + [ + [ + "\"preconditionCooldown\"" + ] + ] + ] + }, + { + "name": "PreconditionDMOnly", + "type": [ + [ + [ + "\"preconditionDmOnly\"" + ] + ] + ] + }, + { + "name": "PreconditionGuildNewsOnly", + "type": [ + [ + [ + "\"preconditionGuildNewsOnly\"" + ] + ] + ] + }, + { + "name": "PreconditionGuildNewsThreadOnly", + "type": [ + [ + [ + "\"preconditionGuildNewsThreadOnly\"" + ] + ] + ] + }, + { + "name": "PreconditionGuildOnly", + "type": [ + [ + [ + "\"preconditionGuildOnly\"" + ] + ] + ] + }, + { + "name": "PreconditionGuildPrivateThreadOnly", + "type": [ + [ + [ + "\"preconditionGuildPrivateThreadOnly\"" + ] + ] + ] + }, + { + "name": "PreconditionGuildPublicThreadOnly", + "type": [ + [ + [ + "\"preconditionGuildPublicThreadOnly\"" + ] + ] + ] + }, + { + "name": "PreconditionGuildTextOnly", + "type": [ + [ + [ + "\"preconditionGuildTextOnly\"" + ] + ] + ] + }, + { + "name": "PreconditionMissingChatInputHandler", + "type": [ + [ + [ + "\"preconditionMissingChatInputHandler\"" + ] + ] + ] + }, + { + "name": "PreconditionMissingContextMenuHandler", + "type": [ + [ + [ + "\"preconditionMissingContextMenuHandler\"" + ] + ] + ] + }, + { + "name": "PreconditionMissingMessageHandler", + "type": [ + [ + [ + "\"preconditionMissingMessageHandler\"" + ] + ] + ] + }, + { + "name": "PreconditionNSFW", + "type": [ + [ + [ + "\"preconditionNsfw\"" + ] + ] + ] + }, + { + "name": "PreconditionThreadOnly", + "type": [ + [ + [ + "\"preconditionThreadOnly\"" + ] + ] + ] + }, + { + "name": "PreconditionUserPermissions", + "type": [ + [ + [ + "\"preconditionUserPermissions\"" + ] + ] + ] + }, + { + "name": "PreconditionUserPermissionsNoPermissions", + "type": [ + [ + [ + "\"preconditionUserPermissionsNoPermissions\"" + ] + ] + ] + } + ] + }, + { + "name": "InteractionHandlerTypes", + "meta": { + "line": 105, + "file": "InteractionHandler.ts", + "path": "src/lib/structures" + }, + "variant": "enum", + "props": [ + { + "name": "Autocomplete", + "type": [ + [ + [ + "\"AUTOCOMPLETE\"" + ] + ] + ] + }, + { + "name": "Button", + "type": [ + [ + [ + "\"BUTTON\"" + ] + ] + ] + }, + { + "name": "MessageComponent", + "type": [ + [ + [ + "\"MESSAGE_COMPONENT\"" + ] + ] + ] + }, + { + "name": "SelectMenu", + "type": [ + [ + [ + "\"SELECT_MENU\"" + ] + ] + ] + } + ] + }, + { + "name": "InternalRegistryAPIType", + "meta": { + "line": 42, + "file": "Enums.ts", + "path": "src/lib/types" + }, + "variant": "enum", + "props": [ + { + "name": "ChatInput", + "type": [ + [ + [ + "0" + ] + ] + ] + }, + { + "name": "ContextMenu", + "type": [ + [ + [ + "1" + ] + ] + ] + } + ] + }, + { + "name": "LogLevel", + "description": "The logger levels for the {@link ILogger}.", + "meta": { + "line": 4, + "file": "ILogger.ts", + "path": "src/lib/utils/logger" + }, + "variant": "enum", + "props": [ + { + "name": "Debug", + "description": "The debug level, used when calling {@link ILogger.debug}.", + "type": [ + [ + [ + "20" + ] + ] + ] + }, + { + "name": "Error", + "description": "The error level, used when calling {@link ILogger.error}.", + "type": [ + [ + [ + "50" + ] + ] + ] + }, + { + "name": "Fatal", + "description": "The critical level, used when calling {@link ILogger.fatal}.", + "type": [ + [ + [ + "60" + ] + ] + ] + }, + { + "name": "Info", + "description": "The info level, used when calling {@link ILogger.info}.", + "type": [ + [ + [ + "30" + ] + ] + ] + }, + { + "name": "None", + "description": "An unknown or uncategorized level.", + "type": [ + [ + [ + "100" + ] + ] + ] + }, + { + "name": "Trace", + "description": "The lowest log level, used when calling {@link ILogger.trace}.", + "type": [ + [ + [ + "10" + ] + ] + ] + }, + { + "name": "Warn", + "description": "The warning level, used when calling {@link ILogger.warn}.", + "type": [ + [ + [ + "40" + ] + ] + ] + } + ] + }, + { + "name": "PluginHook", + "meta": { + "line": 7, + "file": "Enums.ts", + "path": "src/lib/types" + }, + "variant": "enum", + "props": [ + { + "name": "PostInitialization", + "type": [ + [ + [ + "\"postInitialization\"" + ] + ] + ] + }, + { + "name": "PostLogin", + "type": [ + [ + [ + "\"postLogin\"" + ] + ] + ] + }, + { + "name": "PreGenericsInitialization", + "type": [ + [ + [ + "\"preGenericsInitialization\"" + ] + ] + ] + }, + { + "name": "PreInitialization", + "type": [ + [ + [ + "\"preInitialization\"" + ] + ] + ] + }, + { + "name": "PreLogin", + "type": [ + [ + [ + "\"preLogin\"" + ] + ] + ] + } + ] + }, + { + "name": "PreconditionRunCondition", + "description": "The condition for a {@link PreconditionContainerArray}.", + "meta": { + "line": 38, + "file": "PreconditionContainerArray.ts", + "path": "src/lib/utils/preconditions" + }, + "variant": "enum", + "props": [ + { + "name": "And", + "description": "Defines a condition where all the entries must pass. This uses {@link PreconditionConditionAnd}.", + "type": [ + [ + [ + "0" + ] + ] + ] + }, + { + "name": "Or", + "description": "Defines a condition where at least one entry must pass. This uses {@link PreconditionConditionOr}.", + "type": [ + [ + [ + "1" + ] + ] + ] + } + ] + }, + { + "name": "PreconditionRunMode", + "description": "The run mode for a {@link PreconditionContainerArray}.", + "see": [], + "deprecated": false, + "meta": { + "line": 19, + "file": "PreconditionContainerArray.ts", + "path": "src/lib/utils/preconditions" + }, + "variant": "enum", + "props": [ + { + "name": "Parallel", + "description": "All entries are run in parallel using `Promise.all`, then the results are processed after all of them have\ncompleted.", + "type": [ + [ + [ + "1" + ] + ] + ] + }, + { + "name": "Sequential", + "description": "The entries are run sequentially, this is the default behaviour and can be slow when doing long asynchronous\ntasks, but is performance savvy.", + "type": [ + [ + [ + "0" + ] + ] + ] + } + ] + }, + { + "name": "RegisterBehavior", + "meta": { + "line": 37, + "file": "Enums.ts", + "path": "src/lib/types" + }, + "variant": "enum", + "props": [ + { + "name": "LogToConsole", + "type": [ + [ + [ + "\"LOG_TO_CONSOLE\"" + ] + ] + ] + }, + { + "name": "Overwrite", + "type": [ + [ + [ + "\"OVERWRITE\"" + ] + ] + ] + } + ] + }, + { + "name": "AliasPieceOptions", + "meta": { + "line": 669, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + }, + "variant": "interface", + "isExternal": true, + "props": [ + { + "name": "aliases", + "description": "The aliases for the piece.", + "optional": true, + "default": "[]", + "type": [ + [ + [ + "readonly", + " " + ], + [ + "Array", + "<" + ], + [ + "string", + ">" + ] + ] + ] + }, + { + "name": "enabled", + "description": "Whether or not the piece should be enabled. If set to false, the piece will be unloaded.", + "optional": true, + "default": "true", + "type": [ + [ + [ + "boolean" + ] + ] + ] + }, + { + "name": "name", + "description": "The name for the piece.", + "optional": true, + "default": "''", + "type": [ + [ + [ + "string" + ] + ] + ] + } + ] + }, + { + "name": "ArgOptions", + "meta": { + "line": 722, + "file": "Args.ts", + "path": "src/lib/parsers" + }, + "variant": "interface" + }, + { + "name": "ArgType", + "meta": { + "line": 693, + "file": "Args.ts", + "path": "src/lib/parsers" + }, + "variant": "interface", + "props": [ + { + "name": "boolean", + "optional": false, + "type": [ + [ + [ + "boolean" + ] + ] + ] + }, + { + "name": "channel", + "optional": false, + "type": [ + [ + [ + "ChannelTypes" + ] + ] + ] + }, + { + "name": "date", + "optional": false, + "type": [ + [ + [ + "Date" + ] + ] + ] + }, + { + "name": "dmChannel", + "optional": false, + "type": [ + [ + [ + "DMChannel" + ] + ] + ] + }, + { + "name": "emoji", + "optional": false, + "type": [ + [ + [ + "EmojiObject" + ] + ] + ] + }, + { + "name": "enum", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "float", + "optional": false, + "type": [ + [ + [ + "number" + ] + ] + ] + }, + { + "name": "guildCategoryChannel", + "optional": false, + "type": [ + [ + [ + "CategoryChannel" + ] + ] + ] + }, + { + "name": "guildChannel", + "optional": false, + "type": [ + [ + [ + "GuildBasedChannelTypes" + ] + ] + ] + }, + { + "name": "guildNewsChannel", + "optional": false, + "type": [ + [ + [ + "NewsChannel" + ] + ] + ] + }, + { + "name": "guildNewsThreadChannel", + "optional": false, + "type": [ + [ + [ + "ThreadChannel", + " & {" + ], + [ + "\nparent", + ": " + ], + [ + "null", + " | " + ], + [ + "NewsChannel", + "," + ], + [ + "\ntype", + ": " + ], + [ + "'GUILD", + "_" + ], + [ + "NEWS", + "_" + ], + [ + "THREAD'\n", + "}" + ] + ] + ] + }, + { + "name": "guildPrivateThreadChannel", + "optional": false, + "type": [ + [ + [ + "ThreadChannel", + " & {" + ], + [ + "\nparent", + ": " + ], + [ + "null", + " | " + ], + [ + "TextChannel", + "," + ], + [ + "\ntype", + ": " + ], + [ + "'GUILD", + "_" + ], + [ + "PRIVATE", + "_" + ], + [ + "THREAD'\n", + "}" + ] + ] + ] + }, + { + "name": "guildPublicThreadChannel", + "optional": false, + "type": [ + [ + [ + "ThreadChannel", + " & {" + ], + [ + "\nparent", + ": " + ], + [ + "null", + " | " + ], + [ + "TextChannel", + "," + ], + [ + "\ntype", + ": " + ], + [ + "'GUILD", + "_" + ], + [ + "PUBLIC", + "_" + ], + [ + "THREAD'\n", + "}" + ] + ] + ] + }, + { + "name": "guildStageVoiceChannel", + "optional": false, + "type": [ + [ + [ + "StageChannel" + ] + ] + ] + }, + { + "name": "guildTextChannel", + "optional": false, + "type": [ + [ + [ + "TextChannel" + ] + ] + ] + }, + { + "name": "guildThreadChannel", + "optional": false, + "type": [ + [ + [ + "ThreadChannel" + ] + ] + ] + }, + { + "name": "guildVoiceChannel", + "optional": false, + "type": [ + [ + [ + "VoiceChannel" + ] + ] + ] + }, + { + "name": "hyperlink", + "optional": false, + "type": [ + [ + [ + "URL" + ] + ] + ] + }, + { + "name": "integer", + "optional": false, + "type": [ + [ + [ + "number" + ] + ] + ] + }, + { + "name": "member", + "optional": false, + "type": [ + [ + [ + "GuildMember" + ] + ] + ] + }, + { + "name": "message", + "optional": false, + "type": [ + [ + [ + "Message", + "<" + ], + [ + "boolean", + ">" + ] + ] + ] + }, + { + "name": "number", + "optional": false, + "type": [ + [ + [ + "number" + ] + ] + ] + }, + { + "name": "role", + "optional": false, + "type": [ + [ + [ + "Role" + ] + ] + ] + }, + { + "name": "string", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "url", + "optional": false, + "type": [ + [ + [ + "URL" + ] + ] + ] + }, + { + "name": "user", + "optional": false, + "type": [ + [ + [ + "User" + ] + ] + ] + } + ] + }, + { + "name": "ArgsNextCallback", + "description": "The value to be mapped.", + "meta": { + "line": 735, + "file": "Args.ts", + "path": "src/lib/parsers" + }, + "variant": "interface", + "params": [ + { + "name": "value", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Maybe", + "<" + ], + [ + "T", + ">" + ] + ] + ] + }, + { + "name": "ArgumentContext", + "meta": { + "line": 90, + "file": "Argument.ts", + "path": "src/lib/structures" + }, + "variant": "interface", + "props": [ + { + "name": "args", + "optional": false, + "type": [ + [ + [ + "Args" + ] + ] + ] + }, + { + "name": "argument", + "optional": false, + "type": [ + [ + [ + "IArgument", + "<" + ], + [ + "T", + ">" + ] + ] + ] + }, + { + "name": "command", + "optional": false, + "type": [ + [ + [ + "MessageCommand" + ] + ] + ] + }, + { + "name": "commandContext", + "optional": false, + "type": [ + [ + [ + "MessageCommandContext" + ] + ] + ] + }, + { + "name": "inclusive", + "optional": true, + "type": [ + [ + [ + "boolean" + ] + ] + ] + }, + { + "name": "maximum", + "optional": true, + "type": [ + [ + [ + "number" + ] + ] + ] + }, + { + "name": "message", + "optional": false, + "type": [ + [ + [ + "Message", + "<" + ], + [ + "boolean", + ">" + ] + ] + ] + }, + { + "name": "minimum", + "optional": true, + "type": [ + [ + [ + "number" + ] + ] + ] + } + ] + }, + { + "name": "ArgumentOptions", + "meta": { + "line": 88, + "file": "Argument.ts", + "path": "src/lib/structures" + }, + "variant": "interface", + "props": [ + { + "name": "aliases", + "description": "The aliases for the piece.", + "optional": true, + "default": "[]", + "type": [ + [ + [ + "readonly", + " " + ], + [ + "Array", + "<" + ], + [ + "string", + ">" + ] + ] + ] + }, + { + "name": "enabled", + "description": "Whether or not the piece should be enabled. If set to false, the piece will be unloaded.", + "optional": true, + "default": "true", + "type": [ + [ + [ + "boolean" + ] + ] + ] + }, + { + "name": "name", + "description": "The name for the piece.", + "optional": true, + "default": "''", + "type": [ + [ + [ + "string" + ] + ] + ] + } + ] + }, + { + "name": "AutocompleteCommandContext", + "meta": { + "line": 813, + "file": "Command.ts", + "path": "src/lib/structures" + }, + "variant": "interface", + "props": [ + { + "name": "commandId", + "description": "The id of the command.", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "commandName", + "description": "The name of the command.", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ] + }, + { + "name": "AutocompleteInteractionPayload", + "meta": { + "line": 520, + "file": "Events.ts", + "path": "src/lib/types" + }, + "variant": "interface", + "props": [ + { + "name": "command", + "optional": false, + "type": [ + [ + [ + "AutocompleteCommand" + ] + ] + ] + }, + { + "name": "context", + "optional": false, + "type": [ + [ + [ + "AutocompleteCommandContext" + ] + ] + ] + }, + { + "name": "interaction", + "optional": false, + "type": [ + [ + [ + "AutocompleteInteraction", + "<" + ], + [ + "CacheType", + ">" + ] + ] + ] + } + ] + }, + { + "name": "ChatInputCommandAcceptedPayload", + "meta": { + "line": 453, + "file": "Events.ts", + "path": "src/lib/types" + }, + "variant": "interface", + "props": [ + { + "name": "command", + "optional": false, + "type": [ + [ + [ + "ChatInputCommand" + ] + ] + ] + }, + { + "name": "context", + "optional": false, + "type": [ + [ + [ + "ChatInputCommandContext" + ] + ] + ] + }, + { + "name": "interaction", + "optional": false, + "type": [ + [ + [ + "CommandInteraction", + "<" + ], + [ + "CacheType", + ">" + ] + ] + ] + } + ] + }, + { + "name": "ChatInputCommandContext", + "meta": { + "line": 791, + "file": "Command.ts", + "path": "src/lib/structures" + }, + "variant": "interface", + "props": [ + { + "name": "commandId", + "description": "The id of the command.", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "commandName", + "description": "The name of the command.", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ] + }, + { + "name": "ChatInputCommandDeniedPayload", + "meta": { + "line": 449, + "file": "Events.ts", + "path": "src/lib/types" + }, + "variant": "interface", + "props": [ + { + "name": "command", + "optional": false, + "type": [ + [ + [ + "ChatInputCommand" + ] + ] + ] + }, + { + "name": "context", + "optional": false, + "type": [ + [ + [ + "ChatInputCommandContext" + ] + ] + ] + }, + { + "name": "interaction", + "optional": false, + "type": [ + [ + [ + "CommandInteraction", + "<" + ], + [ + "CacheType", + ">" + ] + ] + ] + } + ] + }, + { + "name": "ChatInputCommandErrorPayload", + "meta": { + "line": 466, + "file": "Events.ts", + "path": "src/lib/types" + }, + "variant": "interface", + "props": [ + { + "name": "command", + "optional": false, + "type": [ + [ + [ + "ChatInputCommand" + ] + ] + ] + }, + { + "name": "duration", + "optional": false, + "type": [ + [ + [ + "number" + ] + ] + ] + }, + { + "name": "interaction", + "optional": false, + "type": [ + [ + [ + "CommandInteraction", + "<" + ], + [ + "CacheType", + ">" + ] + ] + ] + } + ] + }, + { + "name": "ChatInputCommandFinishPayload", + "meta": { + "line": 457, + "file": "Events.ts", + "path": "src/lib/types" + }, + "variant": "interface", + "props": [ + { + "name": "command", + "optional": false, + "type": [ + [ + [ + "ChatInputCommand" + ] + ] + ] + }, + { + "name": "context", + "optional": false, + "type": [ + [ + [ + "ChatInputCommandContext" + ] + ] + ] + }, + { + "name": "duration", + "optional": false, + "type": [ + [ + [ + "number" + ] + ] + ] + }, + { + "name": "interaction", + "optional": false, + "type": [ + [ + [ + "CommandInteraction", + "<" + ], + [ + "CacheType", + ">" + ] + ] + ] + } + ] + }, + { + "name": "ChatInputCommandRunPayload", + "meta": { + "line": 455, + "file": "Events.ts", + "path": "src/lib/types" + }, + "variant": "interface", + "props": [ + { + "name": "command", + "optional": false, + "type": [ + [ + [ + "ChatInputCommand" + ] + ] + ] + }, + { + "name": "context", + "optional": false, + "type": [ + [ + [ + "ChatInputCommandContext" + ] + ] + ] + }, + { + "name": "interaction", + "optional": false, + "type": [ + [ + [ + "CommandInteraction", + "<" + ], + [ + "CacheType", + ">" + ] + ] + ] + } + ] + }, + { + "name": "ChatInputCommandSuccessPayload", + "meta": { + "line": 461, + "file": "Events.ts", + "path": "src/lib/types" + }, + "variant": "interface", + "props": [ + { + "name": "command", + "optional": false, + "type": [ + [ + [ + "ChatInputCommand" + ] + ] + ] + }, + { + "name": "context", + "optional": false, + "type": [ + [ + [ + "ChatInputCommandContext" + ] + ] + ] + }, + { + "name": "duration", + "optional": false, + "type": [ + [ + [ + "number" + ] + ] + ] + }, + { + "name": "interaction", + "optional": false, + "type": [ + [ + [ + "CommandInteraction", + "<" + ], + [ + "CacheType", + ">" + ] + ] + ] + }, + { + "name": "result", + "optional": false, + "type": [ + [ + [ + "unknown" + ] + ] + ] + } + ] + }, + { + "name": "ClientLoggerOptions", + "meta": { + "line": 353, + "file": "SapphireClient.ts", + "path": "src/lib" + }, + "variant": "interface", + "props": [ + { + "name": "instance", + "optional": true, + "type": [ + [ + [ + "ILogger" + ] + ] + ] + }, + { + "name": "level", + "optional": true, + "type": [ + [ + [ + "LogLevel" + ] + ] + ] + } + ] + }, + { + "name": "CommandChatInputRegisterShortcut", + "meta": { + "line": 733, + "file": "Command.ts", + "path": "src/lib/structures" + }, + "variant": "interface", + "props": [ + { + "name": "behaviorWhenNotIdentical", + "description": "Specifies what we should do when the command is present, but not identical with the data you provided", + "optional": true, + "default": "RegisterBehavior.LogToConsole", + "type": [ + [ + [ + "RegisterBehavior" + ] + ] + ] + }, + { + "name": "defaultPermission", + "description": "Sets the `defaultPermission` field for the chat input command", + "optional": true, + "type": [ + [ + [ + "boolean" + ] + ] + ] + }, + { + "name": "guildIds", + "description": "If this is specified, the application commands will only be registered for these guild ids.", + "optional": true, + "type": [ + [ + [ + "Array", + "<" + ], + [ + "string", + ">" + ] + ] + ] + }, + { + "name": "idHints", + "description": "Specifies a list of command ids that we should check in the event of a name mismatch", + "optional": true, + "default": "[]", + "type": [ + [ + [ + "Array", + "<" + ], + [ + "string", + ">" + ] + ] + ] + }, + { + "name": "register", + "description": "If we should register the command, be it missing or present already", + "optional": false, + "default": "false", + "type": [ + [ + [ + "boolean" + ] + ] + ] + } + ] + }, + { + "name": "CommandDoesNotHaveChatInputCommandHandlerPayload", + "meta": { + "line": 434, + "file": "Events.ts", + "path": "src/lib/types" + }, + "variant": "interface", + "props": [ + { + "name": "command", + "optional": false, + "type": [ + [ + [ + "Command", + "<" + ], + [ + "Args", + ", " + ], + [ + "CommandOptions", + ">" + ] + ] + ] + }, + { + "name": "context", + "optional": false, + "type": [ + [ + [ + "ChatInputCommandContext" + ] + ] + ] + }, + { + "name": "interaction", + "optional": false, + "type": [ + [ + [ + "CommandInteraction", + "<" + ], + [ + "CacheType", + ">" + ] + ] + ] + } + ] + }, + { + "name": "CommandDoesNotHaveContextMenuCommandHandlerPayload", + "meta": { + "line": 475, + "file": "Events.ts", + "path": "src/lib/types" + }, + "variant": "interface", + "props": [ + { + "name": "command", + "optional": false, + "type": [ + [ + [ + "Command", + "<" + ], + [ + "Args", + ", " + ], + [ + "CommandOptions", + ">" + ] + ] + ] + }, + { + "name": "context", + "optional": false, + "type": [ + [ + [ + "ContextMenuCommandContext" + ] + ] + ] + }, + { + "name": "interaction", + "optional": false, + "type": [ + [ + [ + "ContextMenuInteraction", + "<" + ], + [ + "CacheType", + ">" + ] + ] + ] + } + ] + }, + { + "name": "CommandDoesNotHaveMessageCommandHandler", + "meta": { + "line": 382, + "file": "Events.ts", + "path": "src/lib/types" + }, + "variant": "interface", + "props": [ + { + "name": "command", + "optional": false, + "type": [ + [ + [ + "Command", + "<" + ], + [ + "Args", + ", " + ], + [ + "CommandOptions", + ">" + ] + ] + ] + }, + { + "name": "commandPrefix", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "message", + "optional": false, + "type": [ + [ + [ + "Message", + "<" + ], + [ + "boolean", + ">" + ] + ] + ] + }, + { + "name": "prefix", + "optional": false, + "type": [ + [ + [ + "string", + " | " + ], + [ + "RegExp" + ] + ] + ] + } + ] + }, + { + "name": "CommandJSON", + "meta": { + "line": 824, + "file": "Command.ts", + "path": "src/lib/structures" + }, + "variant": "interface", + "props": [ + { + "name": "aliases", + "optional": false, + "type": [ + [ + [ + "Array", + "<" + ], + [ + "string", + ">" + ] + ] + ] + }, + { + "name": "category", + "optional": false, + "type": [ + [ + [ + "null", + " | " + ], + [ + "string" + ] + ] + ] + }, + { + "name": "description", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "detailedDescription", + "optional": false, + "type": [ + [ + [ + "DetailedDescriptionCommand" + ] + ] + ] + }, + { + "name": "enabled", + "optional": false, + "type": [ + [ + [ + "boolean" + ] + ] + ] + }, + { + "name": "location", + "optional": false, + "type": [ + [ + [ + "PieceLocationJSON" + ] + ] + ] + }, + { + "name": "name", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "options", + "optional": false, + "type": [ + [ + [ + "AliasPieceOptions" + ] + ] + ] + } + ] + }, + { + "name": "CommandOptions", + "description": "The {@link Command} options.", + "see": [], + "deprecated": false, + "meta": { + "line": 590, + "file": "Command.ts", + "path": "src/lib/structures" + }, + "variant": "interface", + "props": [ + { + "name": "aliases", + "description": "The aliases for the piece.", + "optional": true, + "default": "[]", + "type": [ + [ + [ + "readonly", + " " + ], + [ + "Array", + "<" + ], + [ + "string", + ">" + ] + ] + ] + }, + { + "name": "chatInputCommand", + "description": "Shortcuts for registering simple chat input commands", + "optional": true, + "type": [ + [ + [ + "CommandChatInputRegisterShortcut" + ] + ] + ] + }, + { + "name": "cooldownDelay", + "description": "The time in milliseconds for the cooldown entries to reset, if set to a non-zero value alongside {@link Command.Options.cooldownLimit}, the `Cooldown` precondition will be added to the list.", + "optional": true, + "default": "0", + "type": [ + [ + [ + "number" + ] + ] + ] + }, + { + "name": "cooldownFilteredUsers", + "description": "The users that are exempt from the Cooldown precondition.\nUse this to filter out someone like a bot owner", + "optional": true, + "default": "undefined", + "type": [ + [ + [ + "Array", + "<" + ], + [ + "string", + ">" + ] + ] + ] + }, + { + "name": "cooldownLimit", + "description": "The amount of entries the cooldown can have before filling up, if set to a non-zero value alongside {@link Command.Options.cooldownDelay}, the `Cooldown` precondition will be added to the list.", + "optional": true, + "default": "1", + "type": [ + [ + [ + "number" + ] + ] + ] + }, + { + "name": "cooldownScope", + "description": "The scope of the cooldown entries.", + "optional": true, + "default": "BucketScope.User", + "type": [ + [ + [ + "BucketScope" + ] + ] + ] + }, + { + "name": "description", + "description": "The description for the command.", + "optional": true, + "default": "''", + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "detailedDescription", + "description": "The detailed description for the command.", + "optional": true, + "default": "''", + "type": [ + [ + [ + "DetailedDescriptionCommand" + ] + ] + ] + }, + { + "name": "enabled", + "description": "Whether or not the piece should be enabled. If set to false, the piece will be unloaded.", + "optional": true, + "default": "true", + "type": [ + [ + [ + "boolean" + ] + ] + ] + }, + { + "name": "flags", + "description": "The accepted flags. Flags are key-only identifiers that can be placed anywhere in the command. Two different types are accepted:\n* An array of strings, e.g. [`silent`].\n* A boolean defining whether the strategy should accept all keys (`true`) or none at all (`false`).", + "optional": true, + "default": "[]", + "type": [ + [ + [ + "boolean", + " | " + ], + [ + "readonly", + " " + ], + [ + "Array", + "<" + ], + [ + "string", + ">" + ] + ] + ] + }, + { + "name": "fullCategory", + "description": "The full category path for the command", + "optional": true, + "default": "'An array of folder names that lead back to the folder that is registered for in the commands store'", + "type": [ + [ + [ + "Array", + "<" + ], + [ + "string", + ">" + ] + ] + ] + }, + { + "name": "generateDashLessAliases", + "description": "Whether to add aliases for commands with dashes in them", + "optional": true, + "default": "false", + "type": [ + [ + [ + "boolean" + ] + ] + ] + }, + { + "name": "generateUnderscoreLessAliases", + "description": "Whether to add aliases for commands with underscores in them", + "optional": true, + "default": "false", + "type": [ + [ + [ + "boolean" + ] + ] + ] + }, + { + "name": "name", + "description": "The name for the piece.", + "optional": true, + "default": "''", + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "nsfw", + "description": "Sets whether or not the command should be treated as NSFW. If set to true, the `NSFW` precondition will be added to the list.", + "optional": true, + "default": "false", + "type": [ + [ + [ + "boolean" + ] + ] + ] + }, + { + "name": "options", + "description": "The accepted options. Options are key-value identifiers that can be placed anywhere in the command. Two different types are accepted:\n* An array of strings, e.g. [`silent`].\n* A boolean defining whether the strategy should accept all keys (`true`) or none at all (`false`).", + "optional": true, + "default": "[]", + "type": [ + [ + [ + "boolean", + " | " + ], + [ + "readonly", + " " + ], + [ + "Array", + "<" + ], + [ + "string", + ">" + ] + ] + ] + }, + { + "name": "preconditions", + "description": "The {@link Precondition}s to be run, accepts an array of their names.", + "optional": true, + "default": "[]", + "type": [ + [ + [ + "readonly", + " " + ], + [ + "Array", + "<" + ], + [ + "PreconditionEntryResolvable", + ">" + ] + ] + ] + }, + { + "name": "prefixes", + "description": "The prefixes for both flags and options.", + "optional": true, + "default": "['--', '-', 'β']", + "type": [ + [ + [ + "Array", + "<" + ], + [ + "string", + ">" + ] + ] + ] + }, + { + "name": "quotes", + "description": "The quotes accepted by this command, pass `[]` to disable them.", + "optional": true, + "default": "[\n ['\"', '\"'], // Double quotes\n ['β', 'β'], // Fancy quotes (on iOS)\n ['γ', 'γ'] // Corner brackets (CJK)\n ['Β«', 'Β»'] // French quotes (guillemets)\n]", + "type": [ + [ + [ + "Array", + "<[" + ], + [ + "string", + ", " + ], + [ + "string", + "]>" + ] + ] + ] + }, + { + "name": "requiredClientPermissions", + "description": "The required permissions for the client.", + "optional": true, + "default": "0", + "type": [ + [ + [ + "PermissionResolvable" + ] + ] + ] + }, + { + "name": "requiredUserPermissions", + "description": "The required permissions for the user.", + "optional": true, + "default": "0", + "type": [ + [ + [ + "PermissionResolvable" + ] + ] + ] + }, + { + "name": "runIn", + "description": "The channels the command should run in. If set to `null`, no precondition entry will be added. Some optimizations are applied when given an array to reduce the amount of preconditions run (e.g. `'GUILD_TEXT'` and `'GUILD_NEWS'` becomes `'GUILD_ANY'`, and if both `'DM'` and `'GUILD_ANY'` are defined, then no precondition entry is added as it runs in all channels).", + "optional": true, + "default": "null", + "type": [ + [ + [ + "null", + " | " + ], + [ + "CommandOptionsRunType", + " | " + ], + [ + "CommandOptionsRunTypeEnum", + " | " + ], + [ + "readonly", + " " + ], + [ + "Array", + "<" + ], + [ + "CommandOptionsRunType", + " | " + ], + [ + "CommandOptionsRunTypeEnum", + ">" + ] + ] + ] + }, + { + "name": "separators", + "description": "The flag separators.", + "optional": true, + "default": "['=', ':']", + "type": [ + [ + [ + "Array", + "<" + ], + [ + "string", + ">" + ] + ] + ] + }, + { + "name": "typing", + "description": "If {@link SapphireClient.typing} is true, this option will override it.\nOtherwise, this option has no effect - you may call {@link Channel#sendTyping}` in the run method if you want specific commands to display the typing status.", + "optional": true, + "default": "true", + "type": [ + [ + [ + "boolean" + ] + ] + ] + } + ] + }, + { + "name": "ContextMenuCommandAcceptedPayload", + "meta": { + "line": 494, + "file": "Events.ts", + "path": "src/lib/types" + }, + "variant": "interface", + "props": [ + { + "name": "command", + "optional": false, + "type": [ + [ + [ + "ContextMenuCommand" + ] + ] + ] + }, + { + "name": "context", + "optional": false, + "type": [ + [ + [ + "ContextMenuCommandContext" + ] + ] + ] + }, + { + "name": "interaction", + "optional": false, + "type": [ + [ + [ + "ContextMenuInteraction", + "<" + ], + [ + "CacheType", + ">" + ] + ] + ] + } + ] + }, + { + "name": "ContextMenuCommandContext", + "meta": { + "line": 802, + "file": "Command.ts", + "path": "src/lib/structures" + }, + "variant": "interface", + "props": [ + { + "name": "commandId", + "description": "The id of the command.", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "commandName", + "description": "The name of the command.", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ] + }, + { + "name": "ContextMenuCommandDeniedPayload", + "meta": { + "line": 490, + "file": "Events.ts", + "path": "src/lib/types" + }, + "variant": "interface", + "props": [ + { + "name": "command", + "optional": false, + "type": [ + [ + [ + "ContextMenuCommand" + ] + ] + ] + }, + { + "name": "context", + "optional": false, + "type": [ + [ + [ + "ContextMenuCommandContext" + ] + ] + ] + }, + { + "name": "interaction", + "optional": false, + "type": [ + [ + [ + "ContextMenuInteraction", + "<" + ], + [ + "CacheType", + ">" + ] + ] + ] + } + ] + }, + { + "name": "ContextMenuCommandErrorPayload", + "meta": { + "line": 507, + "file": "Events.ts", + "path": "src/lib/types" + }, + "variant": "interface", + "props": [ + { + "name": "command", + "optional": false, + "type": [ + [ + [ + "ContextMenuCommand" + ] + ] + ] + }, + { + "name": "duration", + "optional": false, + "type": [ + [ + [ + "number" + ] + ] + ] + }, + { + "name": "interaction", + "optional": false, + "type": [ + [ + [ + "ContextMenuInteraction", + "<" + ], + [ + "CacheType", + ">" + ] + ] + ] + } + ] + }, + { + "name": "ContextMenuCommandFinishPayload", + "meta": { + "line": 498, + "file": "Events.ts", + "path": "src/lib/types" + }, + "variant": "interface", + "props": [ + { + "name": "command", + "optional": false, + "type": [ + [ + [ + "ContextMenuCommand" + ] + ] + ] + }, + { + "name": "context", + "optional": false, + "type": [ + [ + [ + "ContextMenuCommandContext" + ] + ] + ] + }, + { + "name": "duration", + "optional": false, + "type": [ + [ + [ + "number" + ] + ] + ] + }, + { + "name": "interaction", + "optional": false, + "type": [ + [ + [ + "ContextMenuInteraction", + "<" + ], + [ + "CacheType", + ">" + ] + ] + ] + } + ] + }, + { + "name": "ContextMenuCommandRunPayload", + "meta": { + "line": 496, + "file": "Events.ts", + "path": "src/lib/types" + }, + "variant": "interface", + "props": [ + { + "name": "command", + "optional": false, + "type": [ + [ + [ + "ContextMenuCommand" + ] + ] + ] + }, + { + "name": "context", + "optional": false, + "type": [ + [ + [ + "ContextMenuCommandContext" + ] + ] + ] + }, + { + "name": "interaction", + "optional": false, + "type": [ + [ + [ + "ContextMenuInteraction", + "<" + ], + [ + "CacheType", + ">" + ] + ] + ] + } + ] + }, + { + "name": "ContextMenuCommandSuccessPayload", + "meta": { + "line": 502, + "file": "Events.ts", + "path": "src/lib/types" + }, + "variant": "interface", + "props": [ + { + "name": "command", + "optional": false, + "type": [ + [ + [ + "ContextMenuCommand" + ] + ] + ] + }, + { + "name": "context", + "optional": false, + "type": [ + [ + [ + "ContextMenuCommandContext" + ] + ] + ] + }, + { + "name": "duration", + "optional": false, + "type": [ + [ + [ + "number" + ] + ] + ] + }, + { + "name": "interaction", + "optional": false, + "type": [ + [ + [ + "ContextMenuInteraction", + "<" + ], + [ + "CacheType", + ">" + ] + ] + ] + }, + { + "name": "result", + "optional": false, + "type": [ + [ + [ + "unknown" + ] + ] + ] + } + ] + }, + { + "name": "CooldownOptions", + "meta": { + "line": 358, + "file": "SapphireClient.ts", + "path": "src/lib" + }, + "variant": "interface", + "props": [ + { + "name": "delay", + "optional": true, + "type": [ + [ + [ + "number" + ] + ] + ] + }, + { + "name": "filteredCommands", + "optional": true, + "type": [ + [ + [ + "Array", + "<" + ], + [ + "string", + ">" + ] + ] + ] + }, + { + "name": "filteredUsers", + "optional": true, + "type": [ + [ + [ + "Array", + "<" + ], + [ + "string", + ">" + ] + ] + ] + }, + { + "name": "limit", + "optional": true, + "type": [ + [ + [ + "number" + ] + ] + ] + }, + { + "name": "scope", + "optional": true, + "type": [ + [ + [ + "BucketScope" + ] + ] + ] + } + ] + }, + { + "name": "DetailedDescriptionCommandObject", + "meta": { + "line": 846, + "file": "Command.ts", + "path": "src/lib/structures" + }, + "variant": "interface" + }, + { + "name": "Err", + "see": [], + "deprecated": false, + "meta": { + "line": 26, + "file": "Lexure.d.ts", + "path": "node_modules/@sapphire/result/dist/lib" + }, + "variant": "interface", + "isExternal": true, + "props": [ + { + "name": "error", + "description": "The resulting error, which only exists on an Err.", + "optional": false, + "type": [ + [ + [ + "E" + ] + ] + ] + }, + { + "name": "success", + "description": "If this an Err, this is false.", + "optional": false, + "type": [ + [ + [ + "false" + ] + ] + ] + }, + { + "name": "value", + "optional": true, + "type": [ + [ + [ + "undefined" + ] + ] + ] + } + ] + }, + { + "name": "ExtendedArgumentContext", + "see": [], + "deprecated": true, + "meta": { + "line": 86, + "file": "ExtendedArgument.ts", + "path": "src/lib/structures" + }, + "variant": "interface", + "props": [ + { + "name": "args", + "optional": false, + "type": [ + [ + [ + "Args" + ] + ] + ] + }, + { + "name": "argument", + "optional": false, + "type": [ + [ + [ + "IArgument", + "<" + ], + [ + "unknown", + ">" + ] + ] + ] + }, + { + "name": "command", + "optional": false, + "type": [ + [ + [ + "MessageCommand" + ] + ] + ] + }, + { + "name": "commandContext", + "optional": false, + "type": [ + [ + [ + "MessageCommandContext" + ] + ] + ] + }, + { + "name": "inclusive", + "optional": true, + "type": [ + [ + [ + "boolean" + ] + ] + ] + }, + { + "name": "maximum", + "optional": true, + "type": [ + [ + [ + "number" + ] + ] + ] + }, + { + "name": "message", + "optional": false, + "type": [ + [ + [ + "Message", + "<" + ], + [ + "boolean", + ">" + ] + ] + ] + }, + { + "name": "minimum", + "optional": true, + "type": [ + [ + [ + "number" + ] + ] + ] + }, + { + "name": "parameter", + "description": "The canonical parameter specified by the user in the command, as\na string, equivalent to the first parameter of {@link Argument#run}.\nThis allows {@link ExtendedArgument#handle} to access the original\nargument, which is useful for returning {@link Argument#error} so\nthat you don't have to convert the parsed argument back into a\nstring.", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ] + }, + { + "name": "ExtendedArgumentOptions", + "see": [], + "deprecated": true, + "meta": { + "line": 75, + "file": "ExtendedArgument.ts", + "path": "src/lib/structures" + }, + "variant": "interface", + "props": [ + { + "name": "aliases", + "description": "The aliases for the piece.", + "optional": true, + "default": "[]", + "type": [ + [ + [ + "readonly", + " " + ], + [ + "Array", + "<" + ], + [ + "string", + ">" + ] + ] + ] + }, + { + "name": "baseArgument", + "description": "The name of the underlying argument whose value is used to compute\nthe extended argument value; see {@link ArgType} for valid keys.", + "optional": false, + "type": [ + [ + [ + "K" + ] + ] + ] + }, + { + "name": "enabled", + "description": "Whether or not the piece should be enabled. If set to false, the piece will be unloaded.", + "optional": true, + "default": "true", + "type": [ + [ + [ + "boolean" + ] + ] + ] + }, + { + "name": "name", + "description": "The name for the piece.", + "optional": true, + "default": "''", + "type": [ + [ + [ + "string" + ] + ] + ] + } + ] + }, + { + "name": "IArgument", + "meta": { + "line": 20, + "file": "Argument.ts", + "path": "src/lib/structures" + }, + "variant": "interface", + "props": [ + { + "name": "name", + "description": "The name of the argument, this is used to make the identification of an argument easier.", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "run", + "description": "The method which is called when invoking the argument.", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "parameter", + ": " + ], + [ + "string", + ", " + ], + [ + "context", + ": " + ], + [ + "Context", + "<" + ], + [ + "T", + ">) => " + ], + [ + "Result", + "<" + ], + [ + "T", + ">" + ] + ] + ] + } + ] + }, + { + "name": "IChatInputCommandPayload", + "meta": { + "line": 440, + "file": "Events.ts", + "path": "src/lib/types" + }, + "variant": "interface", + "props": [ + { + "name": "command", + "optional": false, + "type": [ + [ + [ + "ChatInputCommand" + ] + ] + ] + }, + { + "name": "interaction", + "optional": false, + "type": [ + [ + [ + "CommandInteraction", + "<" + ], + [ + "CacheType", + ">" + ] + ] + ] + } + ] + }, + { + "name": "IContextMenuCommandPayload", + "meta": { + "line": 481, + "file": "Events.ts", + "path": "src/lib/types" + }, + "variant": "interface", + "props": [ + { + "name": "command", + "optional": false, + "type": [ + [ + [ + "ContextMenuCommand" + ] + ] + ] + }, + { + "name": "interaction", + "optional": false, + "type": [ + [ + [ + "ContextMenuInteraction", + "<" + ], + [ + "CacheType", + ">" + ] + ] + ] + } + ] + }, + { + "name": "IInteractionHandlerPayload", + "meta": { + "line": 511, + "file": "Events.ts", + "path": "src/lib/types" + }, + "variant": "interface", + "props": [ + { + "name": "handler", + "optional": false, + "type": [ + [ + [ + "InteractionHandler", + "<" + ], + [ + "InteractionHandlerOptions", + ">" + ] + ] + ] + }, + { + "name": "interaction", + "optional": false, + "type": [ + [ + [ + "Interaction", + "<" + ], + [ + "CacheType", + ">" + ] + ] + ] + } + ] + }, + { + "name": "ILogger", + "meta": { + "line": 41, + "file": "ILogger.ts", + "path": "src/lib/utils/logger" + }, + "variant": "interface", + "props": [ + { + "name": "debug", + "description": "Alias of {@link ILogger.write} with {@link LogLevel.Debug} as level.", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "values", + ": " + ], + [ + "readonly", + " " + ], + [ + "Array", + "<" + ], + [ + "unknown", + ">) => " + ], + [ + "void" + ] + ] + ] + }, + { + "name": "error", + "description": "Alias of {@link ILogger.write} with {@link LogLevel.Error} as level.", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "values", + ": " + ], + [ + "readonly", + " " + ], + [ + "Array", + "<" + ], + [ + "unknown", + ">) => " + ], + [ + "void" + ] + ] + ] + }, + { + "name": "fatal", + "description": "Alias of {@link ILogger.write} with {@link LogLevel.Fatal} as level.", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "values", + ": " + ], + [ + "readonly", + " " + ], + [ + "Array", + "<" + ], + [ + "unknown", + ">) => " + ], + [ + "void" + ] + ] + ] + }, + { + "name": "has", + "description": "Checks whether a level is supported.", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "level", + ": " + ], + [ + "LogLevel", + ") => " + ], + [ + "boolean" + ] + ] + ] + }, + { + "name": "info", + "description": "Alias of {@link ILogger.write} with {@link LogLevel.Info} as level.", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "values", + ": " + ], + [ + "readonly", + " " + ], + [ + "Array", + "<" + ], + [ + "unknown", + ">) => " + ], + [ + "void" + ] + ] + ] + }, + { + "name": "trace", + "description": "Alias of {@link ILogger.write} with {@link LogLevel.Trace} as level.", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "values", + ": " + ], + [ + "readonly", + " " + ], + [ + "Array", + "<" + ], + [ + "unknown", + ">) => " + ], + [ + "void" + ] + ] + ] + }, + { + "name": "warn", + "description": "Alias of {@link ILogger.write} with {@link LogLevel.Warn} as level.", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "values", + ": " + ], + [ + "readonly", + " " + ], + [ + "Array", + "<" + ], + [ + "unknown", + ">) => " + ], + [ + "void" + ] + ] + ] + }, + { + "name": "write", + "description": "Writes the log message given a level and the value(s).", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "level", + ": " + ], + [ + "LogLevel", + ", " + ], + [ + "values", + ": " + ], + [ + "readonly", + " " + ], + [ + "Array", + "<" + ], + [ + "unknown", + ">) => " + ], + [ + "void" + ] + ] + ] + } + ] + }, + { + "name": "IMessageCommandPayload", + "meta": { + "line": 393, + "file": "Events.ts", + "path": "src/lib/types" + }, + "variant": "interface", + "props": [ + { + "name": "command", + "optional": false, + "type": [ + [ + [ + "MessageCommand" + ] + ] + ] + }, + { + "name": "message", + "optional": false, + "type": [ + [ + [ + "Message", + "<" + ], + [ + "boolean", + ">" + ] + ] + ] + } + ] + }, + { + "name": "IPieceError", + "meta": { + "line": 368, + "file": "Events.ts", + "path": "src/lib/types" + }, + "variant": "interface", + "props": [ + { + "name": "piece", + "optional": false, + "type": [ + [ + [ + "Piece", + "<" + ], + [ + "PieceOptions", + ">" + ] + ] + ] + } + ] + }, + { + "name": "IPreconditionCondition", + "description": "Defines the condition for {@link PreconditionContainerArray}s to run.", + "see": [], + "deprecated": false, + "meta": { + "line": 10, + "file": "IPreconditionCondition.ts", + "path": "src/lib/utils/preconditions/conditions" + }, + "variant": "interface", + "props": [ + { + "name": "chatInputParallel", + "description": "Runs all the containers using `Promise.all`, then checks the results once all tasks finished running.", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "interaction", + ": " + ], + [ + "CommandInteraction", + "<" + ], + [ + "CacheType", + ">, " + ], + [ + "command", + ": " + ], + [ + "ChatInputCommand", + ", " + ], + [ + "entries", + ": " + ], + [ + "readonly", + " " + ], + [ + "Array", + "<" + ], + [ + "IPreconditionContainer", + ">, " + ], + [ + "context", + ": " + ], + [ + "PreconditionContext", + ") => " + ], + [ + "PreconditionContainerReturn" + ] + ] + ] + }, + { + "name": "chatInputSequential", + "description": "Runs the containers one by one.", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "interaction", + ": " + ], + [ + "CommandInteraction", + "<" + ], + [ + "CacheType", + ">, " + ], + [ + "command", + ": " + ], + [ + "ChatInputCommand", + ", " + ], + [ + "entries", + ": " + ], + [ + "readonly", + " " + ], + [ + "Array", + "<" + ], + [ + "IPreconditionContainer", + ">, " + ], + [ + "context", + ": " + ], + [ + "PreconditionContext", + ") => " + ], + [ + "PreconditionContainerReturn" + ] + ] + ] + }, + { + "name": "contextMenuParallel", + "description": "Runs all the containers using `Promise.all`, then checks the results once all tasks finished running.", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "interaction", + ": " + ], + [ + "ContextMenuInteraction", + "<" + ], + [ + "CacheType", + ">, " + ], + [ + "command", + ": " + ], + [ + "ContextMenuCommand", + ", " + ], + [ + "entries", + ": " + ], + [ + "readonly", + " " + ], + [ + "Array", + "<" + ], + [ + "IPreconditionContainer", + ">, " + ], + [ + "context", + ": " + ], + [ + "PreconditionContext", + ") => " + ], + [ + "PreconditionContainerReturn" + ] + ] + ] + }, + { + "name": "contextMenuSequential", + "description": "Runs the containers one by one.", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "interaction", + ": " + ], + [ + "ContextMenuInteraction", + "<" + ], + [ + "CacheType", + ">, " + ], + [ + "command", + ": " + ], + [ + "ContextMenuCommand", + ", " + ], + [ + "entries", + ": " + ], + [ + "readonly", + " " + ], + [ + "Array", + "<" + ], + [ + "IPreconditionContainer", + ">, " + ], + [ + "context", + ": " + ], + [ + "PreconditionContext", + ") => " + ], + [ + "PreconditionContainerReturn" + ] + ] + ] + }, + { + "name": "messageParallel", + "description": "Runs all the containers using `Promise.all`, then checks the results once all tasks finished running.", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "message", + ": " + ], + [ + "Message", + "<" + ], + [ + "boolean", + ">, " + ], + [ + "command", + ": " + ], + [ + "MessageCommand", + ", " + ], + [ + "entries", + ": " + ], + [ + "readonly", + " " + ], + [ + "Array", + "<" + ], + [ + "IPreconditionContainer", + ">, " + ], + [ + "context", + ": " + ], + [ + "PreconditionContext", + ") => " + ], + [ + "PreconditionContainerReturn" + ] + ] + ] + }, + { + "name": "messageSequential", + "description": "Runs the containers one by one.", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "message", + ": " + ], + [ + "Message", + "<" + ], + [ + "boolean", + ">, " + ], + [ + "command", + ": " + ], + [ + "MessageCommand", + ", " + ], + [ + "entries", + ": " + ], + [ + "readonly", + " " + ], + [ + "Array", + "<" + ], + [ + "IPreconditionContainer", + ">, " + ], + [ + "context", + ": " + ], + [ + "PreconditionContext", + ") => " + ], + [ + "PreconditionContainerReturn" + ] + ] + ] + } + ] + }, + { + "name": "IPreconditionContainer", + "description": "An abstracted precondition container to be implemented by classes.", + "see": [], + "deprecated": false, + "meta": { + "line": 30, + "file": "IPreconditionContainer.ts", + "path": "src/lib/utils/preconditions" + }, + "variant": "interface", + "props": [ + { + "name": "chatInputRun", + "description": "Runs a precondition container.", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "interaction", + ": " + ], + [ + "CommandInteraction", + "<" + ], + [ + "CacheType", + ">, " + ], + [ + "command", + ": " + ], + [ + "Command", + "<" + ], + [ + "Args", + ", " + ], + [ + "CommandOptions", + ">, " + ], + [ + "context", + ": " + ], + [ + "PreconditionContext", + ") => " + ], + [ + "PreconditionContainerReturn" + ] + ] + ] + }, + { + "name": "contextMenuRun", + "description": "Runs a precondition container.", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "interaction", + ": " + ], + [ + "ContextMenuInteraction", + "<" + ], + [ + "CacheType", + ">, " + ], + [ + "command", + ": " + ], + [ + "Command", + "<" + ], + [ + "Args", + ", " + ], + [ + "CommandOptions", + ">, " + ], + [ + "context", + ": " + ], + [ + "PreconditionContext", + ") => " + ], + [ + "PreconditionContainerReturn" + ] + ] + ] + }, + { + "name": "messageRun", + "description": "Runs a precondition container.", + "optional": false, + "type": [ + [ + [ + "(" + ], + [ + "message", + ": " + ], + [ + "Message", + "<" + ], + [ + "boolean", + ">, " + ], + [ + "command", + ": " + ], + [ + "Command", + "<" + ], + [ + "Args", + ", " + ], + [ + "CommandOptions", + ">, " + ], + [ + "context", + ": " + ], + [ + "PreconditionContext", + ") => " + ], + [ + "PreconditionContainerReturn" + ] + ] + ] + } + ] + }, + { + "name": "InteractionHandlerError", + "meta": { + "line": 518, + "file": "Events.ts", + "path": "src/lib/types" + }, + "variant": "interface", + "props": [ + { + "name": "handler", + "optional": false, + "type": [ + [ + [ + "InteractionHandler", + "<" + ], + [ + "InteractionHandlerOptions", + ">" + ] + ] + ] + }, + { + "name": "interaction", + "optional": false, + "type": [ + [ + [ + "Interaction", + "<" + ], + [ + "CacheType", + ">" + ] + ] + ] + } + ] + }, + { + "name": "InteractionHandlerJSON", + "meta": { + "line": 93, + "file": "InteractionHandler.ts", + "path": "src/lib/structures" + }, + "variant": "interface", + "props": [ + { + "name": "enabled", + "optional": false, + "type": [ + [ + [ + "boolean" + ] + ] + ] + }, + { + "name": "interactionHandlerType", + "optional": false, + "type": [ + [ + [ + "InteractionHandlerTypes" + ] + ] + ] + }, + { + "name": "location", + "optional": false, + "type": [ + [ + [ + "PieceLocationJSON" + ] + ] + ] + }, + { + "name": "name", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "options", + "optional": false, + "type": [ + [ + [ + "PieceOptions" + ] + ] + ] + } + ] + }, + { + "name": "InteractionHandlerOptions", + "meta": { + "line": 86, + "file": "InteractionHandler.ts", + "path": "src/lib/structures" + }, + "variant": "interface", + "props": [ + { + "name": "enabled", + "description": "Whether or not the piece should be enabled. If set to false, the piece will be unloaded.", + "optional": true, + "default": "true", + "type": [ + [ + [ + "boolean" + ] + ] + ] + }, + { + "name": "interactionHandlerType", + "description": "The type of interaction this handler is for. Must be one of {@link InteractionHandlerTypes}.", + "optional": false, + "type": [ + [ + [ + "InteractionHandlerTypes" + ] + ] + ] + }, + { + "name": "name", + "description": "The name for the piece.", + "optional": true, + "default": "''", + "type": [ + [ + [ + "string" + ] + ] + ] + } + ] + }, + { + "name": "InteractionHandlerParseError", + "meta": { + "line": 516, + "file": "Events.ts", + "path": "src/lib/types" + }, + "variant": "interface", + "props": [ + { + "name": "handler", + "optional": false, + "type": [ + [ + [ + "InteractionHandler", + "<" + ], + [ + "InteractionHandlerOptions", + ">" + ] + ] + ] + }, + { + "name": "interaction", + "optional": false, + "type": [ + [ + [ + "Interaction", + "<" + ], + [ + "CacheType", + ">" + ] + ] + ] + } + ] + }, + { + "name": "ListenerErrorPayload", + "meta": { + "line": 372, + "file": "Events.ts", + "path": "src/lib/types" + }, + "variant": "interface", + "props": [ + { + "name": "piece", + "optional": false, + "type": [ + [ + [ + "Listener", + "<" + ], + [ + "''", + ", " + ], + [ + "ListenerOptions", + ">" + ] + ] + ] + } + ] + }, + { + "name": "ListenerJSON", + "meta": { + "line": 122, + "file": "Listener.ts", + "path": "src/lib/structures" + }, + "variant": "interface", + "props": [ + { + "name": "enabled", + "optional": false, + "type": [ + [ + [ + "boolean" + ] + ] + ] + }, + { + "name": "event", + "optional": false, + "type": [ + [ + [ + "string", + " | " + ], + [ + "symbol" + ] + ] + ] + }, + { + "name": "location", + "optional": false, + "type": [ + [ + [ + "PieceLocationJSON" + ] + ] + ] + }, + { + "name": "name", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "once", + "optional": false, + "type": [ + [ + [ + "boolean" + ] + ] + ] + }, + { + "name": "options", + "optional": false, + "type": [ + [ + [ + "PieceOptions" + ] + ] + ] + } + ] + }, + { + "name": "ListenerOptions", + "meta": { + "line": 116, + "file": "Listener.ts", + "path": "src/lib/structures" + }, + "variant": "interface", + "props": [ + { + "name": "emitter", + "optional": true, + "type": [ + [ + [ + "EventEmitter", + " | " + ], + [ + "keyof", + " " + ], + [ + "Client", + "<" + ], + [ + "boolean", + ">" + ] + ] + ] + }, + { + "name": "enabled", + "description": "Whether or not the piece should be enabled. If set to false, the piece will be unloaded.", + "optional": true, + "default": "true", + "type": [ + [ + [ + "boolean" + ] + ] + ] + }, + { + "name": "event", + "optional": true, + "type": [ + [ + [ + "string", + " | " + ], + [ + "symbol" + ] + ] + ] + }, + { + "name": "name", + "description": "The name for the piece.", + "optional": true, + "default": "''", + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "once", + "optional": true, + "type": [ + [ + [ + "boolean" + ] + ] + ] + } + ] + }, + { + "name": "MessageCommandAcceptedPayload", + "meta": { + "line": 405, + "file": "Events.ts", + "path": "src/lib/types" + }, + "variant": "interface", + "props": [ + { + "name": "command", + "optional": false, + "type": [ + [ + [ + "MessageCommand" + ] + ] + ] + }, + { + "name": "context", + "optional": false, + "type": [ + [ + [ + "MessageCommandContext" + ] + ] + ] + }, + { + "name": "message", + "optional": false, + "type": [ + [ + [ + "Message", + "<" + ], + [ + "boolean", + ">" + ] + ] + ] + }, + { + "name": "parameters", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ] + }, + { + "name": "MessageCommandContext", + "meta": { + "line": 773, + "file": "Command.ts", + "path": "src/lib/structures" + }, + "variant": "interface", + "props": [ + { + "name": "commandName", + "description": "The alias used to run this command.", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "commandPrefix", + "description": "The matched prefix, this will always be the same as {@link MessageCommand.RunContext.prefix} if it was a string, otherwise it is\nthe result of doing `prefix.exec(content)[0]`.", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "prefix", + "description": "The prefix used to run this command.", + "optional": false, + "type": [ + [ + [ + "string", + " | " + ], + [ + "RegExp" + ] + ] + ] + } + ] + }, + { + "name": "MessageCommandDeniedPayload", + "meta": { + "line": 400, + "file": "Events.ts", + "path": "src/lib/types" + }, + "variant": "interface", + "props": [ + { + "name": "command", + "optional": false, + "type": [ + [ + [ + "MessageCommand" + ] + ] + ] + }, + { + "name": "context", + "optional": false, + "type": [ + [ + [ + "MessageCommandContext" + ] + ] + ] + }, + { + "name": "message", + "optional": false, + "type": [ + [ + [ + "Message", + "<" + ], + [ + "boolean", + ">" + ] + ] + ] + }, + { + "name": "parameters", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ] + }, + { + "name": "MessageCommandErrorPayload", + "meta": { + "line": 418, + "file": "Events.ts", + "path": "src/lib/types" + }, + "variant": "interface", + "props": [ + { + "name": "args", + "optional": false, + "type": [ + [ + [ + "unknown" + ] + ] + ] + }, + { + "name": "command", + "optional": false, + "type": [ + [ + [ + "MessageCommand" + ] + ] + ] + }, + { + "name": "context", + "optional": false, + "type": [ + [ + [ + "MessageCommandContext" + ] + ] + ] + }, + { + "name": "duration", + "optional": false, + "type": [ + [ + [ + "number" + ] + ] + ] + }, + { + "name": "message", + "optional": false, + "type": [ + [ + [ + "Message", + "<" + ], + [ + "boolean", + ">" + ] + ] + ] + }, + { + "name": "parameters", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ] + }, + { + "name": "MessageCommandFinishPayload", + "meta": { + "line": 414, + "file": "Events.ts", + "path": "src/lib/types" + }, + "variant": "interface", + "props": [ + { + "name": "args", + "optional": false, + "type": [ + [ + [ + "unknown" + ] + ] + ] + }, + { + "name": "command", + "optional": false, + "type": [ + [ + [ + "MessageCommand" + ] + ] + ] + }, + { + "name": "context", + "optional": false, + "type": [ + [ + [ + "MessageCommandContext" + ] + ] + ] + }, + { + "name": "duration", + "optional": false, + "type": [ + [ + [ + "number" + ] + ] + ] + }, + { + "name": "message", + "optional": false, + "type": [ + [ + [ + "Message", + "<" + ], + [ + "boolean", + ">" + ] + ] + ] + }, + { + "name": "parameters", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ] + }, + { + "name": "MessageCommandRunPayload", + "meta": { + "line": 410, + "file": "Events.ts", + "path": "src/lib/types" + }, + "variant": "interface", + "props": [ + { + "name": "args", + "optional": false, + "type": [ + [ + [ + "unknown" + ] + ] + ] + }, + { + "name": "command", + "optional": false, + "type": [ + [ + [ + "MessageCommand" + ] + ] + ] + }, + { + "name": "context", + "optional": false, + "type": [ + [ + [ + "MessageCommandContext" + ] + ] + ] + }, + { + "name": "message", + "optional": false, + "type": [ + [ + [ + "Message", + "<" + ], + [ + "boolean", + ">" + ] + ] + ] + }, + { + "name": "parameters", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ] + }, + { + "name": "MessageCommandSuccessPayload", + "meta": { + "line": 422, + "file": "Events.ts", + "path": "src/lib/types" + }, + "variant": "interface", + "props": [ + { + "name": "args", + "optional": false, + "type": [ + [ + [ + "unknown" + ] + ] + ] + }, + { + "name": "command", + "optional": false, + "type": [ + [ + [ + "MessageCommand" + ] + ] + ] + }, + { + "name": "context", + "optional": false, + "type": [ + [ + [ + "MessageCommandContext" + ] + ] + ] + }, + { + "name": "duration", + "optional": false, + "type": [ + [ + [ + "number" + ] + ] + ] + }, + { + "name": "message", + "optional": false, + "type": [ + [ + [ + "Message", + "<" + ], + [ + "boolean", + ">" + ] + ] + ] + }, + { + "name": "parameters", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "result", + "optional": false, + "type": [ + [ + [ + "unknown" + ] + ] + ] + } + ] + }, + { + "name": "MessageCommandTypingErrorPayload", + "meta": { + "line": 427, + "file": "Events.ts", + "path": "src/lib/types" + }, + "variant": "interface", + "props": [ + { + "name": "args", + "optional": false, + "type": [ + [ + [ + "unknown" + ] + ] + ] + }, + { + "name": "command", + "optional": false, + "type": [ + [ + [ + "MessageCommand" + ] + ] + ] + }, + { + "name": "context", + "optional": false, + "type": [ + [ + [ + "MessageCommandContext" + ] + ] + ] + }, + { + "name": "message", + "optional": false, + "type": [ + [ + [ + "Message", + "<" + ], + [ + "boolean", + ">" + ] + ] + ] + }, + { + "name": "parameters", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ] + }, + { + "name": "None", + "see": [], + "deprecated": false, + "meta": { + "line": 69, + "file": "Lexure.d.ts", + "path": "node_modules/@sapphire/result/dist/lib" + }, + "variant": "interface", + "isExternal": true, + "props": [ + { + "name": "exists", + "description": "If this is a None, this is false.", + "optional": false, + "type": [ + [ + [ + "false" + ] + ] + ] + }, + { + "name": "value", + "optional": true, + "type": [ + [ + [ + "undefined" + ] + ] + ] + } + ] + }, + { + "name": "Ok", + "see": [], + "deprecated": false, + "meta": { + "line": 8, + "file": "Lexure.d.ts", + "path": "node_modules/@sapphire/result/dist/lib" + }, + "variant": "interface", + "isExternal": true, + "props": [ + { + "name": "error", + "optional": true, + "type": [ + [ + [ + "undefined" + ] + ] + ] + }, + { + "name": "success", + "description": "If this is an Ok, this is true.", + "optional": false, + "type": [ + [ + [ + "true" + ] + ] + ] + }, + { + "name": "value", + "description": "The resulting value, which only exists on an Ok.", + "optional": false, + "type": [ + [ + [ + "T" + ] + ] + ] + } + ] + }, + { + "name": "PieceContext", + "description": "The context for the piece, contains extra information from the store,\nthe piece's path, and the store that loaded it.", + "meta": { + "line": 386, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + }, + "variant": "interface", + "isExternal": true, + "props": [ + { + "name": "name", + "description": "The module's name extracted from the path.", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "path", + "description": "The path the module was loaded from, relative to {@link PieceContext.root}.", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "root", + "description": "The root directory the piece was loaded from.", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "store", + "description": "The store that loaded the piece.", + "optional": false, + "type": [ + [ + [ + "Store", + "<" + ], + [ + "Piece", + "<" + ], + [ + "PieceOptions", + ">>" + ] + ] + ] + } + ] + }, + { + "name": "PieceOptions", + "description": "The options for the {@link Piece}.", + "meta": { + "line": 407, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + }, + "variant": "interface", + "isExternal": true, + "props": [ + { + "name": "enabled", + "description": "Whether or not the piece should be enabled. If set to false, the piece will be unloaded.", + "optional": true, + "default": "true", + "type": [ + [ + [ + "boolean" + ] + ] + ] + }, + { + "name": "name", + "description": "The name for the piece.", + "optional": true, + "default": "''", + "type": [ + [ + [ + "string" + ] + ] + ] + } + ] + }, + { + "name": "PreChatInputCommandRunPayload", + "meta": { + "line": 445, + "file": "Events.ts", + "path": "src/lib/types" + }, + "variant": "interface", + "props": [ + { + "name": "command", + "optional": false, + "type": [ + [ + [ + "ChatInputCommand" + ] + ] + ] + }, + { + "name": "context", + "optional": false, + "type": [ + [ + [ + "ChatInputCommandContext" + ] + ] + ] + }, + { + "name": "interaction", + "optional": false, + "type": [ + [ + [ + "CommandInteraction", + "<" + ], + [ + "CacheType", + ">" + ] + ] + ] + } + ] + }, + { + "name": "PreContextMenuCommandRunPayload", + "meta": { + "line": 486, + "file": "Events.ts", + "path": "src/lib/types" + }, + "variant": "interface", + "props": [ + { + "name": "command", + "optional": false, + "type": [ + [ + [ + "ContextMenuCommand" + ] + ] + ] + }, + { + "name": "context", + "optional": false, + "type": [ + [ + [ + "ContextMenuCommandContext" + ] + ] + ] + }, + { + "name": "interaction", + "optional": false, + "type": [ + [ + [ + "ContextMenuInteraction", + "<" + ], + [ + "CacheType", + ">" + ] + ] + ] + } + ] + }, + { + "name": "PreMessageCommandRunPayload", + "meta": { + "line": 398, + "file": "Events.ts", + "path": "src/lib/types" + }, + "variant": "interface", + "props": [ + { + "name": "command", + "optional": false, + "type": [ + [ + [ + "MessageCommand" + ] + ] + ] + }, + { + "name": "context", + "optional": false, + "type": [ + [ + [ + "MessageCommandContext" + ] + ] + ] + }, + { + "name": "message", + "optional": false, + "type": [ + [ + [ + "Message", + "<" + ], + [ + "boolean", + ">" + ] + ] + ] + }, + { + "name": "parameters", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ] + }, + { + "name": "PreconditionArrayResolvableDetails", + "description": "Defines the detailed options for the {@link PreconditionContainerArray}, where both the {@link PreconditionRunMode} and the\nentries can be defined.", + "see": [], + "deprecated": false, + "meta": { + "line": 57, + "file": "PreconditionContainerArray.ts", + "path": "src/lib/utils/preconditions" + }, + "variant": "interface", + "props": [ + { + "name": "entries", + "description": "The data that will be used to resolve {@link IPreconditionContainer} dependent of this one.", + "optional": false, + "type": [ + [ + [ + "readonly", + " " + ], + [ + "Array", + "<" + ], + [ + "PreconditionEntryResolvable", + ">" + ] + ] + ] + }, + { + "name": "mode", + "description": "The mode the {@link PreconditionContainerArray} will run.", + "optional": false, + "type": [ + [ + [ + "PreconditionRunMode" + ] + ] + ] + } + ] + }, + { + "name": "PreconditionContext", + "meta": { + "line": 142, + "file": "Precondition.ts", + "path": "src/lib/structures" + }, + "variant": "interface", + "props": [ + { + "name": "external", + "optional": true, + "type": [ + [ + [ + "boolean" + ] + ] + ] + } + ] + }, + { + "name": "PreconditionOptions", + "meta": { + "line": 133, + "file": "Precondition.ts", + "path": "src/lib/structures" + }, + "variant": "interface", + "props": [ + { + "name": "enabled", + "description": "Whether or not the piece should be enabled. If set to false, the piece will be unloaded.", + "optional": true, + "default": "true", + "type": [ + [ + [ + "boolean" + ] + ] + ] + }, + { + "name": "name", + "description": "The name for the piece.", + "optional": true, + "default": "''", + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "position", + "description": "The position for the precondition to be set at in the global precondition list. If set to `null`, this\nprecondition will not be set as a global one.", + "optional": true, + "default": "null", + "type": [ + [ + [ + "null", + " | " + ], + [ + "number" + ] + ] + ] + } + ] + }, + { + "name": "PreconditionSingleResolvableDetails", + "description": "Defines the detailed options for the {@link PreconditionContainerSingle}, where both the {@link PreconditionContext} and the\nname of the precondition can be defined.", + "see": [], + "deprecated": false, + "meta": { + "line": 25, + "file": "PreconditionContainerSingle.ts", + "path": "src/lib/utils/preconditions" + }, + "variant": "interface", + "props": [ + { + "name": "context", + "description": "The context to be set at {@link PreconditionContainerSingle.context}.", + "optional": false, + "type": [ + [ + [ + "Preconditions", + "[" + ], + [ + "K", + "]" + ] + ] + ] + }, + { + "name": "name", + "description": "The name of the precondition to retrieve from {@link SapphireClient.preconditions}.", + "optional": false, + "type": [ + [ + [ + "K" + ] + ] + ] + } + ] + }, + { + "name": "Preconditions", + "description": "The registered preconditions and their contexts, if any. When registering new ones, it is recommended to use\n[module augmentation](https://www.typescriptlang.org/docs/handbook/declaration-merging.html#module-augmentation) so\ncustom ones are registered.", + "extendedDescription": "When a key's value is `never`, it means that it does not take any context, which allows you to pass its identifier as\na bare string (e.g. `preconditions: ['NSFW']`), however, if context is required, a non-`never` type should be passed,\nwhich will type {@link PreconditionContainerArray#append} and require an object with the name and a `context` with\nthe defined type.", + "see": [], + "deprecated": false, + "meta": { + "line": 108, + "file": "Precondition.ts", + "path": "src/lib/structures" + }, + "variant": "interface", + "props": [ + { + "name": "ClientPermissions", + "optional": false, + "type": [ + [ + [ + "{" + ], + [ + "\npermissions", + ": " + ], + [ + "Permissions\n", + "}" + ] + ] + ] + }, + { + "name": "Cooldown", + "optional": false, + "type": [ + [ + [ + "CooldownPreconditionContext" + ] + ] + ] + }, + { + "name": "DMOnly", + "optional": false, + "type": [ + [ + [ + "never" + ] + ] + ] + }, + { + "name": "Enabled", + "optional": false, + "type": [ + [ + [ + "never" + ] + ] + ] + }, + { + "name": "GuildNewsOnly", + "optional": false, + "type": [ + [ + [ + "never" + ] + ] + ] + }, + { + "name": "GuildNewsThreadOnly", + "optional": false, + "type": [ + [ + [ + "never" + ] + ] + ] + }, + { + "name": "GuildOnly", + "optional": false, + "type": [ + [ + [ + "never" + ] + ] + ] + }, + { + "name": "GuildPrivateThreadOnly", + "optional": false, + "type": [ + [ + [ + "never" + ] + ] + ] + }, + { + "name": "GuildPublicThreadOnly", + "optional": false, + "type": [ + [ + [ + "never" + ] + ] + ] + }, + { + "name": "GuildTextOnly", + "optional": false, + "type": [ + [ + [ + "never" + ] + ] + ] + }, + { + "name": "GuildThreadOnly", + "optional": false, + "type": [ + [ + [ + "never" + ] + ] + ] + }, + { + "name": "NSFW", + "optional": false, + "type": [ + [ + [ + "never" + ] + ] + ] + }, + { + "name": "UserPermissions", + "optional": false, + "type": [ + [ + [ + "{" + ], + [ + "\npermissions", + ": " + ], + [ + "Permissions\n", + "}" + ] + ] + ] + } + ] + }, + { + "name": "RepeatArgOptions", + "meta": { + "line": 724, + "file": "Args.ts", + "path": "src/lib/parsers" + }, + "variant": "interface", + "props": [ + { + "name": "times", + "description": "The maximum amount of times the argument can be repeated.", + "optional": true, + "default": "Infinity", + "type": [ + [ + [ + "number" + ] + ] + ] + } + ] + }, + { + "name": "SapphireClientOptions", + "meta": { + "line": 32, + "file": "SapphireClient.ts", + "path": "src/lib" + }, + "variant": "interface", + "props": [ + { + "name": "baseUserDirectory", + "description": "The base user directory, if set to `null`, Sapphire will not call {@link StoreRegistry.registerPath},\nmeaning that you will need to manually set each folder for each store. Please read the aforementioned method's\ndocumentation for more information.", + "optional": true, + "default": "undefined", + "type": [ + [ + [ + "null", + " | " + ], + [ + "string" + ] + ] + ] + }, + { + "name": "caseInsensitiveCommands", + "description": "Whether commands can be case insensitive", + "optional": true, + "default": "false", + "type": [ + [ + [ + "null", + " | " + ], + [ + "boolean" + ] + ] + ] + }, + { + "name": "caseInsensitivePrefixes", + "description": "Whether prefixes can be case insensitive", + "optional": true, + "default": "false", + "type": [ + [ + [ + "null", + " | " + ], + [ + "boolean" + ] + ] + ] + }, + { + "name": "defaultCooldown", + "description": "Sets the default cooldown time for all commands.", + "optional": true, + "default": "\"No cooldown options\"", + "type": [ + [ + [ + "CooldownOptions" + ] + ] + ] + }, + { + "name": "defaultPrefix", + "description": "The default prefix, in case of `null`, only mention prefix will trigger the bot's commands.", + "optional": true, + "default": "null", + "type": [ + [ + [ + "SapphirePrefix" + ] + ] + ] + }, + { + "name": "disableMentionPrefix", + "description": "Controls whether the bot has mention as a prefix disabled", + "optional": true, + "default": "false", + "type": [ + [ + [ + "boolean" + ] + ] + ] + }, + { + "name": "enableLoaderTraceLoggings", + "description": "Whether or not trace logging should be enabled.", + "optional": true, + "default": "container.logger.has(LogLevel.Trace)", + "type": [ + [ + [ + "boolean" + ] + ] + ] + }, + { + "name": "fetchPrefix", + "description": "The prefix hook, by default it is a callback function that returns {@link SapphireClientOptions.defaultPrefix}.", + "optional": true, + "default": "() => client.options.defaultPrefix", + "type": [ + [ + [ + "SapphirePrefixHook" + ] + ] + ] + }, + { + "name": "id", + "description": "The client's ID, this is automatically set by the CoreReady event.", + "optional": true, + "default": "this.client.user?.id ?? null", + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "loadDefaultErrorListeners", + "description": "If Sapphire should load the pre-included error event listeners that log any encountered errors to the {@link SapphireClient.logger} instance", + "optional": true, + "default": "true", + "type": [ + [ + [ + "boolean" + ] + ] + ] + }, + { + "name": "loadMessageCommandListeners", + "description": "If Sapphire should load the pre-included message command listeners that are used to process incoming messages for commands.", + "optional": true, + "default": "false", + "type": [ + [ + [ + "boolean" + ] + ] + ] + }, + { + "name": "logger", + "description": "The logger options, defaults to an instance of {@link Logger} when {@link ClientLoggerOptions.instance} is not specified.", + "optional": true, + "default": "{ instance: new Logger(LogLevel.Info) }", + "type": [ + [ + [ + "ClientLoggerOptions" + ] + ] + ] + }, + { + "name": "preventFailedToFetchLogForGuildIds", + "description": "Whenever starting the bot process Sapphire may report errors when failing to fetch guild commands.\nOne of the causes for this can be when a bot was invited to a server without the `application.commands` scope.", + "optional": true, + "type": [ + [ + [ + "Array", + "<" + ], + [ + "string", + ">" + ] + ] + ] + }, + { + "name": "regexPrefix", + "description": "The regex prefix, an alternative to a mention or regular prefix to allow creating natural language command messages", + "optional": true, + "type": [ + [ + [ + "RegExp" + ] + ] + ] + }, + { + "name": "typing", + "description": "Controls whether the bot will automatically appear to be typing when a command is accepted.", + "optional": true, + "default": "false", + "type": [ + [ + [ + "boolean" + ] + ] + ] + } + ] + }, + { + "name": "SapphirePluginAsyncHook", + "meta": { + "line": 9, + "file": "PluginManager.ts", + "path": "src/lib/plugins" + }, + "variant": "interface", + "params": [ + { + "name": "this", + "optional": false, + "type": [ + [ + [ + "SapphireClient", + "<" + ], + [ + "boolean", + ">" + ] + ] + ] + }, + { + "name": "options", + "optional": false, + "type": [ + [ + [ + "ClientOptions" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "unknown" + ] + ] + ] + }, + { + "name": "SapphirePluginHook", + "meta": { + "line": 14, + "file": "PluginManager.ts", + "path": "src/lib/plugins" + }, + "variant": "interface", + "params": [ + { + "name": "this", + "optional": false, + "type": [ + [ + [ + "SapphireClient", + "<" + ], + [ + "boolean", + ">" + ] + ] + ] + }, + { + "name": "options", + "optional": false, + "type": [ + [ + [ + "ClientOptions" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "unknown" + ] + ] + ] + }, + { + "name": "SapphirePluginHookEntry", + "meta": { + "line": 18, + "file": "PluginManager.ts", + "path": "src/lib/plugins" + }, + "variant": "interface", + "props": [ + { + "name": "hook", + "optional": false, + "type": [ + [ + [ + "T" + ] + ] + ] + }, + { + "name": "name", + "optional": true, + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "type", + "optional": false, + "type": [ + [ + [ + "PluginHook" + ] + ] + ] + } + ] + }, + { + "name": "SapphirePrefixHook", + "meta": { + "line": 28, + "file": "SapphireClient.ts", + "path": "src/lib" + }, + "variant": "interface", + "params": [ + { + "name": "message", + "optional": false, + "type": [ + [ + [ + "Message", + "<" + ], + [ + "boolean", + ">" + ] + ] + ] + } + ], + "returns": [ + [ + [ + "Awaitable", + "<" + ], + [ + "SapphirePrefix", + ">" + ] + ] + ] + }, + { + "name": "SimplePreconditionSingleResolvableDetails", + "description": "Defines the simple options for the {@link PreconditionContainerSingle}, where only the name of the precondition can\nbe defined.", + "see": [], + "deprecated": false, + "meta": { + "line": 12, + "file": "PreconditionContainerSingle.ts", + "path": "src/lib/utils/preconditions" + }, + "variant": "interface", + "props": [ + { + "name": "name", + "description": "The name of the precondition to retrieve from {@link SapphireClient.preconditions}.", + "optional": false, + "type": [ + [ + [ + "SimplePreconditionKeys" + ] + ] + ] + } + ] + }, + { + "name": "Some", + "see": [], + "deprecated": false, + "meta": { + "line": 53, + "file": "Lexure.d.ts", + "path": "node_modules/@sapphire/result/dist/lib" + }, + "variant": "interface", + "isExternal": true, + "props": [ + { + "name": "exists", + "description": "If this is a Some, this is true.", + "optional": false, + "type": [ + [ + [ + "true" + ] + ] + ] + }, + { + "name": "value", + "description": "The value, which only exists on a Some.", + "optional": false, + "type": [ + [ + [ + "T" + ] + ] + ] + } + ] + }, + { + "name": "StoreOptions", + "description": "The options for the store, this features both hooks (changes the behaviour) and handlers (similar to event listeners).", + "meta": { + "line": 247, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + }, + "variant": "interface", + "isExternal": true, + "props": [ + { + "name": "name", + "description": "The name for this store.", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "paths", + "description": "The paths to load pieces from, should be absolute.", + "optional": true, + "default": "[]", + "type": [ + [ + [ + "readonly", + " " + ], + [ + "Array", + "<" + ], + [ + "string", + ">" + ] + ] + ] + }, + { + "name": "strategy", + "description": "The strategy to be used for the loader.", + "optional": true, + "default": "Store.defaultStrategy", + "type": [ + [ + [ + "ILoaderStrategy", + "<" + ], + [ + "T", + ">" + ] + ] + ] + } + ] + }, + { + "name": "StoreRegistryEntries", + "description": "The {@link StoreRegistry}'s registry, use module augmentation against this interface when adding new stores.", + "see": [], + "deprecated": false, + "meta": { + "line": 565, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + }, + "variant": "interface", + "isExternal": true, + "props": [ + { + "name": "arguments", + "optional": false, + "type": [ + [ + [ + "ArgumentStore" + ] + ] + ] + }, + { + "name": "commands", + "optional": false, + "type": [ + [ + [ + "CommandStore" + ] + ] + ] + }, + { + "name": "interaction-handlers", + "optional": false, + "type": [ + [ + [ + "InteractionHandlerStore" + ] + ] + ] + }, + { + "name": "listeners", + "optional": false, + "type": [ + [ + [ + "ListenerStore" + ] + ] + ] + }, + { + "name": "preconditions", + "optional": false, + "type": [ + [ + [ + "PreconditionStore" + ] + ] + ] + } + ] + }, + { + "name": "UnknownChatInputCommandPayload", + "meta": { + "line": 429, + "file": "Events.ts", + "path": "src/lib/types" + }, + "variant": "interface", + "props": [ + { + "name": "context", + "optional": false, + "type": [ + [ + [ + "ChatInputCommandContext" + ] + ] + ] + }, + { + "name": "interaction", + "optional": false, + "type": [ + [ + [ + "CommandInteraction", + "<" + ], + [ + "CacheType", + ">" + ] + ] + ] + } + ] + }, + { + "name": "UnknownContextMenuCommandPayload", + "meta": { + "line": 470, + "file": "Events.ts", + "path": "src/lib/types" + }, + "variant": "interface", + "props": [ + { + "name": "context", + "optional": false, + "type": [ + [ + [ + "ContextMenuCommandContext" + ] + ] + ] + }, + { + "name": "interaction", + "optional": false, + "type": [ + [ + [ + "ContextMenuInteraction", + "<" + ], + [ + "CacheType", + ">" + ] + ] + ] + } + ] + }, + { + "name": "UnknownMessageCommandNamePayload", + "meta": { + "line": 376, + "file": "Events.ts", + "path": "src/lib/types" + }, + "variant": "interface", + "props": [ + { + "name": "commandPrefix", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "message", + "optional": false, + "type": [ + [ + [ + "Message", + "<" + ], + [ + "boolean", + ">" + ] + ] + ] + }, + { + "name": "prefix", + "optional": false, + "type": [ + [ + [ + "string", + " | " + ], + [ + "RegExp" + ] + ] + ] + } + ] + }, + { + "name": "UnknownMessageCommandPayload", + "meta": { + "line": 389, + "file": "Events.ts", + "path": "src/lib/types" + }, + "variant": "interface", + "props": [ + { + "name": "commandName", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "commandPrefix", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "message", + "optional": false, + "type": [ + [ + [ + "Message", + "<" + ], + [ + "boolean", + ">" + ] + ] + ] + }, + { + "name": "prefix", + "optional": false, + "type": [ + [ + [ + "string", + " | " + ], + [ + "RegExp" + ] + ] + ] + } + ] + }, + { + "name": "ApplicationCommandRegistryRegisterOptions", + "type": [ + [ + [ + "ApplicationCommandRegistry", + "." + ], + [ + "RegisterOptions" + ] + ] + ], + "meta": { + "line": 481, + "file": "ApplicationCommandRegistry.ts", + "path": "src/lib/utils/application-commands" + }, + "variant": "type" + }, + { + "name": "ArgumentResult", + "description": "Defines a synchronous result of an {@link Argument}, check {@link Argument.AsyncResult} for the asynchronous version.", + "type": [ + [ + [ + "Awaitable", + "<" + ], + [ + "Result", + "<" + ], + [ + "T", + ", " + ], + [ + "UserError", + ">>" + ] + ] + ], + "meta": { + "line": 13, + "file": "Argument.ts", + "path": "src/lib/structures" + }, + "variant": "type" + }, + { + "name": "AsyncArgumentResult", + "description": "Defines an asynchronous result of an {@link Argument}, check {@link Argument.Result} for the synchronous version.", + "type": [ + [ + [ + "Promise", + "<" + ], + [ + "Result", + "<" + ], + [ + "T", + ", " + ], + [ + "UserError", + ">>" + ] + ] + ], + "meta": { + "line": 18, + "file": "Argument.ts", + "path": "src/lib/structures" + }, + "variant": "type" + }, + { + "name": "AsyncPluginHooks", + "type": [ + [ + [ + "PluginHook", + "." + ], + [ + "PreLogin", + " | " + ], + [ + "PluginHook", + "." + ], + [ + "PostLogin" + ] + ] + ], + "meta": { + "line": 8, + "file": "PluginManager.ts", + "path": "src/lib/plugins" + }, + "variant": "type" + }, + { + "name": "AsyncPreconditionContainerReturn", + "description": "Async-only version of {@link PreconditionContainerReturn}, to be used when the run method is async.", + "see": [], + "deprecated": false, + "type": [ + [ + [ + "Promise", + "<" + ], + [ + "PreconditionContainerResult", + ">" + ] + ] + ], + "meta": { + "line": 24, + "file": "IPreconditionContainer.ts", + "path": "src/lib/utils/preconditions" + }, + "variant": "type" + }, + { + "name": "AsyncPreconditionResult", + "type": [ + [ + [ + "Promise", + "<" + ], + [ + "Result", + "<" + ], + [ + "unknown", + ", " + ], + [ + "UserError", + ">>" + ] + ] + ], + "meta": { + "line": 11, + "file": "Precondition.ts", + "path": "src/lib/structures" + }, + "variant": "type" + }, + { + "name": "AutocompleteCommand", + "type": [ + [ + [ + "Command", + " & " + ], + [ + "Required", + "<" + ], + [ + "Pick", + "<" + ], + [ + "Command", + ", " + ], + [ + "'autocompleteRun'", + ">>" + ] + ] + ], + "meta": { + "line": 527, + "file": "Command.ts", + "path": "src/lib/structures" + }, + "variant": "type" + }, + { + "name": "Awaitable", + "description": "ReturnType for a function that can return either a value or a `Promise` with that value", + "type": [ + [ + [ + "PromiseLike", + "<" + ], + [ + "T", + "> | " + ], + [ + "T" + ] + ] + ], + "meta": { + "line": 44, + "file": "utilityTypes.d.ts", + "path": "node_modules/@sapphire/utilities/dist/lib" + }, + "variant": "type", + "isExternal": true + }, + { + "name": "ChatInputCommand", + "type": [ + [ + [ + "Command", + " & " + ], + [ + "Required", + "<" + ], + [ + "Pick", + "<" + ], + [ + "Command", + ", " + ], + [ + "'chatInputRun'", + ">>" + ] + ] + ], + "meta": { + "line": 503, + "file": "Command.ts", + "path": "src/lib/structures" + }, + "variant": "type" + }, + { + "name": "CommandOptionsRunType", + "description": "The allowed values for {@link Command.Options.runIn}.", + "see": [], + "deprecated": false, + "type": [ + [ + [ + "'DM'", + " | " + ], + [ + "'GUILD", + "_" + ], + [ + "TEXT'", + " | " + ], + [ + "'GUILD", + "_" + ], + [ + "NEWS'", + " | " + ], + [ + "'GUILD", + "_" + ], + [ + "NEWS", + "_" + ], + [ + "THREAD'", + " | " + ], + [ + "'GUILD", + "_" + ], + [ + "PUBLIC", + "_" + ], + [ + "THREAD'", + " | " + ], + [ + "'GUILD", + "_" + ], + [ + "PRIVATE", + "_" + ], + [ + "THREAD'", + " | " + ], + [ + "'GUILD", + "_" + ], + [ + "ANY'" + ] + ] + ], + "meta": { + "line": 544, + "file": "Command.ts", + "path": "src/lib/structures" + }, + "variant": "type" + }, + { + "name": "ContextMenuCommand", + "type": [ + [ + [ + "Command", + " & " + ], + [ + "Required", + "<" + ], + [ + "Pick", + "<" + ], + [ + "Command", + ", " + ], + [ + "'contextMenuRun'", + ">>" + ] + ] + ], + "meta": { + "line": 515, + "file": "Command.ts", + "path": "src/lib/structures" + }, + "variant": "type" + }, + { + "name": "DetailedDescriptionCommand", + "type": [ + [ + [ + "string", + " | " + ], + [ + "DetailedDescriptionCommandObject" + ] + ] + ], + "meta": { + "line": 844, + "file": "Command.ts", + "path": "src/lib/structures" + }, + "variant": "type" + }, + { + "name": "InteractionHandlerParseResult", + "type": [ + [ + [ + "UnwrapMaybeValue", + "<" + ], + [ + "Awaited", + "<" + ], + [ + "ReturnType", + "<" + ], + [ + "Instance", + "[" + ], + [ + "'parse'", + "]>>>" + ] + ] + ], + "meta": { + "line": 97, + "file": "InteractionHandler.ts", + "path": "src/lib/structures" + }, + "variant": "type" + }, + { + "name": "LogMethods", + "type": [ + [ + [ + "'trace'", + " | " + ], + [ + "'debug'", + " | " + ], + [ + "'info'", + " | " + ], + [ + "'warn'", + " | " + ], + [ + "'error'" + ] + ] + ], + "meta": { + "line": 54, + "file": "Logger.ts", + "path": "src/lib/utils/logger" + }, + "variant": "type" + }, + { + "name": "Maybe", + "description": "A type used to express a value that may or may not exist.", + "type": [ + [ + [ + "Some", + "<" + ], + [ + "T", + "> | " + ], + [ + "None" + ] + ] + ], + "meta": { + "line": 6, + "file": "Maybe.d.ts", + "path": "node_modules/@sapphire/result/dist/lib" + }, + "variant": "type", + "isExternal": true + }, + { + "name": "MessageCommand", + "type": [ + [ + [ + "Command", + " & " + ], + [ + "Required", + "<" + ], + [ + "Pick", + "<" + ], + [ + "Command", + ", " + ], + [ + "'messageRun'", + ">>" + ] + ] + ], + "meta": { + "line": 493, + "file": "Command.ts", + "path": "src/lib/structures" + }, + "variant": "type" + }, + { + "name": "Option", + "see": [], + "deprecated": false, + "type": [ + [ + [ + "Some", + "<" + ], + [ + "T", + "> | " + ], + [ + "None" + ] + ] + ], + "meta": { + "line": 45, + "file": "Lexure.d.ts", + "path": "node_modules/@sapphire/result/dist/lib" + }, + "variant": "type", + "isExternal": true + }, + { + "name": "PreconditionArrayResolvable", + "description": "Defines the data accepted by {@link PreconditionContainerArray}'s constructor.", + "see": [], + "deprecated": false, + "type": [ + [ + [ + "readonly", + " " + ], + [ + "Array", + "<" + ], + [ + "PreconditionEntryResolvable", + "> | " + ], + [ + "PreconditionArrayResolvableDetails" + ] + ] + ], + "meta": { + "line": 75, + "file": "PreconditionContainerArray.ts", + "path": "src/lib/utils/preconditions" + }, + "variant": "type" + }, + { + "name": "PreconditionContainerResult", + "description": "Defines the result's value for a PreconditionContainer.", + "see": [], + "deprecated": false, + "type": [ + [ + [ + "Result", + "<" + ], + [ + "unknown", + ", " + ], + [ + "UserError", + ">" + ] + ] + ], + "meta": { + "line": 12, + "file": "IPreconditionContainer.ts", + "path": "src/lib/utils/preconditions" + }, + "variant": "type" + }, + { + "name": "PreconditionContainerReturn", + "description": "Defines the return type of the generic {@link IPreconditionContainer.messageRun}.", + "see": [], + "deprecated": false, + "type": [ + [ + [ + "Awaitable", + "<" + ], + [ + "PreconditionContainerResult", + ">" + ] + ] + ], + "meta": { + "line": 18, + "file": "IPreconditionContainer.ts", + "path": "src/lib/utils/preconditions" + }, + "variant": "type" + }, + { + "name": "PreconditionEntryResolvable", + "description": "Defines the data accepted for each entry of the array.", + "see": [], + "deprecated": false, + "type": [ + [ + [ + "PreconditionSingleResolvable", + " | " + ], + [ + "PreconditionArrayResolvable" + ] + ] + ], + "meta": { + "line": 83, + "file": "PreconditionContainerArray.ts", + "path": "src/lib/utils/preconditions" + }, + "variant": "type" + }, + { + "name": "PreconditionKeys", + "type": [ + [ + [ + "keyof", + " " + ], + [ + "Preconditions" + ] + ] + ], + "meta": { + "line": 128, + "file": "Precondition.ts", + "path": "src/lib/structures" + }, + "variant": "type" + }, + { + "name": "PreconditionResult", + "type": [ + [ + [ + "Awaitable", + "<" + ], + [ + "Result", + "<" + ], + [ + "unknown", + ", " + ], + [ + "UserError", + ">>" + ] + ] + ], + "meta": { + "line": 10, + "file": "Precondition.ts", + "path": "src/lib/structures" + }, + "variant": "type" + }, + { + "name": "PreconditionSingleResolvable", + "description": "Defines the data accepted by {@link PreconditionContainerSingle}'s constructor.", + "see": [], + "deprecated": false, + "type": [ + [ + [ + "SimplePreconditionKeys", + " | " + ], + [ + "SimplePreconditionSingleResolvableDetails", + " | " + ], + [ + "PreconditionSingleResolvableDetails" + ] + ] + ], + "meta": { + "line": 43, + "file": "PreconditionContainerSingle.ts", + "path": "src/lib/utils/preconditions" + }, + "variant": "type" + }, + { + "name": "Result", + "description": "A type used to express computations that can fail.", + "type": [ + [ + [ + "Ok", + "<" + ], + [ + "T", + "> | " + ], + [ + "Err", + "<" + ], + [ + "E", + ">" + ] + ] + ], + "meta": { + "line": 7, + "file": "Result.d.ts", + "path": "node_modules/@sapphire/result/dist/lib" + }, + "variant": "type", + "isExternal": true + }, + { + "name": "SapphirePrefix", + "description": "A valid prefix in Sapphire.\n* `string`: a single prefix, e.g. `'!'`.\n* `string[]`: an array of prefixes, e.g. `['!', '.']`.\n* `null`: disabled prefix, locks the bot's command usage to mentions only.", + "type": [ + [ + [ + "string", + " | " + ], + [ + "readonly", + " " + ], + [ + "Array", + "<" + ], + [ + "string", + "> | " + ], + [ + "null" + ] + ] + ], + "meta": { + "line": 26, + "file": "SapphireClient.ts", + "path": "src/lib" + }, + "variant": "type" + }, + { + "name": "SimplePreconditionKeys", + "type": [ + [ + [ + "unknown", + "[" + ], + [ + "PreconditionKeys", + "]" + ] + ] + ], + "meta": { + "line": 129, + "file": "Precondition.ts", + "path": "src/lib/structures" + }, + "variant": "type" + }, + { + "name": "SyncPluginHooks", + "type": [ + [ + [ + "Exclude", + "<" + ], + [ + "PluginHook", + ", " + ], + [ + "AsyncPluginHooks", + ">" + ] + ] + ], + "meta": { + "line": 13, + "file": "PluginManager.ts", + "path": "src/lib/plugins" + }, + "variant": "type" + }, + { + "name": "UnwrapMaybeValue", + "type": [ + [ + [ + "T", + " " + ], + [ + "extends", + " " + ], + [ + "Some", + "<" + ], + [ + "V", + "> ? " + ], + [ + "V", + " : " + ], + [ + "never" + ] + ] + ], + "meta": { + "line": 64, + "file": "Maybe.d.ts", + "path": "node_modules/@sapphire/result/dist/lib" + }, + "variant": "type", + "isExternal": true + } + ], + "namespaces": [ + { + "name": "AliasPiece", + "typeAliases": [ + { + "name": "Context", + "type": [ + [ + [ + "Piece", + "." + ], + [ + "Context" + ] + ] + ], + "meta": { + "line": 700, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + }, + "variant": "type", + "isExternal": true + }, + { + "name": "JSON", + "type": [ + [ + [ + "AliasPieceJSON" + ] + ] + ], + "meta": { + "line": 701, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + }, + "variant": "type", + "isExternal": true + }, + { + "name": "LocationJSON", + "type": [ + [ + [ + "Piece", + "." + ], + [ + "LocationJSON" + ] + ] + ], + "meta": { + "line": 702, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + }, + "variant": "type", + "isExternal": true + }, + { + "name": "Options", + "type": [ + [ + [ + "AliasPieceOptions" + ] + ] + ], + "meta": { + "line": 699, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + }, + "variant": "type", + "isExternal": true + } + ], + "meta": { + "line": 697, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + }, + "isExternal": true + }, + { + "name": "AllFlowsPrecondition", + "typeAliases": [ + { + "name": "AsyncResult", + "type": [ + [ + [ + "AsyncPreconditionResult" + ] + ] + ], + "meta": { + "line": 157, + "file": "Precondition.ts", + "path": "src/lib/structures" + }, + "variant": "type" + }, + { + "name": "Context", + "type": [ + [ + [ + "PreconditionContext" + ] + ] + ], + "meta": { + "line": 155, + "file": "Precondition.ts", + "path": "src/lib/structures" + }, + "variant": "type" + }, + { + "name": "Options", + "type": [ + [ + [ + "PreconditionOptions" + ] + ] + ], + "meta": { + "line": 154, + "file": "Precondition.ts", + "path": "src/lib/structures" + }, + "variant": "type" + }, + { + "name": "Result", + "type": [ + [ + [ + "PreconditionResult" + ] + ] + ], + "meta": { + "line": 156, + "file": "Precondition.ts", + "path": "src/lib/structures" + }, + "variant": "type" + } + ], + "meta": { + "line": 153, + "file": "Precondition.ts", + "path": "src/lib/structures" + } + }, + { + "name": "ApplicationCommandRegistry", + "interfaces": [ + { + "name": "RegisterOptions", + "meta": { + "line": 458, + "file": "ApplicationCommandRegistry.ts", + "path": "src/lib/utils/application-commands" + }, + "variant": "interface", + "props": [ + { + "name": "behaviorWhenNotIdentical", + "description": "Specifies what we should do when the command is present, but not identical with the data you provided", + "optional": true, + "default": "`ApplicationCommandRegistries.getDefaultBehaviorWhenNotIdentical`", + "type": [ + [ + [ + "RegisterBehavior" + ] + ] + ] + }, + { + "name": "guildIds", + "description": "If this is specified, the application commands will only be registered for these guild ids.", + "optional": true, + "type": [ + [ + [ + "Array", + "<" + ], + [ + "string", + ">" + ] + ] + ] + }, + { + "name": "idHints", + "description": "Specifies a list of command ids that we should check in the event of a name mismatch", + "optional": true, + "default": "[]", + "type": [ + [ + [ + "Array", + "<" + ], + [ + "string", + ">" + ] + ] + ] + }, + { + "name": "registerCommandIfMissing", + "description": "If we should register the command when it is missing", + "optional": true, + "default": "true", + "type": [ + [ + [ + "boolean" + ] + ] + ] + } + ] + } + ], + "meta": { + "line": 457, + "file": "ApplicationCommandRegistry.ts", + "path": "src/lib/utils/application-commands" + } + }, + { + "name": "Argument", + "typeAliases": [ + { + "name": "AsyncResult", + "type": [ + [ + [ + "AsyncArgumentResult", + "<" + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 105, + "file": "Argument.ts", + "path": "src/lib/structures" + }, + "variant": "type" + }, + { + "name": "Context", + "type": [ + [ + [ + "ArgumentContext", + "<" + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 103, + "file": "Argument.ts", + "path": "src/lib/structures" + }, + "variant": "type" + }, + { + "name": "Options", + "type": [ + [ + [ + "ArgumentOptions" + ] + ] + ], + "meta": { + "line": 102, + "file": "Argument.ts", + "path": "src/lib/structures" + }, + "variant": "type" + }, + { + "name": "Result", + "type": [ + [ + [ + "ArgumentResult", + "<" + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 104, + "file": "Argument.ts", + "path": "src/lib/structures" + }, + "variant": "type" + } + ], + "meta": { + "line": 101, + "file": "Argument.ts", + "path": "src/lib/structures" + } + }, + { + "name": "ArgumentError", + "interfaces": [ + { + "name": "Options", + "description": "The options for {@link ArgumentError}.", + "see": [], + "deprecated": false, + "meta": { + "line": 30, + "file": "ArgumentError.ts", + "path": "src/lib/errors" + }, + "variant": "interface", + "props": [ + { + "name": "argument", + "description": "The argument that caused the error.", + "optional": false, + "type": [ + [ + [ + "IArgument", + "<" + ], + [ + "T", + ">" + ] + ] + ] + }, + { + "name": "context", + "description": "The extra context to provide more information about this error.", + "optional": true, + "default": "null", + "type": [ + [ + [ + "unknown" + ] + ] + ] + }, + { + "name": "identifier", + "description": "The identifier.", + "optional": true, + "default": "argument.name", + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "message", + "description": "The message to be passed to the Error constructor.", + "optional": true, + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "parameter", + "description": "The parameter that failed to be parsed.", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ] + } + ], + "meta": { + "line": 25, + "file": "ArgumentError.ts", + "path": "src/lib/errors" + } + }, + { + "name": "AutocompleteCommand", + "typeAliases": [ + { + "name": "Context", + "type": [ + [ + [ + "AliasPiece", + "." + ], + [ + "Context" + ] + ] + ], + "meta": { + "line": 532, + "file": "Command.ts", + "path": "src/lib/structures" + }, + "variant": "type" + }, + { + "name": "Interaction", + "type": [ + [ + [ + "AutocompleteInteraction", + "<" + ], + [ + "Cached", + ">" + ] + ] + ], + "meta": { + "line": 535, + "file": "Command.ts", + "path": "src/lib/structures" + }, + "variant": "type" + }, + { + "name": "JSON", + "type": [ + [ + [ + "CommandJSON" + ] + ] + ], + "meta": { + "line": 531, + "file": "Command.ts", + "path": "src/lib/structures" + }, + "variant": "type" + }, + { + "name": "Options", + "type": [ + [ + [ + "CommandOptions" + ] + ] + ], + "meta": { + "line": 530, + "file": "Command.ts", + "path": "src/lib/structures" + }, + "variant": "type" + }, + { + "name": "Registry", + "type": [ + [ + [ + "ApplicationCommandRegistry" + ] + ] + ], + "meta": { + "line": 536, + "file": "Command.ts", + "path": "src/lib/structures" + }, + "variant": "type" + }, + { + "name": "RunContext", + "type": [ + [ + [ + "AutocompleteCommandContext" + ] + ] + ], + "meta": { + "line": 534, + "file": "Command.ts", + "path": "src/lib/structures" + }, + "variant": "type" + }, + { + "name": "RunInTypes", + "type": [ + [ + [ + "CommandOptionsRunType" + ] + ] + ], + "meta": { + "line": 533, + "file": "Command.ts", + "path": "src/lib/structures" + }, + "variant": "type" + } + ], + "meta": { + "line": 529, + "file": "Command.ts", + "path": "src/lib/structures" + } + }, + { + "name": "ChatInputCommand", + "typeAliases": [ + { + "name": "Context", + "type": [ + [ + [ + "AliasPiece", + "." + ], + [ + "Context" + ] + ] + ], + "meta": { + "line": 508, + "file": "Command.ts", + "path": "src/lib/structures" + }, + "variant": "type" + }, + { + "name": "Interaction", + "type": [ + [ + [ + "CommandInteraction", + "<" + ], + [ + "Cached", + ">" + ] + ] + ], + "meta": { + "line": 511, + "file": "Command.ts", + "path": "src/lib/structures" + }, + "variant": "type" + }, + { + "name": "JSON", + "type": [ + [ + [ + "CommandJSON" + ] + ] + ], + "meta": { + "line": 507, + "file": "Command.ts", + "path": "src/lib/structures" + }, + "variant": "type" + }, + { + "name": "Options", + "type": [ + [ + [ + "CommandOptions" + ] + ] + ], + "meta": { + "line": 506, + "file": "Command.ts", + "path": "src/lib/structures" + }, + "variant": "type" + }, + { + "name": "Registry", + "type": [ + [ + [ + "ApplicationCommandRegistry" + ] + ] + ], + "meta": { + "line": 512, + "file": "Command.ts", + "path": "src/lib/structures" + }, + "variant": "type" + }, + { + "name": "RunContext", + "type": [ + [ + [ + "ChatInputCommandContext" + ] + ] + ], + "meta": { + "line": 510, + "file": "Command.ts", + "path": "src/lib/structures" + }, + "variant": "type" + }, + { + "name": "RunInTypes", + "type": [ + [ + [ + "CommandOptionsRunType" + ] + ] + ], + "meta": { + "line": 509, + "file": "Command.ts", + "path": "src/lib/structures" + }, + "variant": "type" + } + ], + "meta": { + "line": 505, + "file": "Command.ts", + "path": "src/lib/structures" + } + }, + { + "name": "Command", + "typeAliases": [ + { + "name": "AutocompleteInteraction", + "type": [ + [ + [ + "AutocompleteInteraction" + ] + ] + ], + "meta": { + "line": 839, + "file": "Command.ts", + "path": "src/lib/structures" + }, + "variant": "type" + }, + { + "name": "ChatInputInteraction", + "type": [ + [ + [ + "CommandInteraction" + ] + ] + ], + "meta": { + "line": 835, + "file": "Command.ts", + "path": "src/lib/structures" + }, + "variant": "type" + }, + { + "name": "Context", + "type": [ + [ + [ + "AliasPiece", + "." + ], + [ + "Context" + ] + ] + ], + "meta": { + "line": 833, + "file": "Command.ts", + "path": "src/lib/structures" + }, + "variant": "type" + }, + { + "name": "ContextMenuInteraction", + "type": [ + [ + [ + "ContextMenuInteraction" + ] + ] + ], + "meta": { + "line": 837, + "file": "Command.ts", + "path": "src/lib/structures" + }, + "variant": "type" + }, + { + "name": "JSON", + "type": [ + [ + [ + "CommandJSON" + ] + ] + ], + "meta": { + "line": 832, + "file": "Command.ts", + "path": "src/lib/structures" + }, + "variant": "type" + }, + { + "name": "Options", + "type": [ + [ + [ + "CommandOptions" + ] + ] + ], + "meta": { + "line": 831, + "file": "Command.ts", + "path": "src/lib/structures" + }, + "variant": "type" + }, + { + "name": "Registry", + "type": [ + [ + [ + "ApplicationCommandRegistry" + ] + ] + ], + "meta": { + "line": 841, + "file": "Command.ts", + "path": "src/lib/structures" + }, + "variant": "type" + }, + { + "name": "RunInTypes", + "type": [ + [ + [ + "CommandOptionsRunType" + ] + ] + ], + "meta": { + "line": 834, + "file": "Command.ts", + "path": "src/lib/structures" + }, + "variant": "type" + } + ], + "meta": { + "line": 830, + "file": "Command.ts", + "path": "src/lib/structures" + } + }, + { + "name": "ContextMenuCommand", + "typeAliases": [ + { + "name": "Context", + "type": [ + [ + [ + "AliasPiece", + "." + ], + [ + "Context" + ] + ] + ], + "meta": { + "line": 520, + "file": "Command.ts", + "path": "src/lib/structures" + }, + "variant": "type" + }, + { + "name": "Interaction", + "type": [ + [ + [ + "ContextMenuInteraction", + "<" + ], + [ + "Cached", + ">" + ] + ] + ], + "meta": { + "line": 523, + "file": "Command.ts", + "path": "src/lib/structures" + }, + "variant": "type" + }, + { + "name": "JSON", + "type": [ + [ + [ + "CommandJSON" + ] + ] + ], + "meta": { + "line": 519, + "file": "Command.ts", + "path": "src/lib/structures" + }, + "variant": "type" + }, + { + "name": "Options", + "type": [ + [ + [ + "CommandOptions" + ] + ] + ], + "meta": { + "line": 518, + "file": "Command.ts", + "path": "src/lib/structures" + }, + "variant": "type" + }, + { + "name": "Registry", + "type": [ + [ + [ + "ApplicationCommandRegistry" + ] + ] + ], + "meta": { + "line": 524, + "file": "Command.ts", + "path": "src/lib/structures" + }, + "variant": "type" + }, + { + "name": "RunContext", + "type": [ + [ + [ + "ContextMenuCommandContext" + ] + ] + ], + "meta": { + "line": 522, + "file": "Command.ts", + "path": "src/lib/structures" + }, + "variant": "type" + }, + { + "name": "RunInTypes", + "type": [ + [ + [ + "CommandOptionsRunType" + ] + ] + ], + "meta": { + "line": 521, + "file": "Command.ts", + "path": "src/lib/structures" + }, + "variant": "type" + } + ], + "meta": { + "line": 517, + "file": "Command.ts", + "path": "src/lib/structures" + } + }, + { + "name": "CorePreconditions", + "typeAliases": [ + { + "name": "CooldownContext", + "type": [ + [ + [ + "CooldownPreconditionContext" + ] + ] + ], + "meta": { + "line": 102, + "file": "index.ts", + "path": "src" + }, + "variant": "type" + }, + { + "name": "UserPermissionsPreconditionContext", + "type": [ + [ + [ + "PermissionPreconditionContext" + ] + ] + ], + "meta": { + "line": 101, + "file": "index.ts", + "path": "src" + }, + "variant": "type" + } + ], + "meta": { + "line": 100, + "file": "index.ts", + "path": "src" + } + }, + { + "name": "InteractionHandler", + "typeAliases": [ + { + "name": "JSON", + "type": [ + [ + [ + "InteractionHandlerJSON" + ] + ] + ], + "meta": { + "line": 101, + "file": "InteractionHandler.ts", + "path": "src/lib/structures" + }, + "variant": "type" + }, + { + "name": "Options", + "type": [ + [ + [ + "InteractionHandlerOptions" + ] + ] + ], + "meta": { + "line": 100, + "file": "InteractionHandler.ts", + "path": "src/lib/structures" + }, + "variant": "type" + }, + { + "name": "ParseResult", + "type": [ + [ + [ + "InteractionHandlerParseResult", + "<" + ], + [ + "Instance", + ">" + ] + ] + ], + "meta": { + "line": 102, + "file": "InteractionHandler.ts", + "path": "src/lib/structures" + }, + "variant": "type" + } + ], + "meta": { + "line": 99, + "file": "InteractionHandler.ts", + "path": "src/lib/structures" + } + }, + { + "name": "Listener", + "typeAliases": [ + { + "name": "Context", + "type": [ + [ + [ + "Piece", + "." + ], + [ + "Context" + ] + ] + ], + "meta": { + "line": 130, + "file": "Listener.ts", + "path": "src/lib/structures" + }, + "variant": "type" + }, + { + "name": "JSON", + "type": [ + [ + [ + "ListenerJSON" + ] + ] + ], + "meta": { + "line": 129, + "file": "Listener.ts", + "path": "src/lib/structures" + }, + "variant": "type" + }, + { + "name": "Options", + "type": [ + [ + [ + "ListenerOptions" + ] + ] + ], + "meta": { + "line": 128, + "file": "Listener.ts", + "path": "src/lib/structures" + }, + "variant": "type" + } + ], + "meta": { + "line": 127, + "file": "Listener.ts", + "path": "src/lib/structures" + } + }, + { + "name": "MessageCommand", + "typeAliases": [ + { + "name": "Context", + "type": [ + [ + [ + "AliasPiece", + "." + ], + [ + "Context" + ] + ] + ], + "meta": { + "line": 498, + "file": "Command.ts", + "path": "src/lib/structures" + }, + "variant": "type" + }, + { + "name": "JSON", + "type": [ + [ + [ + "CommandJSON" + ] + ] + ], + "meta": { + "line": 497, + "file": "Command.ts", + "path": "src/lib/structures" + }, + "variant": "type" + }, + { + "name": "Options", + "type": [ + [ + [ + "CommandOptions" + ] + ] + ], + "meta": { + "line": 496, + "file": "Command.ts", + "path": "src/lib/structures" + }, + "variant": "type" + }, + { + "name": "RunContext", + "type": [ + [ + [ + "MessageCommandContext" + ] + ] + ], + "meta": { + "line": 500, + "file": "Command.ts", + "path": "src/lib/structures" + }, + "variant": "type" + }, + { + "name": "RunInTypes", + "type": [ + [ + [ + "CommandOptionsRunType" + ] + ] + ], + "meta": { + "line": 499, + "file": "Command.ts", + "path": "src/lib/structures" + }, + "variant": "type" + } + ], + "meta": { + "line": 495, + "file": "Command.ts", + "path": "src/lib/structures" + } + }, + { + "name": "Piece", + "typeAliases": [ + { + "name": "Context", + "type": [ + [ + [ + "PieceContext" + ] + ] + ], + "meta": { + "line": 484, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + }, + "variant": "type", + "isExternal": true + }, + { + "name": "JSON", + "type": [ + [ + [ + "PieceJSON" + ] + ] + ], + "meta": { + "line": 485, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + }, + "variant": "type", + "isExternal": true + }, + { + "name": "LocationJSON", + "type": [ + [ + [ + "PieceLocationJSON" + ] + ] + ], + "meta": { + "line": 486, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + }, + "variant": "type", + "isExternal": true + }, + { + "name": "Options", + "type": [ + [ + [ + "PieceOptions" + ] + ] + ], + "meta": { + "line": 483, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + }, + "variant": "type", + "isExternal": true + } + ], + "meta": { + "line": 481, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + }, + "isExternal": true + }, + { + "name": "Precondition", + "typeAliases": [ + { + "name": "AsyncResult", + "type": [ + [ + [ + "AsyncPreconditionResult" + ] + ] + ], + "meta": { + "line": 150, + "file": "Precondition.ts", + "path": "src/lib/structures" + }, + "variant": "type" + }, + { + "name": "Context", + "type": [ + [ + [ + "PreconditionContext" + ] + ] + ], + "meta": { + "line": 148, + "file": "Precondition.ts", + "path": "src/lib/structures" + }, + "variant": "type" + }, + { + "name": "Options", + "type": [ + [ + [ + "PreconditionOptions" + ] + ] + ], + "meta": { + "line": 147, + "file": "Precondition.ts", + "path": "src/lib/structures" + }, + "variant": "type" + }, + { + "name": "Result", + "type": [ + [ + [ + "PreconditionResult" + ] + ] + ], + "meta": { + "line": 149, + "file": "Precondition.ts", + "path": "src/lib/structures" + }, + "variant": "type" + } + ], + "meta": { + "line": 146, + "file": "Precondition.ts", + "path": "src/lib/structures" + } + }, + { + "name": "PreconditionError", + "interfaces": [ + { + "name": "Options", + "description": "The options for {@link PreconditionError}.", + "see": [], + "deprecated": false, + "meta": { + "line": 27, + "file": "PreconditionError.ts", + "path": "src/lib/errors" + }, + "variant": "interface", + "props": [ + { + "name": "context", + "description": "The extra context to provide more information about this error.", + "optional": true, + "default": "null", + "type": [ + [ + [ + "unknown" + ] + ] + ] + }, + { + "name": "identifier", + "description": "The identifier.", + "optional": true, + "default": "precondition.name", + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "message", + "description": "The message to be passed to the Error constructor.", + "optional": true, + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "precondition", + "description": "The precondition that caused the error.", + "optional": false, + "type": [ + [ + [ + "Precondition", + "<" + ], + [ + "PreconditionOptions", + ">" + ] + ] + ] + } + ] + } + ], + "meta": { + "line": 22, + "file": "PreconditionError.ts", + "path": "src/lib/errors" + } + }, + { + "name": "Resolvers", + "interfaces": [ + { + "name": "EmojiObject", + "meta": { + "line": 29, + "file": "emoji.ts", + "path": "src/lib/resolvers" + }, + "variant": "interface", + "props": [ + { + "name": "animated", + "optional": true, + "type": [ + [ + [ + "boolean" + ] + ] + ] + }, + { + "name": "id", + "optional": false, + "type": [ + [ + [ + "null", + " | " + ], + [ + "string" + ] + ] + ] + }, + { + "name": "name", + "optional": false, + "type": [ + [ + [ + "null", + " | " + ], + [ + "string" + ] + ] + ] + } + ] + }, + { + "name": "MessageResolverOptions", + "meta": { + "line": 9, + "file": "message.ts", + "path": "src/lib/resolvers" + }, + "variant": "interface", + "props": [ + { + "name": "channel", + "optional": true, + "type": [ + [ + [ + "DMChannel", + " | " + ], + [ + "PartialDMChannel", + " | " + ], + [ + "NewsChannel", + " | " + ], + [ + "TextChannel", + " | " + ], + [ + "ThreadChannel" + ] + ] + ] + }, + { + "name": "message", + "optional": false, + "type": [ + [ + [ + "Message", + "<" + ], + [ + "boolean", + ">" + ] + ] + ] + } + ] + } + ], + "meta": { + "line": 1, + "file": "index.ts", + "path": "src/lib/resolvers" + } + }, + { + "name": "Store", + "typeAliases": [ + { + "name": "Logger", + "type": [ + [ + [ + "StoreLogger" + ] + ] + ], + "meta": { + "line": 378, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + }, + "variant": "type", + "isExternal": true + }, + { + "name": "Options", + "type": [ + [ + [ + "StoreOptions", + "<" + ], + [ + "T", + ">" + ] + ] + ], + "meta": { + "line": 377, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + }, + "variant": "type", + "isExternal": true + }, + { + "name": "RegistryEntries", + "type": [ + [ + [ + "StoreRegistryEntries" + ] + ] + ], + "meta": { + "line": 379, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + }, + "variant": "type", + "isExternal": true + } + ], + "meta": { + "line": 375, + "file": "index.d.ts", + "path": "node_modules/@sapphire/pieces/dist" + }, + "isExternal": true + }, + { + "name": "UserError", + "interfaces": [ + { + "name": "Options", + "description": "The options for {@link UserError}.", + "see": [], + "deprecated": false, + "meta": { + "line": 38, + "file": "UserError.ts", + "path": "src/lib/errors" + }, + "variant": "interface", + "props": [ + { + "name": "context", + "description": "The extra context to provide more information about this error.", + "optional": true, + "default": "null", + "type": [ + [ + [ + "unknown" + ] + ] + ] + }, + { + "name": "identifier", + "description": "The identifier for this error.", + "optional": false, + "type": [ + [ + [ + "string" + ] + ] + ] + }, + { + "name": "message", + "description": "The message to be passed to the Error constructor.", + "optional": true, + "type": [ + [ + [ + "string" + ] + ] + ] + } + ] + } + ], + "meta": { + "line": 33, + "file": "UserError.ts", + "path": "src/lib/errors" + } + } + ] +} \ No newline at end of file diff --git a/docs/General/Welcome.mdx b/docs/General/Welcome.mdx index 97002acb..4d42d0bc 100644 --- a/docs/General/Welcome.mdx +++ b/docs/General/Welcome.mdx @@ -294,7 +294,7 @@ If you don't understand something in the documentation, you are experiencing pro in the right direction, please don't hesitate to join our official [Sapphire Community Server](https://sapphirejs.dev/discord). -[frameworksdocs]: ../Documentation/api-framework/ +[frameworksdocs]: ../Documentation/sapphire-framework/General/welcome [djs]: https://discord.js.org/ [saphfw]: https://github.com/sapphiredev/framework [updating-guide]: ../Guide/getting-started/updating-from-v2-to-v3 diff --git a/docs/Guide/application-commands/application-command-registry/acquiring-an-application-command-registry.mdx b/docs/Guide/application-commands/application-command-registry/acquiring-an-application-command-registry.mdx index cec02f15..c25b810a 100644 --- a/docs/Guide/application-commands/application-command-registry/acquiring-an-application-command-registry.mdx +++ b/docs/Guide/application-commands/application-command-registry/acquiring-an-application-command-registry.mdx @@ -37,6 +37,6 @@ Read [Registering Application Commands outside a Command][register-outside] for ::: -[register-application-commands]: ../../../Documentation/api-framework/classes/Command#registerapplicationcommands -[command]: ../../../Documentation/api-framework/classes/Command +[register-application-commands]: ../../../Documentation/sapphire-framework/class/Command#registerapplicationcommands +[command]: ../../../Documentation/sapphire-framework/class/Command [register-outside]: ./advanced/registering-application-commands-outside-a-command diff --git a/docs/Guide/application-commands/application-command-registry/advanced/routing-existing-application-commands-to-a-command.mdx b/docs/Guide/application-commands/application-command-registry/advanced/routing-existing-application-commands-to-a-command.mdx index 10b9dc91..ebda6dbf 100644 --- a/docs/Guide/application-commands/application-command-registry/advanced/routing-existing-application-commands-to-a-command.mdx +++ b/docs/Guide/application-commands/application-command-registry/advanced/routing-existing-application-commands-to-a-command.mdx @@ -94,14 +94,14 @@ registry.addChatInputCommandIds('123456789123456789'); ``` [addchatinputcommandids]: - ../../../../Documentation/api-framework/classes/ApplicationCommandRegistry#addchatinputcommandids + ../../../../Documentation/sapphire-framework/class/ApplicationCommandRegistry#addchatinputcommandids [addchatinputcommandnames]: - ../../../../Documentation/api-framework/classes/ApplicationCommandRegistry#addchatinputcommandnames + ../../../../Documentation/sapphire-framework/class/ApplicationCommandRegistry#addchatinputcommandnames [addcontextmenucommandnames]: - ../../../../Documentation/api-framework/classes/ApplicationCommandRegistry#addcontextmenucommandnames + ../../../../Documentation/sapphire-framework/class/ApplicationCommandRegistry#addcontextmenucommandnames [addcontextmenucommandids]: - ../../../../Documentation/api-framework/classes/ApplicationCommandRegistry#addcontextmenucommandids + ../../../../Documentation/sapphire-framework/class/ApplicationCommandRegistry#addcontextmenucommandids [idhints]: ../registering-chat-input-commands#idhints -[rcic]: ../../../../Documentation/api-framework/classes/ApplicationCommandRegistry#registerchatinputcommand -[rcmc]: ../../../../Documentation/api-framework/classes/ApplicationCommandRegistry#registercontextmenucommand +[rcic]: ../../../../Documentation/sapphire-framework/class/ApplicationCommandRegistry#registerchatinputcommand +[rcmc]: ../../../../Documentation/sapphire-framework/class/ApplicationCommandRegistry#registercontextmenucommand [registering-outside-command-class]: ./registering-application-commands-outside-a-command.mdx diff --git a/docs/Guide/application-commands/application-command-registry/advanced/setting-global-behavior-when-not-identical.mdx b/docs/Guide/application-commands/application-command-registry/advanced/setting-global-behavior-when-not-identical.mdx index 2c12649b..46653ed1 100644 --- a/docs/Guide/application-commands/application-command-registry/advanced/setting-global-behavior-when-not-identical.mdx +++ b/docs/Guide/application-commands/application-command-registry/advanced/setting-global-behavior-when-not-identical.mdx @@ -14,4 +14,4 @@ import { RegisterBehavior } from '@sapphire/framework'; ApplicationCommandRegistries.setDefaultBehaviorWhenNotIdentical(RegisterBehavior.LogToConsole); ``` -[application-command-registry]: ../../../../Documentation/api-framework/classes/ApplicationCommandRegistry +[application-command-registry]: ../../../../Documentation/sapphire-framework/class/ApplicationCommandRegistry diff --git a/docs/Guide/application-commands/application-command-registry/registering-chat-input-commands.mdx b/docs/Guide/application-commands/application-command-registry/registering-chat-input-commands.mdx index 8791cf8d..b014000b 100644 --- a/docs/Guide/application-commands/application-command-registry/registering-chat-input-commands.mdx +++ b/docs/Guide/application-commands/application-command-registry/registering-chat-input-commands.mdx @@ -232,12 +232,12 @@ export class SlashCommand extends Command { The `chatInputRun` example above uses [interaction handlers][interaction-handlers], which are detailed in that section. -[acr]: ../../../Documentation/api-framework/classes/ApplicationCommandRegistry +[acr]: ../../../Documentation/sapphire-framework/class/ApplicationCommandRegistry [aaacr]: ./acquiring-an-application-command-registry.mdx [arguments]: ../../arguments/creating-your-own-arguments.mdx -[behavior-log]: ../../../Documentation/api-framework/enums/RegisterBehavior#logtoconsole -[behavior-overwrite]: ../../../Documentation/api-framework/enums/RegisterBehavior#overwrite -[command]: ../../../Documentation/api-framework/classes/Command +[behavior-log]: ../../../Documentation/sapphire-framework/enum/RegisterBehavior#logtoconsole +[behavior-overwrite]: ../../../Documentation/sapphire-framework/enum/RegisterBehavior#overwrite +[command]: ../../../Documentation/sapphire-framework/class/Command [configure-logging]: ../../plugins/Logger/configuring-loglevel [discord-deleting-application-commands]: https://discord.com/developers/docs/interactions/application-commands#updating-and-deleting-a-command @@ -245,15 +245,15 @@ The `chatInputRun` example above uses [interaction handlers][interaction-handler [djs-slash-builder-docs]: https://discord.js.org/#/docs/builders/0.16.0/class/SlashCommandBuilder [djs-slash-command-options]: https://discordjs.guide/interactions/slash-commands.html#options [interaction-handlers]: ../interaction-handlers/what-are-they.mdx -[loglevel-info]: ../../../Documentation/api-framework/enums/LogLevel#info -[loglevel-debug]: ../../../Documentation/api-framework/enums/LogLevel#debug -[rac]: ../../../Documentation/api-framework/classes/Command#registerapplicationcommands -[rcic]: ../../../Documentation/api-framework/classes/ApplicationCommandRegistry#registerchatinputcommand +[loglevel-info]: ../../../Documentation/sapphire-framework/enum/LogLevel#info +[loglevel-debug]: ../../../Documentation/sapphire-framework/enum/LogLevel#debug +[rac]: ../../../Documentation/sapphire-framework/class/Command#registerapplicationcommands +[rcic]: ../../../Documentation/sapphire-framework/class/ApplicationCommandRegistry#registerchatinputcommand [what-is-it]: ./what-is-it -[idhints]: ../../../Documentation/api-framework/interfaces/ApplicationCommandRegistry.RegisterOptions#idhints -[guildids]: ../../../Documentation/api-framework/interfaces/ApplicationCommandRegistry.RegisterOptions#guildids +[idhints]: ../../../Documentation/sapphire-framework/interface/ApplicationCommandRegistry.RegisterOptions#idhints +[guildids]: ../../../Documentation/sapphire-framework/interface/ApplicationCommandRegistry.RegisterOptions#guildids [behaviorwhennotidentical]: - ../../../Documentation/api-framework/interfaces/ApplicationCommandRegistry.RegisterOptions#behaviorwhennotidentical + ../../../Documentation/sapphire-framework/interface/ApplicationCommandRegistry.RegisterOptions#behaviorwhennotidentical [registercommandifmissing]: - ../../../Documentation/api-framework/interfaces/ApplicationCommandRegistry.RegisterOptions#registercommandifmissing + ../../../Documentation/sapphire-framework/interface/ApplicationCommandRegistry.RegisterOptions#registercommandifmissing [inner-ref-options]: #chat-input-command-registry-options diff --git a/docs/Guide/application-commands/application-command-registry/registering-context-commands.mdx b/docs/Guide/application-commands/application-command-registry/registering-context-commands.mdx index 4740ce8a..8d40de77 100644 --- a/docs/Guide/application-commands/application-command-registry/registering-context-commands.mdx +++ b/docs/Guide/application-commands/application-command-registry/registering-context-commands.mdx @@ -179,14 +179,14 @@ Since `contextMenuRun` runs both kind of context commands, we recommend using ei ::: -[acr]: ../../../Documentation/api-framework/classes/ApplicationCommandRegistry +[acr]: ../../../Documentation/sapphire-framework/class/ApplicationCommandRegistry [cicro]: ./registering-chat-input-commands.mdx#chat-input-command-registry-options -[command]: ../../../Documentation/api-framework/classes/Command +[command]: ../../../Documentation/sapphire-framework/class/Command [cmce]: ./message-context-menu-command.png [djs-command-data-docs]: https://discord.js.org/#/docs/discord.js/v13/typedef/ApplicationCommandData [djs-context-menu-command-builder-docs]: https://discord.js.org/#/docs/builders/0.16.0/class/ContextMenuCommandBuilder -[rac]: ../../../Documentation/api-framework/classes/Command#registerapplicationcommands +[rac]: ../../../Documentation/sapphire-framework/class/Command#registerapplicationcommands [registering-chat-input-commands]: ./registering-chat-input-commands.mdx [registering-chat-input-commands-options]: ./registering-chat-input-commands.mdx#chat-input-command-registry-options -[rcic]: ../../../Documentation/api-framework/classes/ApplicationCommandRegistry#registerchatinputcommand -[rcmc]: ../../../Documentation/api-framework/classes/ApplicationCommandRegistry#registercontextmenucommand +[rcic]: ../../../Documentation/sapphire-framework/class/ApplicationCommandRegistry#registerchatinputcommand +[rcmc]: ../../../Documentation/sapphire-framework/class/ApplicationCommandRegistry#registercontextmenucommand diff --git a/docs/Guide/application-commands/application-command-registry/what-is-it.mdx b/docs/Guide/application-commands/application-command-registry/what-is-it.mdx index 10e6fb4f..0bd835ae 100644 --- a/docs/Guide/application-commands/application-command-registry/what-is-it.mdx +++ b/docs/Guide/application-commands/application-command-registry/what-is-it.mdx @@ -11,5 +11,5 @@ An [ApplicationCommandRegistry][application-command-registry] manages applicatio bot's commands. It handles things such as syncing application command data with Discord, routing multiple application commands to your command, and much more! -[application-command-registry]: ../../../Documentation/api-framework/classes/ApplicationCommandRegistry +[application-command-registry]: ../../../Documentation/sapphire-framework/class/ApplicationCommandRegistry [discord-application-command-docs]: https://discord.com/developers/docs/interactions/application-commands diff --git a/docs/Guide/application-commands/interaction-handlers/autocomplete.mdx b/docs/Guide/application-commands/interaction-handlers/autocomplete.mdx index 18811d4c..1299ddb7 100644 --- a/docs/Guide/application-commands/interaction-handlers/autocomplete.mdx +++ b/docs/Guide/application-commands/interaction-handlers/autocomplete.mdx @@ -82,5 +82,5 @@ If the autocomplete interaction runs via [`InteractionHandler`][interaction-hand `InteractionHandlerError` (`interactionHandlerError`) event. [interaction-handlers]: ./what-are-they.mdx -[interaction-handler]: ../../../Documentation/api-framework/classes/InteractionHandler -[autocomplete-run]: ../../../Documentation/api-framework/classes/Command#autocompleterun +[interaction-handler]: ../../../Documentation/sapphire-framework/class/InteractionHandler +[autocomplete-run]: ../../../Documentation/sapphire-framework/class/Command#autocompleterun diff --git a/docs/Guide/application-commands/interaction-handlers/message-components.mdx b/docs/Guide/application-commands/interaction-handlers/message-components.mdx index 9b25385d..430d6143 100644 --- a/docs/Guide/application-commands/interaction-handlers/message-components.mdx +++ b/docs/Guide/application-commands/interaction-handlers/message-components.mdx @@ -42,8 +42,8 @@ export class MessageComponentHandler extends InteractionHandler { } ``` -[interactionhandlertypes]: ../../../Documentation/api-framework/enums/InteractionHandlerTypes -[messagecomponent]: ../../../Documentation/api-framework/enums/InteractionHandlerTypes#messagecomponent -[interaction-handler]: ../../../Documentation/api-framework/classes/InteractionHandler +[interactionhandlertypes]: ../../../Documentation/sapphire-framework/enum/InteractionHandlerTypes +[messagecomponent]: ../../../Documentation/sapphire-framework/enum/InteractionHandlerTypes#messagecomponent +[interaction-handler]: ../../../Documentation/sapphire-framework/class/InteractionHandler [buttons]: ./buttons.mdx [select-menus]: ./select-menus.mdx diff --git a/docs/Guide/arguments/built-in-arguments.mdx b/docs/Guide/arguments/built-in-arguments.mdx index b9f8223e..7de7f7e5 100644 --- a/docs/Guide/arguments/built-in-arguments.mdx +++ b/docs/Guide/arguments/built-in-arguments.mdx @@ -60,7 +60,7 @@ To facilitate creating commands and getting your bot running, Sapphire bundles a [date]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date [dmchannel]: https://discord.js.org/#/docs/main/v13/class/DMChannel [guildchannel]: https://discord.js.org/#/docs/main/v13/class/GuildChannel -[emojiobject]: ../../Documentation/api-framework/interfaces/EmojiObject +[emojiobject]: ../../Documentation/sapphire-framework/interface/EmojiObject [guildmember]: https://discord.js.org/#/docs/main/v13/class/GuildMember [mdn-date]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date#several_ways_to_create_a_date_object diff --git a/docs/Guide/arguments/using-arguments.mdx b/docs/Guide/arguments/using-arguments.mdx index dcf81f6d..bd6c03f9 100644 --- a/docs/Guide/arguments/using-arguments.mdx +++ b/docs/Guide/arguments/using-arguments.mdx @@ -262,8 +262,8 @@ export class MathsCommand extends Command { The code above matches any number of members up to 5, so it will never return an array of 6 or more. -[pick]: ../../Documentation/api-framework/classes/Args#pick -[rest]: ../../Documentation/api-framework/classes/Args#rest -[repeat]: ../../Documentation/api-framework/classes/Args#repeat +[pick]: ../../Documentation/sapphire-framework/class/Args#pick +[rest]: ../../Documentation/sapphire-framework/class/Args#rest +[repeat]: ../../Documentation/sapphire-framework/class/Args#repeat [iterator]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Iterators_and_Generators#iterators [djs-slash-guide-options]: https://discordjs.guide/interactions/slash-commands.html#options diff --git a/docs/Guide/arguments/using-flags.mdx b/docs/Guide/arguments/using-flags.mdx index 5bd3154e..4be899b8 100644 --- a/docs/Guide/arguments/using-flags.mdx +++ b/docs/Guide/arguments/using-flags.mdx @@ -122,5 +122,5 @@ export class FlagsCommand extends Command { } ``` -[getflags]: ../../Documentation/api-framework/classes/Args#getflags -[rest]: ../../Documentation/api-framework/classes/Args#rest +[getflags]: ../../Documentation/sapphire-framework/class/Args#getflags +[rest]: ../../Documentation/sapphire-framework/class/Args#rest diff --git a/docs/Guide/arguments/using-options.mdx b/docs/Guide/arguments/using-options.mdx index a0d83717..cb08cc8f 100644 --- a/docs/Guide/arguments/using-options.mdx +++ b/docs/Guide/arguments/using-options.mdx @@ -125,7 +125,7 @@ export class OptionsCommand extends Command { } ``` -[getoption]: ../../Documentation/api-framework/classes/Args#getOption -[getoptions]: ../../Documentation/api-framework/classes/Args#getOptions -[pick]: ../../Documentation/api-framework/classes/Args#pick -[rest]: ../../Documentation/api-framework/classes/Args#rest +[getoption]: ../../Documentation/sapphire-framework/class/Args#getOption +[getoptions]: ../../Documentation/sapphire-framework/class/Args#getOptions +[pick]: ../../Documentation/sapphire-framework/class/Args#pick +[rest]: ../../Documentation/sapphire-framework/class/Args#rest diff --git a/docs/Guide/getting-started/creating-a-basic-command.mdx b/docs/Guide/getting-started/creating-a-basic-command.mdx index 2cf09686..5b7fe64c 100644 --- a/docs/Guide/getting-started/creating-a-basic-command.mdx +++ b/docs/Guide/getting-started/creating-a-basic-command.mdx @@ -144,9 +144,9 @@ For handling subcommands, please refer to the [Sapphire Plugin Subcommands][saph ::: -[command]: ../../Documentation/api-framework/classes/Command -[commandoptions]: ../../Documentation/api-framework/interfaces/CommandOptions +[command]: ../../Documentation/sapphire-framework/class/Command +[commandoptions]: ../../Documentation/sapphire-framework/interface/CommandOptions [getting-started]: ./getting-started-with-sapphire [load-message-commands-option]: - ../../Documentation/api-framework/interfaces/SapphireClientOptions#loadmessagecommandlisteners + ../../Documentation/sapphire-framework/interface/SapphireClientOptions#loadmessagecommandlisteners [saph-plug-subcom]: ../plugins/Subcommands/getting-started diff --git a/docs/Guide/getting-started/getting-started-with-sapphire.mdx b/docs/Guide/getting-started/getting-started-with-sapphire.mdx index 2d0c6b20..ccf82735 100644 --- a/docs/Guide/getting-started/getting-started-with-sapphire.mdx +++ b/docs/Guide/getting-started/getting-started-with-sapphire.mdx @@ -86,7 +86,7 @@ And that's it for your `index.js` file! In the end, your directory should look l βββ index.js ``` -[sapphire]: ../../Documentation/api-framework/classes/SapphireClient +[sapphire]: ../../Documentation/sapphire-framework/class/SapphireClient [djs-client]: https://discord.js.org/#/docs/main/v13/class/Client -[baseuserdirectory]: ../../Documentation/api-framework/interfaces/SapphireClientOptions#baseuserdirectory +[baseuserdirectory]: ../../Documentation/sapphire-framework/interface/SapphireClientOptions#baseuserdirectory [securing-your-token]: https://discordjs.guide/preparations/setting-up-a-bot-application.html#your-token diff --git a/docs/Guide/getting-started/updating-from-v2-to-v3.mdx b/docs/Guide/getting-started/updating-from-v2-to-v3.mdx index e6cdfd52..d8caa395 100644 --- a/docs/Guide/getting-started/updating-from-v2-to-v3.mdx +++ b/docs/Guide/getting-started/updating-from-v2-to-v3.mdx @@ -340,36 +340,37 @@ uppercase `P` represents the [`Events`][events] object name) - `[P]`CommandError (`[p]CommandError`) - emitted when the command run method throws an error. - `[P]`CommandFinish (`[p]CommandFinish`) - emitted when the command run is finished. -[`ipreconditioncontainer`]: ../../Documentation/api-framework/interfaces/IPreconditionContainer -[`preconditioncontainerarray`]: ../../Documentation/api-framework/classes/PreconditionContainerArray -[`preconditioncontainersingle`]: ../../Documentation/api-framework/classes/PreconditionContainerSingle +[`ipreconditioncontainer`]: ../../Documentation/sapphire-framework/interface/IPreconditionContainer +[`preconditioncontainerarray`]: ../../Documentation/sapphire-framework/class/PreconditionContainerArray +[`preconditioncontainersingle`]: ../../Documentation/sapphire-framework/class/PreconditionContainerSingle [acr]: ../application-commands/application-command-registry/what-is-it.mdx -[allflowsprecondition]: ../../Documentation/api-framework/classes/AllFlowsPrecondition +[allflowsprecondition]: ../../Documentation/sapphire-framework/class/AllFlowsPrecondition [applicationcommandregistry]: ../application-commands/application-command-registry/what-is-it.mdx [autocomplete]: ../application-commands/interaction-handlers/autocomplete.mdx -[chat-input-parallel]: ../../Documentation/api-framework/interfaces/IPreconditionCondition#chatinputparallel -[chat-input-sequential]: ../../Documentation/api-framework/interfaces/IPreconditionCondition#chatinputsequential -[command-acr]: ../../Documentation/api-framework/classes/Command#applicationcommandregistry -[command-chat-input-run]: ../../Documentation/api-framework/classes/Command#chatinputrun -[command-context-menu-run]: ../../Documentation/api-framework/classes/Command#contextmenurun -[command-message-run]: ../../Documentation/api-framework/classes/Command#messagerun -[command-rac]: ../../Documentation/api-framework/classes/Command#registerapplicationcommands +[chat-input-parallel]: ../../Documentation/sapphire-framework/interface/IPreconditionCondition#chatinputparallel +[chat-input-sequential]: ../../Documentation/sapphire-framework/interface/IPreconditionCondition#chatinputsequential +[command-acr]: ../../Documentation/sapphire-framework/class/Command#applicationcommandregistry +[command-chat-input-run]: ../../Documentation/sapphire-framework/class/Command#chatinputrun +[command-context-menu-run]: ../../Documentation/sapphire-framework/class/Command#contextmenurun +[command-message-run]: ../../Documentation/sapphire-framework/class/Command#messagerun +[command-rac]: ../../Documentation/sapphire-framework/class/Command#registerapplicationcommands [commands]: #commands -[context-menu-parallel]: ../../Documentation/api-framework/interfaces/IPreconditionCondition#contextmenuparallel -[context-menu-sequential]: ../../Documentation/api-framework/interfaces/IPreconditionCondition#contextmenusequential -[events]: ../../Documentation/api-framework/#events -[fetchchannelfrominteraction]: ../../Documentation/api-framework/classes/Precondition#fetchchannelfrominteraction -[idhints]: ../../Documentation/api-framework/interfaces/ApplicationCommandRegistry.RegisterOptions#idhints -[ipreconditioncondition]: ../../Documentation/api-framework/interfaces/IPreconditionCondition +[context-menu-parallel]: ../../Documentation/sapphire-framework/interface/IPreconditionCondition#contextmenuparallel +[context-menu-sequential]: ../../Documentation/sapphire-framework/interface/IPreconditionCondition#contextmenusequential +[events]: ../../Documentation/sapphire-framework/#events +[fetchchannelfrominteraction]: ../../Documentation/sapphire-framework/class/Precondition#fetchchannelfrominteraction +[idhints]: ../../Documentation/sapphire-framework/interface/ApplicationCommandRegistry.RegisterOptions#idhints +[ipreconditioncondition]: ../../Documentation/sapphire-framework/interface/IPreconditionCondition [loadmessagecommandlisteners]: - ../../Documentation/api-framework/interfaces/SapphireClientOptions#loadmessagecommandlisteners -[message-parallel]: ../../Documentation/api-framework/interfaces/IPreconditionCondition#messageparallel -[message-sequential]: ../../Documentation/api-framework/interfaces/IPreconditionCondition#messagesequential -[precondition-chat-input-run]: ../../Documentation/api-framework/classes/Precondition#chatinputrun -[precondition-context-menu-run]: ../../Documentation/api-framework/classes/Precondition#contextmenurun -[precondition-message-run]: ../../Documentation/api-framework/classes/Precondition#messagerun + ../../Documentation/asapphirepi-framework/interface/SapphireClientOptions#loadmessagecommandlisteners +[message-parallel]: ../../Documentation/sapphire-framework/interface/IPreconditionCondition#messageparallel +[message-sequential]: ../../Documentation/sapphire-framework/interface/IPreconditionCondition#messagesequential +[precondition-chat-input-run]: ../../Documentation/sapphire-framework/class/Precondition#chatinputrun +[precondition-context-menu-run]: ../../Documentation/sapphire-framework/class/Precondition#contextmenurun +[precondition-message-run]: ../../Documentation/sapphire-framework/class/Precondition#messagerun [rcic-idhints]: ../application-commands/application-command-registry/registering-chat-input-commands#idhints -[supportsautocompleteinteractions]: ../../Documentation/api-framework/classes/Command#supportsautocompleteinteractions -[supportschatinputcommands]: ../../Documentation/api-framework/classes/Command#supportschatinputcommands -[supportscontextmenucommands]: ../../Documentation/api-framework/classes/Command#supportscontextmenucommands -[supportsmessagecommands]: ../../Documentation/api-framework/classes/Command#supportsmessagecommands +[supportsautocompleteinteractions]: + ../../Documentation/sapphire-framework/class/Command#supportsautocompleteinteractions +[supportschatinputcommands]: ../../Documentation/sapphire-framework/class/Command#supportschatinputcommands +[supportscontextmenucommands]: ../../Documentation/sapphire-framework/class/Command#supportscontextmenucommands +[supportsmessagecommands]: ../../Documentation/sapphire-framework/class/Command#supportsmessagecommands diff --git a/docs/Guide/plugins/API/rate-limiting.mdx b/docs/Guide/plugins/API/rate-limiting.mdx index d9031a30..7e8c0316 100644 --- a/docs/Guide/plugins/API/rate-limiting.mdx +++ b/docs/Guide/plugins/API/rate-limiting.mdx @@ -143,4 +143,4 @@ export class UserRoute extends Route { Now when a user gets rate limited they will receive a 429 error with a Retry-After header. -[rlm]: ../../../Documentation/api-utilities/classes/ratelimits_src.RateLimitManager +[rlm]: ../../../Documentation/sapphire-ratelimits/class/RateLimitManager diff --git a/docs/Guide/plugins/Logger/configuring-loglevel.mdx b/docs/Guide/plugins/Logger/configuring-loglevel.mdx index 2a3d4239..f984e9d8 100644 --- a/docs/Guide/plugins/Logger/configuring-loglevel.mdx +++ b/docs/Guide/plugins/Logger/configuring-loglevel.mdx @@ -47,4 +47,4 @@ to `Warn` then logger will not log `Info` log messages. ::: -[sapphire]: ../../../Documentation/api-framework/classes/SapphireClient +[sapphire]: ../../../Documentation/sapphire-framework/class/SapphireClient diff --git a/docs/Guide/plugins/i18next/getting-started.mdx b/docs/Guide/plugins/i18next/getting-started.mdx index b795caed..332b2cad 100644 --- a/docs/Guide/plugins/i18next/getting-started.mdx +++ b/docs/Guide/plugins/i18next/getting-started.mdx @@ -297,28 +297,28 @@ export class PingCommand extends Command { } ``` -[`saphclientoptions`]: ../../../Documentation/api-framework/interfaces/SapphireClientOptions -[`internationalizationcontext`]: ../../../Documentation/api-plugins/interfaces/i18next_src.InternationalizationContext -[resolve-key]: ../../../Documentation/api-plugins/modules/i18next_src.md#resolvekey +[`saphclientoptions`]: ../../../Documentation/api-framework/interface/SapphireClientOptions +[`internationalizationcontext`]: ../../../Documentation/sapphire-plugin-i18next/interface/InternationalizationContext +[resolve-key]: ../../../Documentation/sapphire-plugin-i18next/function/resolvekey [fs-backend]: https://github.com/skyra-project/archid-components/tree/main/packages/i18next-backend -[fetchlanguage]: ../../../Documentation/api-plugins/modules/i18next_src.md#fetchlanguage -[i18n-options]: ../../../Documentation/api-plugins/interfaces/i18next_src.InternationalizationOptions -[sapphireclient]: ../../../Documentation/api-framework/classes/SapphireClient.md +[fetchlanguage]: ../../../Documentation/sapphire-plugin-i18next/function/fetchlanguage +[i18n-options]: ../../../Documentation/sapphire-plugin-i18next/interface/InternationalizationOptions +[sapphireclient]: ../../../Documentation/sapphire-framework/class/SapphireClient.md [i18next]: https://i18next.com [plugin]: https://github.com/sapphiredev/plugins/tree/main/packages/i18next [using-container]: ../../additional-information/using-and-extending-container.mdx [internationalizationcontext.guild]: - ../../../Documentation/api-plugins/interfaces/i18next_src.InternationalizationContext#guild + ../../../Documentation/sapphire-plugin-i18next/interface/InternationalizationContext#guild [internationalizationcontext.channel]: - ../../../Documentation/api-plugins/interfaces/i18next_src.InternationalizationContext#channel + ../../../Documentation/sapphire-plugin-i18next/interface/InternationalizationContext#channel [internationalizationcontext.user]: - ../../../Documentation/api-plugins/interfaces/i18next_src.InternationalizationContext#user + ../../../Documentation/sapphire-plugin-i18next/interface/InternationalizationContext#user [internationalizationcontext.interactionguildlocale]: - ../../../Documentation/api-plugins/interfaces/i18next_src.InternationalizationContext#interactionguildlocale + ../../../Documentation/sapphire-plugin-i18next/interface/InternationalizationContext#interactionguildlocale [internationalizationcontext.interactionlocale]: - ../../../Documentation/api-plugins/interfaces/i18next_src.InternationalizationContext#interactionlocale -[messagerun]: ../../../Documentation/api-framework/classes/Command.md#messagerun -[chatinputrun]: ../../../Documentation/api-framework/classes/Command.md#chatinputrun -[contextmenurun]: ../../../Documentation/api-framework/classes/Command.md#contextmenurun -[fetcht]: ../../../Documentation/api-plugins/modules/i18next_src.md#fetcht -[tfunction]: ../../../Documentation/api-plugins/interfaces/i18next_src.TFunction + ../../../Documentation/sapphire-plugin-i18next/interface/InternationalizationContext#interactionlocale +[messagerun]: ../../../Documentation/sapphire-framework/class/Command.md#messagerun +[chatinputrun]: ../../../Documentation/sapphire-framework/class/Command.md#chatinputrun +[contextmenurun]: ../../../Documentation/sapphire-framework/class/Command.md#contextmenurun +[fetcht]: ../../../Documentation/sapphire-plugin-i18next/function/fetcht +[tfunction]: ../../../Documentation/sapphire-plugin-i18next/interface/TFunction diff --git a/docs/Guide/preconditions/channel-types.mdx b/docs/Guide/preconditions/channel-types.mdx index d1e405f9..50ed6c2c 100644 --- a/docs/Guide/preconditions/channel-types.mdx +++ b/docs/Guide/preconditions/channel-types.mdx @@ -35,6 +35,6 @@ Failure][reporting-precondition-failure]. ::: -[runin]: ../../Documentation/api-framework/interfaces/CommandOptions#runin -[runintypes]: ../../Documentation/api-framework/enums/CommandOptionsRunTypeEnum +[runin]: ../../Documentation/sapphire-framework/interface/CommandOptions#runin +[runintypes]: ../../Documentation/sapphire-framework/enum/CommandOptionsRunTypeEnum [reporting-precondition-failure]: ./reporting-precondition-failure diff --git a/docs/Guide/preconditions/command-cooldown.mdx b/docs/Guide/preconditions/command-cooldown.mdx index 4008f31a..a426786b 100644 --- a/docs/Guide/preconditions/command-cooldown.mdx +++ b/docs/Guide/preconditions/command-cooldown.mdx @@ -109,13 +109,13 @@ Failure][reporting-precondition-failure]. ::: -[cooldowndelay]: ../../Documentation/api-framework/interfaces/CommandOptions#cooldowndelay -[cooldownfilteredusers]: ../../Documentation/api-framework/interfaces/CommandOptions#cooldownfilteredusers -[cooldownlimit]: ../../Documentation/api-framework/interfaces/CommandOptions#cooldownlimit -[cooldownscope]: ../../Documentation/api-framework/interfaces/CommandOptions#cooldownscope -[defaultcooldown]: ../../Documentation/api-framework/interfaces/SapphireClientOptions#defaultcooldown -[sapphire]: ../../Documentation/api-framework/classes/SapphireClient -[scopes]: ../../Documentation/api-framework/enums/BucketScope +[cooldowndelay]: ../../Documentation/sapphire-framework/interface/CommandOptions#cooldowndelay +[cooldownfilteredusers]: ../../Documentation/sapphire-framework/interface/CommandOptions#cooldownfilteredusers +[cooldownlimit]: ../../Documentation/sapphire-framework/interface/CommandOptions#cooldownlimit +[cooldownscope]: ../../Documentation/sapphire-framework/interface/CommandOptions#cooldownscope +[defaultcooldown]: ../../Documentation/sapphire-framework/interface/SapphireClientOptions#defaultcooldown +[sapphire]: ../../Documentation/sapphire-framework/class/SapphireClient +[scopes]: ../../Documentation/sapphire-framework/enum/BucketScope [reporting-precondition-failure]: ./reporting-precondition-failure -[timeutils]: ../../Documentation/api-utilities/modules/time_utilities_src -[timeenum]: ../../Documentation/api-utilities/enums/time_utilities_src.Time +[timeutils]: ../../Documentation/sapphire-time-utilities +[timeenum]: ../../Documentation/sapphire-time-utilities/typedefs/Time diff --git a/docs/Guide/preconditions/creating-your-own-preconditions.mdx b/docs/Guide/preconditions/creating-your-own-preconditions.mdx index 15fb64c0..f5db1ce8 100644 --- a/docs/Guide/preconditions/creating-your-own-preconditions.mdx +++ b/docs/Guide/preconditions/creating-your-own-preconditions.mdx @@ -160,16 +160,16 @@ None of the following preconditions are bundled with Sapphire; as such you'd hav For a command with these preconditions to pass the denial checks, the `InVoiceChannel` precondition must pass, as well as `AdminOnly` _or_ both `OwnerOnly` and `ModOnly`. -[all-flows-precondition]: ../../Documentation/api-framework/classes/AllFlowsPrecondition +[all-flows-precondition]: ../../Documentation/sapphire-framework/class/AllFlowsPrecondition [creating-commands]: ../getting-started/creating-a-basic-command -[precondition]: ../../Documentation/api-framework/classes/Precondition -[preconditionmessagerun]: ../../Documentation/api-framework/classes/Precondition#messagerun -[preconditionchatinputrun]: ../../Documentation/api-framework/classes/Precondition#chatinputrun -[preconditioncontextmenurun]: ../../Documentation/api-framework/classes/Precondition#contextmenurun -[preconditionok]: ../../Documentation/api-framework/classes/Precondition#ok -[preconditionerror]: ../../Documentation/api-framework/classes/Precondition#error -[preconditions-option]: ../../Documentation/api-framework/interfaces/CommandOptions#preconditions -[preconditions-interface]: ../../Documentation/api-framework/interfaces/Preconditions +[precondition]: ../../Documentation/sapphire-framework/class/Precondition +[preconditionmessagerun]: ../../Documentation/sapphire-framework/class/Precondition#messagerun +[preconditionchatinputrun]: ../../Documentation/sapphire-framework/class/Precondition#chatinputrun +[preconditioncontextmenurun]: ../../Documentation/sapphire-framework/class/Precondition#contextmenurun +[preconditionok]: ../../Documentation/sapphire-framework/class/Precondition#ok +[preconditionerror]: ../../Documentation/sapphire-framework/class/Precondition#error +[preconditions-option]: ../../Documentation/sapphire-framework/interface/CommandOptions#preconditions +[preconditions-interface]: ../../Documentation/sapphire-framework/interface/Preconditions [preconditions-augment]: https://github.com/sapphiredev/examples/blob/main/examples/with-typescript-recommended/src/preconditions/OwnerOnly.ts#L27-L31 [reporting-precondition-failure]: ./reporting-precondition-failure diff --git a/docs/Guide/preconditions/handling-permissions.mdx b/docs/Guide/preconditions/handling-permissions.mdx index f714b9eb..8f42f550 100644 --- a/docs/Guide/preconditions/handling-permissions.mdx +++ b/docs/Guide/preconditions/handling-permissions.mdx @@ -56,6 +56,6 @@ Failure][reporting-precondition-failure]. ::: -[requireduserpermissions]: ../../Documentation/api-framework/interfaces/CommandOptions#requireduserpermissions -[requiredclientpermissions]: ../../Documentation/api-framework/interfaces/CommandOptions#requiredclientpermissions +[requireduserpermissions]: ../../Documentation/sapphire-framework/interface/CommandOptions#requireduserpermissions +[requiredclientpermissions]: ../../Documentation/sapphire-framework/interface/CommandOptions#requiredclientpermissions [reporting-precondition-failure]: ./reporting-precondition-failure diff --git a/docs/Guide/preconditions/reporting-precondition-failure.mdx b/docs/Guide/preconditions/reporting-precondition-failure.mdx index 208ac572..8de651b4 100644 --- a/docs/Guide/preconditions/reporting-precondition-failure.mdx +++ b/docs/Guide/preconditions/reporting-precondition-failure.mdx @@ -106,8 +106,8 @@ throw a TypeScript error for trying to read property `silent` of type `unknown`. ::: [listeners]: ../listeners/creating-your-own-listeners -[error]: ../../Documentation/api-framework/classes/UserError -[payload]: ../../Documentation/api-framework/interfaces/MessageCommandDeniedPayload -[context]: ../../Documentation/api-framework/classes/UserError#context -[preconditionerror]: ../../Documentation/api-framework/classes/Precondition#error +[error]: ../../Documentation/sapphire-framework/class/UserError +[payload]: ../../Documentation/sapphire-framework/interface/MessageCommandDeniedPayload +[context]: ../../Documentation/sapphire-framework/class/UserError#context +[preconditionerror]: ../../Documentation/sapphire-framework/class/Precondition#error [creating-preconditions]: ./creating-your-own-preconditions diff --git a/docs/Guide/utilities/time-utilities.mdx b/docs/Guide/utilities/time-utilities.mdx index e8fcd4d1..ab7f3e99 100644 --- a/docs/Guide/utilities/time-utilities.mdx +++ b/docs/Guide/utilities/time-utilities.mdx @@ -129,4 +129,7 @@ console.log(Timestamp.utc('2022-04-25')); ``` [cron-strings]: https://en.wikipedia.org/wiki/Cron -[time-enum]: ../../Documentation/api-utilities/enums/time_utilities_src.Time + +<!-- TODO: Check proper URL --> + +[time-enum]: ../../Documentation/sapphire-time-utilities/enum/Time diff --git a/docusaurus-discordjs-docgen/package.json b/docusaurus-discordjs-docgen/package.json new file mode 100644 index 00000000..15c5696a --- /dev/null +++ b/docusaurus-discordjs-docgen/package.json @@ -0,0 +1,25 @@ +{ + "name": "docusaurus-discordjs-docgen", + "version": "0.0.1", + "description": "A Docusaurus v2 plugin to build API documentation based on @discordjs/ts-docgen output.", + "main": "dist/index.js", + "files": [ + "dist/" + ], + "scripts": { + "build": "tsc", + "watch": "tsc -w", + "debug": "node --inspect scripts/debug.mjs" + }, + "dependencies": { + "@sapphire/docusaurus-plugin-ts2esm2cjs": "^1.1.3", + "@sapphire/result": "^2.6.0", + "@sapphire/utilities": "^3.11.0", + "common-tags": "^1.8.2", + "css": "^3.0.0" + }, + "devDependencies": { + "@docusaurus/types": "2.1.0", + "@types/common-tags": "^1.8.1" + } +} diff --git a/docusaurus-discordjs-docgen/scripts/debug.mjs b/docusaurus-discordjs-docgen/scripts/debug.mjs new file mode 100644 index 00000000..e8c26943 --- /dev/null +++ b/docusaurus-discordjs-docgen/scripts/debug.mjs @@ -0,0 +1,70 @@ +import { fileURLToPath } from 'node:url'; +import parser from '../dist/index.js'; + +const docusaurusDiscordjsDocgen = parser.default; + +const siteDir = new URL('../../', import.meta.url); +const generatedFilesDir = new URL('.docusaurus/', siteDir); +const outDir = new URL('build/', siteDir); +const siteConfigPath = new URL('docusaurus.config.js', siteDir); + +const docgenJsonFile = new URL('data/framework.json', siteDir); +const outDocs = new URL('docs/Documentation/sapphire-framework', siteDir); + +docusaurusDiscordjsDocgen( + { + siteDir: fileURLToPath(siteDir), + generatedFilesDir: fileURLToPath(generatedFilesDir), + siteConfig: { + title: 'Sapphire', + url: 'https://sapphirejs.dev', + baseUrl: '/', + onBrokenLinks: 'warn', + onBrokenMarkdownLinks: 'warn', + onDuplicateRoutes: 'throw', + favicon: 'img/favicon.ico', + tagline: + 'Sapphire is a next-gen Discord bot framework for developers of all skill levels to make the best JavaScript/TypeScript based bots possible.', + organizationName: 'sapphiredev', + projectName: 'framework', + baseUrlIssueBanner: true, + i18n: { + defaultLocale: 'en', + locales: ['en'], + localeConfigs: {} + }, + staticDirectories: ['static'], + customFields: {}, + scripts: [], + stylesheets: [], + clientModules: [], + titleDelimiter: '|', + noIndex: false + }, + siteConfigPath: fileURLToPath(siteConfigPath), + outDir: fileURLToPath(outDir), + baseUrl: '/', + i18n: { + defaultLocale: 'en', + locales: ['en'], + currentLocale: 'en', + localeConfigs: { + en: { + label: 'English', + direction: 'ltr', + htmlLang: 'en' + } + } + }, + codeTranslations: {} + }, + { + id: 'framework', + docgenJsonFile: fileURLToPath(docgenJsonFile), + out: fileURLToPath(outDocs), + sidebar: { + categoryLabel: '@sapphire/framework', + position: 0 + } + } +).loadContent(); diff --git a/docusaurus-discordjs-docgen/src/index.ts b/docusaurus-discordjs-docgen/src/index.ts new file mode 100644 index 00000000..3ebe4e4d --- /dev/null +++ b/docusaurus-discordjs-docgen/src/index.ts @@ -0,0 +1,50 @@ +import type { LoadContext } from '@docusaurus/types'; +import { from, isErr } from '@sapphire/result'; +import { readFileSync } from 'node:fs'; +import { resolve } from 'node:path'; +import { renderOutputFiles } from './lib/renderer/render'; +import { removeDir } from './lib/renderer/utils'; +import { writeCategoryYaml } from './lib/renderer/writeCategoryYaml'; +import type { Documentation } from './lib/types/docgen-output'; +import type { PluginOptions } from './lib/types/types'; +import { generateLogString } from './lib/utils/logger'; +import { getPluginOptions } from './lib/utils/options'; +import { pluginContainer } from './lib/utils/pluginContainer'; + +// store list of plugin ids when running multiple instances +const apps: string[] = []; + +export default function docusaurusDiscordjsDocgen(context: LoadContext, opts: Partial<PluginOptions>) { + return { + name: 'docusaurus-discordjs-docgen', + loadContent() { + if (opts.id && !apps.includes(opts.id)) { + apps.push(opts.id); + + const { siteDir } = context; + + const options = getPluginOptions(opts); + + pluginContainer.pluginOptions = options; + + const outputDir = resolve(siteDir, options.docsRoot, options.out); + + removeDir(outputDir); + + writeCategoryYaml(outputDir, '', options.sidebar.categoryLabel, options.sidebar.position ?? 0); + + const docgenJsonFile = from<Documentation>(() => { + return JSON.parse(readFileSync(resolve(options.docgenJsonFile), 'utf8')); + }); + + if (isErr(docgenJsonFile)) { + throw new Error(generateLogString(`Failed to parse JSON file at path ${resolve(options.docgenJsonFile)}`, options.id)); + } + + const jsonFileContent = docgenJsonFile.value; + + renderOutputFiles(jsonFileContent, outputDir, options); + } + } + }; +} diff --git a/docusaurus-discordjs-docgen/src/lib/renderer/externals/discordjs/resolveClasses.ts b/docusaurus-discordjs-docgen/src/lib/renderer/externals/discordjs/resolveClasses.ts new file mode 100644 index 00000000..17c2d7c2 --- /dev/null +++ b/docusaurus-discordjs-docgen/src/lib/renderer/externals/discordjs/resolveClasses.ts @@ -0,0 +1,149 @@ +const baseLink = 'https://discord.js.org/#/docs/main/stable/class'; + +const knownClasses = new Set([ + 'Activity', + 'ActivityFlags', + 'AnonymousGuild', + 'Application', + 'ApplicationCommand', + 'ApplicationCommandManager', + 'ApplicationCommandPermissionsManager', + 'ApplicationFlags', + 'AutocompleteInteraction', + 'Base', + 'BaseClient', + 'BaseCommandInteraction', + 'BaseGuild', + 'BaseGuildEmoji', + 'BaseGuildEmojiManager', + 'BaseGuildTextChannel', + 'BaseGuildVoiceChannel', + 'BaseManager', + 'BaseMessageComponent', + 'BitField', + 'ButtonInteraction', + 'CachedManager', + 'CategoryChannel', + 'Channel', + 'ChannelManager', + 'Client', + 'ClientApplication', + 'ClientPresence', + 'ClientUser', + 'ClientVoiceManager', + 'Collector', + 'CommandInteraction', + 'CommandInteractionOptionResolver', + 'ContextMenuInteraction', + 'DataManager', + 'DiscordAPIError', + 'DMChannel', + 'Emoji', + 'Formatters', + 'Guild', + 'GuildApplicationCommandManager', + 'GuildAuditLogs', + 'GuildAuditLogsEntry', + 'GuildBan', + 'GuildBanManager', + 'GuildChannel', + 'GuildChannelManager', + 'GuildEmoji', + 'GuildEmojiManager', + 'GuildEmojiRoleManager', + 'GuildInviteManager', + 'GuildManager', + 'GuildMember', + 'GuildMemberManager', + 'GuildMemberRoleManager', + 'GuildPreview', + 'GuildPreviewEmoji', + 'GuildStickerManager', + 'GuildTemplate', + 'HTTPError', + 'Integration', + 'IntegrationApplication', + 'Intents', + 'Interaction', + 'InteractionCollector', + 'InteractionWebhook', + 'Invite', + 'InviteGuild', + 'InviteStageInstance', + 'LimitedCollection', + 'Message', + 'MessageActionRow', + 'MessageAttachment', + 'MessageButton', + 'MessageCollector', + 'MessageComponentInteraction', + 'MessageEmbed', + 'MessageFlags', + 'MessageManager', + 'MessageMentions', + 'MessagePayload', + 'MessageReaction', + 'MessageSelectMenu', + 'NewsChannel', + 'OAuth2Guild', + 'Options', + 'PartialGroupDMChannel', + 'PermissionOverwriteManager', + 'PermissionOverwrites', + 'Permissions', + 'Presence', + 'PresenceManager', + 'RateLimitError', + 'ReactionCollector', + 'ReactionEmoji', + 'ReactionManager', + 'ReactionUserManager', + 'RichPresenceAssets', + 'Role', + 'RoleManager', + 'SelectMenuInteraction', + 'Shard', + 'ShardClientUtil', + 'ShardingManager', + 'SnowflakeUtil', + 'StageChannel', + 'StageInstance', + 'StageInstanceManager', + 'Sticker', + 'StickerPack', + 'StoreChannel', + 'SystemChannelFlags', + 'Team', + 'TeamMember', + 'TextChannel', + 'ThreadChannel', + 'ThreadManager', + 'ThreadMember', + 'ThreadMemberFlags', + 'ThreadMemberManager', + 'Typing', + 'User', + 'UserFlags', + 'UserManager', + 'Util', + 'VoiceChannel', + 'VoiceRegion', + 'VoiceState', + 'VoiceStateManager', + 'Webhook', + 'WebhookClient', + 'WebSocketManager', + 'WebSocketShard', + 'WelcomeChannel', + 'WelcomeScreen', + 'Widget', + 'WidgetMember' +]); + +export function resolveClasses(name: string): string | undefined { + if (knownClasses.has(name)) { + return `${baseLink}/${name}`; + } + + return undefined; +} diff --git a/docusaurus-discordjs-docgen/src/lib/renderer/externals/discordjs/resolveTypedefs.ts b/docusaurus-discordjs-docgen/src/lib/renderer/externals/discordjs/resolveTypedefs.ts new file mode 100644 index 00000000..cfd83d84 --- /dev/null +++ b/docusaurus-discordjs-docgen/src/lib/renderer/externals/discordjs/resolveTypedefs.ts @@ -0,0 +1,270 @@ +const baseLink = 'https://discord.js.org/#/docs/main/stable/typedef'; + +const knownTypeDefs = new Set([ + 'ActivitiesOptions', + 'ActivityOptions', + 'ActivityParty', + 'ActivityPlatform', + 'ActivityTimestamps', + 'ActivityType', + 'AddApplicationCommandPermissionsOptions', + 'AddGuildMemberOptions', + 'AgentOptions', + 'APIError', + 'APIMessageActionRowComponent', + 'APIRequest', + 'ApplicationAsset', + 'ApplicationCommandData', + 'ApplicationCommandOption', + 'ApplicationCommandOptionChoice', + 'ApplicationCommandOptionData', + 'ApplicationCommandOptionType', + 'ApplicationCommandPermissionData', + 'ApplicationCommandPermissions', + 'ApplicationCommandPermissionType', + 'ApplicationCommandResolvable', + 'ApplicationCommandType', + 'ApplicationResolvable', + 'AuditLogAction', + 'AuditLogActionType', + 'AuditLogChange', + 'AuditLogEntryTarget', + 'AuditLogTargetType', + 'AwaitMessageComponentOptions', + 'AwaitMessagesOptions', + 'AwaitReactionsOptions', + 'BanOptions', + 'Base64Resolvable', + 'BaseApplicationCommandPermissionsOptions', + 'BaseFetchOptions', + 'BaseMessageComponentOptions', + 'BaseMessageOptions', + 'BitFieldResolvable', + 'BroadcastEvalOptions', + 'BufferResolvable', + 'CacheFactory', + 'CategoryChannelResolvable', + 'CategoryCreateChannelOptions', + 'ChannelData', + 'ChannelLogsQueryOptions', + 'ChannelPosition', + 'ChannelResolvable', + 'ChannelType', + 'ChannelWebhookCreateOptions', + 'ClientOptions', + 'ClientPresenceStatus', + 'ClientUserEditData', + 'CollectorFilter', + 'CollectorOptions', + 'CollectorResetTimerOptions', + 'ColorResolvable', + 'CommandInteractionOption', + 'CommandInteractionResolvedData', + 'Constants', + 'CreateInviteOptions', + 'CreateRoleOptions', + 'CrosspostedChannel', + 'DateResolvable', + 'DeconstructedSnowflake', + 'DefaultMessageNotificationLevel', + 'EditGuildTemplateOptions', + 'EmbedField', + 'EmbedFieldData', + 'EmojiIdentifierResolvable', + 'EmojiResolvable', + 'EscapeMarkdownOptions', + 'ExplicitContentFilterLevel', + 'Features', + 'FetchApplicationCommandOptions', + 'FetchArchivedThreadOptions', + 'FetchBanOptions', + 'FetchBansOptions', + 'FetchChannelOptions', + 'FetchedThreads', + 'FetchGuildOptions', + 'FetchGuildsOptions', + 'FetchInviteOptions', + 'FetchInvitesOptions', + 'FetchMemberOptions', + 'FetchMembersOptions', + 'FetchReactionUsersOptions', + 'FetchRecommendedShardsOptions', + 'FetchThreadsOptions', + 'FileOptions', + 'GuildApplicationCommandPermissionData', + 'GuildAuditLogsFetchOptions', + 'GuildBanResolvable', + 'GuildChannelCloneOptions', + 'GuildChannelCreateOptions', + 'GuildChannelOverwriteOptions', + 'GuildChannelResolvable', + 'GuildCreateOptions', + 'GuildEditData', + 'GuildEmojiCreateOptions', + 'GuildEmojiEditData', + 'GuildInvitableChannelResolvable', + 'GuildListMembersOptions', + 'GuildMemberEditData', + 'GuildMemberResolvable', + 'GuildMembersChunk', + 'GuildPruneMembersOptions', + 'GuildResolvable', + 'GuildRolePosition', + 'GuildSearchMembersOptions', + 'GuildStickerCreateOptions', + 'GuildStickerEditData', + 'GuildTemplateResolvable', + 'GuildTextChannelResolvable', + 'GuildVoiceChannelResolvable', + 'GuildWidgetSettings', + 'GuildWidgetSettingsData', + 'HasApplicationCommandPermissionsOptions', + 'HTTPAttachmentData', + 'HTTPErrorData', + 'HTTPOptions', + 'ImageURLOptions', + 'IntegrationAccount', + 'IntegrationExpireBehavior', + 'IntegrationType', + 'IntentsResolvable', + 'InteractionCollectorOptions', + 'InteractionDeferReplyOptions', + 'InteractionDeferUpdateOptions', + 'InteractionReplyOptions', + 'InteractionResponseType', + 'InteractionType', + 'InteractionUpdateOptions', + 'InvalidRequestWarningData', + 'InviteGenerationOptions', + 'InviteResolvable', + 'InviteScope', + 'LifetimeFilterOptions', + 'LimitedCollectionOptions', + 'MakeErrorOptions', + 'MembershipState', + 'MessageActionRowComponent', + 'MessageActionRowComponentOptions', + 'MessageActionRowComponentResolvable', + 'MessageActionRowOptions', + 'MessageActivity', + 'MessageButtonOptions', + 'MessageButtonStyle', + 'MessageButtonStyleResolvable', + 'MessageCollectorOptions', + 'MessageComponent', + 'MessageComponentCollectorOptions', + 'MessageComponentOptions', + 'MessageComponentType', + 'MessageComponentTypeResolvable', + 'MessageEditOptions', + 'MessageEmbedAuthor', + 'MessageEmbedFooter', + 'MessageEmbedImage', + 'MessageEmbedOptions', + 'MessageEmbedProvider', + 'MessageEmbedThumbnail', + 'MessageEmbedVideo', + 'MessageFile', + 'MessageInteraction', + 'MessageMentionOptions', + 'MessageMentionsHasOptions', + 'MessageMentionTypes', + 'MessageOptions', + 'MessageReactionResolvable', + 'MessageReference', + 'MessageResolvable', + 'MessageSelectMenuOptions', + 'MessageSelectOption', + 'MessageSelectOptionData', + 'MessageTarget', + 'MessageType', + 'MFALevel', + 'MultipleShardRespawnOptions', + 'MultipleShardSpawnOptions', + 'NSFWLevel', + 'OverwriteData', + 'OverwriteResolvable', + 'OverwriteType', + 'Partial', + 'PartialChannelData', + 'PartialOverwriteData', + 'PartialRecipient', + 'PartialRoleData', + 'PartialType', + 'PermissionOverwriteOptions', + 'PermissionResolvable', + 'PremiumTier', + 'PresenceData', + 'PresenceResolvable', + 'PresenceStatus', + 'PresenceStatusData', + 'PrivacyLevel', + 'RateLimitData', + 'RateLimitQueueFilter', + 'RawEmoji', + 'RawOverwriteData', + 'ReactionCollectorOptions', + 'RemoveApplicationCommandPermissionsOptions', + 'ReplyMessageOptions', + 'ReplyOptions', + 'ResolvedOverwriteOptions', + 'RoleData', + 'RoleResolvable', + 'SetApplicationCommandPermissionsOptions', + 'SetChannelPositionOptions', + 'SetParentOptions', + 'SetRolePositionOptions', + 'ShardingManagerMode', + 'ShardingManagerOptions', + 'ShardRespawnOptions', + 'Snowflake', + 'SplitOptions', + 'StageChannelResolvable', + 'StageInstanceCreateOptions', + 'StageInstanceEditOptions', + 'StartThreadOptions', + 'StaticImageURLOptions', + 'Status', + 'StickerFormatType', + 'StickerResolvable', + 'StickerType', + 'SweepFilter', + 'SystemChannelFlagsResolvable', + 'SystemMessageType', + 'TargetType', + 'TextBasedChannels', + 'TextBasedChannelTypes', + 'TextChannelResolvable', + 'ThreadAutoArchiveDuration', + 'ThreadChannelResolvable', + 'ThreadChannelTypes', + 'ThreadCreateOptions', + 'ThreadEditData', + 'ThreadMemberResolvable', + 'TimestampStylesString', + 'UserResolvable', + 'Vanity', + 'VerificationLevel', + 'VoiceBasedChannelTypes', + 'VoiceChannelResolvable', + 'WebhookClientData', + 'WebhookEditData', + 'WebhookEditMessageOptions', + 'WebhookFetchMessageOptions', + 'WebhookMessageOptions', + 'WebhookType', + 'WebsocketOptions', + 'WelcomeChannelData', + 'WelcomeScreenEditData', + 'WidgetActivity', + 'WidgetChannel', + 'WSEventType' +]); + +export function resolveTypeDefs(name: string): string | undefined { + if (knownTypeDefs.has(name)) { + return `${baseLink}/${name}`; + } + + return undefined; +} diff --git a/docusaurus-discordjs-docgen/src/lib/renderer/externals/mdn/THIRD_PARTY_LICENSE b/docusaurus-discordjs-docgen/src/lib/renderer/externals/mdn/THIRD_PARTY_LICENSE new file mode 100644 index 00000000..81173e61 --- /dev/null +++ b/docusaurus-discordjs-docgen/src/lib/renderer/externals/mdn/THIRD_PARTY_LICENSE @@ -0,0 +1,19 @@ +Copyright 2021 Gerrit Birkeland + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. \ No newline at end of file diff --git a/docusaurus-discordjs-docgen/src/lib/renderer/externals/mdn/resolveCss.ts b/docusaurus-discordjs-docgen/src/lib/renderer/externals/mdn/resolveCss.ts new file mode 100644 index 00000000..69117e6f --- /dev/null +++ b/docusaurus-discordjs-docgen/src/lib/renderer/externals/mdn/resolveCss.ts @@ -0,0 +1,70 @@ +const cssPages = new Set([ + // Reference + 'AnimationEvent', + 'CaretPosition', + 'CSS', + 'CSSConditionRule', + 'CSSCounterStyleRule', + 'CSSFontFaceRule', + 'CSSGroupingRule', + 'CSSImportRule', + 'CSSKeyframeRule', + 'CSSKeyframesRule', + 'CSSMediaRule', + 'CSSNamespaceRule', + 'CSSPageRule', + 'CSSRule', + 'CSSRuleList', + 'CSSStyleDeclaration', + 'CSSStyleSheet', + 'CSSStyleRule', + 'CSSSupportsRule', + 'FontFace', + 'FontFaceSet', + 'FontFaceSetLoadEvent', + 'MediaList', + 'MediaQueryList', + 'MediaQueryListEvent', + 'Screen', + 'StyleSheet', + 'StyleSheetList', + 'TransitionEvent', + + // CSS Typed Object Model + 'CSSImageValue', + 'CSSKeywordValue', + 'CSSMathInvert', + 'CSSMathMax', + 'CSSMathMin', + 'CSSMathNegate', + 'CSSMathProduct', + 'CSSMathSum', + 'CSSMathValue', + 'CSSMatrixComponent', + 'CSSNumericArray', + 'CSSNumericValue', + 'CSSPerspective', + 'CSSPositionValue', + 'CSSRotate', + 'CSSScale', + 'CSSSkew', + 'CSSSkewX', + 'CSSSkewY', + 'CSSStyleValue', + 'CSSTransformComponent', + 'CSSTransformValue', + 'CSSTranslate', + 'CSSUnitValue', + 'CSSUnparsedValue', + 'CSSVariableReferenceValue', + 'StylePropertyMap', + 'StylePropertyMapReadOnly ' +]); + +export function resolveCss(name: string) { + if (cssPages.has(name)) { + return `https://developer.mozilla.org/en-US/docs/Web/API/${name}`; + } + + return undefined; +} diff --git a/docusaurus-discordjs-docgen/src/lib/renderer/externals/mdn/resolveDom.ts b/docusaurus-discordjs-docgen/src/lib/renderer/externals/mdn/resolveDom.ts new file mode 100644 index 00000000..42126c8c --- /dev/null +++ b/docusaurus-discordjs-docgen/src/lib/renderer/externals/mdn/resolveDom.ts @@ -0,0 +1,255 @@ +const webPages = new Set([ + // Sidebar from HTMLElement page + 'HTMLElement', + 'BeforeUnloadEvent', + 'DOMStringMap', + 'ErrorEvent', + 'GlobalEventHandlers', + 'HTMLAnchorElement', + 'HTMLAreaElement', + 'HTMLAudioElement', + 'HTMLBRElement', + 'HTMLBaseElement', + 'HTMLBaseFontElement', + 'HTMLBodyElement', + 'HTMLButtonElement', + 'HTMLCanvasElement', + 'HTMLContentElement', + 'HTMLDListElement', + 'HTMLDataElement', + 'HTMLDataListElement', + 'HTMLDialogElement', + 'HTMLDivElement', + 'HTMLDocument', + 'HTMLEmbedElement', + 'HTMLFieldSetElement', + 'HTMLFormControlsCollection', + 'HTMLFormElement', + 'HTMLFrameSetElement', + 'HTMLHRElement', + 'HTMLHeadElement', + 'HTMLHeadingElement', + 'HTMLHtmlElement', + 'HTMLIFrameElement', + 'HTMLImageElement', + 'HTMLInputElement', + 'HTMLIsIndexElement', + 'HTMLKeygenElement', + 'HTMLLIElement', + 'HTMLLabelElement', + 'HTMLLegendElement', + 'HTMLLinkElement', + 'HTMLMapElement', + 'HTMLMediaElement', + 'HTMLMetaElement', + 'HTMLMeterElement', + 'HTMLModElement', + 'HTMLOListElement', + 'HTMLObjectElement', + 'HTMLOptGroupElement', + 'HTMLOptionElement', + 'HTMLOptionsCollection', + 'HTMLOutputElement', + 'HTMLParagraphElement', + 'HTMLParamElement', + 'HTMLPictureElement', + 'HTMLPreElement', + 'HTMLProgressElement', + 'HTMLQuoteElement', + 'HTMLScriptElement', + 'HTMLSelectElement', + 'HTMLShadowElement', + 'HTMLSourceElement', + 'HTMLSpanElement', + 'HTMLStyleElement', + 'HTMLTableCaptionElement', + 'HTMLTableCellElement', + 'HTMLTableColElement', + 'HTMLTableDataCellElement', + 'HTMLTableElement', + 'HTMLTableHeaderCellElement', + 'HTMLTableRowElement', + 'HTMLTableSectionElement', + 'HTMLTemplateElement', + 'HTMLTextAreaElement', + 'HTMLTimeElement', + 'HTMLTitleElement', + 'HTMLTrackElement', + 'HTMLUListElement', + 'HTMLUnknownElement', + 'HTMLVideoElement', + 'HashChangeEvent', + 'History', + 'ImageData', + 'Location', + 'MessageChannel', + 'MessageEvent', + 'MessagePort', + 'Navigator', + 'PageTransitionEvent', + 'Plugin', + 'PluginArray', + 'PopStateEvent', + 'PortCollection', + 'PromiseRejectionEvent', + 'RadioNodeList', + 'Transferable', + 'ValidityState', + 'Window', + 'WindowBase64', + 'WindowEventHandlers', + 'WindowTimers', + + // DOM interfaces + 'Attr', + 'CDATASection', + 'CharacterData', + 'Comment', + 'CustomEvent', + 'Document', + 'DocumentFragment', + 'DocumentType', + 'DOMException', + 'DOMImplementation', + 'DOMString', + 'DOMTimeStamp', + 'DOMStringList', + 'DOMTokenList', + 'Element', + 'Event', + 'EventTarget', + 'HTMLCollection', + 'MutationObserver', + 'MutationRecord', + 'NamedNodeMap', + 'Node', + 'NodeFilter', + 'NodeIterator', + 'NodeList', + 'ProcessingInstruction', + 'Selection', + 'Range', + 'Text', + 'TextDecoder', + 'TextEncoder', + 'TimeRanges', + 'TreeWalker', + 'URL', + 'Window', + 'Worker', + 'XMLDocument', + + // SVG interfaces + 'SVGAElement', + 'SVGAnimationElement', + 'SVGAnimateElement', + 'SVGAnimateMotionElement', + 'SVGAnimateTransformElement', + 'SVGCircleElement', + 'SVGClipPathElement', + 'SVGComponentTransferFunctionElement', + 'SVGCursorElement', + 'SVGDefsElement', + 'SVGDescElement', + 'SVGElement', + 'SVGEllipseElement', + 'SVGFEBlendElement', + 'SVGFEColorMatrixElement', + 'SVGFEComponentTransferElement', + 'SVGFECompositeElement', + 'SVGFEConvolveMatrixElement', + 'SVGFEDiffuseLightingElement', + 'SVGFEDisplacementMapElement', + 'SVGFEDistantLightElement', + 'SVGFEDropShadowElement', + 'SVGFEFloodElement', + 'SVGFEFuncAElement', + 'SVGFEFuncBElement', + 'SVGFEFuncGElement', + 'SVGFEFuncRElement', + 'SVGFEGaussianBlurElement', + 'SVGFEImageElement', + 'SVGFEMergeElement', + 'SVGFEMergeNodeElement', + 'SVGFEMorphologyElement', + 'SVGFEOffsetElement', + 'SVGFEPointLightElement', + 'SVGFESpecularLightingElement', + 'SVGFESpotLightElement', + 'SVGFETileElement', + 'SVGFETurbulenceElement', + 'SVGFilterElement', + 'SVGForeignObjectElement', + 'SVGGElement', + 'SVGGeometryElement', + 'SVGGradientElement', + 'SVGGraphicsElement', + 'SVGImageElement', + 'SVGLinearGradientElement', + 'SVGLineElement', + 'SVGMarkerElement', + 'SVGMaskElement', + 'SVGMetadataElement', + 'SVGMPathElement', + 'SVGPathElement', + 'SVGPatternElement', + 'SVGPolylineElement', + 'SVGPolygonElement', + 'SVGRadialGradientElement', + 'SVGRectElement', + 'SVGScriptElement', + 'SVGSetElement', + 'SVGStopElement', + 'SVGStyleElement', + 'SVGSVGElement', + 'SVGSwitchElement', + 'SVGSymbolElement', + 'SVGTextContentElement', + 'SVGTextElement', + 'SVGTextPathElement', + 'SVGTextPositioningElement', + 'SVGTitleElement', + 'SVGTSpanElement', + 'SVGUseElement', + 'SVGViewElement', + + // SVG data type interfaces + 'SVGAngle', + 'SVGLength', + 'SVGLengthList', + 'SVGNumber', + 'SVGNumberList', + 'SVGPreserveAspectRatio', + 'SVGStringList', + 'SVGTransform', + 'SVGTransformList', + + // Animated type + 'SVGAnimatedAngle', + 'SVGAnimatedBoolean', + 'SVGAnimatedEnumeration', + 'SVGAnimatedInteger', + 'SVGAnimatedLength', + 'SVGAnimatedLengthList', + 'SVGAnimatedNumber', + 'SVGAnimatedNumberList', + 'SVGAnimatedPoints', + 'SVGAnimatedPreserveAspectRatio', + 'SVGAnimatedRect', + 'SVGAnimatedString', + 'SVGAnimatedTransformList', + + // SMIL-related interfaces + 'TimeEvent', + + // Other SVG interfaces + 'SVGUnitTypes' +]); + +export function resolveDom(name: string) { + if (webPages.has(name)) { + return `https://developer.mozilla.org/en-US/docs/Web/API/${name}`; + } + + return undefined; +} diff --git a/docusaurus-discordjs-docgen/src/lib/renderer/externals/mdn/resolveGlobals.ts b/docusaurus-discordjs-docgen/src/lib/renderer/externals/mdn/resolveGlobals.ts new file mode 100644 index 00000000..a7aa1060 --- /dev/null +++ b/docusaurus-discordjs-docgen/src/lib/renderer/externals/mdn/resolveGlobals.ts @@ -0,0 +1,121 @@ +const baseLink = 'https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects'; + +const knownGlobalObjects = new Set([ + // Value properties + 'Infinity', + 'NaN', + 'undefined', + 'globalThis', + + // Function properties + 'eval', + 'isFinite', + 'isNaN', + 'parseFloat', + 'parseInt', + 'encodeURI', + 'encodeURIComponent', + 'decodeURI', + 'decodeURIComponent', + + // Fundamental objects + 'Object', + 'Function', + 'Boolean', + 'Symbol', + + // Error objects + 'Error', + 'AggregateError', + 'EvalError', + 'InternalError', + 'RangeError', + 'ReferenceError', + 'SyntaxError', + 'TypeError', + 'URIError', + + // Numbers and dates + 'Number', + 'BigInt', + 'Math', + 'Date', + + // Text processing + 'String', + 'RegExp', + + // Indexed collections + 'Array', + 'Int8Array', + 'Uint8Array', + 'Uint8ClampedArray', + 'Int16Array', + 'Uint16Array', + 'Int32Array', + 'Uint32Array', + 'Float32Array', + 'Float64Array', + 'BigInt64Array', + 'BigUint64Array', + + // Keyed collections + 'Map', + 'Set', + 'WeakMap', + 'WeakSet', + + // Structured data + 'ArrayBuffer', + 'SharedArrayBuffer', + 'Atomics', + 'DataView', + 'JSON', + + // Control abstraction objects + 'Promise', + 'Generator', + 'GeneratorFunction', + 'AsyncFunction', + // "AsyncGenerator", // No file on MDN yet + // "AsyncGeneratorFunction", // No file on MDN yet + + // Reflection + 'Reflect', + 'Proxy', + + 'Intl', + 'WebAssembly' +]); + +const knownScopedGlobalObjects = { + // Internationalization + Collator: 'Intl/Collator', + DateTimeFormat: 'Intl/DateTimeFormat', + ListFormat: 'Intl/ListFormat', + NumberFormat: 'Intl/NumberFormat', + PluralRules: 'Intl/PluralRules', + RelativeTimeFormat: 'Intl/RelativeTimeFormat', + Locale: 'Intl/Locale', + + // WebAssembly + Module: 'WebAssembly/Module', + Instance: 'WebAssembly/Instance', + Memory: 'WebAssembly/Memory', + Table: 'WebAssembly/Table', + CompileError: 'WebAssembly/CompileError', + LinkError: 'WebAssembly/LinkError', + RuntimeError: 'WebAssembly/RuntimeError' +}; + +export function resolveGlobals(name: string) { + if (knownGlobalObjects.has(name)) { + return `${baseLink}/${name}`; + } + + if (knownScopedGlobalObjects.hasOwnProperty(name)) { + return `${baseLink}/${knownScopedGlobalObjects[name as never]}`; + } + + return undefined; +} diff --git a/docusaurus-discordjs-docgen/src/lib/renderer/externals/parsers.ts b/docusaurus-discordjs-docgen/src/lib/renderer/externals/parsers.ts new file mode 100644 index 00000000..6f8b42a4 --- /dev/null +++ b/docusaurus-discordjs-docgen/src/lib/renderer/externals/parsers.ts @@ -0,0 +1,177 @@ +import { isNullishOrEmpty } from '@sapphire/utilities'; +import type { Documentation } from '../../types/docgen-output'; +import { resolveClasses as resolveDiscordjsClasses } from './discordjs/resolveClasses'; +import { resolveTypeDefs as resolveDiscordjsTypedefs } from './discordjs/resolveTypedefs'; +import { resolveCss } from './mdn/resolveCss'; +import { resolveDom } from './mdn/resolveDom'; +import { resolveGlobals } from './mdn/resolveGlobals'; +import { resolveClasses as resolveSapphireClasses } from './sapphire/resolveClasses'; +import { resolveNamespaces as resolveSapphireNamespaces } from './sapphire/resolveNamespaces'; +import { resolveTypeDefs as resolveSapphireTypedefs } from './sapphire/resolveTypeDefs'; + +const linkExtractorRegex = /{@link (?<match>[A-Za-z.]+)}/g; +const genericTypeInfillRegex = /(?:(?:\[`)?[A-Za-z]+(?:`\]?)(?:\([\.A-Za-z\/]+\)))?<(?<match>[A-Za-z]+)>/g; +const genericTypeRegex = /(?<match>[A-Za-z]+)(?:<\[?[A-Za-z]+\]?(?:\([\.A-Za-z\/]+\))?\\?>)?/g; + +type ReplaceArgs = [string, ...unknown[]]; +let hasReplacedWithLinkRegex = false; + +export function parseDocsLinks(jsonFileContent: Documentation, content: string) { + // Early exit if there is nothing to parse + if (isNullishOrEmpty(content)) return content; + + content = content.replace(linkExtractorRegex, (match, ...args: ReplaceArgs) => + parseSapphireExternals({ + args, + isLinkReplacement: true, + jsonFileContent, + match + }) + ); + + if (!hasReplacedWithLinkRegex) { + content = content.replace(genericTypeRegex, (match, ...args: ReplaceArgs) => + parseSapphireExternals({ + args, + isLinkReplacement: false, + jsonFileContent, + match + }) + ); + + content = content.replace(genericTypeInfillRegex, (match, ...args: ReplaceArgs) => + parseSapphireExternals({ + args, + isLinkReplacement: false, + jsonFileContent, + match + }) + ); + } + + hasReplacedWithLinkRegex = false; + content = content.replace(linkExtractorRegex, (match, ...args: ReplaceArgs) => + parseDiscordjsExternals({ + args, + isLinkReplacement: true, + match + }) + ); + + if (!hasReplacedWithLinkRegex) { + content = content.replace(genericTypeRegex, (match, ...args: ReplaceArgs) => + parseDiscordjsExternals({ + args, + isLinkReplacement: false, + match + }) + ); + + content = content.replace(genericTypeInfillRegex, (match, ...args: ReplaceArgs) => + parseDiscordjsExternals({ + args, + isLinkReplacement: false, + match + }) + ); + } + + hasReplacedWithLinkRegex = false; + content = content.replace(linkExtractorRegex, (match, ...args: ReplaceArgs) => + parseMdnExternals({ + args, + isLinkReplacement: true, + match + }) + ); + + if (!hasReplacedWithLinkRegex) { + content = content.replace(genericTypeRegex, (match, ...args: ReplaceArgs) => + parseMdnExternals({ + args, + isLinkReplacement: false, + match + }) + ); + + content = content.replace(genericTypeInfillRegex, (match, ...args: ReplaceArgs) => + parseMdnExternals({ + args, + isLinkReplacement: false, + match + }) + ); + } + + return content; +} + +function parseMdnExternals({ match, args: [matchContent], isLinkReplacement }: ParseExternalsParameters) { + const mdnLink = + resolveGlobals(matchContent) ?? // + resolveDom(matchContent) ?? + resolveCss(matchContent); + + if (mdnLink) { + const markdownText = `[\`${matchContent}\`](${mdnLink})`; + + if (isLinkReplacement) { + hasReplacedWithLinkRegex = true; + + return markdownText; + } + + return match.replace(matchContent, markdownText); + } + + return match; +} + +function parseDiscordjsExternals({ match, args: [matchContent], isLinkReplacement }: ParseExternalsParameters) { + const discordjsLink = resolveDiscordjsClasses(matchContent) ?? resolveDiscordjsTypedefs(matchContent); + + if (discordjsLink) { + const markdownText = `[\`${matchContent}\`](${discordjsLink})`; + + if (isLinkReplacement) { + hasReplacedWithLinkRegex = true; + + return markdownText; + } + + return match.replace(matchContent, markdownText); + } + + return match; +} + +function parseSapphireExternals({ match, jsonFileContent, args: [matchContent], isLinkReplacement }: ParseSapphireExternalsParameters) { + const sapphireDocsLink = + resolveSapphireClasses(matchContent, jsonFileContent.classes) ?? + resolveSapphireTypedefs(matchContent, jsonFileContent.typedefs) ?? + resolveSapphireNamespaces(matchContent, jsonFileContent.namespaces); + + if (sapphireDocsLink) { + const markdownText = `[\`${matchContent}\`](${sapphireDocsLink})`; + + if (isLinkReplacement) { + hasReplacedWithLinkRegex = true; + + return markdownText; + } + + return match.replace(matchContent, markdownText); + } + + return match; +} + +interface ParseExternalsParameters { + match: string; + args: ReplaceArgs; + isLinkReplacement: boolean; +} + +interface ParseSapphireExternalsParameters extends ParseExternalsParameters { + jsonFileContent: Documentation; +} diff --git a/docusaurus-discordjs-docgen/src/lib/renderer/externals/sapphire/resolveClasses.ts b/docusaurus-discordjs-docgen/src/lib/renderer/externals/sapphire/resolveClasses.ts new file mode 100644 index 00000000..02308e0c --- /dev/null +++ b/docusaurus-discordjs-docgen/src/lib/renderer/externals/sapphire/resolveClasses.ts @@ -0,0 +1,19 @@ +import type { DocumentationClass } from '../../../types/docgen-output'; +import { resolveExternalPackage } from './resolveExternalPackage'; + +export function resolveClasses(name: string, allClasses: DocumentationClass[]): string | undefined { + const allClassNames = allClasses.map((c) => c.name); + const docMeta = allClasses.find((c) => c.name === name)?.meta; + + if (allClassNames.includes(name)) { + const externalPackage = resolveExternalPackage(docMeta); + + if (externalPackage) { + return `../../${externalPackage}/class/${name.toLowerCase().replace(/\s/g, '-')}.mdx`; + } + + return `../class/${name.toLowerCase().replace(/\s/g, '-')}.mdx`; + } + + return undefined; +} diff --git a/docusaurus-discordjs-docgen/src/lib/renderer/externals/sapphire/resolveExternalPackage.ts b/docusaurus-discordjs-docgen/src/lib/renderer/externals/sapphire/resolveExternalPackage.ts new file mode 100644 index 00000000..26cbcad3 --- /dev/null +++ b/docusaurus-discordjs-docgen/src/lib/renderer/externals/sapphire/resolveExternalPackage.ts @@ -0,0 +1,9 @@ +import type { DocumentationClassMeta } from '../../../types/docgen-output'; + +export function resolveExternalPackage(meta?: DocumentationClassMeta) { + if (!meta?.path) return null; + + if (!meta.path.includes('@sapphire')) return null; + + return meta.path.replace(/.+@(sapphire)\/([0-9a-zA-Z\-\.]+).+/, '$1-$2'); +} diff --git a/docusaurus-discordjs-docgen/src/lib/renderer/externals/sapphire/resolveNamespaces.ts b/docusaurus-discordjs-docgen/src/lib/renderer/externals/sapphire/resolveNamespaces.ts new file mode 100644 index 00000000..390dab1e --- /dev/null +++ b/docusaurus-discordjs-docgen/src/lib/renderer/externals/sapphire/resolveNamespaces.ts @@ -0,0 +1,19 @@ +import type { DocumentationNamespace } from '../../../types/docgen-output'; +import { resolveExternalPackage } from './resolveExternalPackage'; + +export function resolveNamespaces(name: string, allNamespaces: DocumentationNamespace[]): string | undefined { + const allNamespaceNames = allNamespaces.map((c) => c.name); + const docMeta = allNamespaces.find((c) => c.name === name)?.meta; + + if (allNamespaceNames.includes(name)) { + const externalPackage = resolveExternalPackage(docMeta); + + if (externalPackage) { + return `../../${externalPackage}/namespace/${name.toLowerCase().replace(/\s/g, '-')}.mdx`; + } + + return `../namespace/${name.toLowerCase().replace(/\s/g, '-')}.mdx`; + } + + return undefined; +} diff --git a/docusaurus-discordjs-docgen/src/lib/renderer/externals/sapphire/resolveTypeDefs.ts b/docusaurus-discordjs-docgen/src/lib/renderer/externals/sapphire/resolveTypeDefs.ts new file mode 100644 index 00000000..9a40c725 --- /dev/null +++ b/docusaurus-discordjs-docgen/src/lib/renderer/externals/sapphire/resolveTypeDefs.ts @@ -0,0 +1,19 @@ +import type { DocumentationTypeDefinition } from '../../../types/docgen-output'; +import { resolveExternalPackage } from './resolveExternalPackage'; + +export function resolveTypeDefs(name: string, allTypedefs: DocumentationTypeDefinition[]): string | undefined { + const allTypedefNames = allTypedefs.map((c) => c.name); + const docMeta = allTypedefs.find((c) => c.name === name)?.meta; + + if (allTypedefNames.includes(name)) { + const externalPackage = resolveExternalPackage(docMeta); + + if (externalPackage) { + return `../../${externalPackage}/typedef/${name.toLowerCase().replace(/\s/g, '-')}.mdx`; + } + + return `../typedef/${name.toLowerCase().replace(/\s/g, '-')}.mdx`; + } + + return undefined; +} diff --git a/docusaurus-discordjs-docgen/src/lib/renderer/render.ts b/docusaurus-discordjs-docgen/src/lib/renderer/render.ts new file mode 100644 index 00000000..57fd76f9 --- /dev/null +++ b/docusaurus-discordjs-docgen/src/lib/renderer/render.ts @@ -0,0 +1,19 @@ +import type { Documentation } from '../types/docgen-output'; +import type { PluginOptions } from '../types/types'; +import { renderClasses } from './renderClass'; +import { renderCustom } from './renderCustomFile'; +import { renderTypedefs } from './renderTypedef'; + +export function renderOutputFiles(jsonFileContent: Documentation, outputDir: string, _pluginOptions: PluginOptions) { + if (Reflect.has(jsonFileContent, 'custom')) { + renderCustom(jsonFileContent.custom, outputDir); + } + + if (Reflect.has(jsonFileContent, 'classes')) { + renderClasses(jsonFileContent, jsonFileContent.classes, outputDir); + } + + if (Reflect.has(jsonFileContent, 'typedefs')) { + renderTypedefs(jsonFileContent, jsonFileContent.typedefs, outputDir); + } +} diff --git a/docusaurus-discordjs-docgen/src/lib/renderer/renderClass.ts b/docusaurus-discordjs-docgen/src/lib/renderer/renderClass.ts new file mode 100644 index 00000000..c34707a7 --- /dev/null +++ b/docusaurus-discordjs-docgen/src/lib/renderer/renderClass.ts @@ -0,0 +1,127 @@ +import { isNullishOrEmpty } from '@sapphire/utilities'; +import { writeFileSync } from 'node:fs'; +import { resolve } from 'node:path'; +import type { Documentation, DocumentationClass } from '../types/docgen-output'; +import { pluginContainer } from '../utils/pluginContainer'; +import { parseContent, parseSee } from './utils'; +import { writeCategoryYaml } from './writeCategoryYaml'; + +function renderClass(jsonFileContent: Documentation, docClass: DocumentationClass, outputDir: string, sidebarPosition: number) { + const slug = docClass.name.toLowerCase().replace(/\s/g, '-'); + + const classHeader = [ + '---', + `id: "${slug}"`, + `title: "${docClass.name}"`, + `sidebar_label: "${docClass.name}"`, + `sidebar_position: ${sidebarPosition}`, + `custom_edit_url: null`, + '---' + ].join('\n'); + + const classExtends = parseClassExtendsAndImplements(docClass.extends); + const classImplements = parseClassExtendsAndImplements(docClass.implements); + + const classDescription = docClass.description ?? ''; + const classExtendedDescription = docClass.extendedDescription ?? ''; + + const classResult = `${classHeader} +${isNullishOrEmpty(classExtends) ? '' : `**extends ${parseContent(jsonFileContent, classExtends)}**`} +${isNullishOrEmpty(classImplements) ? '' : `**implements ${parseContent(jsonFileContent, classImplements)}**`} + +${parseContent(jsonFileContent, classDescription)} + +${parseContent(jsonFileContent, classExtendedDescription)} +${parseSee(jsonFileContent, docClass.see)} + +${parseExamples(docClass.examples)} + +${parseConstructor(jsonFileContent, docClass)} +${parseProperties(jsonFileContent, docClass)} +`; + + writeFileSync(resolve(outputDir, `${slug}.mdx`), classResult); +} + +export function renderClasses(jsonFileContent: Documentation, documentationClasses: DocumentationClass[], outputDir: string) { + const categoryDir = writeCategoryYaml(outputDir, 'class', 'Classes', 1); + + let fileSidebarPosition = 0; + for (const documentationClass of documentationClasses) { + if (documentationClass.isExternal) continue; + + renderClass(jsonFileContent, documentationClass, categoryDir, fileSidebarPosition); + + fileSidebarPosition++; + } +} + +function parseClassExtendsAndImplements(classExtends?: string[] | string[][]) { + if (!classExtends) return ''; + + const zeroEntry = classExtends?.[0]; + + if (Array.isArray(zeroEntry)) { + return zeroEntry.join(', '); + } + + return zeroEntry; +} + +function parseExamples(examples?: string[]) { + if (isNullishOrEmpty(examples)) return ''; + + let examplesString = '## Examples\n\n'; + + for (const example of examples) { + const exampleWithPlugin = example.replace(/(```typescript)\n/g, '$1 ts2esm2cjs\n'); + + examplesString += `${exampleWithPlugin}\n\n`; + } + + return examplesString; +} + +function parseConstructor(jsonFileContent: Documentation, dClass: DocumentationClass) { + const classConstructorParameters = dClass.construct?.params?.map((param) => param.name).join(', '); + + return `## Constructor + +\`\`\`typescript ts2esm2cjs +import { ${dClass.name} } from '${pluginContainer.pluginOptions.packageName}'; + +new ${dClass.name}(${classConstructorParameters}); +\`\`\` + +| Parameter | Type | Optional | Default | Description | +| :---: | :---: | :---: | :---: | :---: | +${dClass.construct?.params + ?.map( + (param) => + `| ${param.name} | ${parseContent(jsonFileContent, param.type.flat(2).join(''))} | ${param.optional ? 'Yes' : 'No'} | ${ + param.default ?? '' + } | ${parseContent(jsonFileContent, param.description ?? 'N/A')} |` + ) + .join('\n')}`; +} + +function parseProperties(jsonFileContent: Documentation, dClass: DocumentationClass) { + const props = dClass.props ?? []; + + if (props.length === 0) return ''; + + // TODO: Add support for modifiers like, optional, readonly, etc. + + return `## Properties + +${props + .map( + (prop) => `### .${prop.name}** + +${parseContent(jsonFileContent, prop.description ?? '')} + +**Type**: ${parseContent(jsonFileContent, prop.type.flat(2).join(''))} +` + ) + .join('')}`; +} diff --git a/docusaurus-discordjs-docgen/src/lib/renderer/renderCustomFile.ts b/docusaurus-discordjs-docgen/src/lib/renderer/renderCustomFile.ts new file mode 100644 index 00000000..975ca53f --- /dev/null +++ b/docusaurus-discordjs-docgen/src/lib/renderer/renderCustomFile.ts @@ -0,0 +1,51 @@ +import { writeFileSync } from 'node:fs'; +import { resolve } from 'node:path'; +import type { DocumentationCustom, DocumentationCustomFile } from '../types/docgen-output'; +import { transformPlainCssToReactCss } from './transformPlainCssToReactCss'; +import { writeCategoryYaml } from './writeCategoryYaml'; + +const replaceCssRegex = /style=\"(?<css>.*?)\"/g; + +function customFileStylesParser(content: string): string { + return content.replace(replaceCssRegex, (match, _p1, _offset, _string, groups) => { + if (groups.css) { + const transformed = transformPlainCssToReactCss(groups.css); + return `style={${JSON.stringify(transformed)}}`; + } + + return match; + }); +} + +function renderCustomFile(slug: string, customFile: DocumentationCustomFile, outputDir: string, sidebarPosition: number) { + const lowercaseCustomFileType = customFile.type.toLowerCase(); + + if (lowercaseCustomFileType === 'md' || lowercaseCustomFileType === 'mdx' || lowercaseCustomFileType === 'markdown') { + const customFileHeader = [ + '---', + `id: "${slug}"`, + `title: "${customFile.name}"`, + `sidebar_label: "${customFile.name}"`, + `sidebar_position: ${sidebarPosition}`, + `custom_edit_url: null`, + '---' + ].join('\n'); + + const customFileResult = `${customFileHeader}\n${customFileStylesParser(customFile.content)}`; + writeFileSync(resolve(outputDir, `${slug}.mdx`), customFileResult); + } +} +export function renderCustom(documentationCustom: DocumentationCustom, outputDir: string) { + let categorySidebarPosition = 0; + for (const customCategory of Object.values(documentationCustom)) { + const categoryDir = writeCategoryYaml(outputDir, customCategory.name, customCategory.name, categorySidebarPosition); + + let fileSidebarPosition = 0; + for (const [slug, file] of Object.entries(customCategory.files)) { + renderCustomFile(slug, file, categoryDir, fileSidebarPosition); + fileSidebarPosition++; + } + + categorySidebarPosition++; + } +} diff --git a/docusaurus-discordjs-docgen/src/lib/renderer/renderTypedef.ts b/docusaurus-discordjs-docgen/src/lib/renderer/renderTypedef.ts new file mode 100644 index 00000000..6a1b20a1 --- /dev/null +++ b/docusaurus-discordjs-docgen/src/lib/renderer/renderTypedef.ts @@ -0,0 +1,114 @@ +import { writeFileSync } from 'fs'; +import { resolve } from 'path'; +import type { Documentation, DocumentationTypeDefinition } from '../types/docgen-output'; +import { parseContent, parseSee } from './utils'; +import { writeCategoryYaml } from './writeCategoryYaml'; + +function renderTypedef(jsonFileContent: Documentation, docTypedef: DocumentationTypeDefinition, outputDir: string, sidebarPosition: number) { + const slug = docTypedef.name.toLowerCase().replace(/\s/g, '-'); + + const typedefHeader = [ + '---', + `id: "${slug}"`, + `title: "${docTypedef.name}"`, + `sidebar_label: "${docTypedef.name}"`, + `sidebar_position: ${sidebarPosition}`, + `custom_edit_url: null`, + '---' + ].join('\n'); + + const typedefDescription = docTypedef.description ?? ''; + const typedefExtendedDescription = docTypedef.extendedDescription ?? ''; + + let typedefResult = `${typedefHeader} + +${parseContent(jsonFileContent, typedefDescription)} + +${parseContent(jsonFileContent, typedefExtendedDescription)} +${parseSee(jsonFileContent, docTypedef.see)} +`; + + switch (docTypedef.variant) { + case 'enum': + typedefResult += parseEnum(jsonFileContent, docTypedef); + + break; + + case 'interface': + typedefResult += parseInterface(jsonFileContent, docTypedef); + + break; + + case 'type': + break; + } + + writeFileSync(resolve(outputDir, `${slug}.mdx`), typedefResult); +} + +export function renderTypedefs(jsonFileContent: Documentation, documentationTypedefs: DocumentationTypeDefinition[], outputDir: string) { + const categoryDir = writeCategoryYaml(outputDir, 'typedef', 'Type Definitions', 1); + + let fileSidebarPosition = 0; + for (const documentationTypedef of documentationTypedefs) { + if (documentationTypedef.isExternal) continue; + + renderTypedef(jsonFileContent, documentationTypedef, categoryDir, fileSidebarPosition); + + fileSidebarPosition++; + } +} + +function parseEnum(jsonFileContent: Documentation, dEnum: DocumentationTypeDefinition) { + const props = dEnum.props ?? []; + + if (props.length === 0) return '## Empty Enum'; + + let enumResult = props.some((prop) => prop.description) + ? `| Property | Value | Description | +| :---: | :---: | :---: | +` + : `| Property | Value | +| :---: | :---: | +`; + + for (const prop of dEnum.props ?? []) { + enumResult += props.some((prop) => prop.description) + ? `| ${prop.name} | ${parseContent(jsonFileContent, prop.type.flat(2).join(''))} | ${parseContent( + jsonFileContent, + prop.description ?? 'N/A' + )} | +` + : `| ${prop.name} | ${parseContent(jsonFileContent, prop.type.flat(2).join(''))} | +`; + } + + return enumResult; +} + +function parseInterface(jsonFileContent: Documentation, dInterface: DocumentationTypeDefinition) { + const props = dInterface.props ?? []; + + if (props.length === 0) return '## Empty Interface'; + + let enumResult = props.some((prop) => prop.description) + ? `| Property | Type | Optional | Description | +| :---: | :---: | :---: | :---: | +` + : `| Property | Type | Optional | +| :---: | :---: | :---: | +`; + + for (const prop of dInterface.props ?? []) { + enumResult += props.some((prop) => prop.description) + ? `| ${prop.name} | ${parseContent(jsonFileContent, prop.type.flat(2).join(''))} | ${prop.optional ? 'Yes' : 'No'} | ${parseContent( + jsonFileContent, + prop.description ?? 'N/A' + )} | +` + : `| ${prop.name} | ${parseContent(jsonFileContent, prop.type.flat(2).join(''))} | ${prop.optional ? 'Yes' : 'No'} | +`; + } + + return enumResult; +} diff --git a/docusaurus-discordjs-docgen/src/lib/renderer/transformPlainCssToReactCss.ts b/docusaurus-discordjs-docgen/src/lib/renderer/transformPlainCssToReactCss.ts new file mode 100644 index 00000000..1733571b --- /dev/null +++ b/docusaurus-discordjs-docgen/src/lib/renderer/transformPlainCssToReactCss.ts @@ -0,0 +1,82 @@ +import { parse, type Rule } from 'css'; + +type CssProperty = string | { __expression__: string }; +type CSSProperties = Record<string, CssProperty>; + +function transformRules(rules: Rule[], result: Record<string, CssProperty>) { + if (rules) { + rules.forEach((rule) => { + const obj = {}; + if (rule.type === 'media') { + const name = mediaNameGenerator(rule.media); + + result[name] ||= { + __expression__: rule.media + }; + + const media = result[name]; + + transformRules(rule.rules, media as any); + } else if (rule.type === 'rule') { + rule.declarations.forEach((declaration) => { + if (declaration.type === 'declaration') { + const cleanProperty = cleanPropertyName(declaration.property); + + Reflect.set(obj, cleanProperty, declaration.value); + } + }); + + rule.selectors.forEach((selector) => { + const name = nameGenerator(selector.trim()); + + Reflect.set(result, name, obj); + }); + } + }); + } +} + +const cleanPropertyName = (name: string) => { + // turn things like 'align-items' into 'alignItems' + name = name.replace(/(-.)/g, (v) => v[1].toUpperCase()); + + return name; +}; + +const mediaNameGenerator = (name: string) => `@media ${name}`; + +const nameGenerator = (name: string) => { + name = name.replace(/\s\s+/g, ' '); + name = name.replace(/[^a-zA-Z0-9]/g, '_'); + name = name.replace(/^_+/g, ''); + name = name.replace(/_+$/g, ''); + + return name; +}; + +export function transformPlainCssToReactCss(inputCssText: string): CSSProperties | CssProperty { + if (!inputCssText) { + throw new Error('missing css text to transform'); + } + + // If the input "css" doesn't wrap it with a css class (raw styles) + // we need to wrap it with a style so the css parser doesn't choke. + let bootstrapWithCssClass = false; + if (!inputCssText.includes('{')) { + bootstrapWithCssClass = true; + inputCssText = `.bootstrapWithCssClass { ${inputCssText} }`; + } + + const css = parse(inputCssText); + + const result: CSSProperties = {}; + + transformRules(css.stylesheet?.rules, result); + + // Don't expose the implementation detail of our wrapped css class. + if (bootstrapWithCssClass) { + return result.bootstrapWithCssClass; + } + + return result; +} diff --git a/docusaurus-discordjs-docgen/src/lib/renderer/utils.ts b/docusaurus-discordjs-docgen/src/lib/renderer/utils.ts new file mode 100644 index 00000000..c00d915a --- /dev/null +++ b/docusaurus-discordjs-docgen/src/lib/renderer/utils.ts @@ -0,0 +1,43 @@ +import { existsSync, mkdirSync, readdirSync, rmdirSync, statSync, unlinkSync } from 'node:fs'; +import type { Documentation } from '../types/docgen-output'; +import { parseDocsLinks } from './externals/parsers'; + +export function parseContent(jsonFileContent: Documentation, content: string) { + content = parseDocsLinks(jsonFileContent, content); + + content = escapeGreaterThanSymbols(content); + + return content; +} + +export function parseSee(jsonFileContent: Documentation, see?: string[]) { + return see?.map((seeItem) => `\n**\`See also:\`** ${parseContent(jsonFileContent, seeItem)}`).join('\n') ?? ''; +} + +function escapeGreaterThanSymbols(markdown: string) { + return markdown.replace(/<([A-Za-z]+)>(?!`)/gm, '<$1\\>'); +} + +export function removeDir(outputDir: string) { + if (existsSync(outputDir)) { + const files = readdirSync(outputDir); + if (files.length > 0) { + files.forEach((filename) => { + if (statSync(`${outputDir}/${filename}`).isDirectory()) { + removeDir(`${outputDir}/${filename}`); + } else { + unlinkSync(`${outputDir}/${filename}`); + } + }); + rmdirSync(outputDir); + } else { + rmdirSync(outputDir); + } + } +} + +export function createDirIfNotExists(dir: string) { + if (!existsSync(dir)) { + mkdirSync(dir, { recursive: true }); + } +} diff --git a/docusaurus-discordjs-docgen/src/lib/renderer/writeCategoryYaml.ts b/docusaurus-discordjs-docgen/src/lib/renderer/writeCategoryYaml.ts new file mode 100644 index 00000000..b9d4801b --- /dev/null +++ b/docusaurus-discordjs-docgen/src/lib/renderer/writeCategoryYaml.ts @@ -0,0 +1,19 @@ +import { writeFileSync } from 'node:fs'; +import { resolve } from 'node:path'; +import { createDirIfNotExists } from './utils'; + +export function writeCategoryYaml(outputDir: string, categoryPath: string, categoryName: string, sidebarPosition: number) { + const categoryDir = resolve(outputDir, categoryPath); + + createDirIfNotExists(categoryDir); + + const categoryData = [ + // + `label: "${categoryName}"`, + `position: ${sidebarPosition}` + ].join('\n'); + + writeFileSync(resolve(categoryDir, '_category_.yml'), categoryData); + + return categoryDir; +} diff --git a/docusaurus-discordjs-docgen/src/lib/types/css.d.ts b/docusaurus-discordjs-docgen/src/lib/types/css.d.ts new file mode 100644 index 00000000..ca88f585 --- /dev/null +++ b/docusaurus-discordjs-docgen/src/lib/types/css.d.ts @@ -0,0 +1,75 @@ +declare module 'css' { + export interface Start { + column: number; + + line: number; + } + + export interface End { + column: number; + + line: number; + } + + export interface Position { + end: End; + + start: Start; + } + + export interface Declaration { + position: Position; + + property: string; + + type: string; + + value: string; + } + + export interface Start2 { + column: number; + + line: number; + } + + export interface End2 { + column: number; + + line: number; + } + + export interface Position2 { + end: End2; + + start: Start2; + } + + export interface Rule { + declarations: Declaration[]; + + media: string; + + position: Position2; + + rules: Rule[]; + + selectors: string[]; + + type: string; + } + + export interface Stylesheet { + parsingErrors: any[]; + + rules: Rule[]; + } + + export interface CssParserResult { + stylesheet: Stylesheet; + + type: string; + } + + export function parse(cssText: string): CssParserResult; +} diff --git a/docusaurus-discordjs-docgen/src/lib/types/docgen-output.ts b/docusaurus-discordjs-docgen/src/lib/types/docgen-output.ts new file mode 100644 index 00000000..64bcf3f5 --- /dev/null +++ b/docusaurus-discordjs-docgen/src/lib/types/docgen-output.ts @@ -0,0 +1,247 @@ +/** + * Copyright (c) 2021 iCrawl + * Copyright (c) 2020 Federico Grandi + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +interface DocumentationMeta { + date: number; + format: number; + generator: string; +} + +export interface DocumentationClassMeta { + file: string; + line: number; + path: string; +} +type DocumentationClassMethodMeta = DocumentationClassMeta; + +type DocumentationClassMethodParameterMeta = DocumentationClassMeta; + +type DocumentationClassMethodPropertyMeta = DocumentationClassMeta; + +type DocumentationClassEventMeta = DocumentationClassMeta; + +type DocumentationExternalMeta = DocumentationClassMeta; + +type DocumentationTypeDefinitionMeta = DocumentationClassMeta; + +type DocumentationTypeDefinitionParameterMeta = DocumentationClassMeta; + +export interface DocumentationTypeAlias { + meta: DocumentationClassMeta; + name: string; + type?: string[][][]; +} + +export interface DocumentationInterface { + meta: DocumentationClassMethodPropertyMeta; + name: string; + props: DocumentationClassPropertyProperty[]; +} + +export interface DocumentationParameter { + abstract?: boolean; + access?: string; + default: string; + deprecated?: boolean | string; + description?: string; + name: string; + nullable?: boolean; + optional?: boolean; + readonly?: boolean; + scope?: string; + see?: string[]; + type: string[][][]; + variable?: boolean; +} + +type DocumentationClassConstructorParameter = DocumentationParameter; + +type DocumentationClassEventParameter = DocumentationParameter; + +interface DocumentationClassMethodParameter extends DocumentationParameter { + meta: DocumentationClassMethodParameterMeta; +} + +interface DocumentationTypeDefinitionParameter extends DocumentationParameter { + meta: DocumentationTypeDefinitionParameterMeta; +} + +type DocumentationProperty = DocumentationParameter; + +type DocumentationTypeDefinitionProperty = DocumentationProperty; + +type DocumentationClassPropertyProperty = DocumentationProperty; + +export interface DocumentationClassProperty extends DocumentationProperty { + meta: DocumentationClassMethodPropertyMeta; + props: DocumentationClassPropertyProperty[]; +} + +export interface DocumentationClassConstructor { + name: string; + params?: DocumentationClassConstructorParameter[]; +} + +export interface DocumentationReturns { + description: string; + nullable: boolean; + types: string[][][]; + variable: boolean; +} + +export interface DocumentationClassMethod { + abstract?: boolean; + access?: string; + async?: boolean; + deprecated?: boolean | string; + description?: string; + examples?: string[]; + inherited?: boolean; + meta: DocumentationClassMethodMeta; + name: string; + params?: DocumentationClassMethodParameter[]; + returns?: DocumentationReturns; + returnsDescription?: string; + scope?: string; + see?: string[]; + throws?: string[]; +} + +export interface DocumentationClassEvent { + access?: string; + deprecated?: boolean | string; + description: string; + meta: DocumentationClassEventMeta; + name: string; + params: DocumentationClassEventParameter[]; + see?: string[]; +} + +export interface DocumentationClass { + abstract?: boolean | undefined; + access?: 'private' | undefined; + construct?: DocumentationClassConstructor | undefined; + deprecated?: boolean | undefined; + description?: string | undefined; + events?: DocumentationClassEvent[] | undefined; + examples?: string[] | undefined; + extendedDescription?: string | undefined; + extends?: [string] | undefined; + implements?: [string] | undefined; + isExternal?: boolean | undefined; + meta?: DocumentationClassMeta | undefined; + methods?: DocumentationClassMethod[] | undefined; + name: string; + props?: DocumentationClassProperty[] | undefined; + see?: string[] | undefined; +} + +export interface DocumentationCustomFile { + content: string; + name: string; + path: string; + type: string; +} + +export interface DocumentationCustom { + [key: string]: { + name: string; + files: { + [key: string]: DocumentationCustomFile; + }; + }; +} + +export interface DocumentationExternal { + meta: DocumentationExternalMeta; + name: string; + see: string[]; +} + +enum DocumentationLinkParams { + class = 'class', + typedef = 'typedef' +} + +export interface DocumentationLink { + [key: string]: + | { + name: string; + params: { + [key in DocumentationLinkParams]: string; + }; + } + | string; +} + +export interface DocumentationTypeDefinition { + access?: 'private' | undefined; + deprecated?: boolean | undefined; + description?: string | undefined; + extendedDescription?: string | undefined; + isExternal?: boolean | undefined; + meta?: DocumentationTypeDefinitionMeta | undefined; + name: string; + params?: DocumentationTypeDefinitionParameter[] | undefined; + props?: DocumentationTypeDefinitionProperty[] | undefined; + returns?: DocumentationReturns | undefined; + returnsDescription?: string | undefined; + see?: string[] | undefined; + type?: string[][] | string[][][] | undefined; + variant: 'type' | 'interface' | 'enum'; +} + +export interface DocumentationNamespace { + deprecated?: boolean | undefined; + description?: string | undefined; + enumerations?: DocumentationTypeDefinition[] | undefined; + extendedDescription?: string | undefined; + interfaces?: DocumentationTypeDefinition[] | undefined; + isExternal?: boolean | undefined; + meta?: DocumentationTypeDefinitionMeta | undefined; + name: string; + see?: string[] | undefined; + typeAliases?: DocumentationTypeDefinition[] | undefined; +} + +export type DocIterateeUnion = + | DocumentationClass + // | DocumentationCustom + | DocumentationExternal + | DocumentationInterface + // | DocumentationLink + | DocumentationTypeDefinition + | DocumentationClassEventParameter + | DocumentationClassProperty + | DocumentationClassMethod + | DocumentationClassMethodParameter + | DocumentationClassEvent; + +export interface Documentation { + classes: DocumentationClass[]; + custom: DocumentationCustom; + // externals: DocumentationExternal[]; + // global?: string; + // interfaces: DocumentationInterface[]; + // links: DocumentationLink[]; + meta: DocumentationMeta; + namespaces: DocumentationNamespace[]; + // id?: string; + // source?: string; + // tag?: string; + typedefs: DocumentationTypeDefinition[]; +} diff --git a/docusaurus-discordjs-docgen/src/lib/types/types.ts b/docusaurus-discordjs-docgen/src/lib/types/types.ts new file mode 100644 index 00000000..01d66675 --- /dev/null +++ b/docusaurus-discordjs-docgen/src/lib/types/types.ts @@ -0,0 +1,13 @@ +export interface PluginOptions { + id: string; + docsRoot: string; + out: string; + docgenJsonFile: string; + packageName: string; + sidebar: SidebarOptions; +} + +interface SidebarOptions { + categoryLabel: string; + position: number | null; +} diff --git a/docusaurus-discordjs-docgen/src/lib/utils/logger.ts b/docusaurus-discordjs-docgen/src/lib/utils/logger.ts new file mode 100644 index 00000000..b84073a7 --- /dev/null +++ b/docusaurus-discordjs-docgen/src/lib/utils/logger.ts @@ -0,0 +1,3 @@ +export function generateLogString(logString: string, id: string) { + return `[DOCUSAURUS-DISCORDJS-DOCGEN] ${logString} (found at: ${id})`; +} diff --git a/docusaurus-discordjs-docgen/src/lib/utils/options.ts b/docusaurus-discordjs-docgen/src/lib/utils/options.ts new file mode 100644 index 00000000..ec183800 --- /dev/null +++ b/docusaurus-discordjs-docgen/src/lib/utils/options.ts @@ -0,0 +1,27 @@ +import type { PluginOptions } from '../types/types'; + +const DEFAULT_PLUGIN_OPTIONS: PluginOptions = { + id: 'default', + docsRoot: 'docs', + out: 'api', + docgenJsonFile: 'docs.json', + packageName: 'API', + sidebar: { + categoryLabel: 'API', + position: null + } +}; + +export function getPluginOptions(opts: Partial<PluginOptions>): PluginOptions { + const options = { + ...DEFAULT_PLUGIN_OPTIONS, + ...opts, + packageName: opts.packageName ?? opts.sidebar?.categoryLabel ?? DEFAULT_PLUGIN_OPTIONS.packageName, + sidebar: { + ...DEFAULT_PLUGIN_OPTIONS.sidebar, + ...opts.sidebar + } + }; + + return options; +} diff --git a/docusaurus-discordjs-docgen/src/lib/utils/pluginContainer.ts b/docusaurus-discordjs-docgen/src/lib/utils/pluginContainer.ts new file mode 100644 index 00000000..fd79bf35 --- /dev/null +++ b/docusaurus-discordjs-docgen/src/lib/utils/pluginContainer.ts @@ -0,0 +1,8 @@ +import type { PluginOptions } from '../types/types'; + +// @ts-expect-error initialise empty container +export const pluginContainer: Container = {}; + +interface Container { + pluginOptions: PluginOptions; +} diff --git a/docusaurus-discordjs-docgen/tsconfig.json b/docusaurus-discordjs-docgen/tsconfig.json new file mode 100644 index 00000000..ccc201e4 --- /dev/null +++ b/docusaurus-discordjs-docgen/tsconfig.json @@ -0,0 +1,10 @@ +{ + "extends": "@sapphire/ts-config", + "compilerOptions": { + "rootDir": "src", + "outDir": "dist", + "lib": ["ESNext", "DOM"], + "tsBuildInfoFile": "./dist/tsconfig.tsbuildinfo" + }, + "include": ["src"] +} diff --git a/docusaurus-typedoc-json-parser/package.json b/docusaurus-typedoc-json-parser/package.json new file mode 100644 index 00000000..2bf638f8 --- /dev/null +++ b/docusaurus-typedoc-json-parser/package.json @@ -0,0 +1,30 @@ +{ + "name": "docusaurus-typedoc-json-parser", + "version": "0.0.1", + "description": "A Docusaurus v2 plugin to build API Documentation based on typedoc-json-parser output.", + "main": "dist/index.js", + "files": [ + "dist/" + ], + "scripts": { + "build": "tsc", + "watch": "tsc -w", + "debug": "node --inspect scripts/debug.mjs", + "start": "node scripts/debug.mjs" + }, + "dependencies": { + "@sapphire/docusaurus-plugin-ts2esm2cjs": "^1.1.3", + "@sapphire/fetch": "^2.4.1", + "@sapphire/result": "^2.6.0", + "@sapphire/utilities": "^3.11.0", + "common-tags": "^1.8.2", + "css": "^3.0.0", + "typedoc-json-parser": "^6.0.2" + }, + "devDependencies": { + "@docusaurus/types": "^2.1.0", + "@types/common-tags": "^1.8.1", + "dotenv": "^16.0.3", + "typescript": "^4.8.4" + } +} diff --git a/docusaurus-typedoc-json-parser/scripts/debug.mjs b/docusaurus-typedoc-json-parser/scripts/debug.mjs new file mode 100644 index 00000000..e1deb962 --- /dev/null +++ b/docusaurus-typedoc-json-parser/scripts/debug.mjs @@ -0,0 +1,65 @@ +import { fileURLToPath } from 'node:url'; +import parser from '../dist/index.js'; +import { config } from 'dotenv'; + +config(); + +const docusaurusTypeDocJsonParser = parser.default; + +const siteDir = new URL('../../', import.meta.url); +const generatedFilesDir = new URL('.docusaurus/', siteDir); +const outDir = new URL('build/', siteDir); +const siteConfigPath = new URL('docusaurus.config.js', siteDir); + +docusaurusTypeDocJsonParser( + { + siteDir: fileURLToPath(siteDir), + generatedFilesDir: fileURLToPath(generatedFilesDir), + siteConfig: { + title: 'Sapphire', + url: 'https://sapphirejs.dev', + baseUrl: '/', + onBrokenLinks: 'warn', + onBrokenMarkdownLinks: 'warn', + onDuplicateRoutes: 'throw', + favicon: 'img/favicon.ico', + tagline: + 'Sapphire is a next-gen Discord bot framework for developers of all skill levels to make the best JavaScript/TypeScript based bots possible.', + organizationName: 'sapphiredev', + projectName: 'framework', + baseUrlIssueBanner: true, + i18n: { + defaultLocale: 'en', + locales: ['en'], + localeConfigs: {} + }, + staticDirectories: ['static'], + customFields: {}, + scripts: [], + stylesheets: [], + clientModules: [], + titleDelimiter: '|', + noIndex: false + }, + siteConfigPath: fileURLToPath(siteConfigPath), + outDir: fileURLToPath(outDir), + baseUrl: '/', + i18n: { + defaultLocale: 'en', + locales: ['en'], + currentLocale: 'en', + localeConfigs: { + en: { + label: 'English', + direction: 'ltr', + htmlLang: 'en' + } + } + }, + codeTranslations: {} + }, + { + githubContentUrl: 'https://api.github.com/repos/sapphiredev/docs/contents/docs', + githubToken: process.env.GITHUB_TOKEN + } +).loadContent(); diff --git a/docusaurus-typedoc-json-parser/src/index.ts b/docusaurus-typedoc-json-parser/src/index.ts new file mode 100644 index 00000000..f2f13dbd --- /dev/null +++ b/docusaurus-typedoc-json-parser/src/index.ts @@ -0,0 +1,117 @@ +import type { LoadContext, Plugin } from '@docusaurus/types'; +import { fetch } from '@sapphire/fetch'; +import type { PluginOptions } from './types/PluginOptions'; +import { RepositoryContent, RepositoryContentFileType } from './types/RepositoryContent'; +import { ProjectParser, ReferenceTypeParser } from 'typedoc-json-parser'; +import { resolve } from 'node:path'; +import { removeDirectory } from './renderer/utilities/removeDirectory'; +import { writeCategoryYaml } from './renderer/writeCategoryYaml'; +import { renderOutputFiles } from './renderer/render'; + +ReferenceTypeParser.formatToString = (parser) => { + const typeArguments = parser.typeArguments.length > 0 ? `<${parser.typeArguments.map((type) => type.toString()).join(', ')}\\>` : ''; + + if (parser.id || parser.packageName) { + return `[\`${parser.name}\`](${parser.id ? parser.id : parser.packageName})${typeArguments}`; + } + + return `\`${parser.name}\`${typeArguments}`; +}; + +export default function docusaurusTypeDocJsonParser(context: LoadContext, options: PluginOptions): Plugin { + return { + name: 'docusaurus-typedoc-json-parser', + async loadContent() { + const { siteDir } = context; + const { githubContentUrl, githubToken } = options; + + const contents = ( + await (githubToken + ? fetch<RepositoryContent[]>(githubContentUrl, { + headers: { + Authorization: `Bearer ${githubToken}` + } + }) + : fetch<RepositoryContent[]>(githubContentUrl)) + ).filter((content) => content.type === RepositoryContentFileType.Directory); + + for (const content of contents) { + const projectContents = await fetch<RepositoryContent[]>(content.url, { + headers: { + Authorization: `Bearer ${githubToken}` + } + }); + + for (const projectContent of projectContents) { + if (projectContent.type === RepositoryContentFileType.Directory) { + const projectSubContents = await fetch<RepositoryContent[]>(projectContent.url, { + headers: { + Authorization: `Bearer ${githubToken}` + } + }); + + writeCategoryYaml(resolve(siteDir, 'docs', 'Documentation', content.name), '', content.name, 0); + + for (const projectSubContent of projectSubContents) { + if (projectSubContent.download_url === null) + throw new Error( + `The 'download_url' field is null for '${content.name}/${projectContent.name}/${projectSubContent.name}'` + ); + + writeCategoryYaml( + resolve(siteDir, 'docs', 'Documentation', content.name, projectContent.name), + '', + projectContent.name, + 1 + ); + + const outputDir = resolve( + siteDir, + 'docs', + 'Documentation', + content.name, + projectContent.name, + projectSubContent.name.replace('.json', '') + ); + + removeDirectory(outputDir); + + writeCategoryYaml(outputDir, '', projectSubContent.name.replace('.json', ''), 1); + + const data = await fetch<ProjectParser.JSON>(projectSubContent.download_url); + const incomingTypeDocJsonParserVersion = data.typeDocJsonParserVersion.split('.').map(Number) as [number, number, number]; + const currentTypeDocJsonParserVersion = ProjectParser.version.split('.').map(Number) as [number, number, number]; + + if (incomingTypeDocJsonParserVersion[0] !== currentTypeDocJsonParserVersion[0]) continue; + + const projectParser = new ProjectParser({ data, version: projectSubContent.name.replace('.json', '') }); + + renderOutputFiles(projectParser, outputDir, true); + } + } else { + if (projectContent.download_url === null) + throw new Error(`The 'download_url' field is null for '${content.name}/${projectContent.name}'`); + + writeCategoryYaml(resolve(siteDir, 'docs', 'Documentation', content.name), '', content.name, 0); + + const outputDir = resolve(siteDir, 'docs', 'Documentation', content.name, projectContent.name.replace('.json', '')); + + removeDirectory(outputDir); + + writeCategoryYaml(outputDir, '', projectContent.name.replace('.json', ''), 1); + + const data = await fetch<ProjectParser.JSON>(projectContent.download_url); + const incomingTypeDocJsonParserVersion = data.typeDocJsonParserVersion.split('.').map(Number) as [number, number, number]; + const currentTypeDocJsonParserVersion = ProjectParser.version.split('.').map(Number) as [number, number, number]; + + if (incomingTypeDocJsonParserVersion[0] !== currentTypeDocJsonParserVersion[0]) continue; + + const projectParser = new ProjectParser({ data, version: projectContent.name.replace('.json', '') }); + + renderOutputFiles(projectParser, outputDir, false); + } + } + } + } + }; +} diff --git a/docusaurus-typedoc-json-parser/src/renderer/render.ts b/docusaurus-typedoc-json-parser/src/renderer/render.ts new file mode 100644 index 00000000..906305ca --- /dev/null +++ b/docusaurus-typedoc-json-parser/src/renderer/render.ts @@ -0,0 +1,78 @@ +import { + ClassParser, + VariableParser, + EnumParser, + FunctionParser, + InterfaceParser, + NamespaceParser, + ProjectParser, + ReferenceTypeParser, + TypeAliasParser +} from 'typedoc-json-parser'; +import { renderClasses } from './renderClass'; +import { renderVariables } from './renderVariable'; +import { renderEnums } from './renderEnum'; +import { renderFunctions } from './renderFunction'; +import { renderInterfaces } from './renderInterface'; +import { renderNamespaces } from './renderNamespace'; +import { renderTypeAliases } from './renderTypeAlias'; + +export function renderOutputFiles(projectParser: ProjectParser, outputDir: string, isGroup: boolean) { + if (projectParser.classes.length) { + renderClasses(projectParser, outputDir, isGroup); + } + + if (projectParser.variables.length) { + renderVariables(projectParser, outputDir, isGroup); + } + + if (projectParser.enums.length) { + renderEnums(projectParser, outputDir, isGroup); + } + + if (projectParser.functions.length) { + renderFunctions(projectParser, outputDir, isGroup); + } + + if (projectParser.interfaces.length) { + renderInterfaces(projectParser, outputDir, isGroup); + } + + if (projectParser.namespaces.length) { + renderNamespaces(projectParser, outputDir, isGroup); + } + + if (projectParser.typeAliases.length) { + renderTypeAliases(projectParser, outputDir, isGroup); + } +} + +ReferenceTypeParser.formatToString = (parser) => { + const typeArguments = parser.typeArguments.length > 0 ? `<${parser.typeArguments.map((type) => type.toString()).join(', ')}>` : ''; + + if (parser.id !== null && parser.packageName === null) { + const foundParser = parser.project.find(parser.id); + + if (foundParser !== null) { + if (foundParser instanceof ClassParser) { + return `[${parser.name}](../class/${foundParser.name.toLowerCase().replace(/\s/g, '-')}.mdx)${typeArguments}`; + } else if (foundParser instanceof VariableParser) { + return `[${parser.name}](../constant/${foundParser.name.toLowerCase().replace(/\s/g, '-')}.mdx)${typeArguments}`; + } else if (foundParser instanceof EnumParser) { + return `[${parser.name}](../enum/${foundParser.name.toLowerCase().replace(/\s/g, '-')}.mdx)${typeArguments}`; + } else if (foundParser instanceof FunctionParser) { + return `[${parser.name}](../function/${foundParser.name.toLowerCase().replace(/\s/g, '-')}.mdx)${typeArguments}`; + } else if (foundParser instanceof InterfaceParser) { + return `[${parser.name}](../interface/${foundParser.name.toLowerCase().replace(/\s/g, '-')}.mdx)${typeArguments}`; + } else if (foundParser instanceof NamespaceParser) { + return `[${parser.name}](../namespace/${foundParser.name.toLowerCase().replace(/\s/g, '-')}.mdx)${typeArguments}`; + } else if (foundParser instanceof TypeAliasParser) { + return `[${parser.name}](../type-alias/${foundParser.name.toLowerCase().replace(/\s/g, '-')}.mdx)${typeArguments}`; + } + } + } + + // TODO: Parse `parser.packageName` + + return `${parser.packageName ? `${parser.packageName}.` : ''}${parser.name}${typeArguments}`; +}; diff --git a/docusaurus-typedoc-json-parser/src/renderer/renderClass.ts b/docusaurus-typedoc-json-parser/src/renderer/renderClass.ts new file mode 100644 index 00000000..2eb61a8b --- /dev/null +++ b/docusaurus-typedoc-json-parser/src/renderer/renderClass.ts @@ -0,0 +1,167 @@ +import { writeFileSync } from 'node:fs'; +import { resolve } from 'node:path'; +import { ClassMethodParser, ClassParser, ClassPropertyParser, ProjectParser, TypeParser } from 'typedoc-json-parser'; +import { parseExamples } from './utilities/parseExamples'; +import { parseParameters } from './utilities/parseParameters'; +import { parseSee } from './utilities/parseSee'; +import { parseTypeParameters } from './utilities/parseTypeParameters'; +import { writeCategoryYaml } from './writeCategoryYaml'; + +function renderClass(classParser: ClassParser, outputDir: string, fileSidebarPosition: number) { + const slug = classParser.name.toLowerCase().replace(/\s/g, '-'); + + const header = `--- +id: "${slug}" +title: "${classParser.name}" +sidebar_label: "${classParser.name}" +sidebar_position: ${fileSidebarPosition} +custom_edit_url: null +---`; + + const classExtendsType = parseExtendsType(classParser.extendsType); + const classImplementsTypes = parseImplementsType(classParser.implementsType); + + const result = `${header} +${classExtendsType === null ? '' : `**extends ${classExtendsType}**`} +${classImplementsTypes.length === 0 ? '' : `**implements ${classImplementsTypes.join(', ')}**`} + +${ + classParser.typeParameters.length + ? `## Type Parameters + +${parseTypeParameters(classParser.typeParameters)}` + : '' +} + +${classParser.comment.description ?? 'No description provided.'} + +${parseSee(classParser.comment.see)} + +${ + classParser.comment.example.length + ? `## Examples + +${parseExamples(classParser.comment.example)}` + : '' +} + +${parseConstructor(classParser)} +${parseProperties(classParser.properties)} +${parseMethods(classParser.methods)} +`; + + writeFileSync(resolve(outputDir, `${slug}.mdx`), result); +} + +export function renderClasses(projectParser: ProjectParser, outputDir: string, isGroup: boolean) { + const categoryDir = writeCategoryYaml(outputDir, 'class', 'Classes', isGroup ? 2 : 1); + + let fileSidebarPosition = 0; + + for (const classParser of projectParser.classes) { + if (classParser.external) continue; + + renderClass(classParser, categoryDir, fileSidebarPosition); + + fileSidebarPosition++; + } +} + +function parseExtendsType(typeParser: TypeParser | null): string | null { + return typeParser?.toString() ?? null; +} + +function parseImplementsType(typeParsers: TypeParser[]): string[] { + return typeParsers.map((typeParser) => typeParser.toString()); +} + +function parseConstructor(classParser: ClassParser): string { + return `## Constructor + +\`\`\`typescript ts2esm2cjs +new ${classParser.name}(${classParser.construct.parameters.map((parameter) => parameter.name).join(', ')}) +\`\`\` + +${ + classParser.construct.parameters.length + ? `${ + classParser.construct.parameters.length + ? `### Parameters + +${parseParameters(classParser.construct.parameters)}` + : '' + }` + : '' +}`; +} + +function parseProperties(properties: ClassPropertyParser[]): string { + if (!properties.length) return ''; + + return ` +## Properties + +${properties + .map( + (property) => `### ${ + property.accessibility === ClassParser.Accessibility.Protected + ? '`PROTECTED` ' + : property.accessibility === ClassParser.Accessibility.Private + ? '`PRIVATE` ' + : '' + }${property.static ? '`STATIC` ' : ''}${property.readonly ? '`READONLY` ' : ''}${property.name}${ + property.type ? `${property.optional ? '?' : ''}: ${property.type.toString()}` : '' + } + +${property.comment.description ?? 'No description provided.'}` + ) + .join('\n\n')}`; +} + +function parseMethods(methods: ClassMethodParser[]): string { + if (!methods.length) return ''; + + return ` +## Methods + +${methods + .map((method) => + method.signatures + .map( + (signature) => + `### ${signature.name}${ + signature.typeParameters.length ? `<${signature.typeParameters.map((typeParameter) => typeParameter.name).join(', ')}\\>` : '' + }(${signature.parameters.map((parameter) => parameter.name).join(', ')}): ${signature.returnType.toString()} + +${signature.comment.description ?? 'No description provided.'} + +${parseSee(signature.comment.see)} + +${ + signature.comment.example.length + ? `#### Examples + +${parseExamples(signature.comment.example)}` + : '' +} + +${ + signature.typeParameters.length + ? `#### Type Parameters + +${parseTypeParameters(signature.typeParameters)}` + : '' +} + +${ + signature.parameters.length + ? `#### Parameters + +${parseParameters(signature.parameters)}` + : '' +}` + ) + .join('\n\n') + ) + .join('\n\n')}`; +} diff --git a/docusaurus-typedoc-json-parser/src/renderer/renderEnum.ts b/docusaurus-typedoc-json-parser/src/renderer/renderEnum.ts new file mode 100644 index 00000000..c7573734 --- /dev/null +++ b/docusaurus-typedoc-json-parser/src/renderer/renderEnum.ts @@ -0,0 +1,34 @@ +import { writeFileSync } from 'node:fs'; +import { resolve } from 'node:path'; +import type { EnumParser, ProjectParser } from 'typedoc-json-parser'; +import { writeCategoryYaml } from './writeCategoryYaml'; + +function renderEnum(enumParser: EnumParser, outputDir: string, fileSidebarPosition: number) { + const slug = enumParser.name.toLowerCase().replace(/\s/g, '-'); + + const header = `--- +id: "${slug}" +title: "${enumParser.name}" +sidebar_label: "${enumParser.name}" +sidebar_position: ${fileSidebarPosition} +custom_edit_url: null +---`; + + const result = `${header}`; + + writeFileSync(resolve(outputDir, `${slug}.mdx`), result); +} + +export function renderEnums(projectParser: ProjectParser, outputDir: string, isGroup: boolean) { + const categoryDir = writeCategoryYaml(outputDir, 'enum', 'Enums', isGroup ? 2 : 1); + + let fileSidebarPosition = 0; + + for (const enumParser of projectParser.enums) { + if (enumParser.external) continue; + + renderEnum(enumParser, categoryDir, fileSidebarPosition); + + fileSidebarPosition++; + } +} diff --git a/docusaurus-typedoc-json-parser/src/renderer/renderFunction.ts b/docusaurus-typedoc-json-parser/src/renderer/renderFunction.ts new file mode 100644 index 00000000..dd46e8d4 --- /dev/null +++ b/docusaurus-typedoc-json-parser/src/renderer/renderFunction.ts @@ -0,0 +1,34 @@ +import { writeFileSync } from 'node:fs'; +import { resolve } from 'node:path'; +import type { FunctionParser, ProjectParser } from 'typedoc-json-parser'; +import { writeCategoryYaml } from './writeCategoryYaml'; + +function renderFunction(functionParser: FunctionParser, outputDir: string, fileSidebarPosition: number) { + const slug = functionParser.name.toLowerCase().replace(/\s/g, '-'); + + const header = `--- +id: "${slug}" +title: "${functionParser.name}" +sidebar_label: "${functionParser.name}" +sidebar_position: ${fileSidebarPosition} +custom_edit_url: null +---`; + + const result = `${header}`; + + writeFileSync(resolve(outputDir, `${slug}.mdx`), result); +} + +export function renderFunctions(projectParser: ProjectParser, outputDir: string, isGroup: boolean) { + const categoryDir = writeCategoryYaml(outputDir, 'function', 'Functions', isGroup ? 2 : 1); + + let fileSidebarPosition = 0; + + for (const functionParser of projectParser.functions) { + if (functionParser.external) continue; + + renderFunction(functionParser, categoryDir, fileSidebarPosition); + + fileSidebarPosition++; + } +} diff --git a/docusaurus-typedoc-json-parser/src/renderer/renderInterface.ts b/docusaurus-typedoc-json-parser/src/renderer/renderInterface.ts new file mode 100644 index 00000000..bcee4027 --- /dev/null +++ b/docusaurus-typedoc-json-parser/src/renderer/renderInterface.ts @@ -0,0 +1,34 @@ +import { writeFileSync } from 'node:fs'; +import { resolve } from 'node:path'; +import type { InterfaceParser, ProjectParser } from 'typedoc-json-parser'; +import { writeCategoryYaml } from './writeCategoryYaml'; + +function renderInterface(interfaceParser: InterfaceParser, outputDir: string, fileSidebarPosition: number) { + const slug = interfaceParser.name.toLowerCase().replace(/\s/g, '-'); + + const header = `--- +id: "${slug}" +title: "${interfaceParser.name}" +sidebar_label: "${interfaceParser.name}" +sidebar_position: ${fileSidebarPosition} +custom_edit_url: null +---`; + + const result = `${header}`; + + writeFileSync(resolve(outputDir, `${slug}.mdx`), result); +} + +export function renderInterfaces(projectParser: ProjectParser, outputDir: string, isGroup: boolean) { + const categoryDir = writeCategoryYaml(outputDir, 'interface', 'Interfaces', isGroup ? 2 : 1); + + let fileSidebarPosition = 0; + + for (const interfaceParser of projectParser.interfaces) { + if (interfaceParser.external) continue; + + renderInterface(interfaceParser, categoryDir, fileSidebarPosition); + + fileSidebarPosition++; + } +} diff --git a/docusaurus-typedoc-json-parser/src/renderer/renderNamespace.ts b/docusaurus-typedoc-json-parser/src/renderer/renderNamespace.ts new file mode 100644 index 00000000..fde120c4 --- /dev/null +++ b/docusaurus-typedoc-json-parser/src/renderer/renderNamespace.ts @@ -0,0 +1,34 @@ +import { writeFileSync } from 'node:fs'; +import { resolve } from 'node:path'; +import type { NamespaceParser, ProjectParser } from 'typedoc-json-parser'; +import { writeCategoryYaml } from './writeCategoryYaml'; + +function renderNamespace(namespaceParser: NamespaceParser, outputDir: string, fileSidebarPosition: number) { + const slug = namespaceParser.name.toLowerCase().replace(/\s/g, '-'); + + const header = `--- +id: "${slug}" +title: "${namespaceParser.name}" +sidebar_label: "${namespaceParser.name}" +sidebar_position: ${fileSidebarPosition} +custom_edit_url: null +---`; + + const result = `${header}`; + + writeFileSync(resolve(outputDir, `${slug}.mdx`), result); +} + +export function renderNamespaces(projectParser: ProjectParser, outputDir: string, isGroup: boolean) { + const categoryDir = writeCategoryYaml(outputDir, 'namespace', 'Namespaces', isGroup ? 2 : 1); + + let fileSidebarPosition = 0; + + for (const namespaceParser of projectParser.namespaces) { + if (namespaceParser.external) continue; + + renderNamespace(namespaceParser, categoryDir, fileSidebarPosition); + + fileSidebarPosition++; + } +} diff --git a/docusaurus-typedoc-json-parser/src/renderer/renderTypeAlias.ts b/docusaurus-typedoc-json-parser/src/renderer/renderTypeAlias.ts new file mode 100644 index 00000000..92d8eb8f --- /dev/null +++ b/docusaurus-typedoc-json-parser/src/renderer/renderTypeAlias.ts @@ -0,0 +1,34 @@ +import { writeFileSync } from 'node:fs'; +import { resolve } from 'node:path'; +import type { ProjectParser, TypeAliasParser } from 'typedoc-json-parser'; +import { writeCategoryYaml } from './writeCategoryYaml'; + +function renderTypeAlias(typeAliasParser: TypeAliasParser, outputDir: string, fileSidebarPosition: number) { + const slug = typeAliasParser.name.toLowerCase().replace(/\s/g, '-'); + + const header = `--- +id: "${slug}" +title: "${typeAliasParser.name}" +sidebar_label: "${typeAliasParser.name}" +sidebar_position: ${fileSidebarPosition} +custom_edit_url: null +---`; + + const result = `${header}`; + + writeFileSync(resolve(outputDir, `${slug}.mdx`), result); +} + +export function renderTypeAliases(projectParser: ProjectParser, outputDir: string, isGroup: boolean) { + const categoryDir = writeCategoryYaml(outputDir, 'typeAlias', 'Type Aliases', isGroup ? 2 : 1); + + let fileSidebarPosition = 0; + + for (const typeAliasParser of projectParser.typeAliases) { + if (typeAliasParser.external) continue; + + renderTypeAlias(typeAliasParser, categoryDir, fileSidebarPosition); + + fileSidebarPosition++; + } +} diff --git a/docusaurus-typedoc-json-parser/src/renderer/renderVariable.ts b/docusaurus-typedoc-json-parser/src/renderer/renderVariable.ts new file mode 100644 index 00000000..4033515e --- /dev/null +++ b/docusaurus-typedoc-json-parser/src/renderer/renderVariable.ts @@ -0,0 +1,34 @@ +import { writeFileSync } from 'node:fs'; +import { resolve } from 'node:path'; +import type { VariableParser, ProjectParser } from 'typedoc-json-parser'; +import { writeCategoryYaml } from './writeCategoryYaml'; + +function renderVariable(constantParser: VariableParser, outputDir: string, fileSidebarPosition: number) { + const slug = constantParser.name.toLowerCase().replace(/\s/g, '-'); + + const header = `--- +id: "${slug}" +title: "${constantParser.name}" +sidebar_label: "${constantParser.name}" +sidebar_position: ${fileSidebarPosition} +custom_edit_url: null +---`; + + const result = `${header}`; + + writeFileSync(resolve(outputDir, `${slug}.mdx`), result); +} + +export function renderVariables(projectParser: ProjectParser, outputDir: string, isGroup: boolean) { + const categoryDir = writeCategoryYaml(outputDir, 'constant', 'Variables', isGroup ? 2 : 1); + + let fileSidebarPosition = 0; + + for (const constantParser of projectParser.variables) { + if (constantParser.external) continue; + + renderVariable(constantParser, categoryDir, fileSidebarPosition); + + fileSidebarPosition++; + } +} diff --git a/docusaurus-typedoc-json-parser/src/renderer/utilities/ensureDirectory.ts b/docusaurus-typedoc-json-parser/src/renderer/utilities/ensureDirectory.ts new file mode 100644 index 00000000..6f5f6089 --- /dev/null +++ b/docusaurus-typedoc-json-parser/src/renderer/utilities/ensureDirectory.ts @@ -0,0 +1,5 @@ +import { existsSync, mkdirSync } from 'node:fs'; + +export function ensureDirectory(dir: string) { + if (!existsSync(dir)) mkdirSync(dir, { recursive: true }); +} diff --git a/docusaurus-typedoc-json-parser/src/renderer/utilities/parseExamples.ts b/docusaurus-typedoc-json-parser/src/renderer/utilities/parseExamples.ts new file mode 100644 index 00000000..c15c2459 --- /dev/null +++ b/docusaurus-typedoc-json-parser/src/renderer/utilities/parseExamples.ts @@ -0,0 +1,7 @@ +import type { CommentParser } from 'typedoc-json-parser'; + +export function parseExamples(blockTags: CommentParser.BlockTag[]): string { + if (blockTags.length === 0) return ''; + + return `${blockTags.map((blockTag) => blockTag.text.replace(/(```typescript)\n/g, '$1 ts2esm2cjs\n'))}`; +} diff --git a/docusaurus-typedoc-json-parser/src/renderer/utilities/parseParameters.ts b/docusaurus-typedoc-json-parser/src/renderer/utilities/parseParameters.ts new file mode 100644 index 00000000..746f5c75 --- /dev/null +++ b/docusaurus-typedoc-json-parser/src/renderer/utilities/parseParameters.ts @@ -0,0 +1,16 @@ +import type { ParameterParser } from 'typedoc-json-parser'; + +export function parseParameters(parameters: ParameterParser[]): string { + if (!parameters.length) return ''; + + return `| Name | Type | Description | +| :---: | :---: | :---: | :---: | +${parameters + .map( + (parameter) => + `| ${parameter.name} | ${parameter.type.toString().replace('/', '\\/')} | ${ + parameter.comment.description ?? 'No description provided.' + } |` + ) + .join('\n')}`; +} diff --git a/docusaurus-typedoc-json-parser/src/renderer/utilities/parseSee.ts b/docusaurus-typedoc-json-parser/src/renderer/utilities/parseSee.ts new file mode 100644 index 00000000..8769dcf5 --- /dev/null +++ b/docusaurus-typedoc-json-parser/src/renderer/utilities/parseSee.ts @@ -0,0 +1,7 @@ +import type { CommentParser } from 'typedoc-json-parser'; + +export function parseSee(blockTags: CommentParser.BlockTag[]): string { + if (blockTags.length === 0) return ''; + + return blockTags.map((blockTag) => `\n**See Also:** ${blockTag.text}`).join('\n'); +} diff --git a/docusaurus-typedoc-json-parser/src/renderer/utilities/parseTypeParameters.ts b/docusaurus-typedoc-json-parser/src/renderer/utilities/parseTypeParameters.ts new file mode 100644 index 00000000..87e10f4f --- /dev/null +++ b/docusaurus-typedoc-json-parser/src/renderer/utilities/parseTypeParameters.ts @@ -0,0 +1,12 @@ +import type { TypeParameterParser } from 'typedoc-json-parser'; + +export function parseTypeParameters(typeParameters: TypeParameterParser[]): string { + if (!typeParameters.length) return ''; + + return `| Name | Type | Default | +| :---: | :---: | :---: | +${typeParameters.map( + (typeParameter) => + `| ${typeParameter.name} | ${typeParameter.type?.toString() ?? 'Not provided.'} | ${typeParameter.default?.toString() ?? 'Not provided.'}` +)}`; +} diff --git a/docusaurus-typedoc-json-parser/src/renderer/utilities/removeDirectory.ts b/docusaurus-typedoc-json-parser/src/renderer/utilities/removeDirectory.ts new file mode 100644 index 00000000..b693e6c8 --- /dev/null +++ b/docusaurus-typedoc-json-parser/src/renderer/utilities/removeDirectory.ts @@ -0,0 +1,21 @@ +import { existsSync, readdirSync, rmdirSync, statSync, unlinkSync } from 'node:fs'; + +export function removeDirectory(directory: string) { + if (existsSync(directory)) { + const files = readdirSync(directory); + + if (files.length > 0) { + files.forEach((filename) => { + if (statSync(`${directory}/${filename}`).isDirectory()) { + removeDirectory(`${directory}/${filename}`); + } else { + unlinkSync(`${directory}/${filename}`); + } + }); + + rmdirSync(directory); + } else { + rmdirSync(directory); + } + } +} diff --git a/docusaurus-typedoc-json-parser/src/renderer/writeCategoryYaml.ts b/docusaurus-typedoc-json-parser/src/renderer/writeCategoryYaml.ts new file mode 100644 index 00000000..99499e22 --- /dev/null +++ b/docusaurus-typedoc-json-parser/src/renderer/writeCategoryYaml.ts @@ -0,0 +1,15 @@ +import { writeFileSync } from 'node:fs'; +import { resolve } from 'node:path'; +import { ensureDirectory } from './utilities/ensureDirectory'; + +export function writeCategoryYaml(directory: string, categoryPath: string, categoryName: string, sidebarPosition: number) { + const categoryDirectory = resolve(directory, categoryPath); + + ensureDirectory(categoryDirectory); + + const categoryData = [`label: "${categoryName}"`, `position: ${sidebarPosition}`].join(`\n`); + + writeFileSync(resolve(categoryDirectory, '_category.yml'), categoryData); + + return categoryDirectory; +} diff --git a/docusaurus-typedoc-json-parser/src/types/PluginOptions.ts b/docusaurus-typedoc-json-parser/src/types/PluginOptions.ts new file mode 100644 index 00000000..c1ee22c6 --- /dev/null +++ b/docusaurus-typedoc-json-parser/src/types/PluginOptions.ts @@ -0,0 +1,5 @@ +export interface PluginOptions { + githubContentUrl: string; + + githubToken?: string; +} diff --git a/docusaurus-typedoc-json-parser/src/types/RepositoryContent.ts b/docusaurus-typedoc-json-parser/src/types/RepositoryContent.ts new file mode 100644 index 00000000..f20e78aa --- /dev/null +++ b/docusaurus-typedoc-json-parser/src/types/RepositoryContent.ts @@ -0,0 +1,15 @@ +export interface RepositoryContent { + type: RepositoryContentFileType; + + name: string; + + url: string; + + download_url: string | null; +} + +export enum RepositoryContentFileType { + File = 'file', + + Directory = 'dir' +} diff --git a/docusaurus-typedoc-json-parser/tsconfig.json b/docusaurus-typedoc-json-parser/tsconfig.json new file mode 100644 index 00000000..ccc201e4 --- /dev/null +++ b/docusaurus-typedoc-json-parser/tsconfig.json @@ -0,0 +1,10 @@ +{ + "extends": "@sapphire/ts-config", + "compilerOptions": { + "rootDir": "src", + "outDir": "dist", + "lib": ["ESNext", "DOM"], + "tsBuildInfoFile": "./dist/tsconfig.tsbuildinfo" + }, + "include": ["src"] +} diff --git a/docusaurus.config.js b/docusaurus.config.js index a41838f7..c0844f48 100644 --- a/docusaurus.config.js +++ b/docusaurus.config.js @@ -9,13 +9,15 @@ const BaseUrl = 'https://sapphirejs.dev'; const Email = 'contact@sapphirejs.dev'; const Title = 'Sapphire Framework'; -/** @type {import('@docusaurus/types').Config} */ +/** @type {import('@docusaurus/types').DocusaurusConfig} */ const config = { title: 'Sapphire', url: BaseUrl, baseUrl: '/', - onBrokenLinks: 'throw', - onBrokenMarkdownLinks: 'throw', + // TODO: Re-enable after adding all JSON files. See temporary-errors-log-of-broken-links.md + onBrokenLinks: 'warn', + // TODO: Re-enable after adding all JSON files. See temporary-errors-log-of-broken-links.md + onBrokenMarkdownLinks: 'warn', onDuplicateRoutes: 'throw', favicon: 'img/favicon.ico', tagline: Description, @@ -49,132 +51,10 @@ const config = { } ], [ - 'docusaurus-plugin-typedoc', - { - id: 'framework', - entryPoints: ['./projects/framework/src/index.ts'], - tsconfig: './projects/framework/src/tsconfig.json', - readme: 'none', - out: 'Documentation/api-framework', - plugin: ['typedoc-plugin-mdn-links', 'typedoc-plugin-djs-links'], - sidebar: { - categoryLabel: '@sapphire/framework', - position: 0, - fullNames: true - } - } - ], - [ - 'docusaurus-plugin-typedoc', - { - id: 'Pieces', - entryPoints: ['./projects/pieces/src/index.ts'], - tsconfig: './projects/pieces/src/tsconfig.json', - readme: 'none', - out: 'Documentation/api-pieces', - plugin: ['typedoc-plugin-mdn-links'], - sidebar: { - categoryLabel: '@sapphire/pieces', - position: 1, - fullNames: true - } - } - ], - [ - 'docusaurus-plugin-typedoc', - { - id: 'Utilities', - entryPointStrategy: 'resolve', - entryPoints: [ - './projects/utilities/packages/async-queue/src/index.ts', - './projects/utilities/packages/bitfield/src/index.ts', - './projects/utilities/packages/cron/src/index.ts', - './projects/utilities/packages/decorators/src/index.ts', - './projects/utilities/packages/discord-utilities/src/index.ts', - './projects/utilities/packages/discord.js-utilities/src/index.ts', - './projects/utilities/packages/duration/src/index.ts', - './projects/utilities/packages/event-iterator/src/index.ts', - './projects/utilities/packages/fetch/src/index.ts', - './projects/utilities/packages/lexure/src/index.ts', - './projects/utilities/packages/node-utilities/src/index.ts', - './projects/utilities/packages/phisherman/src/index.ts', - './projects/utilities/packages/ratelimits/src/index.ts', - './projects/utilities/packages/result/src/index.ts', - './projects/utilities/packages/snowflake/src/index.ts', - './projects/utilities/packages/stopwatch/src/index.ts', - './projects/utilities/packages/time-utilities/src/index.ts', - './projects/utilities/packages/timer-manager/src/index.ts', - './projects/utilities/packages/timestamp/src/index.ts', - './projects/utilities/packages/utilities/src/index.ts' - ], - tsconfig: './tsconfig.typedoc.json', - readme: 'none', - out: 'Documentation/api-utilities', - plugin: ['typedoc-plugin-mdn-links', 'typedoc-plugin-djs-links'], - sidebar: { - categoryLabel: 'Sapphire Utilities', - position: 2 - } - } - ], - [ - 'docusaurus-plugin-typedoc', - { - id: 'Plugins', - entryPointStrategy: 'resolve', - entryPoints: [ - './projects/plugins/packages/api/src/index.ts', - './projects/plugins/packages/editable-commands/src/index.ts', - './projects/plugins/packages/hmr/src/index.ts', - './projects/plugins/packages/i18next/src/index.ts', - './projects/plugins/packages/logger/src/index.ts', - './projects/plugins/packages/pattern-commands/src/index.ts', - './projects/plugins/packages/scheduled-tasks/src/index.ts', - './projects/plugins/packages/subcommands/src/index.ts' - ], - tsconfig: './tsconfig.typedoc.json', - readme: 'none', - out: 'Documentation/api-plugins', - excludeExternals: true, - externalPattern: ['node_modules/@types/**'], - plugin: ['typedoc-plugin-mdn-links', 'typedoc-plugin-djs-links'], - sidebar: { - categoryLabel: 'Sapphire Plugins', - position: 3 - } - } - ], - [ - 'docusaurus-plugin-typedoc', - { - id: 'Type', - entryPoints: ['./projects/type/src/index.ts'], - tsconfig: './projects/type/src/tsconfig.json', - readme: './projects/type/README.md', - out: 'Documentation/api-type', - plugin: ['typedoc-plugin-mdn-links'], - sidebar: { - categoryLabel: '@sapphire/type', - position: 4, - fullNames: true - } - } - ], - [ - 'docusaurus-plugin-typedoc', - { - id: 'Shapeshift', - entryPoints: ['./projects/shapeshift/src/index.ts'], - tsconfig: './projects/shapeshift/src/tsconfig.json', - readme: './projects/shapeshift/README.md', - out: 'Documentation/api-shapeshift', - plugin: ['typedoc-plugin-mdn-links'], - sidebar: { - categoryLabel: '@sapphire/shapeshift', - position: 5, - fullNames: true - } - } + 'docusaurus-typedoc-json-parser', + /** @type {import('docusaurus-typedoc-json-parser/dist/types').PluginOptions} */ ({ + githubContentUrl: 'https://api.github.com/repos/sapphiredev/docs/contents/docs' + }) ] ], diff --git a/package.json b/package.json index c6d0ccd9..b17c03aa 100644 --- a/package.json +++ b/package.json @@ -2,16 +2,18 @@ "name": "root-website", "version": "1.0.0", "workspaces": [ - "projects/*" + "docusaurus-discordjs-docgen", + "docusaurus-typedoc-json-parser" ], "description": "Website with the Sapphire guide, hosted on https://sapphirejs.dev", "author": "@sapphire", "license": "MIT", "private": true, "scripts": { + "build-plugin": "tsc -b docusaurus-typedoc-json-parser", "docusaurus": "docusaurus", - "start": "docusaurus start", - "build": "docusaurus build", + "start": "yarn build-plugin && docusaurus start", + "build": "yarn build-plugin && docusaurus build", "swizzle": "docusaurus swizzle", "deploy": "docusaurus deploy", "clear": "docusaurus clear", @@ -19,18 +21,15 @@ "write-translations": "docusaurus write-translations", "write-heading-ids": "docusaurus write-heading-ids", "typecheck": "tsc", + "update": "yarn upgrade-interactive", "lint": "eslint src --ext mjs,ts --fix", "lint:md": "markdownlint-cli2-fix", "lint:md-no-fix": "markdownlint-cli2", "clean": "node scripts/clean.mjs", "format": "prettier --write \"{src,static,scripts,docs}/**/*.{js,jsx,ts,tsx,css,json,md,mdx,yml}\"", "format:check": "prettier --check \"{src,static,scripts,docs}/**/*.{js,jsx,ts,tsx,css,json,md,mdx,yml}\"", - "update": "yarn upgrade-interactive", "postinstall": "husky install .github/husky", - "clean-projects": "rimraf \"./projects/**/node_modules\" \"./projects/**/dist\" \"./projects/**/build\" \"./projects/**/prebuild\"", - "vercel-build": "yarn make-djs-node-14-compatible && yarn build", - "update-submodules": "git pull --recurse-submodules && git submodule update --remote --recursive", - "make-djs-node-14-compatible": "node scripts/make-djs-node-14-compatible.mjs" + "vercel-build": "yarn build" }, "dependencies": { "@docusaurus/core": "2.1.0", @@ -53,15 +52,9 @@ "@commitlint/cli": "^17.1.2", "@commitlint/config-conventional": "^17.1.0", "@docusaurus/module-type-aliases": "2.1.0", - "@sapphire/cron": "^1.0.0", - "@sapphire/decorators": "^5.0.0", - "@sapphire/duration": "^1.0.0", "@sapphire/eslint-config": "^4.3.8", "@sapphire/fetch": "^2.4.1", "@sapphire/prettier-config": "^1.4.4", - "@sapphire/result": "^2.6.0", - "@sapphire/timer-manager": "^1.0.0", - "@sapphire/timestamp": "^1.0.0", "@sapphire/ts-config": "^3.3.4", "@types/node": "^18.11.3", "@types/react": "^18.0.21", @@ -69,7 +62,6 @@ "@typescript-eslint/eslint-plugin": "^5.40.1", "@typescript-eslint/parser": "^5.40.1", "cz-conventional-changelog": "^3.3.0", - "docusaurus-plugin-typedoc": "^0.17.5", "eslint": "^8.26.0", "eslint-config-prettier": "^8.5.0", "eslint-plugin-import": "^2.26.0", @@ -83,21 +75,12 @@ "markdownlint-cli2": "^0.5.1", "prettier": "^2.7.1", "pretty-quick": "^3.1.3", - "replace-in-file": "^6.3.5", - "rimraf": "^3.0.2", - "ts-node": "^10.9.1", - "typedoc": "0.22.18", - "typedoc-plugin-djs-links": "^1.2.0", - "typedoc-plugin-markdown": "^3.13.6", - "typedoc-plugin-mdn-links": "^2.0.0", "typescript": "^4.8.4" }, "resolutions": { "ansi-regex": "^5.0.1", "minimist": "^1.2.7", - "async": "^2.6.4", - "typedoc": "0.22.17", - "discord-api-types": "^0.36.3" + "async": "^2.6.4" }, "browserslist": { "production": [ diff --git a/projects/framework b/projects/framework deleted file mode 160000 index 5d29c0a1..00000000 --- a/projects/framework +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 5d29c0a17531df32021f6fe36b25a5621587301f diff --git a/projects/pieces b/projects/pieces deleted file mode 160000 index c26e3144..00000000 --- a/projects/pieces +++ /dev/null @@ -1 +0,0 @@ -Subproject commit c26e314482895e3925987d21ab7906a90dece6c8 diff --git a/projects/plugins b/projects/plugins deleted file mode 160000 index 11510012..00000000 --- a/projects/plugins +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 115100125adf517707aa2f2368ce520c5b4ed3d4 diff --git a/projects/shapeshift b/projects/shapeshift deleted file mode 160000 index 676b2855..00000000 --- a/projects/shapeshift +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 676b28553f669ba2665272e15bd1f2ad9c3acf0c diff --git a/projects/type b/projects/type deleted file mode 160000 index 36f6db4f..00000000 --- a/projects/type +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 36f6db4f10af4db8889b3490fff8defcda036292 diff --git a/projects/utilities b/projects/utilities deleted file mode 160000 index a90f2875..00000000 --- a/projects/utilities +++ /dev/null @@ -1 +0,0 @@ -Subproject commit a90f28758e7b5e18c3654cffc9bd241e76253fee diff --git a/scripts/make-djs-node-14-compatible.mjs b/scripts/make-djs-node-14-compatible.mjs deleted file mode 100644 index 9bd0f994..00000000 --- a/scripts/make-djs-node-14-compatible.mjs +++ /dev/null @@ -1,28 +0,0 @@ -import { sep } from 'node:path'; -import { fileURLToPath } from 'node:url'; -import replace from 'replace-in-file'; - -const discordJsSrcFolder = new URL('../node_modules/discord.js/src/', import.meta.url); -const files = `${fileURLToPath(discordJsSrcFolder)}**${sep}*.js`; - -const optionsLogicalNullish = { - files, - from: /([\w_\.]+) \?\?= (.+);/g, - to: '$1 !== null && $1 !== void 0 ? $1 : ($1 = $2);' -}; - -const optionsLogicalAnd = { - files, - from: /([a-zA-Z].+) \&\&= (.+);/g, - to: '$1 && ($1 = $2);' -}; - -const optionsLogicalOr = { - files, - from: /([a-zA-Z].+) \|\|= (.+);/g, - to: '$1 || ($1 = $2);' -}; - -await replace.replaceInFile(optionsLogicalNullish); -await replace.replaceInFile(optionsLogicalAnd); -await replace.replaceInFile(optionsLogicalOr); diff --git a/temporary-errors-log-of-broken-links.md b/temporary-errors-log-of-broken-links.md new file mode 100644 index 00000000..7dcc7cd9 --- /dev/null +++ b/temporary-errors-log-of-broken-links.md @@ -0,0 +1,77 @@ +- On source page path = /docs/Documentation/sapphire-framework/class/argument: + -> linking to ../../sapphire-pieces/class/aliaspiece.mdx (resolved as: /docs/Documentation/sapphire-pieces/class/aliaspiece.mdx) + +- On source page path = /docs/Documentation/sapphire-framework/class/argumentstore: + -> linking to ../../sapphire-pieces/class/aliasstore.mdx (resolved as: /docs/Documentation/sapphire-pieces/class/aliasstore.mdx) + +- On source page path = /docs/Documentation/sapphire-framework/class/command: + -> linking to ../../sapphire-pieces/class/aliaspiece.mdx (resolved as: /docs/Documentation/sapphire-pieces/class/aliaspiece.mdx) + +- On source page path = /docs/Documentation/sapphire-framework/class/commandstore: + -> linking to ../../sapphire-pieces/class/aliasstore.mdx (resolved as: /docs/Documentation/sapphire-pieces/class/aliasstore.mdx) + +- On source page path = /docs/Documentation/sapphire-framework/class/interactionhandler: + -> linking to ../../sapphire-pieces/class/piece.mdx (resolved as: /docs/Documentation/sapphire-pieces/class/piece.mdx) + +- On source page path = /docs/Documentation/sapphire-framework/class/interactionhandlerstore: + -> linking to ../../sapphire-pieces/class/store.mdx (resolved as: /docs/Documentation/sapphire-pieces/class/store.mdx) + +- On source page path = /docs/Documentation/sapphire-framework/class/listener: + -> linking to ../../sapphire-pieces/class/piece.mdx (resolved as: /docs/Documentation/sapphire-pieces/class/piece.mdx) + +- On source page path = /docs/Documentation/sapphire-framework/class/listenerstore: + -> linking to ../../sapphire-pieces/class/store.mdx (resolved as: /docs/Documentation/sapphire-pieces/class/store.mdx) + +- On source page path = /docs/Documentation/sapphire-framework/class/precondition: + -> linking to ../../sapphire-pieces/class/piece.mdx (resolved as: /docs/Documentation/sapphire-pieces/class/piece.mdx) + +- On source page path = /docs/Documentation/sapphire-framework/class/preconditionstore: + -> linking to ../../sapphire-pieces/class/store.mdx (resolved as: /docs/Documentation/sapphire-pieces/class/store.mdx) + +- On source page path = /docs/Documentation/sapphire-framework/class/sapphireclient: + -> linking to ../../sapphire-pieces/class/storeregistry.mdx (resolved as: /docs/Documentation/sapphire-pieces/class/storeregistry.mdx) + +- On source page path = /docs/Documentation/sapphire-framework/typedef/pieceoptions: + -> linking to ../../sapphire-pieces/class/piece.mdx (resolved as: /docs/Documentation/sapphire-pieces/class/piece.mdx) + +- On source page path = /docs/Documentation/sapphire-framework/typedef/storeregistryentries: + -> linking to ../../sapphire-pieces/class/storeregistry.mdx (resolved as: /docs/Documentation/sapphire-pieces/class/storeregistry.mdx) + +- On source page path = /docs/Guide/arguments/built-in-arguments: + -> linking to ../../Documentation/sapphire-framework/interfaces/Resolvers.EmojiObject (resolved as: /docs/Documentation/sapphire-framework/interfaces/Resolvers.EmojiObject) + +- On source page path = /docs/Guide/getting-started/getting-started-with-sapphire: + -> linking to ../../Documentation/sapphire-framework/interfaces/SapphireClientOptions#baseuserdirectory (resolved as: /docs/Documentation/sapphire-framework/interfaces/SapphireClientOptions) + +- On source page path = /docs/Guide/plugins/API/rate-limiting: + -> linking to ../../../Documentation/sapphire-ratelimits/class/RateLimitManager (resolved as: /docs/Documentation/sapphire-ratelimits/class/RateLimitManager) + +- On source page path = /docs/Guide/plugins/i18next/getting-started: + -> linking to ../../../Documentation/sapphire-framework/interfaces/SapphireClientOptions (resolved as: /docs/Documentation/sapphire-framework/interfaces/SapphireClientOptions) + -> linking to ../../../Documentation/sapphire-plugin-i18next/class/InternationalizationHandler#fetchlanguage (resolved as: /docs/Documentation/sapphire-plugin-i18next/class/InternationalizationHandler) + -> linking to ../../../Documentation/sapphire-plugin-i18next/interfaces/InternationalizationContext (resolved as: /docs/Documentation/sapphire-plugin-i18next/interfaces/InternationalizationContext) + +- On source page path = /docs/Guide/preconditions/channel-types: + -> linking to ../../Documentation/sapphire-framework/interfaces/CommandOptions#runin (resolved as: /docs/Documentation/sapphire-framework/interfaces/CommandOptions) + -> linking to ../../Documentation/sapphire-framework/enums/CommandOptionsRunTypeEnum (resolved as: /docs/Documentation/sapphire-framework/enums/CommandOptionsRunTypeEnum) + +- On source page path = /docs/Guide/preconditions/command-cooldown: + -> linking to ../../Documentation/sapphire-framework/interfaces/CommandOptions#cooldowndelay (resolved as: /docs/Documentation/sapphire-framework/interfaces/CommandOptions) + -> linking to ../../Documentation/sapphire-time-utilities (resolved as: /docs/Documentation/sapphire-time-utilities) + -> linking to ../../Documentation/sapphire-time-utilities/typedefs/Time (resolved as: /docs/Documentation/sapphire-time-utilities/typedefs/Time) + -> linking to ../../Documentation/sapphire-framework/interfaces/CommandOptions#cooldownfilteredusers (resolved as: /docs/Documentation/sapphire-framework/interfaces/CommandOptions) + -> linking to ../../Documentation/sapphire-framework/interfaces/CommandOptions#cooldownlimit (resolved as: /docs/Documentation/sapphire-framework/interfaces/CommandOptions) + -> linking to ../../Documentation/sapphire-framework/interfaces/CommandOptions#cooldownscope (resolved as: /docs/Documentation/sapphire-framework/interfaces/CommandOptions) + -> linking to ../../Documentation/sapphire-framework/enums/BucketScope (resolved as: /docs/Documentation/sapphire-framework/enums/BucketScope) + -> linking to ../../Documentation/sapphire-framework/interfaces/SapphireClientOptions#defaultcooldown (resolved as: /docs/Documentation/sapphire-framework/interfaces/SapphireClientOptions) + +- On source page path = /docs/Guide/preconditions/creating-your-own-preconditions: + -> linking to ../../Documentation/sapphire-framework/interfaces/CommandOptions#preconditions (resolved as: /docs/Documentation/sapphire-framework/interfaces/CommandOptions) + -> linking to ../../Documentation/sapphire-framework/interfaces/Preconditions (resolved as: /docs/Documentation/sapphire-framework/interfaces/Preconditions) + +- On source page path = /docs/Guide/preconditions/handling-permissions: + -> linking to ../../Documentation/sapphire-framework/interfaces/CommandOptions#requireduserpermissions (resolved as: /docs/Documentation/sapphire-framework/interfaces/CommandOptions) + -> linking to ../../Documentation/sapphire-framework/interfaces/CommandOptions#requiredclientpermissions (resolved as: /docs/Documentation/sapphire-framework/interfaces/CommandOptions) + +- On source page path = /docs/Guide/preconditions/reporting-precondition-failure: + -> linking to ../../Documentation/sapphire-framework/interfaces/MessageCommandDeniedPayload (resolved as: /docs/Documentation/sapphire-framework/interfaces/MessageCommandDeniedPayload) diff --git a/tsconfig.eslint.json b/tsconfig.eslint.json index cd608919..75f65a9e 100644 --- a/tsconfig.eslint.json +++ b/tsconfig.eslint.json @@ -1,4 +1,16 @@ { "extends": "./tsconfig.json", - "include": ["babel.config.js", "docs/General", "docs/Guide", "docusaurus.config.js", "projects", "scripts", "sidebars.js", "src", "static"] + "include": [ + "babel.config.js", + "docs/General", + "docs/Guide", + "docusaurus.config.js", + "projects", + "scripts", + "sidebars.js", + "src", + "static", + "docusaurus-discordjs-docgen", + "docusaurus-typedoc-json-parser" + ] } diff --git a/yarn.lock b/yarn.lock index 17be09af..d18ca54a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5,25 +5,6 @@ __metadata: version: 6 cacheKey: 8 -"@actions/core@npm:^1.10.0": - version: 1.10.0 - resolution: "@actions/core@npm:1.10.0" - dependencies: - "@actions/http-client": ^2.0.1 - uuid: ^8.3.2 - checksum: 0a75621e007ab20d887434cdd165f0b9036f14c22252a2faed33543d8b9d04ec95d823e69ca636a25245574e4585d73e1e9e47a845339553c664f9f2c9614669 - languageName: node - linkType: hard - -"@actions/http-client@npm:^2.0.1": - version: 2.0.1 - resolution: "@actions/http-client@npm:2.0.1" - dependencies: - tunnel: ^0.0.6 - checksum: 799ec3df91e28a9da91ce6592e94f8b8923ccf6cc21a2f72c7429be5af5273f1625335411adc2a1bb222d56c852d5767214dfa6fa32a6da7e81dba8290e08f17 - languageName: node - linkType: hard - "@algolia/autocomplete-core@npm:1.7.1": version: 1.7.1 resolution: "@algolia/autocomplete-core@npm:1.7.1" @@ -1606,7 +1587,7 @@ __metadata: languageName: node linkType: hard -"@babel/runtime@npm:^7.1.2, @babel/runtime@npm:^7.10.2, @babel/runtime@npm:^7.10.3, @babel/runtime@npm:^7.11.2, @babel/runtime@npm:^7.12.13, @babel/runtime@npm:^7.12.5, @babel/runtime@npm:^7.17.2, @babel/runtime@npm:^7.18.6, @babel/runtime@npm:^7.18.9, @babel/runtime@npm:^7.8.4": +"@babel/runtime@npm:^7.1.2, @babel/runtime@npm:^7.10.2, @babel/runtime@npm:^7.10.3, @babel/runtime@npm:^7.11.2, @babel/runtime@npm:^7.12.13, @babel/runtime@npm:^7.12.5, @babel/runtime@npm:^7.18.6, @babel/runtime@npm:^7.18.9, @babel/runtime@npm:^7.8.4": version: 7.19.4 resolution: "@babel/runtime@npm:7.19.4" dependencies: @@ -1655,13 +1636,6 @@ __metadata: languageName: node linkType: hard -"@bcoe/v8-coverage@npm:^0.2.3": - version: 0.2.3 - resolution: "@bcoe/v8-coverage@npm:0.2.3" - checksum: 850f9305536d0f2bd13e9e0881cb5f02e4f93fad1189f7b2d4bebf694e3206924eadee1068130d43c11b750efcc9405f88a8e42ef098b6d75239c0f047de1a27 - languageName: node - linkType: hard - "@colors/colors@npm:1.5.0": version: 1.5.0 resolution: "@colors/colors@npm:1.5.0" @@ -1869,52 +1843,6 @@ __metadata: languageName: node linkType: hard -"@discordjs/builders@npm:^0.16.0": - version: 0.16.0 - resolution: "@discordjs/builders@npm:0.16.0" - dependencies: - "@sapphire/shapeshift": ^3.5.1 - discord-api-types: ^0.36.2 - fast-deep-equal: ^3.1.3 - ts-mixer: ^6.0.1 - tslib: ^2.4.0 - checksum: bf7ab00924bf84678c139b32c3b6bda16d62f190a1674ebaa4ec8767c7105890b1375716296037306661e138fe1c09c535b3141a047b7fceafaa92937a76cb8b - languageName: node - linkType: hard - -"@discordjs/collection@npm:^0.7.0": - version: 0.7.0 - resolution: "@discordjs/collection@npm:0.7.0" - checksum: 141aa35a5433bacba3617b533557b4948388c7b59cdaecee51ccd721c1b9242e50d95bdef53ee2491535a017095f5072ace3c3e9e594193f67a1c5a8a4b7db93 - languageName: node - linkType: hard - -"@discordjs/collection@npm:^1.1.0, @discordjs/collection@npm:^1.2.0": - version: 1.2.0 - resolution: "@discordjs/collection@npm:1.2.0" - checksum: 76eae566834d78437363a3437d10c74b485b0a8b0dd350745e7bbb45d0bdc834b8ce6c1008c41728f7cbdf9be80a3147e8006610ed8d34bec8b31b7c521d40c2 - languageName: node - linkType: hard - -"@discordjs/node-pre-gyp@npm:^0.4.4": - version: 0.4.5 - resolution: "@discordjs/node-pre-gyp@npm:0.4.5" - dependencies: - detect-libc: ^2.0.0 - https-proxy-agent: ^5.0.0 - make-dir: ^3.1.0 - node-fetch: ^2.6.7 - nopt: ^5.0.0 - npmlog: ^5.0.1 - rimraf: ^3.0.2 - semver: ^7.3.5 - tar: ^6.1.11 - bin: - node-pre-gyp: bin/node-pre-gyp - checksum: 60ba7bfdb9e002ff6ff47086312ca446e97b2dfa695a581a1b49eb94d2c716ad509166d97b66b76096d8fd33b9aaa4bb88dad083980821b7691aa55ebccdb5e4 - languageName: node - linkType: hard - "@docsearch/css@npm:3.2.2": version: 3.2.2 resolution: "@docsearch/css@npm:3.2.2" @@ -2400,7 +2328,7 @@ __metadata: languageName: node linkType: hard -"@docusaurus/types@npm:2.1.0": +"@docusaurus/types@npm:2.1.0, @docusaurus/types@npm:^2.1.0": version: 2.1.0 resolution: "@docusaurus/types@npm:2.1.0" dependencies: @@ -2474,27 +2402,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/android-arm@npm:0.15.12": - version: 0.15.12 - resolution: "@esbuild/android-arm@npm:0.15.12" - conditions: os=android & cpu=arm - languageName: node - linkType: hard - -"@esbuild/linux-loong64@npm:0.14.54": - version: 0.14.54 - resolution: "@esbuild/linux-loong64@npm:0.14.54" - conditions: os=linux & cpu=loong64 - languageName: node - linkType: hard - -"@esbuild/linux-loong64@npm:0.15.12": - version: 0.15.12 - resolution: "@esbuild/linux-loong64@npm:0.15.12" - conditions: os=linux & cpu=loong64 - languageName: node - linkType: hard - "@eslint/eslintrc@npm:^1.3.3": version: 1.3.3 resolution: "@eslint/eslintrc@npm:1.3.3" @@ -2512,26 +2419,6 @@ __metadata: languageName: node linkType: hard -"@favware/cliff-jumper@npm:^1.8.8": - version: 1.8.8 - resolution: "@favware/cliff-jumper@npm:1.8.8" - dependencies: - "@sapphire/result": ^2.5.0 - "@sapphire/utilities": ^3.9.3 - colorette: ^2.0.19 - commander: ^9.4.1 - conventional-changelog-angular: ^5.0.13 - conventional-recommended-bump: ^6.1.0 - js-yaml: ^4.1.0 - semver: ^7.3.7 - typescript: ^4.8.4 - bin: - cj: ./dist/cli.js - cliff-jumper: ./dist/cli.js - checksum: 1e82daac8d975b7835b7326db794502d0aebd4f141dd18fdf5ccb80d4e2566050272bf2be5d82d918ea81a2a5a0245c71cb6738f366142e4da8d95403c08ab3e - languageName: node - linkType: hard - "@favware/colorette-spinner@npm:^1.0.1": version: 1.0.1 resolution: "@favware/colorette-spinner@npm:1.0.1" @@ -2541,43 +2428,6 @@ __metadata: languageName: node linkType: hard -"@favware/npm-deprecate@npm:^1.0.5": - version: 1.0.5 - resolution: "@favware/npm-deprecate@npm:1.0.5" - dependencies: - "@sapphire/fetch": ^2.4.1 - "@sapphire/utilities": ^3.8.0 - colorette: ^2.0.19 - commander: ^9.4.0 - js-yaml: ^4.1.0 - micromatch: ^4.0.5 - npm-package-arg: ^9.1.0 - npm-registry-fetch: ^13.3.0 - bin: - nd: dist/cli.js - npm-deprecate: dist/cli.js - checksum: 6ea6ab42cad38d9ab19bf33a71b0a0056c10edcce23f1cde98c91d1bb39723d996a6ce6203805dd828cc42dffd4d4cd1d9ef0dc1446795ae1df95e2be0a9c640 - languageName: node - linkType: hard - -"@favware/rollup-type-bundler@npm:^2.0.0": - version: 2.0.0 - resolution: "@favware/rollup-type-bundler@npm:2.0.0" - dependencies: - "@sapphire/utilities": ^3.11.0 - colorette: ^2.0.19 - commander: ^9.4.1 - js-yaml: ^4.1.0 - rollup: ^3.2.1 - rollup-plugin-dts: ^5.0.0 - typescript: ^4.8.4 - bin: - rollup-type-bundler: ./dist/cli.js - rtb: ./dist/cli.js - checksum: 382244abb06434b9a1486337d9257464cc79afdb3da699373ca3d356951b95183206c3bac052a6491184436b10b41a8639b6ef155c58eed5b6f54be95d898918 - languageName: node - linkType: hard - "@gar/promisify@npm:^1.1.3": version: 1.1.3 resolution: "@gar/promisify@npm:1.1.3" @@ -2635,20 +2485,6 @@ __metadata: languageName: node linkType: hard -"@ioredis/commands@npm:^1.1.1": - version: 1.2.0 - resolution: "@ioredis/commands@npm:1.2.0" - checksum: 9b20225ba36ef3e5caf69b3c0720597c3016cc9b1e157f519ea388f621dd9037177f84cfe7e25c4c32dad7dd90c70ff9123cd411f747e053cf292193c9c461e2 - languageName: node - linkType: hard - -"@istanbuljs/schema@npm:^0.1.2, @istanbuljs/schema@npm:^0.1.3": - version: 0.1.3 - resolution: "@istanbuljs/schema@npm:0.1.3" - checksum: 5282759d961d61350f33d9118d16bcaed914ebf8061a52f4fa474b2cb08720c9c81d165e13b82f2e5a8a212cc5af482f0c6fc1ac27b9e067e5394c9a6ed186c9 - languageName: node - linkType: hard - "@jest/schemas@npm:^29.0.0": version: 29.0.0 resolution: "@jest/schemas@npm:29.0.0" @@ -2734,7 +2570,7 @@ __metadata: languageName: node linkType: hard -"@jridgewell/trace-mapping@npm:^0.3.12, @jridgewell/trace-mapping@npm:^0.3.14, @jridgewell/trace-mapping@npm:^0.3.9": +"@jridgewell/trace-mapping@npm:^0.3.14, @jridgewell/trace-mapping@npm:^0.3.9": version: 0.3.17 resolution: "@jridgewell/trace-mapping@npm:0.3.17" dependencies: @@ -2744,13 +2580,6 @@ __metadata: languageName: node linkType: hard -"@jspm/core@npm:2.0.0-beta.24": - version: 2.0.0-beta.24 - resolution: "@jspm/core@npm:2.0.0-beta.24" - checksum: c3a986d523a61522794c26b809d1fb40b1404a45a5661ba476b5d529e9c15c4c0dc51983c95168532bcc7455a387f0eceeed06f4b386aa219173535fa53a0a62 - languageName: node - linkType: hard - "@leichtgewicht/ip-codec@npm:^2.0.1": version: 2.0.4 resolution: "@leichtgewicht/ip-codec@npm:2.0.4" @@ -2801,48 +2630,6 @@ __metadata: languageName: node linkType: hard -"@msgpackr-extract/msgpackr-extract-darwin-arm64@npm:2.1.2": - version: 2.1.2 - resolution: "@msgpackr-extract/msgpackr-extract-darwin-arm64@npm:2.1.2" - conditions: os=darwin & cpu=arm64 - languageName: node - linkType: hard - -"@msgpackr-extract/msgpackr-extract-darwin-x64@npm:2.1.2": - version: 2.1.2 - resolution: "@msgpackr-extract/msgpackr-extract-darwin-x64@npm:2.1.2" - conditions: os=darwin & cpu=x64 - languageName: node - linkType: hard - -"@msgpackr-extract/msgpackr-extract-linux-arm64@npm:2.1.2": - version: 2.1.2 - resolution: "@msgpackr-extract/msgpackr-extract-linux-arm64@npm:2.1.2" - conditions: os=linux & cpu=arm64 - languageName: node - linkType: hard - -"@msgpackr-extract/msgpackr-extract-linux-arm@npm:2.1.2": - version: 2.1.2 - resolution: "@msgpackr-extract/msgpackr-extract-linux-arm@npm:2.1.2" - conditions: os=linux & cpu=arm - languageName: node - linkType: hard - -"@msgpackr-extract/msgpackr-extract-linux-x64@npm:2.1.2": - version: 2.1.2 - resolution: "@msgpackr-extract/msgpackr-extract-linux-x64@npm:2.1.2" - conditions: os=linux & cpu=x64 - languageName: node - linkType: hard - -"@msgpackr-extract/msgpackr-extract-win32-x64@npm:2.1.2": - version: 2.1.2 - resolution: "@msgpackr-extract/msgpackr-extract-win32-x64@npm:2.1.2" - conditions: os=win32 & cpu=x64 - languageName: node - linkType: hard - "@nodelib/fs.scandir@npm:2.1.5": version: 2.1.5 resolution: "@nodelib/fs.scandir@npm:2.1.5" @@ -2921,19 +2708,6 @@ __metadata: languageName: node linkType: hard -"@rollup/plugin-inject@npm:^4.0.4": - version: 4.0.4 - resolution: "@rollup/plugin-inject@npm:4.0.4" - dependencies: - "@rollup/pluginutils": ^3.1.0 - estree-walker: ^2.0.1 - magic-string: ^0.25.7 - peerDependencies: - rollup: ^1.20.0 || ^2.0.0 - checksum: 22a1847372a96296a5b176af3d5b23ac7b48143a32c77ec4efed38daf4b0d1399a3cd144496d65731299984c5f98c9e00dc6a7f53d0fe87bd4aab2d4bd7b8289 - languageName: node - linkType: hard - "@rollup/plugin-node-resolve@npm:^11.2.1": version: 11.2.1 resolution: "@rollup/plugin-node-resolve@npm:11.2.1" @@ -2975,142 +2749,6 @@ __metadata: languageName: node linkType: hard -"@sapphire/async-queue@npm:^1.5.0": - version: 1.5.0 - resolution: "@sapphire/async-queue@npm:1.5.0" - checksum: 983dbd1fd1b1798496e5edb6a0db7e4d90015160e1028f20475eab0a92625513f1e8d938bc0305811a9cec461c94e01b1e4191615ff03ba49356f568f3255250 - languageName: node - linkType: hard - -"@sapphire/async-queue@workspace:projects/utilities/packages/async-queue": - version: 0.0.0-use.local - resolution: "@sapphire/async-queue@workspace:projects/utilities/packages/async-queue" - dependencies: - "@favware/cliff-jumper": ^1.8.8 - "@vitest/coverage-c8": ^0.24.3 - tsup: ^6.2.3 - typedoc: ^0.23.16 - typedoc-json-parser: ^6.0.0 - typescript: ^4.8.4 - vitest: ^0.24.3 - languageName: unknown - linkType: soft - -"@sapphire/bitfield@workspace:projects/utilities/packages/bitfield": - version: 0.0.0-use.local - resolution: "@sapphire/bitfield@workspace:projects/utilities/packages/bitfield" - dependencies: - "@favware/cliff-jumper": ^1.8.8 - "@vitest/coverage-c8": ^0.24.3 - tsup: ^6.2.3 - typedoc: ^0.23.16 - typedoc-json-parser: ^6.0.0 - typescript: ^4.8.4 - vitest: ^0.24.3 - languageName: unknown - linkType: soft - -"@sapphire/cron@npm:^1.0.0": - version: 1.0.0 - resolution: "@sapphire/cron@npm:1.0.0" - dependencies: - "@sapphire/utilities": ^3.9.3 - checksum: ce33466c52ec8ee9392e67116858643c963a19543f77ce56ca928c743e04f18cde2c793a15c7f0fe0db071f1399a95338f17a25ba746a877dea0918c8b13672e - languageName: node - linkType: hard - -"@sapphire/cron@workspace:^, @sapphire/cron@workspace:projects/utilities/packages/cron": - version: 0.0.0-use.local - resolution: "@sapphire/cron@workspace:projects/utilities/packages/cron" - dependencies: - "@favware/cliff-jumper": ^1.8.8 - "@sapphire/utilities": "workspace:^" - "@vitest/coverage-c8": ^0.24.3 - tsup: ^6.2.3 - typedoc: ^0.23.16 - typedoc-json-parser: ^6.0.0 - typescript: ^4.8.4 - vitest: ^0.24.3 - languageName: unknown - linkType: soft - -"@sapphire/decorators@npm:^5.0.0": - version: 5.0.0 - resolution: "@sapphire/decorators@npm:5.0.0" - dependencies: - tslib: ^2.4.0 - checksum: 18f33669e287df45e7805862c16a6e9c1813c7836985270c0c5867db6e9f724879a228fd19d82fd567f4108d671b9fa862d02ef0010e7f21bfcbc87af05d9ff4 - languageName: node - linkType: hard - -"@sapphire/decorators@workspace:projects/utilities/packages/decorators": - version: 0.0.0-use.local - resolution: "@sapphire/decorators@workspace:projects/utilities/packages/decorators" - dependencies: - "@favware/cliff-jumper": ^1.8.8 - "@sapphire/discord-utilities": "workspace:^" - "@sapphire/discord.js-utilities": "workspace:^" - "@sapphire/ratelimits": "workspace:^" - "@sapphire/result": "workspace:^" - "@sapphire/utilities": "workspace:^" - "@vitest/coverage-c8": ^0.24.3 - tslib: ^2.4.0 - tsup: ^6.2.3 - typedoc: ^0.23.16 - typedoc-json-parser: ^6.0.0 - typescript: ^4.8.4 - vitest: ^0.24.3 - languageName: unknown - linkType: soft - -"@sapphire/discord-utilities@npm:^2.11.6": - version: 2.11.6 - resolution: "@sapphire/discord-utilities@npm:2.11.6" - checksum: aaabbb3558fa9255ab7fd874c6dba845caa6b5b2cbfccc96c6365d828888fc50b95c4fc9cb5f4aa6a7c904d7d9a95e61b80018a90e55bcc5d3779f2fb57926f1 - languageName: node - linkType: hard - -"@sapphire/discord-utilities@workspace:^, @sapphire/discord-utilities@workspace:projects/utilities/packages/discord-utilities": - version: 0.0.0-use.local - resolution: "@sapphire/discord-utilities@workspace:projects/utilities/packages/discord-utilities" - dependencies: - "@favware/cliff-jumper": ^1.8.8 - tsup: ^6.2.3 - typedoc: ^0.23.16 - typedoc-json-parser: ^6.0.0 - typescript: ^4.8.4 - languageName: unknown - linkType: soft - -"@sapphire/discord.js-utilities@npm:^5.0.1, @sapphire/discord.js-utilities@npm:^5.1.1": - version: 5.1.1 - resolution: "@sapphire/discord.js-utilities@npm:5.1.1" - dependencies: - "@sapphire/discord-utilities": ^2.11.6 - "@sapphire/duration": ^1.0.0 - "@sapphire/utilities": ^3.11.0 - tslib: ^2.4.0 - checksum: 9abe09dfd06af739fb103eef954a8c3c9516651612e72ad78f5573cc482b41871267f1780ca4437d55e42f25525f01093ef654809e501e7d887f392e0f9c0005 - languageName: node - linkType: hard - -"@sapphire/discord.js-utilities@workspace:^, @sapphire/discord.js-utilities@workspace:projects/utilities/packages/discord.js-utilities": - version: 0.0.0-use.local - resolution: "@sapphire/discord.js-utilities@workspace:projects/utilities/packages/discord.js-utilities" - dependencies: - "@favware/cliff-jumper": ^1.8.8 - "@favware/rollup-type-bundler": ^2.0.0 - "@sapphire/discord-utilities": "workspace:^" - "@sapphire/duration": "workspace:^" - "@sapphire/utilities": "workspace:^" - tslib: ^2.4.0 - tsup: ^6.2.3 - typedoc: ^0.23.16 - typedoc-json-parser: ^6.0.0 - typescript: ^4.8.4 - languageName: unknown - linkType: soft - "@sapphire/docusaurus-plugin-npm2yarn2pnpm@npm:1.1.4": version: 1.1.4 resolution: "@sapphire/docusaurus-plugin-npm2yarn2pnpm@npm:1.1.4" @@ -3120,7 +2758,7 @@ __metadata: languageName: node linkType: hard -"@sapphire/docusaurus-plugin-ts2esm2cjs@npm:1.1.3": +"@sapphire/docusaurus-plugin-ts2esm2cjs@npm:1.1.3, @sapphire/docusaurus-plugin-ts2esm2cjs@npm:^1.1.3": version: 1.1.3 resolution: "@sapphire/docusaurus-plugin-ts2esm2cjs@npm:1.1.3" dependencies: @@ -3133,27 +2771,6 @@ __metadata: languageName: node linkType: hard -"@sapphire/duration@npm:^1.0.0": - version: 1.0.0 - resolution: "@sapphire/duration@npm:1.0.0" - checksum: dadf3b5742742b5f724d1d78b0c59fd468ffe3ac817da2ba84361ac310528cb8c43f3d9d6032ff08f0f22fcaf61b495fb29b87800748e14abb0b780e86afda75 - languageName: node - linkType: hard - -"@sapphire/duration@workspace:^, @sapphire/duration@workspace:projects/utilities/packages/duration": - version: 0.0.0-use.local - resolution: "@sapphire/duration@workspace:projects/utilities/packages/duration" - dependencies: - "@favware/cliff-jumper": ^1.8.8 - "@vitest/coverage-c8": ^0.24.3 - tsup: ^6.2.3 - typedoc: ^0.23.16 - typedoc-json-parser: ^6.0.0 - typescript: ^4.8.4 - vitest: ^0.24.3 - languageName: unknown - linkType: soft - "@sapphire/eslint-config@npm:^4.3.8": version: 4.3.8 resolution: "@sapphire/eslint-config@npm:4.3.8" @@ -3169,39 +2786,6 @@ __metadata: languageName: node linkType: hard -"@sapphire/eslint-config@workspace:^, @sapphire/eslint-config@workspace:projects/utilities/packages/eslint-config": - version: 0.0.0-use.local - resolution: "@sapphire/eslint-config@workspace:projects/utilities/packages/eslint-config" - dependencies: - "@favware/cliff-jumper": ^1.8.8 - "@typescript-eslint/eslint-plugin": ^5.40.0 - "@typescript-eslint/parser": ^5.40.0 - "@vitest/coverage-c8": ^0.24.3 - eslint: ^8.25.0 - eslint-config-prettier: ^8.5.0 - eslint-plugin-prettier: ^4.2.1 - prettier: ^2.7.1 - tsup: ^6.2.3 - typescript: ^4.8.4 - vitest: ^0.24.3 - languageName: unknown - linkType: soft - -"@sapphire/event-iterator@workspace:projects/utilities/packages/event-iterator": - version: 0.0.0-use.local - resolution: "@sapphire/event-iterator@workspace:projects/utilities/packages/event-iterator" - dependencies: - "@favware/cliff-jumper": ^1.8.8 - "@vitest/coverage-c8": ^0.24.3 - tslib: ^2.4.0 - tsup: ^6.2.3 - typedoc: ^0.23.16 - typedoc-json-parser: ^6.0.0 - typescript: ^4.8.4 - vitest: ^0.24.3 - languageName: unknown - linkType: soft - "@sapphire/fetch@npm:^2.4.1": version: 2.4.1 resolution: "@sapphire/fetch@npm:2.4.1" @@ -3211,528 +2795,32 @@ __metadata: languageName: node linkType: hard -"@sapphire/fetch@workspace:^, @sapphire/fetch@workspace:projects/utilities/packages/fetch": - version: 0.0.0-use.local - resolution: "@sapphire/fetch@workspace:projects/utilities/packages/fetch" +"@sapphire/node-utilities@npm:^1.0.0": + version: 1.0.0 + resolution: "@sapphire/node-utilities@npm:1.0.0" + checksum: 80b99bd4f0fdcbccc289d1fc165321b82d421896355259ec54b733a72cb3e50635c00f126a9e4d56a0247a54aa77a1a96e1d6e99c4c8815dc061e53a39e87c4e + languageName: node + linkType: hard + +"@sapphire/prettier-config@npm:^1.4.3, @sapphire/prettier-config@npm:^1.4.4": + version: 1.4.4 + resolution: "@sapphire/prettier-config@npm:1.4.4" dependencies: - "@favware/cliff-jumper": ^1.8.8 - "@vitest/coverage-c8": ^0.24.3 - cross-fetch: ^3.1.5 - tsup: ^6.2.3 - typedoc: ^0.23.16 - typedoc-json-parser: ^6.0.0 - typescript: ^4.8.4 - vitest: ^0.24.3 - languageName: unknown - linkType: soft + prettier: ^2.7.1 + checksum: bf0f37de120b72b054da8b90ddf08c23210c8b01e42f66c4a6833d55ac78c02e3df7f9af6d35f2574e9c9f5c8b131625730a60bcac055b211789b52101a8921e + languageName: node + linkType: hard -"@sapphire/framework@npm:^3.1.3": - version: 3.1.3 - resolution: "@sapphire/framework@npm:3.1.3" - dependencies: - "@discordjs/builders": ^0.16.0 - "@sapphire/discord-utilities": ^2.11.6 - "@sapphire/discord.js-utilities": ^5.0.1 - "@sapphire/lexure": ^1.1.1 - "@sapphire/pieces": ^3.5.2 - "@sapphire/ratelimits": ^2.4.5 - "@sapphire/result": ^2.5.0 - "@sapphire/stopwatch": ^1.5.0 - "@sapphire/utilities": ^3.10.0 - tslib: ^2.4.0 - checksum: 527728ff68f07d7324181b9669e4907208beae3327b4070705ab89c3b20d0fc7f1eb6038b8f2b7be50f24845863b6a3765a3365277c96eee0233cd1019126eb1 +"@sapphire/result@npm:^2.6.0": + version: 2.6.0 + resolution: "@sapphire/result@npm:2.6.0" + checksum: bab9e963c85c7ea0a410c36617b7d32fca8749739b7fbb61bf7a2eff566d002af78606c379b1a71f2857bf9c04d3f5f1af67f02278da75ac660f2f6ddfef26b5 languageName: node linkType: hard -"@sapphire/framework@workspace:projects/framework": - version: 0.0.0-use.local - resolution: "@sapphire/framework@workspace:projects/framework" - dependencies: - "@commitlint/cli": ^17.1.2 - "@commitlint/config-conventional": ^17.1.0 - "@discordjs/builders": ^0.16.0 - "@favware/cliff-jumper": ^1.8.8 - "@favware/npm-deprecate": ^1.0.5 - "@favware/rollup-type-bundler": ^2.0.0 - "@sapphire/discord-utilities": ^2.11.6 - "@sapphire/discord.js-utilities": ^5.1.1 - "@sapphire/eslint-config": ^4.3.8 - "@sapphire/lexure": ^1.1.2 - "@sapphire/pieces": ^3.5.2 - "@sapphire/prettier-config": ^1.4.4 - "@sapphire/ratelimits": ^2.4.5 - "@sapphire/result": ^2.6.0 - "@sapphire/stopwatch": ^1.5.0 - "@sapphire/ts-config": ^3.3.4 - "@sapphire/utilities": ^3.11.0 - "@types/node": ^18.11.0 - "@types/ws": ^8.5.3 - "@typescript-eslint/eslint-plugin": ^5.40.1 - "@typescript-eslint/parser": ^5.40.1 - "@vitest/coverage-c8": ^0.24.3 - cz-conventional-changelog: ^3.3.0 - discord.js: ^13.12.0 - esbuild-plugin-file-path-extensions: ^1.0.0 - esbuild-plugin-version-injector: ^1.0.0 - eslint: ^8.25.0 - eslint-config-prettier: ^8.5.0 - eslint-plugin-prettier: ^4.2.1 - gen-esm-wrapper: ^1.1.3 - husky: ^8.0.1 - lint-staged: ^13.0.3 - pinst: ^3.0.0 - prettier: ^2.7.1 - pretty-quick: ^3.1.3 - tsup: ^6.3.0 - typedoc: ^0.23.16 - typedoc-json-parser: ^6.0.0 - typescript: ^4.8.4 - vitest: ^0.24.3 - languageName: unknown - linkType: soft - -"@sapphire/lexure@npm:^1.1.1, @sapphire/lexure@npm:^1.1.2": - version: 1.1.2 - resolution: "@sapphire/lexure@npm:1.1.2" - dependencies: - "@sapphire/result": ^2.6.0 - checksum: fe25476ba0189ff8c55c6bdb58ef81b0092f46882c59181e712d68adb68c9d86742365cfcb77e2d6dfb08267752894c9da51615718a1ab77ee3ff3609d93b240 - languageName: node - linkType: hard - -"@sapphire/lexure@workspace:projects/utilities/packages/lexure": - version: 0.0.0-use.local - resolution: "@sapphire/lexure@workspace:projects/utilities/packages/lexure" - dependencies: - "@favware/cliff-jumper": ^1.8.8 - "@sapphire/result": "workspace:^" - "@vitest/coverage-c8": ^0.24.3 - tsup: ^6.2.3 - typedoc: ^0.23.16 - typedoc-json-parser: ^6.0.0 - typescript: ^4.8.4 - vitest: ^0.24.3 - languageName: unknown - linkType: soft - -"@sapphire/node-utilities@npm:^1.0.0": - version: 1.0.0 - resolution: "@sapphire/node-utilities@npm:1.0.0" - checksum: 80b99bd4f0fdcbccc289d1fc165321b82d421896355259ec54b733a72cb3e50635c00f126a9e4d56a0247a54aa77a1a96e1d6e99c4c8815dc061e53a39e87c4e - languageName: node - linkType: hard - -"@sapphire/node-utilities@workspace:projects/utilities/packages/node-utilities": - version: 0.0.0-use.local - resolution: "@sapphire/node-utilities@workspace:projects/utilities/packages/node-utilities" - dependencies: - "@favware/cliff-jumper": ^1.8.8 - "@vitest/coverage-c8": ^0.24.3 - tsup: ^6.2.3 - typedoc: ^0.23.16 - typedoc-json-parser: ^6.0.0 - typescript: ^4.8.4 - vitest: ^0.24.3 - languageName: unknown - linkType: soft - -"@sapphire/phisherman@workspace:projects/utilities/packages/phisherman": - version: 0.0.0-use.local - resolution: "@sapphire/phisherman@workspace:projects/utilities/packages/phisherman" - dependencies: - "@favware/cliff-jumper": ^1.8.8 - "@sapphire/fetch": "workspace:^" - tsup: ^6.2.3 - typedoc: ^0.23.16 - typedoc-json-parser: ^6.0.0 - typescript: ^4.8.4 - languageName: unknown - linkType: soft - -"@sapphire/pieces@npm:^3.5.2": - version: 3.5.2 - resolution: "@sapphire/pieces@npm:3.5.2" - dependencies: - "@discordjs/collection": ^1.1.0 - "@sapphire/utilities": ^3.10.0 - tslib: ^2.4.0 - checksum: 889ee2da817605dcd7681a2c04d471611106f05fc7463220b34eb6a4f6717e47c7c9287dd4903bb42c766f9556c2a987ca997349afa886f25203901794fbec05 - languageName: node - linkType: hard - -"@sapphire/pieces@workspace:projects/pieces": - version: 0.0.0-use.local - resolution: "@sapphire/pieces@workspace:projects/pieces" - dependencies: - "@commitlint/cli": ^17.1.2 - "@commitlint/config-conventional": ^17.1.0 - "@discordjs/collection": ^1.2.0 - "@favware/cliff-jumper": ^1.8.8 - "@favware/npm-deprecate": ^1.0.5 - "@favware/rollup-type-bundler": ^2.0.0 - "@sapphire/eslint-config": ^4.3.8 - "@sapphire/prettier-config": ^1.4.4 - "@sapphire/ts-config": ^3.3.4 - "@sapphire/utilities": ^3.11.0 - "@types/node": ^18.11.0 - "@typescript-eslint/eslint-plugin": ^5.40.0 - "@typescript-eslint/parser": ^5.40.0 - cz-conventional-changelog: ^3.3.0 - eslint: ^8.25.0 - eslint-config-prettier: ^8.5.0 - eslint-plugin-prettier: ^4.2.1 - gen-esm-wrapper: ^1.1.3 - husky: ^8.0.1 - lint-staged: ^13.0.3 - pinst: ^3.0.0 - prettier: ^2.7.1 - pretty-quick: ^3.1.3 - tslib: ^2.4.0 - typedoc: ^0.23.16 - typedoc-json-parser: ^6.0.0 - typescript: ^4.8.4 - languageName: unknown - linkType: soft - -"@sapphire/plugin-api@workspace:projects/plugins/packages/api": - version: 0.0.0-use.local - resolution: "@sapphire/plugin-api@workspace:projects/plugins/packages/api" - dependencies: - "@favware/cliff-jumper": ^1.8.8 - "@types/node-fetch": 2.6.2 - "@types/psl": ^1.1.0 - "@types/ws": ^8.5.3 - gen-esm-wrapper: ^1.1.3 - node-fetch: 2.6.7 - psl: ^1.9.0 - tslib: ^2.4.0 - typedoc: ^0.23.16 - typedoc-json-parser: ^6.0.0 - typescript: ^4.8.4 - languageName: unknown - linkType: soft - -"@sapphire/plugin-editable-commands@workspace:projects/plugins/packages/editable-commands": - version: 0.0.0-use.local - resolution: "@sapphire/plugin-editable-commands@workspace:projects/plugins/packages/editable-commands" - dependencies: - "@favware/cliff-jumper": ^1.8.8 - "@skyra/editable-commands": ^2.1.4 - gen-esm-wrapper: ^1.1.3 - tslib: ^2.4.0 - typedoc: ^0.23.16 - typedoc-json-parser: ^6.0.0 - typescript: ^4.8.4 - languageName: unknown - linkType: soft - -"@sapphire/plugin-hmr@workspace:projects/plugins/packages/hmr": - version: 0.0.0-use.local - resolution: "@sapphire/plugin-hmr@workspace:projects/plugins/packages/hmr" - dependencies: - "@favware/cliff-jumper": ^1.8.8 - chokidar: ^3.5.3 - gen-esm-wrapper: ^1.1.3 - tslib: 2.x - typedoc: ^0.23.16 - typedoc-json-parser: ^6.0.0 - typescript: ^4.8.4 - languageName: unknown - linkType: soft - -"@sapphire/plugin-i18next@workspace:projects/plugins/packages/i18next": - version: 0.0.0-use.local - resolution: "@sapphire/plugin-i18next@workspace:projects/plugins/packages/i18next" - dependencies: - "@favware/cliff-jumper": ^1.8.8 - "@sapphire/utilities": ^3.11.0 - "@skyra/i18next-backend": ^1.1.0 - chokidar: ^3.5.3 - gen-esm-wrapper: ^1.1.3 - i18next: ^21.10.0 - tslib: ^2.4.0 - typedoc: ^0.23.16 - typedoc-json-parser: ^6.0.0 - typescript: ^4.8.4 - languageName: unknown - linkType: soft - -"@sapphire/plugin-logger@workspace:projects/plugins/packages/logger": - version: 0.0.0-use.local - resolution: "@sapphire/plugin-logger@workspace:projects/plugins/packages/logger" - dependencies: - "@favware/cliff-jumper": ^1.8.8 - "@sapphire/timestamp": ^1.0.0 - colorette: ^2.0.19 - gen-esm-wrapper: ^1.1.3 - tslib: ^2.4.0 - typedoc: ^0.23.16 - typedoc-json-parser: ^6.0.0 - typescript: ^4.8.4 - languageName: unknown - linkType: soft - -"@sapphire/plugin-pattern-commands@workspace:projects/plugins/packages/pattern-commands": - version: 0.0.0-use.local - resolution: "@sapphire/plugin-pattern-commands@workspace:projects/plugins/packages/pattern-commands" - dependencies: - "@favware/cliff-jumper": ^1.8.8 - gen-esm-wrapper: ^1.1.3 - tslib: ^2.4.0 - typedoc: ^0.23.16 - typedoc-json-parser: ^6.0.0 - typescript: ^4.8.4 - languageName: unknown - linkType: soft - -"@sapphire/plugin-scheduled-tasks@workspace:projects/plugins/packages/scheduled-tasks": - version: 0.0.0-use.local - resolution: "@sapphire/plugin-scheduled-tasks@workspace:projects/plugins/packages/scheduled-tasks" - dependencies: - "@favware/cliff-jumper": ^1.8.8 - "@sapphire/stopwatch": ^1.5.0 - "@sapphire/utilities": ^3.11.0 - bullmq: ^2.3.1 - gen-esm-wrapper: ^1.1.3 - sqs-consumer: ^5.7.0 - sqs-producer: ^2.1.0 - tslib: ^2.4.0 - typedoc: ^0.23.16 - typedoc-json-parser: ^6.0.0 - typescript: ^4.8.4 - languageName: unknown - linkType: soft - -"@sapphire/plugin-subcommands@workspace:projects/plugins/packages/subcommands": - version: 0.0.0-use.local - resolution: "@sapphire/plugin-subcommands@workspace:projects/plugins/packages/subcommands" - dependencies: - "@favware/cliff-jumper": ^1.8.8 - "@sapphire/utilities": ^3.11.0 - gen-esm-wrapper: ^1.1.3 - tslib: ^2.4.0 - typedoc: ^0.23.16 - typedoc-json-parser: ^6.0.0 - typescript: ^4.8.4 - languageName: unknown - linkType: soft - -"@sapphire/prettier-config@npm:^1.4.3, @sapphire/prettier-config@npm:^1.4.4": - version: 1.4.4 - resolution: "@sapphire/prettier-config@npm:1.4.4" - dependencies: - prettier: ^2.7.1 - checksum: bf0f37de120b72b054da8b90ddf08c23210c8b01e42f66c4a6833d55ac78c02e3df7f9af6d35f2574e9c9f5c8b131625730a60bcac055b211789b52101a8921e - languageName: node - linkType: hard - -"@sapphire/prettier-config@workspace:projects/utilities/packages/prettier-config": - version: 0.0.0-use.local - resolution: "@sapphire/prettier-config@workspace:projects/utilities/packages/prettier-config" - dependencies: - "@favware/cliff-jumper": ^1.8.8 - "@vitest/coverage-c8": ^0.24.3 - prettier: ^2.7.1 - tsup: ^6.2.3 - vitest: ^0.24.3 - languageName: unknown - linkType: soft - -"@sapphire/ratelimits@npm:^2.4.5": - version: 2.4.5 - resolution: "@sapphire/ratelimits@npm:2.4.5" - dependencies: - "@sapphire/timer-manager": ^1.0.0 - checksum: e987d285c974e600222298e2c5e9523581c024059b3ec93cdfc71fc704b2dca5a55f126b897ee71b8bd82d2516e1d6c17c22355f329f43ead7bc001d9fbd9118 - languageName: node - linkType: hard - -"@sapphire/ratelimits@workspace:^, @sapphire/ratelimits@workspace:projects/utilities/packages/ratelimits": - version: 0.0.0-use.local - resolution: "@sapphire/ratelimits@workspace:projects/utilities/packages/ratelimits" - dependencies: - "@favware/cliff-jumper": ^1.8.8 - "@sapphire/timer-manager": "workspace:^" - "@vitest/coverage-c8": ^0.24.3 - tsup: ^6.2.3 - typedoc: ^0.23.16 - typedoc-json-parser: ^6.0.0 - typescript: ^4.8.4 - vitest: ^0.24.3 - languageName: unknown - linkType: soft - -"@sapphire/result@npm:^2.5.0, @sapphire/result@npm:^2.6.0": - version: 2.6.0 - resolution: "@sapphire/result@npm:2.6.0" - checksum: bab9e963c85c7ea0a410c36617b7d32fca8749739b7fbb61bf7a2eff566d002af78606c379b1a71f2857bf9c04d3f5f1af67f02278da75ac660f2f6ddfef26b5 - languageName: node - linkType: hard - -"@sapphire/result@workspace:^, @sapphire/result@workspace:projects/utilities/packages/result": - version: 0.0.0-use.local - resolution: "@sapphire/result@workspace:projects/utilities/packages/result" - dependencies: - "@favware/cliff-jumper": ^1.8.8 - "@vitest/coverage-c8": ^0.24.3 - tsup: ^6.2.3 - typedoc: ^0.23.16 - typedoc-json-parser: ^6.0.0 - typescript: ^4.8.4 - vitest: ^0.24.3 - languageName: unknown - linkType: soft - -"@sapphire/shapeshift@npm:^3.5.1": - version: 3.7.0 - resolution: "@sapphire/shapeshift@npm:3.7.0" - dependencies: - fast-deep-equal: ^3.1.3 - lodash.uniqwith: ^4.5.0 - checksum: 4fed0865abcf3653406cfa1f4a2a7d1c51103cee1c13ec4fd8fbc84bd32d20b2949e2266531c2d81b9b1e3af32787cd1f5d66a3d6146d6afb553ca2c6377beb1 - languageName: node - linkType: hard - -"@sapphire/shapeshift@workspace:projects/shapeshift": - version: 0.0.0-use.local - resolution: "@sapphire/shapeshift@workspace:projects/shapeshift" - dependencies: - "@commitlint/cli": ^17.1.2 - "@commitlint/config-conventional": ^17.1.0 - "@favware/cliff-jumper": ^1.8.8 - "@favware/npm-deprecate": ^1.0.5 - "@sapphire/eslint-config": ^4.3.8 - "@sapphire/prettier-config": ^1.4.4 - "@sapphire/ts-config": ^3.3.4 - "@types/jsdom": ^20.0.0 - "@types/lodash.uniqwith": ^4.5.7 - "@types/node": ^18.11.0 - "@typescript-eslint/eslint-plugin": ^5.40.0 - "@typescript-eslint/parser": ^5.40.0 - "@vitest/coverage-c8": ^0.24.3 - cz-conventional-changelog: ^3.3.0 - esbuild-plugins-node-modules-polyfill: ^1.0.6 - eslint: ^8.25.0 - eslint-config-prettier: ^8.5.0 - eslint-plugin-prettier: ^4.2.1 - fast-deep-equal: ^3.1.3 - husky: ^8.0.1 - jsdom: ^20.0.1 - lint-staged: ^13.0.3 - lodash.uniqwith: ^4.5.0 - pinst: ^3.0.0 - prettier: ^2.7.1 - pretty-quick: ^3.1.3 - ts-node: ^10.9.1 - tsup: ^6.2.3 - typedoc: ^0.23.16 - typedoc-json-parser: ^6.0.0 - typescript: ^4.8.4 - vitest: ^0.24.3 - languageName: unknown - linkType: soft - -"@sapphire/snowflake@workspace:projects/utilities/packages/snowflake": - version: 0.0.0-use.local - resolution: "@sapphire/snowflake@workspace:projects/utilities/packages/snowflake" - dependencies: - "@favware/cliff-jumper": ^1.8.8 - "@vitest/coverage-c8": ^0.24.3 - tsup: ^6.2.3 - typedoc: ^0.23.16 - typedoc-json-parser: ^6.0.0 - typescript: ^4.8.4 - vitest: ^0.24.3 - languageName: unknown - linkType: soft - -"@sapphire/stopwatch@npm:^1.5.0": - version: 1.5.0 - resolution: "@sapphire/stopwatch@npm:1.5.0" - dependencies: - tslib: ^2.4.0 - checksum: 23c013598d87d2fcc797efe5d2409ae6836b9221d79eacc10b7c2a95f9d694b562b7ad027dc49e9e8125095417199385a15317520fec371bdb8cc7622085e3af - languageName: node - linkType: hard - -"@sapphire/stopwatch@workspace:projects/utilities/packages/stopwatch": - version: 0.0.0-use.local - resolution: "@sapphire/stopwatch@workspace:projects/utilities/packages/stopwatch" - dependencies: - "@favware/cliff-jumper": ^1.8.8 - "@types/jsdom": ^20.0.0 - "@vitest/coverage-c8": ^0.24.3 - jsdom: ^20.0.1 - tslib: ^2.4.0 - tsup: ^6.2.3 - typedoc: ^0.23.16 - typedoc-json-parser: ^6.0.0 - typescript: ^4.8.4 - vitest: ^0.24.3 - languageName: unknown - linkType: soft - -"@sapphire/time-utilities@workspace:projects/utilities/packages/time-utilities": - version: 0.0.0-use.local - resolution: "@sapphire/time-utilities@workspace:projects/utilities/packages/time-utilities" - dependencies: - "@favware/cliff-jumper": ^1.8.8 - "@sapphire/cron": "workspace:^" - "@sapphire/duration": "workspace:^" - "@sapphire/timer-manager": "workspace:^" - "@sapphire/timestamp": "workspace:^" - tsup: ^6.2.3 - typedoc: ^0.23.16 - typedoc-json-parser: ^6.0.0 - typescript: ^4.8.4 - languageName: unknown - linkType: soft - -"@sapphire/timer-manager@npm:^1.0.0": - version: 1.0.0 - resolution: "@sapphire/timer-manager@npm:1.0.0" - checksum: 2f131c2bf1882528c80e6a4aa8f0d3078ae1e2e3d1afc054878fbdb946dc987073d037dad5122e67d20b98e0ec6a37a8e4da7f9c0a91b9711819ad54bbedd6a4 - languageName: node - linkType: hard - -"@sapphire/timer-manager@workspace:^, @sapphire/timer-manager@workspace:projects/utilities/packages/timer-manager": - version: 0.0.0-use.local - resolution: "@sapphire/timer-manager@workspace:projects/utilities/packages/timer-manager" - dependencies: - "@favware/cliff-jumper": ^1.8.8 - "@vitest/coverage-c8": ^0.24.3 - tsup: ^6.2.3 - typedoc: ^0.23.16 - typedoc-json-parser: ^6.0.0 - typescript: ^4.8.4 - vitest: ^0.24.3 - languageName: unknown - linkType: soft - -"@sapphire/timestamp@npm:^1.0.0": - version: 1.0.0 - resolution: "@sapphire/timestamp@npm:1.0.0" - checksum: 2852210825626431cb7aee4da9cd04518778854f5b9e8eafc0fa0a57d499251030ad115f0d0c58e15e5b176cfb495301df7418d95e51c4826e9fadc09ff98bbb - languageName: node - linkType: hard - -"@sapphire/timestamp@workspace:^, @sapphire/timestamp@workspace:projects/utilities/packages/timestamp": - version: 0.0.0-use.local - resolution: "@sapphire/timestamp@workspace:projects/utilities/packages/timestamp" - dependencies: - "@favware/cliff-jumper": ^1.8.8 - "@vitest/coverage-c8": ^0.24.3 - tsup: ^6.2.3 - typedoc: ^0.23.16 - typedoc-json-parser: ^6.0.0 - typescript: ^4.8.4 - vitest: ^0.24.3 - languageName: unknown - linkType: soft - -"@sapphire/ts-config@npm:^3.3.4": - version: 3.3.4 - resolution: "@sapphire/ts-config@npm:3.3.4" +"@sapphire/ts-config@npm:^3.3.4": + version: 3.3.4 + resolution: "@sapphire/ts-config@npm:3.3.4" dependencies: tslib: ^2.3.1 typescript: ^4.6.3 @@ -3740,75 +2828,13 @@ __metadata: languageName: node linkType: hard -"@sapphire/ts-config@workspace:projects/utilities/packages/ts-config": - version: 0.0.0-use.local - resolution: "@sapphire/ts-config@workspace:projects/utilities/packages/ts-config" - dependencies: - "@favware/cliff-jumper": ^1.8.8 - "@sapphire/eslint-config": "workspace:^" - "@vitest/coverage-c8": ^0.24.3 - tslib: ^2.4.0 - typescript: ^4.8.4 - vitest: ^0.24.3 - languageName: unknown - linkType: soft - -"@sapphire/type@workspace:projects/type": - version: 0.0.0-use.local - resolution: "@sapphire/type@workspace:projects/type" - dependencies: - "@commitlint/cli": ^17.1.2 - "@commitlint/config-conventional": ^17.1.0 - "@discordjs/node-pre-gyp": ^0.4.4 - "@favware/cliff-jumper": ^1.8.8 - "@favware/npm-deprecate": ^1.0.5 - "@sapphire/eslint-config": ^4.3.8 - "@sapphire/prettier-config": ^1.4.4 - "@sapphire/ts-config": ^3.3.4 - "@types/node": ^18.11.0 - "@typescript-eslint/eslint-plugin": ^5.40.0 - "@typescript-eslint/parser": ^5.40.0 - "@vitest/coverage-c8": ^0.24.3 - cz-conventional-changelog: ^3.3.0 - eslint: ^8.25.0 - eslint-config-prettier: ^8.5.0 - eslint-plugin-prettier: ^4.2.1 - gen-esm-wrapper: ^1.1.3 - husky: ^8.0.1 - lint-staged: ^13.0.3 - nan: ^2.17.0 - prettier: ^2.7.1 - pretty-quick: ^3.1.3 - tslib: ^2.4.0 - typedoc: ^0.23.16 - typedoc-json-parser: ^6.0.0 - typescript: ^4.8.4 - vitest: ^0.24.3 - languageName: unknown - linkType: soft - -"@sapphire/utilities@npm:^3.10.0, @sapphire/utilities@npm:^3.11.0, @sapphire/utilities@npm:^3.8.0, @sapphire/utilities@npm:^3.9.3": +"@sapphire/utilities@npm:^3.11.0": version: 3.11.0 resolution: "@sapphire/utilities@npm:3.11.0" checksum: 3c8521038b8879524e8114f39eefc8b3b06cf825995f709684238b5cb14bd7df06d232a26a88f79160df290a66f9aa3133f5ce4ff8e2398033db9f301ad31e0d languageName: node linkType: hard -"@sapphire/utilities@workspace:^, @sapphire/utilities@workspace:projects/utilities/packages/utilities": - version: 0.0.0-use.local - resolution: "@sapphire/utilities@workspace:projects/utilities/packages/utilities" - dependencies: - "@favware/cliff-jumper": ^1.8.8 - "@vitest/coverage-c8": ^0.24.3 - esbuild-plugin-file-path-extensions: ^1.0.0 - tsup: ^6.2.3 - typedoc: ^0.23.16 - typedoc-json-parser: ^6.0.0 - typescript: ^4.8.4 - vitest: ^0.24.3 - languageName: unknown - linkType: soft - "@sideway/address@npm:^4.1.3": version: 4.1.4 resolution: "@sideway/address@npm:4.1.4" @@ -3846,22 +2872,6 @@ __metadata: languageName: node linkType: hard -"@skyra/editable-commands@npm:^2.1.4": - version: 2.1.4 - resolution: "@skyra/editable-commands@npm:2.1.4" - checksum: 865c11201c1778543f64dc81e114efae3096bf50653e6301ee576d5d9f2d6623fb3387e39fe06e74ec1b655dd033184d850e5735ea74d54bce169743cc6ab7b3 - languageName: node - linkType: hard - -"@skyra/i18next-backend@npm:^1.1.0": - version: 1.1.0 - resolution: "@skyra/i18next-backend@npm:1.1.0" - dependencies: - tslib: ^2.4.0 - checksum: 1e89ac67b672e70fc16731da127c46d913222feae12208f621524cff67000c4d530673b11f6797d05f821a0c8705073a3d93eed6ccf865c55235ecbc917b0f1b - languageName: node - linkType: hard - "@slorber/static-site-generator-webpack-plugin@npm:^4.0.7": version: 4.0.7 resolution: "@slorber/static-site-generator-webpack-plugin@npm:4.0.7" @@ -4123,19 +3133,10 @@ __metadata: languageName: node linkType: hard -"@types/chai-subset@npm:^1.3.3": - version: 1.3.3 - resolution: "@types/chai-subset@npm:1.3.3" - dependencies: - "@types/chai": "*" - checksum: 4481da7345022995f5a105e6683744f7203d2c3d19cfe88d8e17274d045722948abf55e0adfd97709e0f043dade37a4d4e98cd4c660e2e8a14f23e6ecf79418f - languageName: node - linkType: hard - -"@types/chai@npm:*, @types/chai@npm:^4.3.3": - version: 4.3.3 - resolution: "@types/chai@npm:4.3.3" - checksum: 20cd094753e137cfc35939cae7f0ed78ecda7861e5c94704efab6979b9121a63807e9b631bdcf3a2792d6c6dba44050b13387262f9e63ebb040741c01c345f0a +"@types/common-tags@npm:^1.8.1": + version: 1.8.1 + resolution: "@types/common-tags@npm:1.8.1" + checksum: bec6f68c8c434834380abd1dc057aa6ba26661bb0c65c700b65049e9b104d7be96a987d93dbe8726be68554a23a52514a6967d8903fdb51fb8c78cf909d1e4c1 languageName: node linkType: hard @@ -4254,7 +3255,7 @@ __metadata: languageName: node linkType: hard -"@types/istanbul-lib-coverage@npm:*, @types/istanbul-lib-coverage@npm:^2.0.0, @types/istanbul-lib-coverage@npm:^2.0.1": +"@types/istanbul-lib-coverage@npm:*, @types/istanbul-lib-coverage@npm:^2.0.0": version: 2.0.4 resolution: "@types/istanbul-lib-coverage@npm:2.0.4" checksum: a25d7589ee65c94d31464c16b72a9dc81dfa0bea9d3e105ae03882d616e2a0712a9c101a599ec482d297c3591e16336962878cb3eb1a0a62d5b76d277a890ce7 @@ -4279,17 +3280,6 @@ __metadata: languageName: node linkType: hard -"@types/jsdom@npm:^20.0.0": - version: 20.0.0 - resolution: "@types/jsdom@npm:20.0.0" - dependencies: - "@types/node": "*" - "@types/tough-cookie": "*" - parse5: ^7.0.0 - checksum: 13e67d31347e02d46ec6a23919b3ce39d86136665922a2a6cb977e216a2f46c22d2f025d0586a64ab492ebaa5f43da669b6f173a5a8cfd3e3bb7c9d19b6cfa9e - languageName: node - linkType: hard - "@types/json-schema@npm:*, @types/json-schema@npm:^7.0.4, @types/json-schema@npm:^7.0.5, @types/json-schema@npm:^7.0.8, @types/json-schema@npm:^7.0.9": version: 7.0.11 resolution: "@types/json-schema@npm:7.0.11" @@ -4313,22 +3303,6 @@ __metadata: languageName: node linkType: hard -"@types/lodash.uniqwith@npm:^4.5.7": - version: 4.5.7 - resolution: "@types/lodash.uniqwith@npm:4.5.7" - dependencies: - "@types/lodash": "*" - checksum: feea705d2162d906bfba7043500bb2f149ca6032bb49a24b8f60f96b8ba0a41cd4aff7e82057fe5e9e25909f31ba81b35b34dbda549e5b8ba667db9560285446 - languageName: node - linkType: hard - -"@types/lodash@npm:*, @types/lodash@npm:^4.14.186": - version: 4.14.186 - resolution: "@types/lodash@npm:4.14.186" - checksum: ee0c1368a8100bb6efb88335107473a41928fc307ff1ef4ff1278868ccddba9c04c68c36d1ffe3a0392ef4a956e1955f7de3203ec09df4f1655dd1b88485c549 - languageName: node - linkType: hard - "@types/mdast@npm:^3.0.0": version: 3.0.10 resolution: "@types/mdast@npm:3.0.10" @@ -4359,17 +3333,7 @@ __metadata: languageName: node linkType: hard -"@types/node-fetch@npm:2.6.2, @types/node-fetch@npm:^2.6.2": - version: 2.6.2 - resolution: "@types/node-fetch@npm:2.6.2" - dependencies: - "@types/node": "*" - form-data: ^3.0.0 - checksum: 6f73b1470000d303d25a6fb92875ea837a216656cb7474f66cdd67bb014aa81a5a11e7ac9c21fe19bee9ecb2ef87c1962bceeaec31386119d1ac86e4c30ad7a6 - languageName: node - linkType: hard - -"@types/node@npm:*, @types/node@npm:^18.11.0, @types/node@npm:^18.11.3": +"@types/node@npm:*, @types/node@npm:^18.11.3": version: 18.11.3 resolution: "@types/node@npm:18.11.3" checksum: 3a2a9142d891a90a195c296149bf64a69cc0abcc42f543be911ab22b2e0ead85ff077f90af92f0f13f6e3e5e72501469200fd753dfd1101825d4646a89d3ee47 @@ -4418,13 +3382,6 @@ __metadata: languageName: node linkType: hard -"@types/psl@npm:^1.1.0": - version: 1.1.0 - resolution: "@types/psl@npm:1.1.0" - checksum: 648a4a40827fb101a05616b9c448b04d40c467db9f09e08099274759fd5e032e7d276013296679765c7d7359f43f0479094c1d8b6a56a8f9445b84b5a9af1263 - languageName: node - linkType: hard - "@types/qs@npm:*": version: 6.9.7 resolution: "@types/qs@npm:6.9.7" @@ -4567,13 +3524,6 @@ __metadata: languageName: node linkType: hard -"@types/tough-cookie@npm:*": - version: 4.0.2 - resolution: "@types/tough-cookie@npm:4.0.2" - checksum: e055556ffdaa39ad85ede0af192c93f93f986f4bd9e9426efdc2948e3e2632db3a4a584d4937dbf6d7620527419bc99e6182d3daf2b08685e710f2eda5291905 - languageName: node - linkType: hard - "@types/trusted-types@npm:^2.0.2": version: 2.0.2 resolution: "@types/trusted-types@npm:2.0.2" @@ -4588,7 +3538,7 @@ __metadata: languageName: node linkType: hard -"@types/ws@npm:^8.5.1, @types/ws@npm:^8.5.3": +"@types/ws@npm:^8.5.1": version: 8.5.3 resolution: "@types/ws@npm:8.5.3" dependencies: @@ -4613,7 +3563,7 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/eslint-plugin@npm:^5.33.1, @typescript-eslint/eslint-plugin@npm:^5.40.0, @typescript-eslint/eslint-plugin@npm:^5.40.1": +"@typescript-eslint/eslint-plugin@npm:^5.33.1, @typescript-eslint/eslint-plugin@npm:^5.40.1": version: 5.40.1 resolution: "@typescript-eslint/eslint-plugin@npm:5.40.1" dependencies: @@ -4635,7 +3585,7 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/parser@npm:^5.33.1, @typescript-eslint/parser@npm:^5.40.0, @typescript-eslint/parser@npm:^5.40.1": +"@typescript-eslint/parser@npm:^5.33.1, @typescript-eslint/parser@npm:^5.40.1": version: 5.40.1 resolution: "@typescript-eslint/parser@npm:5.40.1" dependencies: @@ -4732,16 +3682,6 @@ __metadata: languageName: node linkType: hard -"@vitest/coverage-c8@npm:^0.24.3": - version: 0.24.3 - resolution: "@vitest/coverage-c8@npm:0.24.3" - dependencies: - c8: ^7.12.0 - vitest: 0.24.3 - checksum: 75f79fcf7cee7dbdfa4b8978aa80d791288e5975ed6ca723d8b4985ea744c3b022138075065058a9a679346910ae054e23f6ee922b779e8f6e7b88baf0a496fa - languageName: node - linkType: hard - "@webassemblyjs/ast@npm:1.11.1": version: 1.11.1 resolution: "@webassemblyjs/ast@npm:1.11.1" @@ -4919,14 +3859,7 @@ __metadata: languageName: node linkType: hard -"abab@npm:^2.0.6": - version: 2.0.6 - resolution: "abab@npm:2.0.6" - checksum: 6ffc1af4ff315066c62600123990d87551ceb0aafa01e6539da77b0f5987ac7019466780bf480f1787576d4385e3690c81ccc37cfda12819bf510b8ab47e5a3e - languageName: node - linkType: hard - -"abbrev@npm:1, abbrev@npm:^1.0.0": +"abbrev@npm:^1.0.0": version: 1.1.1 resolution: "abbrev@npm:1.1.1" checksum: a4a97ec07d7ea112c517036882b2ac22f3109b7b19077dc656316d07d308438aac28e4d9746dc4d84bf6b1e75b4a7b0a5f3cb30592419f128ca9a8cee3bcfa17 @@ -4943,16 +3876,6 @@ __metadata: languageName: node linkType: hard -"acorn-globals@npm:^7.0.0": - version: 7.0.1 - resolution: "acorn-globals@npm:7.0.1" - dependencies: - acorn: ^8.1.0 - acorn-walk: ^8.0.2 - checksum: 2a2998a547af6d0db5f0cdb90acaa7c3cbca6709010e02121fb8b8617c0fbd8bab0b869579903fde358ac78454356a14fadcc1a672ecb97b04b1c2ccba955ce8 - languageName: node - linkType: hard - "acorn-import-assertions@npm:^1.7.6": version: 1.8.0 resolution: "acorn-import-assertions@npm:1.8.0" @@ -4971,14 +3894,14 @@ __metadata: languageName: node linkType: hard -"acorn-walk@npm:^8.0.0, acorn-walk@npm:^8.0.2, acorn-walk@npm:^8.1.1": +"acorn-walk@npm:^8.0.0, acorn-walk@npm:^8.1.1": version: 8.2.0 resolution: "acorn-walk@npm:8.2.0" checksum: 1715e76c01dd7b2d4ca472f9c58968516a4899378a63ad5b6c2d668bba8da21a71976c14ec5f5b75f887b6317c4ae0b897ab141c831d741dc76024d8745f1ad1 languageName: node linkType: hard -"acorn@npm:^8.0.4, acorn@npm:^8.1.0, acorn@npm:^8.4.1, acorn@npm:^8.5.0, acorn@npm:^8.7.1, acorn@npm:^8.8.0": +"acorn@npm:^8.0.4, acorn@npm:^8.4.1, acorn@npm:^8.5.0, acorn@npm:^8.7.1, acorn@npm:^8.8.0": version: 8.8.0 resolution: "acorn@npm:8.8.0" bin: @@ -5174,13 +4097,6 @@ __metadata: languageName: node linkType: hard -"any-promise@npm:^1.0.0": - version: 1.3.0 - resolution: "any-promise@npm:1.3.0" - checksum: 0ee8a9bdbe882c90464d75d1f55cf027f5458650c4bd1f0467e65aec38ccccda07ca5844969ee77ed46d04e7dded3eaceb027e8d32f385688523fe305fa7e1de - languageName: node - linkType: hard - "anymatch@npm:~3.1.2": version: 3.1.2 resolution: "anymatch@npm:3.1.2" @@ -5198,16 +4114,6 @@ __metadata: languageName: node linkType: hard -"are-we-there-yet@npm:^2.0.0": - version: 2.0.0 - resolution: "are-we-there-yet@npm:2.0.0" - dependencies: - delegates: ^1.0.0 - readable-stream: ^3.6.0 - checksum: 6c80b4fd04ecee6ba6e737e0b72a4b41bdc64b7d279edfc998678567ff583c8df27e27523bc789f2c99be603ffa9eaa612803da1d886962d2086e7ff6fa90c7c - languageName: node - linkType: hard - "are-we-there-yet@npm:^3.0.0": version: 3.0.1 resolution: "are-we-there-yet@npm:3.0.1" @@ -5351,23 +4257,6 @@ __metadata: languageName: node linkType: hard -"assert@npm:^1.4.1": - version: 1.5.0 - resolution: "assert@npm:1.5.0" - dependencies: - object-assign: ^4.1.1 - util: 0.10.3 - checksum: 9be48435f726029ae7020c5888a3566bf4d617687aab280827f2e4029644b6515a9519ea10d018b342147c02faf73d9e9419e780e8937b3786ee4945a0ca71e5 - languageName: node - linkType: hard - -"assertion-error@npm:^1.1.0": - version: 1.1.0 - resolution: "assertion-error@npm:1.1.0" - checksum: fd9429d3a3d4fd61782eb3962ae76b6d08aa7383123fca0596020013b3ebd6647891a85b05ce821c47d1471ed1271f00b0545cf6a4326cf2fc91efcc3b0fbecf - languageName: node - linkType: hard - "ast-types-flow@npm:^0.0.7": version: 0.0.7 resolution: "ast-types-flow@npm:0.0.7" @@ -5391,13 +4280,6 @@ __metadata: languageName: node linkType: hard -"asynckit@npm:^0.4.0": - version: 0.4.0 - resolution: "asynckit@npm:0.4.0" - checksum: 7b78c451df768adba04e2d02e63e2d0bf3b07adcd6e42b4cf665cb7ce899bedd344c69a1dcbce355b5f972d597b25aaa1c1742b52cffd9caccb22f348114f6be - languageName: node - linkType: hard - "at-least-node@npm:^1.0.0": version: 1.0.0 resolution: "at-least-node@npm:1.0.0" @@ -5405,6 +4287,15 @@ __metadata: languageName: node linkType: hard +"atob@npm:^2.1.2": + version: 2.1.2 + resolution: "atob@npm:2.1.2" + bin: + atob: bin/atob.js + checksum: dfeeeb70090c5ebea7be4b9f787f866686c645d9f39a0d184c817252d0cf08455ed25267d79c03254d3be1f03ac399992a792edcd5ffb9c91e097ab5ef42833a + languageName: node + linkType: hard + "autoprefixer@npm:^10.3.7, autoprefixer@npm:^10.4.7": version: 10.4.12 resolution: "autoprefixer@npm:10.4.12" @@ -5423,31 +4314,6 @@ __metadata: languageName: node linkType: hard -"available-typed-arrays@npm:^1.0.5": - version: 1.0.5 - resolution: "available-typed-arrays@npm:1.0.5" - checksum: 20eb47b3cefd7db027b9bbb993c658abd36d4edd3fe1060e83699a03ee275b0c9b216cc076ff3f2db29073225fb70e7613987af14269ac1fe2a19803ccc97f1a - languageName: node - linkType: hard - -"aws-sdk@npm:^2.673.0": - version: 2.1238.0 - resolution: "aws-sdk@npm:2.1238.0" - dependencies: - buffer: 4.9.2 - events: 1.1.1 - ieee754: 1.1.13 - jmespath: 0.16.0 - querystring: 0.2.0 - sax: 1.2.1 - url: 0.10.3 - util: ^0.12.4 - uuid: 8.0.0 - xml2js: 0.4.19 - checksum: 428750039b886c4bf7fdf0aa5a8848f630ee43c985d6128cbb68c0366fc24171aaed3de2c7fbed6d211c9b9fafa01725a03781683b4bc8ce451aab01725aae80 - languageName: node - linkType: hard - "axe-core@npm:^4.4.3": version: 4.4.3 resolution: "axe-core@npm:4.4.3" @@ -5573,7 +4439,7 @@ __metadata: languageName: node linkType: hard -"base64-js@npm:^1.0.2, base64-js@npm:^1.3.1": +"base64-js@npm:^1.3.1": version: 1.5.1 resolution: "base64-js@npm:1.5.1" checksum: 669632eb3745404c2f822a18fc3a0122d2f9a7a13f7fb8b5823ee19d1d2ff9ee5b52c53367176ea4ad093c332fd5ab4bd0ebae5a8e27917a4105a4cfc86b1005 @@ -5732,17 +4598,6 @@ __metadata: languageName: node linkType: hard -"buffer@npm:4.9.2": - version: 4.9.2 - resolution: "buffer@npm:4.9.2" - dependencies: - base64-js: ^1.0.2 - ieee754: ^1.1.4 - isarray: ^1.0.0 - checksum: 8801bc1ba08539f3be70eee307a8b9db3d40f6afbfd3cf623ab7ef41dffff1d0a31de0addbe1e66e0ca5f7193eeb667bfb1ecad3647f8f1b0750de07c13295c3 - languageName: node - linkType: hard - "buffer@npm:^5.5.0": version: 5.7.1 resolution: "buffer@npm:5.7.1" @@ -5760,42 +4615,6 @@ __metadata: languageName: node linkType: hard -"builtins@npm:^5.0.0": - version: 5.0.1 - resolution: "builtins@npm:5.0.1" - dependencies: - semver: ^7.0.0 - checksum: 66d204657fe36522822a95b288943ad11b58f5eaede235b11d8c4edaa28ce4800087d44a2681524c340494aadb120a0068011acabe99d30e8f11a7d826d83515 - languageName: node - linkType: hard - -"bullmq@npm:^2.3.1": - version: 2.3.2 - resolution: "bullmq@npm:2.3.2" - dependencies: - cron-parser: ^4.6.0 - glob: ^8.0.3 - ioredis: ^5.2.2 - lodash: ^4.17.21 - msgpackr: ^1.6.2 - semver: ^7.3.7 - tslib: ^2.0.0 - uuid: ^9.0.0 - checksum: 2a5560a4624e72cad60620de5441eb3549498ad18595c3d9950c3245827462c14ef4d537a6cc900c0ed102c27f8bbe7d8a9e51a9ef8c739e813756e7c9ba9d9d - languageName: node - linkType: hard - -"bundle-require@npm:^3.1.0": - version: 3.1.0 - resolution: "bundle-require@npm:3.1.0" - dependencies: - load-tsconfig: ^0.2.0 - peerDependencies: - esbuild: ">=0.13" - checksum: e433dd18ad2ccaf9d210040c5ce300a8c60f4caf0472856fd5162ec407f7b5b3e0559e540aa92b7381a18a6ff2b45bbe9270dc2fd7ace17e445e72a9cbc7fa95 - languageName: node - linkType: hard - "bytes@npm:3.0.0": version: 3.0.0 resolution: "bytes@npm:3.0.0" @@ -5810,35 +4629,6 @@ __metadata: languageName: node linkType: hard -"c8@npm:^7.12.0": - version: 7.12.0 - resolution: "c8@npm:7.12.0" - dependencies: - "@bcoe/v8-coverage": ^0.2.3 - "@istanbuljs/schema": ^0.1.3 - find-up: ^5.0.0 - foreground-child: ^2.0.0 - istanbul-lib-coverage: ^3.2.0 - istanbul-lib-report: ^3.0.0 - istanbul-reports: ^3.1.4 - rimraf: ^3.0.2 - test-exclude: ^6.0.0 - v8-to-istanbul: ^9.0.0 - yargs: ^16.2.0 - yargs-parser: ^20.2.9 - bin: - c8: bin/c8.js - checksum: 3b7fa9ad7cff2cb0bb579467e6b544498fbd46e9353a809ad3b8cf749df4beadd074cde277356b0552f3c8055b1b3ec3ebaf2209e9ad4bdefed92dbf64d283ab - languageName: node - linkType: hard - -"cac@npm:^6.7.12": - version: 6.7.14 - resolution: "cac@npm:6.7.14" - checksum: 45a2496a9443abbe7f52a49b22fbe51b1905eff46e03fd5e6c98e3f85077be3f8949685a1849b1a9cd2bc3e5567dfebcf64f01ce01847baf918f1b37c839791a - languageName: node - linkType: hard - "cacache@npm:^16.1.0": version: 16.1.3 resolution: "cacache@npm:16.1.3" @@ -5972,21 +4762,6 @@ __metadata: languageName: node linkType: hard -"chai@npm:^4.3.6": - version: 4.3.6 - resolution: "chai@npm:4.3.6" - dependencies: - assertion-error: ^1.1.0 - check-error: ^1.0.2 - deep-eql: ^3.0.1 - get-func-name: ^2.0.0 - loupe: ^2.3.1 - pathval: ^1.1.1 - type-detect: ^4.0.5 - checksum: acff93fd537f96d4a4d62dd83810285dffcfccb5089e1bf2a1205b28ec82d93dff551368722893cf85004282df10ee68802737c33c90c5493957ed449ed7ce71 - languageName: node - linkType: hard - "chalk@npm:^2.0.0, chalk@npm:^2.4.1": version: 2.4.2 resolution: "chalk@npm:2.4.2" @@ -6046,13 +4821,6 @@ __metadata: languageName: node linkType: hard -"check-error@npm:^1.0.2": - version: 1.0.2 - resolution: "check-error@npm:1.0.2" - checksum: d9d106504404b8addd1ee3f63f8c0eaa7cd962a1a28eb9c519b1c4a1dc7098be38007fc0060f045ee00f075fbb7a2a4f42abcf61d68323677e11ab98dc16042e - languageName: node - linkType: hard - "cheerio-select@npm:^2.1.0": version: 2.1.0 resolution: "cheerio-select@npm:2.1.0" @@ -6082,7 +4850,7 @@ __metadata: languageName: node linkType: hard -"chokidar@npm:^3.4.2, chokidar@npm:^3.5.1, chokidar@npm:^3.5.3": +"chokidar@npm:^3.4.2, chokidar@npm:^3.5.3": version: 3.5.3 resolution: "chokidar@npm:3.5.3" dependencies: @@ -6215,17 +4983,6 @@ __metadata: languageName: node linkType: hard -"cliui@npm:^7.0.2": - version: 7.0.4 - resolution: "cliui@npm:7.0.4" - dependencies: - string-width: ^4.2.0 - strip-ansi: ^6.0.0 - wrap-ansi: ^7.0.0 - checksum: ce2e8f578a4813806788ac399b9e866297740eecd4ad1823c27fd344d78b22c5f8597d548adbcc46f0573e43e21e751f39446c5a5e804a12aace402b7a315d7f - languageName: node - linkType: hard - "cliui@npm:^8.0.1": version: 8.0.1 resolution: "cliui@npm:8.0.1" @@ -6271,13 +5028,6 @@ __metadata: languageName: node linkType: hard -"cluster-key-slot@npm:^1.1.0": - version: 1.1.1 - resolution: "cluster-key-slot@npm:1.1.1" - checksum: 2fb7390e7950075acb09fc8aad3dc939abb64b139ba1b5f6341efdd0beda8cdc8b508e5f30d943370cf30ea0c13741c579e0846efd007b328bdc1a5a712264da - languageName: node - linkType: hard - "collapse-white-space@npm:^1.0.2": version: 1.0.6 resolution: "collapse-white-space@npm:1.0.6" @@ -6317,7 +5067,7 @@ __metadata: languageName: node linkType: hard -"color-support@npm:^1.1.2, color-support@npm:^1.1.3": +"color-support@npm:^1.1.3": version: 1.1.3 resolution: "color-support@npm:1.1.3" bin: @@ -6347,15 +5097,6 @@ __metadata: languageName: node linkType: hard -"combined-stream@npm:^1.0.8": - version: 1.0.8 - resolution: "combined-stream@npm:1.0.8" - dependencies: - delayed-stream: ~1.0.0 - checksum: 49fa4aeb4916567e33ea81d088f6584749fc90c7abec76fd516bf1c5aa5c79f3584b5ba3de6b86d26ddd64bae5329c4c7479343250cfe71c75bb366eae53bb7c - languageName: node - linkType: hard - "comma-separated-tokens@npm:^1.0.0": version: 1.0.8 resolution: "comma-separated-tokens@npm:1.0.8" @@ -6370,13 +5111,6 @@ __metadata: languageName: node linkType: hard -"commander@npm:^4.0.0": - version: 4.1.1 - resolution: "commander@npm:4.1.1" - checksum: d7b9913ff92cae20cb577a4ac6fcc121bd6223319e54a40f51a14740a681ad5c574fd29a57da478a5f234a6fa6c52cbf0b7c641353e03c648b1ae85ba670b977 - languageName: node - linkType: hard - "commander@npm:^5.1.0": version: 5.1.0 resolution: "commander@npm:5.1.0" @@ -6398,7 +5132,7 @@ __metadata: languageName: node linkType: hard -"commander@npm:^9.3.0, commander@npm:^9.4.0, commander@npm:^9.4.1": +"commander@npm:^9.3.0, commander@npm:^9.4.1": version: 9.4.1 resolution: "commander@npm:9.4.1" checksum: bfb18e325a5bdf772763c2213d5c7d9e77144d944124e988bcd8e5e65fb6d45d5d4e86b09155d0f2556c9a59c31e428720e57968bcd050b2306e910a0bf3cf13 @@ -6431,7 +5165,7 @@ __metadata: languageName: node linkType: hard -"common-tags@npm:^1.8.0": +"common-tags@npm:^1.8.0, common-tags@npm:^1.8.2": version: 1.8.2 resolution: "common-tags@npm:1.8.2" checksum: 767a6255a84bbc47df49a60ab583053bb29a7d9687066a18500a516188a062c4e4cd52de341f22de0b07062e699b1b8fe3cfa1cb55b241cb9301aeb4f45b4dff @@ -6486,18 +5220,6 @@ __metadata: languageName: node linkType: hard -"concat-stream@npm:^2.0.0": - version: 2.0.0 - resolution: "concat-stream@npm:2.0.0" - dependencies: - buffer-from: ^1.0.0 - inherits: ^2.0.3 - readable-stream: ^3.0.2 - typedarray: ^0.0.6 - checksum: d7f75d48f0ecd356c1545d87e22f57b488172811b1181d96021c7c4b14ab8855f5313280263dca44bb06e5222f274d047da3e290a38841ef87b59719bde967c7 - languageName: node - linkType: hard - "configstore@npm:^5.0.1": version: 5.0.1 resolution: "configstore@npm:5.0.1" @@ -6526,7 +5248,7 @@ __metadata: languageName: node linkType: hard -"console-control-strings@npm:^1.0.0, console-control-strings@npm:^1.1.0": +"console-control-strings@npm:^1.1.0": version: 1.1.0 resolution: "console-control-strings@npm:1.1.0" checksum: 8755d76787f94e6cf79ce4666f0c5519906d7f5b02d4b884cf41e11dcd759ed69c57da0670afd9236d229a46e0f9cf519db0cd829c6dca820bb5a5c3def584ed @@ -6556,7 +5278,7 @@ __metadata: languageName: node linkType: hard -"conventional-changelog-angular@npm:^5.0.11, conventional-changelog-angular@npm:^5.0.13": +"conventional-changelog-angular@npm:^5.0.11": version: 5.0.13 resolution: "conventional-changelog-angular@npm:5.0.13" dependencies: @@ -6577,13 +5299,6 @@ __metadata: languageName: node linkType: hard -"conventional-changelog-preset-loader@npm:^2.3.4": - version: 2.3.4 - resolution: "conventional-changelog-preset-loader@npm:2.3.4" - checksum: 23a889b7fcf6fe7653e61f32a048877b2f954dcc1e0daa2848c5422eb908e6f24c78372f8d0d2130b5ed941c02e7010c599dccf44b8552602c6c8db9cb227453 - languageName: node - linkType: hard - "conventional-commit-types@npm:^3.0.0": version: 3.0.0 resolution: "conventional-commit-types@npm:3.0.0" @@ -6591,17 +5306,7 @@ __metadata: languageName: node linkType: hard -"conventional-commits-filter@npm:^2.0.7": - version: 2.0.7 - resolution: "conventional-commits-filter@npm:2.0.7" - dependencies: - lodash.ismatch: ^4.4.0 - modify-values: ^1.0.0 - checksum: feb567f680a6da1baaa1ef3cff393b3c56a5828f77ab9df5e70626475425d109a6fee0289b4979223c62bbd63bf9c98ef532baa6fcb1b66ee8b5f49077f5d46c - languageName: node - linkType: hard - -"conventional-commits-parser@npm:^3.2.0, conventional-commits-parser@npm:^3.2.2": +"conventional-commits-parser@npm:^3.2.2": version: 3.2.4 resolution: "conventional-commits-parser@npm:3.2.4" dependencies: @@ -6617,25 +5322,7 @@ __metadata: languageName: node linkType: hard -"conventional-recommended-bump@npm:^6.1.0": - version: 6.1.0 - resolution: "conventional-recommended-bump@npm:6.1.0" - dependencies: - concat-stream: ^2.0.0 - conventional-changelog-preset-loader: ^2.3.4 - conventional-commits-filter: ^2.0.7 - conventional-commits-parser: ^3.2.0 - git-raw-commits: ^2.0.8 - git-semver-tags: ^4.1.1 - meow: ^8.0.0 - q: ^1.5.1 - bin: - conventional-recommended-bump: cli.js - checksum: da1d7a5f3b9f7706bede685cdcb3db67997fdaa43c310fd5bf340955c84a4b85dbb9427031522ee06dad290b730a54be987b08629d79c73720dbad3a2531146b - languageName: node - linkType: hard - -"convert-source-map@npm:^1.6.0, convert-source-map@npm:^1.7.0": +"convert-source-map@npm:^1.7.0": version: 1.9.0 resolution: "convert-source-map@npm:1.9.0" checksum: dc55a1f28ddd0e9485ef13565f8f756b342f9a46c4ae18b843fe3c30c675d058d6a4823eff86d472f187b176f0adf51ea7b69ea38be34be4a63cbbf91b0593c8 @@ -6754,15 +5441,6 @@ __metadata: languageName: node linkType: hard -"cron-parser@npm:^4.6.0": - version: 4.6.0 - resolution: "cron-parser@npm:4.6.0" - dependencies: - luxon: ^3.0.1 - checksum: cef63dee396732a8247c2c55d99512db7ad39797459f4bfd534ce5c18efdbf88b16ae8265c3b2abc40cdfadf8930bb1be6778e6ae664ae70e4ed7f206487d0cd - languageName: node - linkType: hard - "cross-fetch@npm:^3.1.5": version: 3.1.5 resolution: "cross-fetch@npm:3.1.5" @@ -6889,6 +5567,17 @@ __metadata: languageName: node linkType: hard +"css@npm:^3.0.0": + version: 3.0.0 + resolution: "css@npm:3.0.0" + dependencies: + inherits: ^2.0.4 + source-map: ^0.6.1 + source-map-resolve: ^0.6.0 + checksum: 4273ac816ddf99b99acb9c1d1a27d86d266a533cc01118369d941d8e8a78277a83cad3315e267a398c509d930fbb86504e193ea1ebc620a4a4212e06fe76e8be + languageName: node + linkType: hard + "cssesc@npm:^3.0.0": version: 3.0.0 resolution: "cssesc@npm:3.0.0" @@ -6984,29 +5673,6 @@ __metadata: languageName: node linkType: hard -"cssom@npm:^0.5.0": - version: 0.5.0 - resolution: "cssom@npm:0.5.0" - checksum: 823471aa30091c59e0a305927c30e7768939b6af70405808f8d2ce1ca778cddcb24722717392438329d1691f9a87cb0183b64b8d779b56a961546d54854fde01 - languageName: node - linkType: hard - -"cssom@npm:~0.3.6": - version: 0.3.8 - resolution: "cssom@npm:0.3.8" - checksum: 24beb3087c76c0d52dd458be9ee1fbc80ac771478a9baef35dd258cdeb527c68eb43204dd439692bb2b1ae5272fa5f2946d10946edab0d04f1078f85e06bc7f6 - languageName: node - linkType: hard - -"cssstyle@npm:^2.3.0": - version: 2.3.0 - resolution: "cssstyle@npm:2.3.0" - dependencies: - cssom: ~0.3.6 - checksum: 5f05e6fd2e3df0b44695c2f08b9ef38b011862b274e320665176467c0725e44a53e341bc4959a41176e83b66064ab786262e7380fd1cabeae6efee0d255bb4e3 - languageName: node - linkType: hard - "csstype@npm:^3.0.2": version: 3.1.1 resolution: "csstype@npm:3.1.1" @@ -7046,17 +5712,6 @@ __metadata: languageName: node linkType: hard -"data-urls@npm:^3.0.2": - version: 3.0.2 - resolution: "data-urls@npm:3.0.2" - dependencies: - abab: ^2.0.6 - whatwg-mimetype: ^3.0.0 - whatwg-url: ^11.0.0 - checksum: 033fc3dd0fba6d24bc9a024ddcf9923691dd24f90a3d26f6545d6a2f71ec6956f93462f2cdf2183cc46f10dc01ed3bcb36731a8208456eb1a08147e571fe2a76 - languageName: node - linkType: hard - "debug@npm:2.6.9, debug@npm:^2.6.0, debug@npm:^2.6.9": version: 2.6.9 resolution: "debug@npm:2.6.9" @@ -7066,7 +5721,7 @@ __metadata: languageName: node linkType: hard -"debug@npm:4, debug@npm:^4.1.0, debug@npm:^4.1.1, debug@npm:^4.3.1, debug@npm:^4.3.2, debug@npm:^4.3.3, debug@npm:^4.3.4": +"debug@npm:4, debug@npm:^4.1.0, debug@npm:^4.1.1, debug@npm:^4.3.2, debug@npm:^4.3.3, debug@npm:^4.3.4": version: 4.3.4 resolution: "debug@npm:4.3.4" dependencies: @@ -7104,10 +5759,10 @@ __metadata: languageName: node linkType: hard -"decimal.js@npm:^10.4.1": - version: 10.4.2 - resolution: "decimal.js@npm:10.4.2" - checksum: 536cd6816a3197f2e1aa3da4860856cb5a2db73f6fafe8cb3b924ccc63f9b7d78296acc13dccbd419bd958ccc6357921fb15467f883b37cab04bfba7044cada2 +"decode-uri-component@npm:^0.2.0": + version: 0.2.0 + resolution: "decode-uri-component@npm:0.2.0" + checksum: f3749344ab9305ffcfe4bfe300e2dbb61fc6359e2b736812100a3b1b6db0a5668cba31a05e4b45d4d63dbf1a18dfa354cd3ca5bb3ededddabb8cd293f4404f94 languageName: node linkType: hard @@ -7127,15 +5782,6 @@ __metadata: languageName: node linkType: hard -"deep-eql@npm:^3.0.1": - version: 3.0.1 - resolution: "deep-eql@npm:3.0.1" - dependencies: - type-detect: ^4.0.0 - checksum: 4f4c9fb79eb994fb6e81d4aa8b063adc40c00f831588aa65e20857d5d52f15fb23034a6576ecf886f7ff6222d5ae42e71e9b7d57113e0715b1df7ea1e812b125 - languageName: node - linkType: hard - "deep-extend@npm:^0.6.0": version: 0.6.0 resolution: "deep-extend@npm:0.6.0" @@ -7143,7 +5789,7 @@ __metadata: languageName: node linkType: hard -"deep-is@npm:^0.1.3, deep-is@npm:~0.1.3": +"deep-is@npm:^0.1.3": version: 0.1.4 resolution: "deep-is@npm:0.1.4" checksum: edb65dd0d7d1b9c40b2f50219aef30e116cedd6fc79290e740972c132c09106d2e80aa0bc8826673dd5a00222d4179c84b36a790eef63a4c4bca75a37ef90804 @@ -7215,24 +5861,10 @@ __metadata: languageName: node linkType: hard -"delayed-stream@npm:~1.0.0": - version: 1.0.0 - resolution: "delayed-stream@npm:1.0.0" - checksum: 46fe6e83e2cb1d85ba50bd52803c68be9bd953282fa7096f51fc29edd5d67ff84ff753c51966061e5ba7cb5e47ef6d36a91924eddb7f3f3483b1c560f77a0020 - languageName: node - linkType: hard - "delegates@npm:^1.0.0": - version: 1.0.0 - resolution: "delegates@npm:1.0.0" - checksum: a51744d9b53c164ba9c0492471a1a2ffa0b6727451bdc89e31627fdf4adda9d51277cfcbfb20f0a6f08ccb3c436f341df3e92631a3440226d93a8971724771fd - languageName: node - linkType: hard - -"denque@npm:^2.0.1": - version: 2.1.0 - resolution: "denque@npm:2.1.0" - checksum: 1d4ae1d05e59ac3a3481e7b478293f4b4c813819342273f3d5b826c7ffa9753c520919ba264f377e09108d24ec6cf0ec0ac729a5686cbb8f32d797126c5dae74 + version: 1.0.0 + resolution: "delegates@npm:1.0.0" + checksum: a51744d9b53c164ba9c0492471a1a2ffa0b6727451bdc89e31627fdf4adda9d51277cfcbfb20f0a6f08ccb3c436f341df3e92631a3440226d93a8971724771fd languageName: node linkType: hard @@ -7280,13 +5912,6 @@ __metadata: languageName: node linkType: hard -"detect-libc@npm:^2.0.0": - version: 2.0.1 - resolution: "detect-libc@npm:2.0.1" - checksum: ccb05fcabbb555beb544d48080179c18523a343face9ee4e1a86605a8715b4169f94d663c21a03c310ac824592f2ba9a5270218819bb411ad7be578a527593d7 - languageName: node - linkType: hard - "detect-node@npm:^2.0.4": version: 2.1.0 resolution: "detect-node@npm:2.1.0" @@ -7336,30 +5961,6 @@ __metadata: languageName: node linkType: hard -"discord-api-types@npm:^0.36.3": - version: 0.36.3 - resolution: "discord-api-types@npm:0.36.3" - checksum: 3089c0fb37425dc5df03c76d82988d43fcc272699b06a02fc830d0a3bef550009aaebdf6d646529e8a7ccea76ae3f43b099d736ea5ef37a0be143142ab49871d - languageName: node - linkType: hard - -"discord.js@npm:^13.12.0": - version: 13.12.0 - resolution: "discord.js@npm:13.12.0" - dependencies: - "@discordjs/builders": ^0.16.0 - "@discordjs/collection": ^0.7.0 - "@sapphire/async-queue": ^1.5.0 - "@types/node-fetch": ^2.6.2 - "@types/ws": ^8.5.3 - discord-api-types: ^0.33.5 - form-data: ^4.0.0 - node-fetch: ^2.6.7 - ws: ^8.9.0 - checksum: e7121efac94cf8dba04999f1050cc369e03651afe7c2d440edab415cfac5b6072cca908e7c1310f0027805deaa955922c4bc0d531ff48d84202c643a0bd5141e - languageName: node - linkType: hard - "dns-equal@npm:^1.0.0": version: 1.0.0 resolution: "dns-equal@npm:1.0.0" @@ -7394,15 +5995,37 @@ __metadata: languageName: node linkType: hard -"docusaurus-plugin-typedoc@npm:^0.17.5": - version: 0.17.5 - resolution: "docusaurus-plugin-typedoc@npm:0.17.5" - peerDependencies: - typedoc: ">=0.22.0" - typedoc-plugin-markdown: ">=3.11.10" - checksum: 62af962dad33a413fe3b049b8a5642a3533f35d1cc6163e5db1a06d476b8eab77c4be9bea86c5ae9e30a0310039bb8730c18f1a87fcc8a4ef0c13ceba2ed8dd8 - languageName: node - linkType: hard +"docusaurus-discordjs-docgen@workspace:docusaurus-discordjs-docgen": + version: 0.0.0-use.local + resolution: "docusaurus-discordjs-docgen@workspace:docusaurus-discordjs-docgen" + dependencies: + "@docusaurus/types": 2.1.0 + "@sapphire/docusaurus-plugin-ts2esm2cjs": ^1.1.3 + "@sapphire/result": ^2.6.0 + "@sapphire/utilities": ^3.11.0 + "@types/common-tags": ^1.8.1 + common-tags: ^1.8.2 + css: ^3.0.0 + languageName: unknown + linkType: soft + +"docusaurus-typedoc-json-parser@workspace:docusaurus-typedoc-json-parser": + version: 0.0.0-use.local + resolution: "docusaurus-typedoc-json-parser@workspace:docusaurus-typedoc-json-parser" + dependencies: + "@docusaurus/types": ^2.1.0 + "@sapphire/docusaurus-plugin-ts2esm2cjs": ^1.1.3 + "@sapphire/fetch": ^2.4.1 + "@sapphire/result": ^2.6.0 + "@sapphire/utilities": ^3.11.0 + "@types/common-tags": ^1.8.1 + common-tags: ^1.8.2 + css: ^3.0.0 + dotenv: ^16.0.3 + typedoc-json-parser: ^6.0.2 + typescript: ^4.8.4 + languageName: unknown + linkType: soft "dom-converter@npm:^0.2.0": version: 0.2.0 @@ -7442,15 +6065,6 @@ __metadata: languageName: node linkType: hard -"domexception@npm:^4.0.0": - version: 4.0.0 - resolution: "domexception@npm:4.0.0" - dependencies: - webidl-conversions: ^7.0.0 - checksum: ddbc1268edf33a8ba02ccc596735ede80375ee0cf124b30d2f05df5b464ba78ef4f49889b6391df4a04954e63d42d5631c7fcf8b1c4f12bc531252977a5f13d5 - languageName: node - linkType: hard - "domhandler@npm:^4.0.0, domhandler@npm:^4.2.0, domhandler@npm:^4.3.1": version: 4.3.1 resolution: "domhandler@npm:4.3.1" @@ -7510,6 +6124,13 @@ __metadata: languageName: node linkType: hard +"dotenv@npm:^16.0.3": + version: 16.0.3 + resolution: "dotenv@npm:16.0.3" + checksum: afcf03f373d7a6d62c7e9afea6328e62851d627a4e73f2e12d0a8deae1cd375892004f3021883f8aec85932cd2834b091f568ced92b4774625b321db83b827f8 + languageName: node + linkType: hard + "duplexer3@npm:^0.1.4": version: 0.1.5 resolution: "duplexer3@npm:0.1.5" @@ -7663,7 +6284,7 @@ __metadata: languageName: node linkType: hard -"es-abstract@npm:^1.19.0, es-abstract@npm:^1.19.1, es-abstract@npm:^1.19.2, es-abstract@npm:^1.19.5, es-abstract@npm:^1.20.0": +"es-abstract@npm:^1.19.0, es-abstract@npm:^1.19.1, es-abstract@npm:^1.19.2, es-abstract@npm:^1.19.5": version: 1.20.4 resolution: "es-abstract@npm:1.20.4" dependencies: @@ -7722,462 +6343,6 @@ __metadata: languageName: node linkType: hard -"esbuild-android-64@npm:0.14.54": - version: 0.14.54 - resolution: "esbuild-android-64@npm:0.14.54" - conditions: os=android & cpu=x64 - languageName: node - linkType: hard - -"esbuild-android-64@npm:0.15.12": - version: 0.15.12 - resolution: "esbuild-android-64@npm:0.15.12" - conditions: os=android & cpu=x64 - languageName: node - linkType: hard - -"esbuild-android-arm64@npm:0.14.54": - version: 0.14.54 - resolution: "esbuild-android-arm64@npm:0.14.54" - conditions: os=android & cpu=arm64 - languageName: node - linkType: hard - -"esbuild-android-arm64@npm:0.15.12": - version: 0.15.12 - resolution: "esbuild-android-arm64@npm:0.15.12" - conditions: os=android & cpu=arm64 - languageName: node - linkType: hard - -"esbuild-darwin-64@npm:0.14.54": - version: 0.14.54 - resolution: "esbuild-darwin-64@npm:0.14.54" - conditions: os=darwin & cpu=x64 - languageName: node - linkType: hard - -"esbuild-darwin-64@npm:0.15.12": - version: 0.15.12 - resolution: "esbuild-darwin-64@npm:0.15.12" - conditions: os=darwin & cpu=x64 - languageName: node - linkType: hard - -"esbuild-darwin-arm64@npm:0.14.54": - version: 0.14.54 - resolution: "esbuild-darwin-arm64@npm:0.14.54" - conditions: os=darwin & cpu=arm64 - languageName: node - linkType: hard - -"esbuild-darwin-arm64@npm:0.15.12": - version: 0.15.12 - resolution: "esbuild-darwin-arm64@npm:0.15.12" - conditions: os=darwin & cpu=arm64 - languageName: node - linkType: hard - -"esbuild-freebsd-64@npm:0.14.54": - version: 0.14.54 - resolution: "esbuild-freebsd-64@npm:0.14.54" - conditions: os=freebsd & cpu=x64 - languageName: node - linkType: hard - -"esbuild-freebsd-64@npm:0.15.12": - version: 0.15.12 - resolution: "esbuild-freebsd-64@npm:0.15.12" - conditions: os=freebsd & cpu=x64 - languageName: node - linkType: hard - -"esbuild-freebsd-arm64@npm:0.14.54": - version: 0.14.54 - resolution: "esbuild-freebsd-arm64@npm:0.14.54" - conditions: os=freebsd & cpu=arm64 - languageName: node - linkType: hard - -"esbuild-freebsd-arm64@npm:0.15.12": - version: 0.15.12 - resolution: "esbuild-freebsd-arm64@npm:0.15.12" - conditions: os=freebsd & cpu=arm64 - languageName: node - linkType: hard - -"esbuild-linux-32@npm:0.14.54": - version: 0.14.54 - resolution: "esbuild-linux-32@npm:0.14.54" - conditions: os=linux & cpu=ia32 - languageName: node - linkType: hard - -"esbuild-linux-32@npm:0.15.12": - version: 0.15.12 - resolution: "esbuild-linux-32@npm:0.15.12" - conditions: os=linux & cpu=ia32 - languageName: node - linkType: hard - -"esbuild-linux-64@npm:0.14.54": - version: 0.14.54 - resolution: "esbuild-linux-64@npm:0.14.54" - conditions: os=linux & cpu=x64 - languageName: node - linkType: hard - -"esbuild-linux-64@npm:0.15.12": - version: 0.15.12 - resolution: "esbuild-linux-64@npm:0.15.12" - conditions: os=linux & cpu=x64 - languageName: node - linkType: hard - -"esbuild-linux-arm64@npm:0.14.54": - version: 0.14.54 - resolution: "esbuild-linux-arm64@npm:0.14.54" - conditions: os=linux & cpu=arm64 - languageName: node - linkType: hard - -"esbuild-linux-arm64@npm:0.15.12": - version: 0.15.12 - resolution: "esbuild-linux-arm64@npm:0.15.12" - conditions: os=linux & cpu=arm64 - languageName: node - linkType: hard - -"esbuild-linux-arm@npm:0.14.54": - version: 0.14.54 - resolution: "esbuild-linux-arm@npm:0.14.54" - conditions: os=linux & cpu=arm - languageName: node - linkType: hard - -"esbuild-linux-arm@npm:0.15.12": - version: 0.15.12 - resolution: "esbuild-linux-arm@npm:0.15.12" - conditions: os=linux & cpu=arm - languageName: node - linkType: hard - -"esbuild-linux-mips64le@npm:0.14.54": - version: 0.14.54 - resolution: "esbuild-linux-mips64le@npm:0.14.54" - conditions: os=linux & cpu=mips64el - languageName: node - linkType: hard - -"esbuild-linux-mips64le@npm:0.15.12": - version: 0.15.12 - resolution: "esbuild-linux-mips64le@npm:0.15.12" - conditions: os=linux & cpu=mips64el - languageName: node - linkType: hard - -"esbuild-linux-ppc64le@npm:0.14.54": - version: 0.14.54 - resolution: "esbuild-linux-ppc64le@npm:0.14.54" - conditions: os=linux & cpu=ppc64 - languageName: node - linkType: hard - -"esbuild-linux-ppc64le@npm:0.15.12": - version: 0.15.12 - resolution: "esbuild-linux-ppc64le@npm:0.15.12" - conditions: os=linux & cpu=ppc64 - languageName: node - linkType: hard - -"esbuild-linux-riscv64@npm:0.14.54": - version: 0.14.54 - resolution: "esbuild-linux-riscv64@npm:0.14.54" - conditions: os=linux & cpu=riscv64 - languageName: node - linkType: hard - -"esbuild-linux-riscv64@npm:0.15.12": - version: 0.15.12 - resolution: "esbuild-linux-riscv64@npm:0.15.12" - conditions: os=linux & cpu=riscv64 - languageName: node - linkType: hard - -"esbuild-linux-s390x@npm:0.14.54": - version: 0.14.54 - resolution: "esbuild-linux-s390x@npm:0.14.54" - conditions: os=linux & cpu=s390x - languageName: node - linkType: hard - -"esbuild-linux-s390x@npm:0.15.12": - version: 0.15.12 - resolution: "esbuild-linux-s390x@npm:0.15.12" - conditions: os=linux & cpu=s390x - languageName: node - linkType: hard - -"esbuild-netbsd-64@npm:0.14.54": - version: 0.14.54 - resolution: "esbuild-netbsd-64@npm:0.14.54" - conditions: os=netbsd & cpu=x64 - languageName: node - linkType: hard - -"esbuild-netbsd-64@npm:0.15.12": - version: 0.15.12 - resolution: "esbuild-netbsd-64@npm:0.15.12" - conditions: os=netbsd & cpu=x64 - languageName: node - linkType: hard - -"esbuild-openbsd-64@npm:0.14.54": - version: 0.14.54 - resolution: "esbuild-openbsd-64@npm:0.14.54" - conditions: os=openbsd & cpu=x64 - languageName: node - linkType: hard - -"esbuild-openbsd-64@npm:0.15.12": - version: 0.15.12 - resolution: "esbuild-openbsd-64@npm:0.15.12" - conditions: os=openbsd & cpu=x64 - languageName: node - linkType: hard - -"esbuild-plugin-file-path-extensions@npm:^1.0.0": - version: 1.0.0 - resolution: "esbuild-plugin-file-path-extensions@npm:1.0.0" - checksum: 4e844b7822cf444c5e50bef81d59df0b04c4f1377970698679e0b562d5b3b7a3e415108511bbba37c0c394220faea31ec90c1c9fea048b45f218655507236ca7 - languageName: node - linkType: hard - -"esbuild-plugin-version-injector@npm:^1.0.0": - version: 1.0.0 - resolution: "esbuild-plugin-version-injector@npm:1.0.0" - dependencies: - "@sapphire/result": ^2.5.0 - checksum: 2a6eb3f2b3d3d24c6ca8af28925ad8e6f6d0a75f41cdb089bd76c7a74fbd6948d8f64563aa58bd65751054a28be0cfc081a0f56102a1952a5ba4ac541c2ff336 - languageName: node - linkType: hard - -"esbuild-plugins-node-modules-polyfill@npm:^1.0.6": - version: 1.0.6 - resolution: "esbuild-plugins-node-modules-polyfill@npm:1.0.6" - dependencies: - modern-node-polyfills: ^0.0.9 - checksum: f10e58b19a0b6c0ba7a11eddd84685b539d31b9be7cbb934acef64501d9beb3271fc3fc1e9ea9bc017d478f591f126731e9d989ed1dfe6c6146fcf1d3f4c4e7d - languageName: node - linkType: hard - -"esbuild-sunos-64@npm:0.14.54": - version: 0.14.54 - resolution: "esbuild-sunos-64@npm:0.14.54" - conditions: os=sunos & cpu=x64 - languageName: node - linkType: hard - -"esbuild-sunos-64@npm:0.15.12": - version: 0.15.12 - resolution: "esbuild-sunos-64@npm:0.15.12" - conditions: os=sunos & cpu=x64 - languageName: node - linkType: hard - -"esbuild-windows-32@npm:0.14.54": - version: 0.14.54 - resolution: "esbuild-windows-32@npm:0.14.54" - conditions: os=win32 & cpu=ia32 - languageName: node - linkType: hard - -"esbuild-windows-32@npm:0.15.12": - version: 0.15.12 - resolution: "esbuild-windows-32@npm:0.15.12" - conditions: os=win32 & cpu=ia32 - languageName: node - linkType: hard - -"esbuild-windows-64@npm:0.14.54": - version: 0.14.54 - resolution: "esbuild-windows-64@npm:0.14.54" - conditions: os=win32 & cpu=x64 - languageName: node - linkType: hard - -"esbuild-windows-64@npm:0.15.12": - version: 0.15.12 - resolution: "esbuild-windows-64@npm:0.15.12" - conditions: os=win32 & cpu=x64 - languageName: node - linkType: hard - -"esbuild-windows-arm64@npm:0.14.54": - version: 0.14.54 - resolution: "esbuild-windows-arm64@npm:0.14.54" - conditions: os=win32 & cpu=arm64 - languageName: node - linkType: hard - -"esbuild-windows-arm64@npm:0.15.12": - version: 0.15.12 - resolution: "esbuild-windows-arm64@npm:0.15.12" - conditions: os=win32 & cpu=arm64 - languageName: node - linkType: hard - -"esbuild@npm:^0.14.47": - version: 0.14.54 - resolution: "esbuild@npm:0.14.54" - dependencies: - "@esbuild/linux-loong64": 0.14.54 - esbuild-android-64: 0.14.54 - esbuild-android-arm64: 0.14.54 - esbuild-darwin-64: 0.14.54 - esbuild-darwin-arm64: 0.14.54 - esbuild-freebsd-64: 0.14.54 - esbuild-freebsd-arm64: 0.14.54 - esbuild-linux-32: 0.14.54 - esbuild-linux-64: 0.14.54 - esbuild-linux-arm: 0.14.54 - esbuild-linux-arm64: 0.14.54 - esbuild-linux-mips64le: 0.14.54 - esbuild-linux-ppc64le: 0.14.54 - esbuild-linux-riscv64: 0.14.54 - esbuild-linux-s390x: 0.14.54 - esbuild-netbsd-64: 0.14.54 - esbuild-openbsd-64: 0.14.54 - esbuild-sunos-64: 0.14.54 - esbuild-windows-32: 0.14.54 - esbuild-windows-64: 0.14.54 - esbuild-windows-arm64: 0.14.54 - dependenciesMeta: - "@esbuild/linux-loong64": - optional: true - esbuild-android-64: - optional: true - esbuild-android-arm64: - optional: true - esbuild-darwin-64: - optional: true - esbuild-darwin-arm64: - optional: true - esbuild-freebsd-64: - optional: true - esbuild-freebsd-arm64: - optional: true - esbuild-linux-32: - optional: true - esbuild-linux-64: - optional: true - esbuild-linux-arm: - optional: true - esbuild-linux-arm64: - optional: true - esbuild-linux-mips64le: - optional: true - esbuild-linux-ppc64le: - optional: true - esbuild-linux-riscv64: - optional: true - esbuild-linux-s390x: - optional: true - esbuild-netbsd-64: - optional: true - esbuild-openbsd-64: - optional: true - esbuild-sunos-64: - optional: true - esbuild-windows-32: - optional: true - esbuild-windows-64: - optional: true - esbuild-windows-arm64: - optional: true - bin: - esbuild: bin/esbuild - checksum: 49e360b1185c797f5ca3a7f5f0a75121494d97ddf691f65ed1796e6257d318f928342a97f559bb8eced6a90cf604dd22db4a30e0dbbf15edd9dbf22459b639af - languageName: node - linkType: hard - -"esbuild@npm:^0.15.1, esbuild@npm:^0.15.9": - version: 0.15.12 - resolution: "esbuild@npm:0.15.12" - dependencies: - "@esbuild/android-arm": 0.15.12 - "@esbuild/linux-loong64": 0.15.12 - esbuild-android-64: 0.15.12 - esbuild-android-arm64: 0.15.12 - esbuild-darwin-64: 0.15.12 - esbuild-darwin-arm64: 0.15.12 - esbuild-freebsd-64: 0.15.12 - esbuild-freebsd-arm64: 0.15.12 - esbuild-linux-32: 0.15.12 - esbuild-linux-64: 0.15.12 - esbuild-linux-arm: 0.15.12 - esbuild-linux-arm64: 0.15.12 - esbuild-linux-mips64le: 0.15.12 - esbuild-linux-ppc64le: 0.15.12 - esbuild-linux-riscv64: 0.15.12 - esbuild-linux-s390x: 0.15.12 - esbuild-netbsd-64: 0.15.12 - esbuild-openbsd-64: 0.15.12 - esbuild-sunos-64: 0.15.12 - esbuild-windows-32: 0.15.12 - esbuild-windows-64: 0.15.12 - esbuild-windows-arm64: 0.15.12 - dependenciesMeta: - "@esbuild/android-arm": - optional: true - "@esbuild/linux-loong64": - optional: true - esbuild-android-64: - optional: true - esbuild-android-arm64: - optional: true - esbuild-darwin-64: - optional: true - esbuild-darwin-arm64: - optional: true - esbuild-freebsd-64: - optional: true - esbuild-freebsd-arm64: - optional: true - esbuild-linux-32: - optional: true - esbuild-linux-64: - optional: true - esbuild-linux-arm: - optional: true - esbuild-linux-arm64: - optional: true - esbuild-linux-mips64le: - optional: true - esbuild-linux-ppc64le: - optional: true - esbuild-linux-riscv64: - optional: true - esbuild-linux-s390x: - optional: true - esbuild-netbsd-64: - optional: true - esbuild-openbsd-64: - optional: true - esbuild-sunos-64: - optional: true - esbuild-windows-32: - optional: true - esbuild-windows-64: - optional: true - esbuild-windows-arm64: - optional: true - bin: - esbuild: bin/esbuild - checksum: b344d52c57616917719ac2fa38a58eba7d3c9d2a295116272b3e16a4f6327dc42549274c06560d301f9235a6fe31ccb45499b31d04820dfb8527d89d9766a2ad - languageName: node - linkType: hard - "escalade@npm:^3.1.1": version: 3.1.1 resolution: "escalade@npm:3.1.1" @@ -8213,25 +6378,6 @@ __metadata: languageName: node linkType: hard -"escodegen@npm:^2.0.0": - version: 2.0.0 - resolution: "escodegen@npm:2.0.0" - dependencies: - esprima: ^4.0.1 - estraverse: ^5.2.0 - esutils: ^2.0.2 - optionator: ^0.8.1 - source-map: ~0.6.1 - dependenciesMeta: - source-map: - optional: true - bin: - escodegen: bin/escodegen.js - esgenerate: bin/esgenerate.js - checksum: 5aa6b2966fafe0545e4e77936300cc94ad57cfe4dc4ebff9950492eaba83eef634503f12d7e3cbd644ecc1bab388ad0e92b06fd32222c9281a75d1cf02ec6cef - languageName: node - linkType: hard - "eslint-config-prettier@npm:^8.5.0": version: 8.5.0 resolution: "eslint-config-prettier@npm:8.5.0" @@ -8404,7 +6550,7 @@ __metadata: languageName: node linkType: hard -"eslint@npm:^8.22.0, eslint@npm:^8.25.0, eslint@npm:^8.26.0": +"eslint@npm:^8.22.0, eslint@npm:^8.26.0": version: 8.26.0 resolution: "eslint@npm:8.26.0" dependencies: @@ -8471,7 +6617,7 @@ __metadata: languageName: node linkType: hard -"esprima@npm:^4.0.0, esprima@npm:^4.0.1": +"esprima@npm:^4.0.0": version: 4.0.1 resolution: "esprima@npm:4.0.1" bin: @@ -8520,13 +6666,6 @@ __metadata: languageName: node linkType: hard -"estree-walker@npm:^2.0.1": - version: 2.0.2 - resolution: "estree-walker@npm:2.0.2" - checksum: 6151e6f9828abe2259e57f5fd3761335bb0d2ebd76dc1a01048ccee22fabcfef3c0859300f6d83ff0d1927849368775ec5a6d265dde2f6de5a1be1721cd94efc - languageName: node - linkType: hard - "esutils@npm:^2.0.2": version: 2.0.3 resolution: "esutils@npm:2.0.3" @@ -8565,13 +6704,6 @@ __metadata: languageName: node linkType: hard -"events@npm:1.1.1": - version: 1.1.1 - resolution: "events@npm:1.1.1" - checksum: 40431eb005cc4c57861b93d44c2981a49e7feb99df84cf551baed299ceea4444edf7744733f6a6667e942af687359b1f4a87ec1ec4f21d5127dac48a782039b9 - languageName: node - linkType: hard - "events@npm:^3.2.0": version: 3.3.0 resolution: "events@npm:3.3.0" @@ -8739,7 +6871,7 @@ __metadata: languageName: node linkType: hard -"fast-levenshtein@npm:^2.0.6, fast-levenshtein@npm:~2.0.6": +"fast-levenshtein@npm:^2.0.6": version: 2.0.6 resolution: "fast-levenshtein@npm:2.0.6" checksum: 92cfec0a8dfafd9c7a15fba8f2cc29cd0b62b85f056d99ce448bbcd9f708e18ab2764bda4dd5158364f4145a7c72788538994f0d1787b956ef0d1062b0f7c24c @@ -8991,25 +7123,6 @@ __metadata: languageName: node linkType: hard -"for-each@npm:^0.3.3": - version: 0.3.3 - resolution: "for-each@npm:0.3.3" - dependencies: - is-callable: ^1.1.3 - checksum: 6c48ff2bc63362319c65e2edca4a8e1e3483a2fabc72fbe7feaf8c73db94fc7861bd53bc02c8a66a0c1dd709da6b04eec42e0abdd6b40ce47305ae92a25e5d28 - languageName: node - linkType: hard - -"foreground-child@npm:^2.0.0": - version: 2.0.0 - resolution: "foreground-child@npm:2.0.0" - dependencies: - cross-spawn: ^7.0.0 - signal-exit: ^3.0.2 - checksum: f77ec9aff621abd6b754cb59e690743e7639328301fbea6ff09df27d2befaf7dd5b77cec51c32323d73a81a7d91caaf9413990d305cbe3d873eec4fe58960956 - languageName: node - linkType: hard - "fork-ts-checker-webpack-plugin@npm:^6.5.0": version: 6.5.2 resolution: "fork-ts-checker-webpack-plugin@npm:6.5.2" @@ -9041,28 +7154,6 @@ __metadata: languageName: node linkType: hard -"form-data@npm:^3.0.0": - version: 3.0.1 - resolution: "form-data@npm:3.0.1" - dependencies: - asynckit: ^0.4.0 - combined-stream: ^1.0.8 - mime-types: ^2.1.12 - checksum: b019e8d35c8afc14a2bd8a7a92fa4f525a4726b6d5a9740e8d2623c30e308fbb58dc8469f90415a856698933c8479b01646a9dff33c87cc4e76d72aedbbf860d - languageName: node - linkType: hard - -"form-data@npm:^4.0.0": - version: 4.0.0 - resolution: "form-data@npm:4.0.0" - dependencies: - asynckit: ^0.4.0 - combined-stream: ^1.0.8 - mime-types: ^2.1.12 - checksum: 01135bf8675f9d5c61ff18e2e2932f719ca4de964e3be90ef4c36aacfc7b9cb2fceb5eca0b7e0190e3383fe51c5b37f4cb80b62ca06a99aaabfcfd6ac7c9328c - languageName: node - linkType: hard - "forwarded@npm:0.2.0": version: 0.2.0 resolution: "forwarded@npm:0.2.0" @@ -9175,23 +7266,6 @@ __metadata: languageName: node linkType: hard -"gauge@npm:^3.0.0": - version: 3.0.2 - resolution: "gauge@npm:3.0.2" - dependencies: - aproba: ^1.0.3 || ^2.0.0 - color-support: ^1.1.2 - console-control-strings: ^1.0.0 - has-unicode: ^2.0.1 - object-assign: ^4.1.1 - signal-exit: ^3.0.0 - string-width: ^4.2.3 - strip-ansi: ^6.0.1 - wide-align: ^1.1.2 - checksum: 81296c00c7410cdd48f997800155fbead4f32e4f82109be0719c63edc8560e6579946cc8abd04205297640691ec26d21b578837fd13a4e96288ab4b40b1dc3e9 - languageName: node - linkType: hard - "gauge@npm:^4.0.3": version: 4.0.4 resolution: "gauge@npm:4.0.4" @@ -9208,17 +7282,6 @@ __metadata: languageName: node linkType: hard -"gen-esm-wrapper@npm:^1.1.3": - version: 1.1.3 - resolution: "gen-esm-wrapper@npm:1.1.3" - dependencies: - is-valid-identifier: ^2.0.2 - bin: - gen-esm-wrapper: gen-esm-wrapper.js - checksum: 600abe05141d3a3d71af3bd65a1967c7fd09bd7c60d487dca5c30b2af0f58b40580990d34cfa3ac1dffd78463d895912a100bac4ea6e8cb2ee4461bbafa67011 - languageName: node - linkType: hard - "gensync@npm:^1.0.0-beta.1, gensync@npm:^1.0.0-beta.2": version: 1.0.0-beta.2 resolution: "gensync@npm:1.0.0-beta.2" @@ -9233,13 +7296,6 @@ __metadata: languageName: node linkType: hard -"get-func-name@npm:^2.0.0": - version: 2.0.0 - resolution: "get-func-name@npm:2.0.0" - checksum: 8d82e69f3e7fab9e27c547945dfe5cc0c57fc0adf08ce135dddb01081d75684a03e7a0487466f478872b341d52ac763ae49e660d01ab83741f74932085f693c3 - languageName: node - linkType: hard - "get-intrinsic@npm:^1.0.2, get-intrinsic@npm:^1.1.0, get-intrinsic@npm:^1.1.1, get-intrinsic@npm:^1.1.3": version: 1.1.3 resolution: "get-intrinsic@npm:1.1.3" @@ -9293,7 +7349,7 @@ __metadata: languageName: node linkType: hard -"git-raw-commits@npm:^2.0.0, git-raw-commits@npm:^2.0.8": +"git-raw-commits@npm:^2.0.0": version: 2.0.11 resolution: "git-raw-commits@npm:2.0.11" dependencies: @@ -9308,18 +7364,6 @@ __metadata: languageName: node linkType: hard -"git-semver-tags@npm:^4.1.1": - version: 4.1.1 - resolution: "git-semver-tags@npm:4.1.1" - dependencies: - meow: ^8.0.0 - semver: ^6.0.0 - bin: - git-semver-tags: cli.js - checksum: e16d02a515c0f88289a28b5bf59bf42c0dc053765922d3b617ae4b50546bd4f74a25bf3ad53b91cb6c1159319a2e92533b160c573b856c2629125c8b26b3b0e3 - languageName: node - linkType: hard - "github-slugger@npm:^1.4.0": version: 1.4.0 resolution: "github-slugger@npm:1.4.0" @@ -9352,21 +7396,7 @@ __metadata: languageName: node linkType: hard -"glob@npm:7.1.6": - version: 7.1.6 - resolution: "glob@npm:7.1.6" - dependencies: - fs.realpath: ^1.0.0 - inflight: ^1.0.4 - inherits: 2 - minimatch: ^3.0.4 - once: ^1.3.0 - path-is-absolute: ^1.0.0 - checksum: 351d549dd90553b87c2d3f90ce11aed9e1093c74130440e7ae0592e11bbcd2ce7f0ebb8ba6bfe63aaf9b62166a7f4c80cb84490ae5d78408bb2572bf7d4ee0a6 - languageName: node - linkType: hard - -"glob@npm:7.2.3, glob@npm:^7.0.0, glob@npm:^7.1.3, glob@npm:^7.1.4, glob@npm:^7.1.6, glob@npm:^7.2.0": +"glob@npm:7.2.3, glob@npm:^7.0.0, glob@npm:^7.1.3, glob@npm:^7.1.4, glob@npm:^7.1.6": version: 7.2.3 resolution: "glob@npm:7.2.3" dependencies: @@ -9380,7 +7410,7 @@ __metadata: languageName: node linkType: hard -"glob@npm:^8.0.1, glob@npm:^8.0.3": +"glob@npm:^8.0.1": version: 8.0.3 resolution: "glob@npm:8.0.3" dependencies: @@ -9484,7 +7514,7 @@ __metadata: languageName: node linkType: hard -"globby@npm:^11.0.1, globby@npm:^11.0.3, globby@npm:^11.0.4, globby@npm:^11.1.0": +"globby@npm:^11.0.1, globby@npm:^11.0.4, globby@npm:^11.1.0": version: 11.1.0 resolution: "globby@npm:11.1.0" dependencies: @@ -9559,24 +7589,6 @@ __metadata: languageName: node linkType: hard -"handlebars@npm:^4.7.7": - version: 4.7.7 - resolution: "handlebars@npm:4.7.7" - dependencies: - minimist: ^1.2.5 - neo-async: ^2.6.0 - source-map: ^0.6.1 - uglify-js: ^3.1.4 - wordwrap: ^1.0.0 - dependenciesMeta: - uglify-js: - optional: true - bin: - handlebars: bin/handlebars - checksum: 1e79a43f5e18d15742977cb987923eab3e2a8f44f2d9d340982bcb69e1735ed049226e534d7c1074eaddaf37e4fb4f471a8adb71cddd5bc8cf3f894241df5cee - languageName: node - linkType: hard - "hard-rejection@npm:^2.1.0": version: 2.1.0 resolution: "hard-rejection@npm:2.1.0" @@ -9790,15 +7802,6 @@ __metadata: languageName: node linkType: hard -"hosted-git-info@npm:^5.0.0": - version: 5.1.0 - resolution: "hosted-git-info@npm:5.1.0" - dependencies: - lru-cache: ^7.5.1 - checksum: 22abbc6a7418344c883e2df6e791e94b38192b2a61256b19c955999d878b8d5365ea51683fd1f0cc8f217e9bd121db88d5aaa7cf0407c4b7ff287b79aabacbd3 - languageName: node - linkType: hard - "hpack.js@npm:^2.1.6": version: 2.1.6 resolution: "hpack.js@npm:2.1.6" @@ -9811,15 +7814,6 @@ __metadata: languageName: node linkType: hard -"html-encoding-sniffer@npm:^3.0.0": - version: 3.0.0 - resolution: "html-encoding-sniffer@npm:3.0.0" - dependencies: - whatwg-encoding: ^2.0.0 - checksum: 8d806aa00487e279e5ccb573366a951a9f68f65c90298eac9c3a2b440a7ffe46615aff2995a2f61c6746c639234e6179a97e18ca5ccbbf93d3725ef2099a4502 - languageName: node - linkType: hard - "html-entities@npm:^2.3.2": version: 2.3.3 resolution: "html-entities@npm:2.3.3" @@ -9827,13 +7821,6 @@ __metadata: languageName: node linkType: hard -"html-escaper@npm:^2.0.0": - version: 2.0.2 - resolution: "html-escaper@npm:2.0.2" - checksum: d2df2da3ad40ca9ee3a39c5cc6475ef67c8f83c234475f24d8e9ce0dc80a2c82df8e1d6fa78ddd1e9022a586ea1bd247a615e80a5cd9273d90111ddda7d9e974 - languageName: node - linkType: hard - "html-minifier-terser@npm:^6.0.2, html-minifier-terser@npm:^6.1.0": version: 6.1.0 resolution: "html-minifier-terser@npm:6.1.0" @@ -9990,7 +7977,7 @@ __metadata: languageName: node linkType: hard -"https-proxy-agent@npm:^5.0.0, https-proxy-agent@npm:^5.0.1": +"https-proxy-agent@npm:^5.0.0": version: 5.0.1 resolution: "https-proxy-agent@npm:5.0.1" dependencies: @@ -10039,15 +8026,6 @@ __metadata: languageName: node linkType: hard -"i18next@npm:^21.10.0": - version: 21.10.0 - resolution: "i18next@npm:21.10.0" - dependencies: - "@babel/runtime": ^7.17.2 - checksum: f997985e2d4d15a62a0936a82ff6420b97f3f971e776fe685bdd50b4de0cb4dc2198bc75efe6b152844794ebd5040d8060d6d152506a687affad534834836d81 - languageName: node - linkType: hard - "iconv-lite@npm:0.4.24, iconv-lite@npm:^0.4.24": version: 0.4.24 resolution: "iconv-lite@npm:0.4.24" @@ -10057,7 +8035,7 @@ __metadata: languageName: node linkType: hard -"iconv-lite@npm:0.6.3, iconv-lite@npm:^0.6.2": +"iconv-lite@npm:^0.6.2": version: 0.6.3 resolution: "iconv-lite@npm:0.6.3" dependencies: @@ -10082,14 +8060,7 @@ __metadata: languageName: node linkType: hard -"ieee754@npm:1.1.13": - version: 1.1.13 - resolution: "ieee754@npm:1.1.13" - checksum: 102df1ba662e316e6160f7ce29c7c7fa3e04f2014c288336c5a9ff40bbcc2a27d209fa2a81ebfb33f28b1941021343d30e9ad8ee85a2d61f79f5936c35edc33d - languageName: node - linkType: hard - -"ieee754@npm:^1.1.13, ieee754@npm:^1.1.4": +"ieee754@npm:^1.1.13": version: 1.2.1 resolution: "ieee754@npm:1.2.1" checksum: 5144c0c9815e54ada181d80a0b810221a253562422e7c6c3a60b1901154184f49326ec239d618c416c1c5945a2e197107aee8d986a3dd836b53dffefd99b5e7e @@ -10183,13 +8154,6 @@ __metadata: languageName: node linkType: hard -"inherits@npm:2.0.1": - version: 2.0.1 - resolution: "inherits@npm:2.0.1" - checksum: 6536b9377296d4ce8ee89c5c543cb75030934e61af42dba98a428e7d026938c5985ea4d1e3b87743a5b834f40ed1187f89c2d7479e9d59e41d2d1051aefba07b - languageName: node - linkType: hard - "inherits@npm:2.0.3": version: 2.0.3 resolution: "inherits@npm:2.0.3" @@ -10268,23 +8232,6 @@ __metadata: languageName: node linkType: hard -"ioredis@npm:^5.2.2": - version: 5.2.3 - resolution: "ioredis@npm:5.2.3" - dependencies: - "@ioredis/commands": ^1.1.1 - cluster-key-slot: ^1.1.0 - debug: ^4.3.4 - denque: ^2.0.1 - lodash.defaults: ^4.2.0 - lodash.isarguments: ^3.1.0 - redis-errors: ^1.2.0 - redis-parser: ^3.0.0 - standard-as-callback: ^2.1.0 - checksum: 2cb7f0f4217e6774accad3620af1b7114722721c1d1824be2c9f0c2a77ab9629f2e0848d18b1a7208bc37796ae1207cb3e0898fce61900cfe797da0382724ad1 - languageName: node - linkType: hard - "ip@npm:^2.0.0": version: 2.0.0 resolution: "ip@npm:2.0.0" @@ -10323,16 +8270,6 @@ __metadata: languageName: node linkType: hard -"is-arguments@npm:^1.0.4": - version: 1.1.1 - resolution: "is-arguments@npm:1.1.1" - dependencies: - call-bind: ^1.0.2 - has-tostringtag: ^1.0.0 - checksum: 7f02700ec2171b691ef3e4d0e3e6c0ba408e8434368504bb593d0d7c891c0dbfda6d19d30808b904a6cb1929bca648c061ba438c39f296c2a8ca083229c49f27 - languageName: node - linkType: hard - "is-arrayish@npm:^0.2.1": version: 0.2.1 resolution: "is-arrayish@npm:0.2.1" @@ -10375,7 +8312,7 @@ __metadata: languageName: node linkType: hard -"is-callable@npm:^1.1.3, is-callable@npm:^1.1.4, is-callable@npm:^1.2.7": +"is-callable@npm:^1.1.4, is-callable@npm:^1.2.7": version: 1.2.7 resolution: "is-callable@npm:1.2.7" checksum: 61fd57d03b0d984e2ed3720fb1c7a897827ea174bd44402878e059542ea8c4aeedee0ea0985998aa5cc2736b2fa6e271c08587addb5b3959ac52cf665173d1ac @@ -10455,15 +8392,6 @@ __metadata: languageName: node linkType: hard -"is-generator-function@npm:^1.0.7": - version: 1.0.10 - resolution: "is-generator-function@npm:1.0.10" - dependencies: - has-tostringtag: ^1.0.0 - checksum: d54644e7dbaccef15ceb1e5d91d680eb5068c9ee9f9eb0a9e04173eb5542c9b51b5ab52c5537f5703e48d5fddfd376817c1ca07a84a407b7115b769d4bdde72b - languageName: node - linkType: hard - "is-glob@npm:^4.0.0, is-glob@npm:^4.0.1, is-glob@npm:^4.0.3, is-glob@npm:~4.0.1": version: 4.0.3 resolution: "is-glob@npm:4.0.3" @@ -10599,13 +8527,6 @@ __metadata: languageName: node linkType: hard -"is-potential-custom-element-name@npm:^1.0.1": - version: 1.0.1 - resolution: "is-potential-custom-element-name@npm:1.0.1" - checksum: ced7bbbb6433a5b684af581872afe0e1767e2d1146b2207ca0068a648fb5cab9d898495d1ac0583524faaf24ca98176a7d9876363097c2d14fee6dd324f3a1ab - languageName: node - linkType: hard - "is-regex@npm:^1.1.4": version: 1.1.4 resolution: "is-regex@npm:1.1.4" @@ -10680,19 +8601,6 @@ __metadata: languageName: node linkType: hard -"is-typed-array@npm:^1.1.3, is-typed-array@npm:^1.1.9": - version: 1.1.9 - resolution: "is-typed-array@npm:1.1.9" - dependencies: - available-typed-arrays: ^1.0.5 - call-bind: ^1.0.2 - es-abstract: ^1.20.0 - for-each: ^0.3.3 - has-tostringtag: ^1.0.0 - checksum: 11910f1e58755fef43bf0074e52fa5b932bf101ec65d613e0a83d40e8e4c6e3f2ee142d624ebc7624c091d3bbe921131f8db7d36ecbbb71909f2fe310c1faa65 - languageName: node - linkType: hard - "is-typedarray@npm:^1.0.0": version: 1.0.0 resolution: "is-typedarray@npm:1.0.0" @@ -10714,15 +8622,6 @@ __metadata: languageName: node linkType: hard -"is-valid-identifier@npm:^2.0.2": - version: 2.0.2 - resolution: "is-valid-identifier@npm:2.0.2" - dependencies: - assert: ^1.4.1 - checksum: 79e5237998621f09b76582d8ef6928eb4cc96e78795d317aa1ea260aa5d22d4dae3c5baa519414f8e9a4833ee948e3bf0bd98496802f492c30640d672b528117 - languageName: node - linkType: hard - "is-weakref@npm:^1.0.2": version: 1.0.2 resolution: "is-weakref@npm:1.0.2" @@ -10776,7 +8675,7 @@ __metadata: languageName: node linkType: hard -"isarray@npm:^1.0.0, isarray@npm:~1.0.0": +"isarray@npm:~1.0.0": version: 1.0.0 resolution: "isarray@npm:1.0.0" checksum: f032df8e02dce8ec565cf2eb605ea939bdccea528dbcf565cdf92bfa2da9110461159d86a537388ef1acef8815a330642d7885b29010e8f7eac967c9993b65ab @@ -10797,34 +8696,6 @@ __metadata: languageName: node linkType: hard -"istanbul-lib-coverage@npm:^3.0.0, istanbul-lib-coverage@npm:^3.2.0": - version: 3.2.0 - resolution: "istanbul-lib-coverage@npm:3.2.0" - checksum: a2a545033b9d56da04a8571ed05c8120bf10e9bce01cf8633a3a2b0d1d83dff4ac4fe78d6d5673c27fc29b7f21a41d75f83a36be09f82a61c367b56aa73c1ff9 - languageName: node - linkType: hard - -"istanbul-lib-report@npm:^3.0.0": - version: 3.0.0 - resolution: "istanbul-lib-report@npm:3.0.0" - dependencies: - istanbul-lib-coverage: ^3.0.0 - make-dir: ^3.0.0 - supports-color: ^7.1.0 - checksum: 3f29eb3f53c59b987386e07fe772d24c7f58c6897f34c9d7a296f4000de7ae3de9eb95c3de3df91dc65b134c84dee35c54eee572a56243e8907c48064e34ff1b - languageName: node - linkType: hard - -"istanbul-reports@npm:^3.1.4": - version: 3.1.5 - resolution: "istanbul-reports@npm:3.1.5" - dependencies: - html-escaper: ^2.0.0 - istanbul-lib-report: ^3.0.0 - checksum: 7867228f83ed39477b188ea07e7ccb9b4f5320b6f73d1db93a0981b7414fa4ef72d3f80c4692c442f90fc250d9406e71d8d7ab65bb615cb334e6292b73192b89 - languageName: node - linkType: hard - "jake@npm:^10.8.5": version: 10.8.5 resolution: "jake@npm:10.8.5" @@ -10887,13 +8758,6 @@ __metadata: languageName: node linkType: hard -"jmespath@npm:0.16.0": - version: 0.16.0 - resolution: "jmespath@npm:0.16.0" - checksum: 2d602493a1e4addfd1350ac8c9d54b1b03ed09e305fd863bab84a4ee1f52868cf939dd1a08c5cdea29ce9ba8f86875ebb458b6ed45dab3e1c3f2694503fb2fd9 - languageName: node - linkType: hard - "joi@npm:^17.6.0": version: 17.6.3 resolution: "joi@npm:17.6.3" @@ -10907,13 +8771,6 @@ __metadata: languageName: node linkType: hard -"joycon@npm:^3.0.1": - version: 3.1.1 - resolution: "joycon@npm:3.1.1" - checksum: 8003c9c3fc79c5c7602b1c7e9f7a2df2e9916f046b0dbad862aa589be78c15734d11beb9fe846f5e06138df22cb2ad29961b6a986ba81c4920ce2b15a7f11067 - languageName: node - linkType: hard - "js-sdsl@npm:^4.1.4": version: 4.1.5 resolution: "js-sdsl@npm:4.1.5" @@ -10951,45 +8808,6 @@ __metadata: languageName: node linkType: hard -"jsdom@npm:^20.0.1": - version: 20.0.1 - resolution: "jsdom@npm:20.0.1" - dependencies: - abab: ^2.0.6 - acorn: ^8.8.0 - acorn-globals: ^7.0.0 - cssom: ^0.5.0 - cssstyle: ^2.3.0 - data-urls: ^3.0.2 - decimal.js: ^10.4.1 - domexception: ^4.0.0 - escodegen: ^2.0.0 - form-data: ^4.0.0 - html-encoding-sniffer: ^3.0.0 - http-proxy-agent: ^5.0.0 - https-proxy-agent: ^5.0.1 - is-potential-custom-element-name: ^1.0.1 - nwsapi: ^2.2.2 - parse5: ^7.1.1 - saxes: ^6.0.0 - symbol-tree: ^3.2.4 - tough-cookie: ^4.1.2 - w3c-xmlserializer: ^3.0.0 - webidl-conversions: ^7.0.0 - whatwg-encoding: ^2.0.0 - whatwg-mimetype: ^3.0.0 - whatwg-url: ^11.0.0 - ws: ^8.9.0 - xml-name-validator: ^4.0.0 - peerDependencies: - canvas: ^2.5.0 - peerDependenciesMeta: - canvas: - optional: true - checksum: 9fc0b66a866f58a28e95f5a39b167ea663dc01c9754a019c356cc517d27ff0216055f37ace69e0f4414c51084adca8d5ec71c1e6faee3b8df0941a494167c3a0 - languageName: node - linkType: hard - "jsesc@npm:^2.5.1": version: 2.5.2 resolution: "jsesc@npm:2.5.2" @@ -11050,13 +8868,6 @@ __metadata: languageName: node linkType: hard -"json-stringify-safe@npm:^5.0.1": - version: 5.0.1 - resolution: "json-stringify-safe@npm:5.0.1" - checksum: 48ec0adad5280b8a96bb93f4563aa1667fd7a36334f79149abd42446d0989f2ddc58274b479f4819f1f00617957e6344c886c55d05a4e15ebb4ab931e4a6a8ee - languageName: node - linkType: hard - "json5@npm:^1.0.1": version: 1.0.1 resolution: "json5@npm:1.0.1" @@ -11097,7 +8908,7 @@ __metadata: languageName: node linkType: hard -"jsonparse@npm:^1.2.0, jsonparse@npm:^1.3.1": +"jsonparse@npm:^1.2.0": version: 1.3.1 resolution: "jsonparse@npm:1.3.1" checksum: 6514a7be4674ebf407afca0eda3ba284b69b07f9958a8d3113ef1005f7ec610860c312be067e450c569aab8b89635e332cee3696789c750692bb60daba627f4d @@ -11193,16 +9004,6 @@ __metadata: languageName: node linkType: hard -"levn@npm:~0.3.0": - version: 0.3.0 - resolution: "levn@npm:0.3.0" - dependencies: - prelude-ls: ~1.1.2 - type-check: ~0.3.2 - checksum: 0d084a524231a8246bb10fec48cdbb35282099f6954838604f3c7fc66f2e16fa66fd9cc2f3f20a541a113c4dafdf181e822c887c8a319c9195444e6c64ac395e - languageName: node - linkType: hard - "lilconfig@npm:2.0.5": version: 2.0.5 resolution: "lilconfig@npm:2.0.5" @@ -11210,7 +9011,7 @@ __metadata: languageName: node linkType: hard -"lilconfig@npm:^2.0.3, lilconfig@npm:^2.0.5": +"lilconfig@npm:^2.0.3": version: 2.0.6 resolution: "lilconfig@npm:2.0.6" checksum: 40a3cd72f103b1be5975f2ac1850810b61d4053e20ab09be8d3aeddfe042187e1ba70b4651a7e70f95efa1642e7dc8b2ae395b317b7d7753b241b43cef7c0f7d @@ -11277,13 +9078,6 @@ __metadata: languageName: node linkType: hard -"load-tsconfig@npm:^0.2.0": - version: 0.2.3 - resolution: "load-tsconfig@npm:0.2.3" - checksum: e28d1b2725fda76ee69fa4ee21b1257fd5b77b12e1be09cdc0b67f953e62ffbc3e7ac1a6267ec21309f95310cd10635e28a3cb38d04be3f7d683c4fe7914d7a9 - languageName: node - linkType: hard - "loader-runner@npm:^4.2.0": version: 4.3.0 resolution: "loader-runner@npm:4.3.0" @@ -11309,13 +9103,6 @@ __metadata: languageName: node linkType: hard -"local-pkg@npm:^0.4.1, local-pkg@npm:^0.4.2": - version: 0.4.2 - resolution: "local-pkg@npm:0.4.2" - checksum: 22be451353c25c4411b552bf01880ebc9e995b93574b2facc7757968d888356df59199cacada14162ab53bbc9da055bb692c907b4171f008dbce45a2afc777c1 - languageName: node - linkType: hard - "locate-path@npm:^3.0.0": version: 3.0.0 resolution: "locate-path@npm:3.0.0" @@ -11358,13 +9145,6 @@ __metadata: languageName: node linkType: hard -"lodash.defaults@npm:^4.2.0": - version: 4.2.0 - resolution: "lodash.defaults@npm:4.2.0" - checksum: 84923258235592c8886e29de5491946ff8c2ae5c82a7ac5cddd2e3cb697e6fbdfbbb6efcca015795c86eec2bb953a5a2ee4016e3735a3f02720428a40efbb8f1 - languageName: node - linkType: hard - "lodash.flow@npm:^3.3.0": version: 3.5.0 resolution: "lodash.flow@npm:3.5.0" @@ -11372,20 +9152,6 @@ __metadata: languageName: node linkType: hard -"lodash.isarguments@npm:^3.1.0": - version: 3.1.0 - resolution: "lodash.isarguments@npm:3.1.0" - checksum: ae1526f3eb5c61c77944b101b1f655f846ecbedcb9e6b073526eba6890dc0f13f09f72e11ffbf6540b602caee319af9ac363d6cdd6be41f4ee453436f04f13b5 - languageName: node - linkType: hard - -"lodash.ismatch@npm:^4.4.0": - version: 4.4.0 - resolution: "lodash.ismatch@npm:4.4.0" - checksum: a393917578842705c7fc1a30fb80613d1ac42d20b67eb26a2a6004d6d61ee90b419f9eb320508ddcd608e328d91eeaa2651411727eaa9a12534ed6ccb02fc705 - languageName: node - linkType: hard - "lodash.map@npm:^4.5.1": version: 4.6.0 resolution: "lodash.map@npm:4.6.0" @@ -11421,13 +9187,6 @@ __metadata: languageName: node linkType: hard -"lodash.uniqwith@npm:^4.5.0": - version: 4.5.0 - resolution: "lodash.uniqwith@npm:4.5.0" - checksum: d49a4565ed64efd86674127d321622673c29cde3e060baebc0f30372f22886c61b2ead44709db8c890053db1b9660e8ed689689812c1a485eb5703caa94d1150 - languageName: node - linkType: hard - "lodash@npm:4.17.21, lodash@npm:^4.17.14, lodash@npm:^4.17.15, lodash@npm:^4.17.19, lodash@npm:^4.17.20, lodash@npm:^4.17.21": version: 4.17.21 resolution: "lodash@npm:4.17.21" @@ -11475,15 +9234,6 @@ __metadata: languageName: node linkType: hard -"loupe@npm:^2.3.1": - version: 2.3.4 - resolution: "loupe@npm:2.3.4" - dependencies: - get-func-name: ^2.0.0 - checksum: 5af91db61aa18530f1749a64735ee194ac263e65e9f4d1562bf3036c591f1baa948289c193e0e34c7b5e2c1b75d3c1dc4fce87f5edb3cee10b0c0df46bc9ffb3 - languageName: node - linkType: hard - "lower-case@npm:^2.0.2": version: 2.0.2 resolution: "lower-case@npm:2.0.2" @@ -11516,7 +9266,7 @@ __metadata: languageName: node linkType: hard -"lru-cache@npm:^7.5.1, lru-cache@npm:^7.7.1": +"lru-cache@npm:^7.7.1": version: 7.14.0 resolution: "lru-cache@npm:7.14.0" checksum: efdd329f2c1bb790b71d497c6c59272e6bc2d7dd060ba55fc136becd3dd31fc8346edb446275504d94cb60d3c8385dbf5267b79b23789e409b2bdf302d13f0d7 @@ -11530,13 +9280,6 @@ __metadata: languageName: node linkType: hard -"luxon@npm:^3.0.1": - version: 3.0.4 - resolution: "luxon@npm:3.0.4" - checksum: d0908c3951da2a10ccf23040210ead23b0da5366a9d0954e7d5db3560189a7bd703d8af1e00084f197effc9cd7158d1bddf32886d98a70d59ce9bc3fe88bbce0 - languageName: node - linkType: hard - "magic-string@npm:^0.25.0, magic-string@npm:^0.25.7": version: 0.25.9 resolution: "magic-string@npm:0.25.9" @@ -11546,15 +9289,6 @@ __metadata: languageName: node linkType: hard -"magic-string@npm:^0.26.7": - version: 0.26.7 - resolution: "magic-string@npm:0.26.7" - dependencies: - sourcemap-codec: ^1.4.8 - checksum: 89b0d60cbb32bbf3d1e23c46ea93db082d18a8230b972027aecb10a40bba51be519ecce0674f995571e3affe917b76b09f59d8dbc9a1b2c9c4102a2b6e8a2b01 - languageName: node - linkType: hard - "make-dir@npm:^3.0.0, make-dir@npm:^3.0.2, make-dir@npm:^3.1.0": version: 3.1.0 resolution: "make-dir@npm:3.1.0" @@ -11571,7 +9305,7 @@ __metadata: languageName: node linkType: hard -"make-fetch-happen@npm:^10.0.3, make-fetch-happen@npm:^10.0.6": +"make-fetch-happen@npm:^10.0.3": version: 10.2.1 resolution: "make-fetch-happen@npm:10.2.1" dependencies: @@ -11667,7 +9401,7 @@ __metadata: languageName: node linkType: hard -"marked@npm:^4.0.16": +"marked@npm:^4.0.19": version: 4.1.1 resolution: "marked@npm:4.1.1" bin: @@ -11834,7 +9568,7 @@ __metadata: languageName: node linkType: hard -"mime-types@npm:^2.1.12, mime-types@npm:^2.1.27, mime-types@npm:^2.1.31, mime-types@npm:~2.1.17, mime-types@npm:~2.1.24, mime-types@npm:~2.1.34": +"mime-types@npm:^2.1.27, mime-types@npm:^2.1.31, mime-types@npm:~2.1.17, mime-types@npm:~2.1.24, mime-types@npm:~2.1.34": version: 2.1.35 resolution: "mime-types@npm:2.1.35" dependencies: @@ -11976,16 +9710,6 @@ __metadata: languageName: node linkType: hard -"minipass-json-stream@npm:^1.0.1": - version: 1.0.1 - resolution: "minipass-json-stream@npm:1.0.1" - dependencies: - jsonparse: ^1.3.1 - minipass: ^3.0.0 - checksum: 791b696a27d1074c4c08dab1bf5a9f3201145c2933e428f45d880467bce12c60de4703203d2928de4b162d0ae77b0bb4b55f96cb846645800aa0eb4919b3e796 - languageName: node - linkType: hard - "minipass-pipeline@npm:^1.2.4": version: 1.2.4 resolution: "minipass-pipeline@npm:1.2.4" @@ -12032,27 +9756,6 @@ __metadata: languageName: node linkType: hard -"modern-node-polyfills@npm:^0.0.9": - version: 0.0.9 - resolution: "modern-node-polyfills@npm:0.0.9" - dependencies: - "@jspm/core": 2.0.0-beta.24 - "@rollup/plugin-inject": ^4.0.4 - acorn: ^8.8.0 - esbuild: ^0.14.47 - local-pkg: ^0.4.1 - rollup: ^2.75.7 - checksum: 673bc35a99a3acf3188c953aa81c0aef1ca3bb9d813c0305f9db98e531141126519ce074bad9561307774be85919f5086210639938279f4d6b0849b0874629e1 - languageName: node - linkType: hard - -"modify-values@npm:^1.0.0": - version: 1.0.1 - resolution: "modify-values@npm:1.0.1" - checksum: 8296610c608bc97b03c2cf889c6cdf4517e32fa2d836440096374c2209f6b7b3e256c209493a0b32584b9cb32d528e99d0dd19dcd9a14d2d915a312d391cc7e9 - languageName: node - linkType: hard - "mri@npm:^1.1.5": version: 1.2.0 resolution: "mri@npm:1.2.0" @@ -12088,49 +9791,6 @@ __metadata: languageName: node linkType: hard -"msgpackr-extract@npm:^2.1.2": - version: 2.1.2 - resolution: "msgpackr-extract@npm:2.1.2" - dependencies: - "@msgpackr-extract/msgpackr-extract-darwin-arm64": 2.1.2 - "@msgpackr-extract/msgpackr-extract-darwin-x64": 2.1.2 - "@msgpackr-extract/msgpackr-extract-linux-arm": 2.1.2 - "@msgpackr-extract/msgpackr-extract-linux-arm64": 2.1.2 - "@msgpackr-extract/msgpackr-extract-linux-x64": 2.1.2 - "@msgpackr-extract/msgpackr-extract-win32-x64": 2.1.2 - node-gyp: latest - node-gyp-build-optional-packages: 5.0.3 - dependenciesMeta: - "@msgpackr-extract/msgpackr-extract-darwin-arm64": - optional: true - "@msgpackr-extract/msgpackr-extract-darwin-x64": - optional: true - "@msgpackr-extract/msgpackr-extract-linux-arm": - optional: true - "@msgpackr-extract/msgpackr-extract-linux-arm64": - optional: true - "@msgpackr-extract/msgpackr-extract-linux-x64": - optional: true - "@msgpackr-extract/msgpackr-extract-win32-x64": - optional: true - bin: - download-msgpackr-prebuilds: bin/download-prebuilds.js - checksum: bf068baa690d3e5c5609c10aa363901ac43d3f32b9d89f9dfb77293afa866eb1b943482338da6c38d50790a66c966fd7e0fbc9187b2a35f40f253931f649f97f - languageName: node - linkType: hard - -"msgpackr@npm:^1.6.2": - version: 1.7.2 - resolution: "msgpackr@npm:1.7.2" - dependencies: - msgpackr-extract: ^2.1.2 - dependenciesMeta: - msgpackr-extract: - optional: true - checksum: 156cf8938667c3a191feedaed05c8a2d7c95b53d0834c32928e849a2bd93292e4eba33e3601c79cc4cc79023161d658e91472f1719d0d5c63fb1d0f2b142fa07 - languageName: node - linkType: hard - "multicast-dns@npm:^7.2.5": version: 7.2.5 resolution: "multicast-dns@npm:7.2.5" @@ -12163,26 +9823,6 @@ __metadata: languageName: node linkType: hard -"mz@npm:^2.7.0": - version: 2.7.0 - resolution: "mz@npm:2.7.0" - dependencies: - any-promise: ^1.0.0 - object-assign: ^4.0.1 - thenify-all: ^1.0.0 - checksum: 8427de0ece99a07e9faed3c0c6778820d7543e3776f9a84d22cf0ec0a8eb65f6e9aee9c9d353ff9a105ff62d33a9463c6ca638974cc652ee8140cd1e35951c87 - languageName: node - linkType: hard - -"nan@npm:^2.17.0": - version: 2.17.0 - resolution: "nan@npm:2.17.0" - dependencies: - node-gyp: latest - checksum: ec609aeaf7e68b76592a3ba96b372aa7f5df5b056c1e37410b0f1deefbab5a57a922061e2c5b369bae9c7c6b5e6eecf4ad2dac8833a1a7d3a751e0a7c7f849ed - languageName: node - linkType: hard - "nanoid@npm:^3.3.4": version: 3.3.4 resolution: "nanoid@npm:3.3.4" @@ -12206,7 +9846,7 @@ __metadata: languageName: node linkType: hard -"neo-async@npm:^2.6.0, neo-async@npm:^2.6.2": +"neo-async@npm:^2.6.2": version: 2.6.2 resolution: "neo-async@npm:2.6.2" checksum: deac9f8d00eda7b2e5cd1b2549e26e10a0faa70adaa6fdadca701cc55f49ee9018e427f424bac0c790b7c7e2d3068db97f3093f1093975f2acb8f8818b936ed9 @@ -12223,18 +9863,6 @@ __metadata: languageName: node linkType: hard -"nock@npm:^13.2.9": - version: 13.2.9 - resolution: "nock@npm:13.2.9" - dependencies: - debug: ^4.1.0 - json-stringify-safe: ^5.0.1 - lodash: ^4.17.21 - propagate: ^2.0.0 - checksum: 04a2dc60b4b55fd1240f28fe34865bbc744088a4570db3781fcf66021644cc3cc9178fd86a0cb0c1f28ea77b83e8f1c9288535f6b39a6d07100059f156ccc23b - languageName: node - linkType: hard - "node-emoji@npm:^1.10.0": version: 1.11.0 resolution: "node-emoji@npm:1.11.0" @@ -12244,7 +9872,7 @@ __metadata: languageName: node linkType: hard -"node-fetch@npm:2.6.7, node-fetch@npm:^2.6.7": +"node-fetch@npm:2.6.7": version: 2.6.7 resolution: "node-fetch@npm:2.6.7" dependencies: @@ -12265,17 +9893,6 @@ __metadata: languageName: node linkType: hard -"node-gyp-build-optional-packages@npm:5.0.3": - version: 5.0.3 - resolution: "node-gyp-build-optional-packages@npm:5.0.3" - bin: - node-gyp-build-optional-packages: bin.js - node-gyp-build-optional-packages-optional: optional.js - node-gyp-build-optional-packages-test: build-test.js - checksum: be3f0235925c8361e5bc1a03848f5e24815b0df8aa90bd13f1eac91cd86264bbb8b7689ca6cd083b02c8099c7b54f9fb83066c7bb77c2389dc4eceab921f084f - languageName: node - linkType: hard - "node-gyp@npm:latest": version: 9.3.0 resolution: "node-gyp@npm:9.3.0" @@ -12303,17 +9920,6 @@ __metadata: languageName: node linkType: hard -"nopt@npm:^5.0.0": - version: 5.0.0 - resolution: "nopt@npm:5.0.0" - dependencies: - abbrev: 1 - bin: - nopt: bin/nopt.js - checksum: d35fdec187269503843924e0114c0c6533fb54bbf1620d0f28b4b60ba01712d6687f62565c55cc20a504eff0fbe5c63e22340c3fad549ad40469ffb611b04f2f - languageName: node - linkType: hard - "nopt@npm:^6.0.0": version: 6.0.0 resolution: "nopt@npm:6.0.0" @@ -12377,33 +9983,6 @@ __metadata: languageName: node linkType: hard -"npm-package-arg@npm:^9.0.1, npm-package-arg@npm:^9.1.0": - version: 9.1.2 - resolution: "npm-package-arg@npm:9.1.2" - dependencies: - hosted-git-info: ^5.0.0 - proc-log: ^2.0.1 - semver: ^7.3.5 - validate-npm-package-name: ^4.0.0 - checksum: 3793488843985ed71deb14fcba7c068d8ed03a18fd8f6b235c6a64465c9a25f60261598106d5cc8677c0bee9548e405c34c2e3c7a822e3113d3389351c745dfa - languageName: node - linkType: hard - -"npm-registry-fetch@npm:^13.3.0": - version: 13.3.1 - resolution: "npm-registry-fetch@npm:13.3.1" - dependencies: - make-fetch-happen: ^10.0.6 - minipass: ^3.1.6 - minipass-fetch: ^2.0.3 - minipass-json-stream: ^1.0.1 - minizlib: ^2.1.2 - npm-package-arg: ^9.0.1 - proc-log: ^2.0.0 - checksum: 5a941c2c799568e0dbccfc15f280444da398dadf2eede1b1921f08ddd5cb5f32c7cb4d16be96401f95a33073aeec13a3fd928c753790d3c412c2e64e7f7c6ee4 - languageName: node - linkType: hard - "npm-run-path@npm:^4.0.0, npm-run-path@npm:^4.0.1": version: 4.0.1 resolution: "npm-run-path@npm:4.0.1" @@ -12422,18 +10001,6 @@ __metadata: languageName: node linkType: hard -"npmlog@npm:^5.0.1": - version: 5.0.1 - resolution: "npmlog@npm:5.0.1" - dependencies: - are-we-there-yet: ^2.0.0 - console-control-strings: ^1.1.0 - gauge: ^3.0.0 - set-blocking: ^2.0.0 - checksum: 516b2663028761f062d13e8beb3f00069c5664925871a9b57989642ebe09f23ab02145bf3ab88da7866c4e112cafff72401f61a672c7c8a20edc585a7016ef5f - languageName: node - linkType: hard - "npmlog@npm:^6.0.0": version: 6.0.2 resolution: "npmlog@npm:6.0.2" @@ -12462,14 +10029,7 @@ __metadata: languageName: node linkType: hard -"nwsapi@npm:^2.2.2": - version: 2.2.2 - resolution: "nwsapi@npm:2.2.2" - checksum: 43769106292bc95f776756ca2f3513dab7b4d506a97c67baec32406447841a35f65f29c1f95ab5d42785210fd41668beed33ca16fa058780be43b101ad73e205 - languageName: node - linkType: hard - -"object-assign@npm:^4.0.1, object-assign@npm:^4.1.0, object-assign@npm:^4.1.1": +"object-assign@npm:^4.1.0, object-assign@npm:^4.1.1": version: 4.1.1 resolution: "object-assign@npm:4.1.1" checksum: fcc6e4ea8c7fe48abfbb552578b1c53e0d194086e2e6bbbf59e0a536381a292f39943c6e9628af05b5528aa5e3318bb30d6b2e53cadaf5b8fe9e12c4b69af23f @@ -12615,20 +10175,6 @@ __metadata: languageName: node linkType: hard -"optionator@npm:^0.8.1": - version: 0.8.3 - resolution: "optionator@npm:0.8.3" - dependencies: - deep-is: ~0.1.3 - fast-levenshtein: ~2.0.6 - levn: ~0.3.0 - prelude-ls: ~1.1.2 - type-check: ~0.3.2 - word-wrap: ~1.2.3 - checksum: b8695ddf3d593203e25ab0900e265d860038486c943ff8b774f596a310f8ceebdb30c6832407a8198ba3ec9debe1abe1f51d4aad94843612db3b76d690c61d34 - languageName: node - linkType: hard - "optionator@npm:^0.9.1": version: 0.9.1 resolution: "optionator@npm:0.9.1" @@ -12833,7 +10379,7 @@ __metadata: languageName: node linkType: hard -"parse5@npm:^7.0.0, parse5@npm:^7.1.1": +"parse5@npm:^7.0.0": version: 7.1.1 resolution: "parse5@npm:7.1.1" dependencies: @@ -12938,13 +10484,6 @@ __metadata: languageName: node linkType: hard -"pathval@npm:^1.1.1": - version: 1.1.1 - resolution: "pathval@npm:1.1.1" - checksum: 090e3147716647fb7fb5b4b8c8e5b55e5d0a6086d085b6cd23f3d3c01fcf0ff56fd3cc22f2f4a033bd2e46ed55d61ed8379e123b42afe7d531a2a5fc8bb556d6 - languageName: node - linkType: hard - "picocolors@npm:^1.0.0": version: 1.0.0 resolution: "picocolors@npm:1.0.0" @@ -12968,22 +10507,6 @@ __metadata: languageName: node linkType: hard -"pinst@npm:^3.0.0": - version: 3.0.0 - resolution: "pinst@npm:3.0.0" - bin: - pinst: bin.js - checksum: 4ae48a6a60f79c37071233af51b4d91bfc85cfa3c12b66ccda60cdb642b4d14a4ab0cb3587afc55b1f6192cea1772a5e4822026a0d0d3528296edef00cc2d61f - languageName: node - linkType: hard - -"pirates@npm:^4.0.1": - version: 4.0.5 - resolution: "pirates@npm:4.0.5" - checksum: c9994e61b85260bec6c4fc0307016340d9b0c4f4b6550a957afaaff0c9b1ad58fbbea5cfcf083860a25cb27a375442e2b0edf52e2e1e40e69934e08dcc52d227 - languageName: node - linkType: hard - "pkg-dir@npm:^4.1.0": version: 4.2.0 resolution: "pkg-dir@npm:4.2.0" @@ -13087,24 +10610,6 @@ __metadata: languageName: node linkType: hard -"postcss-load-config@npm:^3.0.1": - version: 3.1.4 - resolution: "postcss-load-config@npm:3.1.4" - dependencies: - lilconfig: ^2.0.5 - yaml: ^1.10.2 - peerDependencies: - postcss: ">=8.0.9" - ts-node: ">=9.0.0" - peerDependenciesMeta: - postcss: - optional: true - ts-node: - optional: true - checksum: 1c589504c2d90b1568aecae8238ab993c17dba2c44f848a8f13619ba556d26a1c09644d5e6361b5784e721e94af37b604992f9f3dc0483e687a0cc1cc5029a34 - languageName: node - linkType: hard - "postcss-loader@npm:^7.0.0": version: 7.0.1 resolution: "postcss-loader@npm:7.0.1" @@ -13454,7 +10959,7 @@ __metadata: languageName: node linkType: hard -"postcss@npm:^8.3.11, postcss@npm:^8.4.14, postcss@npm:^8.4.16, postcss@npm:^8.4.17, postcss@npm:^8.4.7": +"postcss@npm:^8.3.11, postcss@npm:^8.4.14, postcss@npm:^8.4.17, postcss@npm:^8.4.7": version: 8.4.18 resolution: "postcss@npm:8.4.18" dependencies: @@ -13472,13 +10977,6 @@ __metadata: languageName: node linkType: hard -"prelude-ls@npm:~1.1.2": - version: 1.1.2 - resolution: "prelude-ls@npm:1.1.2" - checksum: c4867c87488e4a0c233e158e4d0d5565b609b105d75e4c05dc760840475f06b731332eb93cc8c9cecb840aa8ec323ca3c9a56ad7820ad2e63f0261dadcb154e4 - languageName: node - linkType: hard - "prepend-http@npm:^2.0.0": version: 2.0.0 resolution: "prepend-http@npm:2.0.0" @@ -13562,13 +11060,6 @@ __metadata: languageName: node linkType: hard -"proc-log@npm:^2.0.0, proc-log@npm:^2.0.1": - version: 2.0.1 - resolution: "proc-log@npm:2.0.1" - checksum: f6f23564ff759097db37443e6e2765af84979a703d2c52c1b9df506ee9f87caa101ba49d8fdc115c1a313ec78e37e8134704e9069e6a870f3499d98bb24c436f - languageName: node - linkType: hard - "process-nextick-args@npm:~2.0.0": version: 2.0.1 resolution: "process-nextick-args@npm:2.0.1" @@ -13623,13 +11114,6 @@ __metadata: languageName: node linkType: hard -"propagate@npm:^2.0.0": - version: 2.0.1 - resolution: "propagate@npm:2.0.1" - checksum: c4febaee2be0979e82fb6b3727878fd122a98d64a7fa3c9d09b0576751b88514a9e9275b1b92e76b364d488f508e223bd7e1dcdc616be4cdda876072fbc2a96c - languageName: node - linkType: hard - "property-information@npm:^5.0.0, property-information@npm:^5.3.0": version: 5.6.0 resolution: "property-information@npm:5.6.0" @@ -13649,13 +11133,6 @@ __metadata: languageName: node linkType: hard -"psl@npm:^1.1.33, psl@npm:^1.9.0": - version: 1.9.0 - resolution: "psl@npm:1.9.0" - checksum: 20c4277f640c93d393130673f392618e9a8044c6c7bf61c53917a0fddb4952790f5f362c6c730a9c32b124813e173733f9895add8d26f566ed0ea0654b2e711d - languageName: node - linkType: hard - "pump@npm:^3.0.0": version: 3.0.0 resolution: "pump@npm:3.0.0" @@ -13666,13 +11143,6 @@ __metadata: languageName: node linkType: hard -"punycode@npm:1.3.2": - version: 1.3.2 - resolution: "punycode@npm:1.3.2" - checksum: b8807fd594b1db33335692d1f03e8beeddde6fda7fbb4a2e32925d88d20a3aa4cd8dcc0c109ccaccbd2ba761c208dfaaada83007087ea8bfb0129c9ef1b99ed6 - languageName: node - linkType: hard - "punycode@npm:^1.3.2": version: 1.4.1 resolution: "punycode@npm:1.4.1" @@ -13680,7 +11150,7 @@ __metadata: languageName: node linkType: hard -"punycode@npm:^2.1.0, punycode@npm:^2.1.1": +"punycode@npm:^2.1.0": version: 2.1.1 resolution: "punycode@npm:2.1.1" checksum: 823bf443c6dd14f669984dea25757b37993f67e8d94698996064035edd43bed8a5a17a9f12e439c2b35df1078c6bec05a6c86e336209eb1061e8025c481168e8 @@ -13719,20 +11189,6 @@ __metadata: languageName: node linkType: hard -"querystring@npm:0.2.0": - version: 0.2.0 - resolution: "querystring@npm:0.2.0" - checksum: 8258d6734f19be27e93f601758858c299bdebe71147909e367101ba459b95446fbe5b975bf9beb76390156a592b6f4ac3a68b6087cea165c259705b8b4e56a69 - languageName: node - linkType: hard - -"querystringify@npm:^2.1.1": - version: 2.2.0 - resolution: "querystringify@npm:2.2.0" - checksum: 5641ea231bad7ef6d64d9998faca95611ed4b11c2591a8cae741e178a974f6a8e0ebde008475259abe1621cb15e692404e6b6626e927f7b849d5c09392604b15 - languageName: node - linkType: hard - "queue-microtask@npm:^1.2.2": version: 1.2.3 resolution: "queue-microtask@npm:1.2.3" @@ -14027,7 +11483,7 @@ __metadata: languageName: node linkType: hard -"readable-stream@npm:3, readable-stream@npm:^3.0.0, readable-stream@npm:^3.0.2, readable-stream@npm:^3.0.6, readable-stream@npm:^3.4.0, readable-stream@npm:^3.6.0": +"readable-stream@npm:3, readable-stream@npm:^3.0.0, readable-stream@npm:^3.0.6, readable-stream@npm:^3.4.0, readable-stream@npm:^3.6.0": version: 3.6.0 resolution: "readable-stream@npm:3.6.0" dependencies: @@ -14097,22 +11553,6 @@ __metadata: languageName: node linkType: hard -"redis-errors@npm:^1.0.0, redis-errors@npm:^1.2.0": - version: 1.2.0 - resolution: "redis-errors@npm:1.2.0" - checksum: f28ac2692113f6f9c222670735aa58aeae413464fd58ccf3fce3f700cae7262606300840c802c64f2b53f19f65993da24dc918afc277e9e33ac1ff09edb394f4 - languageName: node - linkType: hard - -"redis-parser@npm:^3.0.0": - version: 3.0.0 - resolution: "redis-parser@npm:3.0.0" - dependencies: - redis-errors: ^1.0.0 - checksum: 89290ae530332f2ae37577647fa18208d10308a1a6ba750b9d9a093e7398f5e5253f19855b64c98757f7129cccce958e4af2573fdc33bad41405f87f1943459a - languageName: node - linkType: hard - "regenerate-unicode-properties@npm:^10.1.0": version: 10.1.0 resolution: "regenerate-unicode-properties@npm:10.1.0" @@ -14307,19 +11747,6 @@ __metadata: languageName: node linkType: hard -"replace-in-file@npm:^6.3.5": - version: 6.3.5 - resolution: "replace-in-file@npm:6.3.5" - dependencies: - chalk: ^4.1.2 - glob: ^7.2.0 - yargs: ^17.2.1 - bin: - replace-in-file: bin/cli.js - checksum: e5ac3bfee531dcb70cfbb327e6d4ec86bcf4c8045f292e46fb0e4c8743bd70a274c2402918d2609a25fde829862b6e1fe5f09f6c171aabbdde142a9f33008cf1 - languageName: node - linkType: hard - "require-directory@npm:^2.1.1": version: 2.1.1 resolution: "require-directory@npm:2.1.1" @@ -14388,7 +11815,7 @@ __metadata: languageName: node linkType: hard -"resolve@npm:^1.1.6, resolve@npm:^1.10.0, resolve@npm:^1.14.2, resolve@npm:^1.19.0, resolve@npm:^1.20.0, resolve@npm:^1.22.0, resolve@npm:^1.22.1, resolve@npm:^1.3.2": +"resolve@npm:^1.1.6, resolve@npm:^1.10.0, resolve@npm:^1.14.2, resolve@npm:^1.19.0, resolve@npm:^1.20.0, resolve@npm:^1.22.0, resolve@npm:^1.3.2": version: 1.22.1 resolution: "resolve@npm:1.22.1" dependencies: @@ -14414,7 +11841,7 @@ __metadata: languageName: node linkType: hard -"resolve@patch:resolve@^1.1.6#~builtin<compat/resolve>, resolve@patch:resolve@^1.10.0#~builtin<compat/resolve>, resolve@patch:resolve@^1.14.2#~builtin<compat/resolve>, resolve@patch:resolve@^1.19.0#~builtin<compat/resolve>, resolve@patch:resolve@^1.20.0#~builtin<compat/resolve>, resolve@patch:resolve@^1.22.0#~builtin<compat/resolve>, resolve@patch:resolve@^1.22.1#~builtin<compat/resolve>, resolve@patch:resolve@^1.3.2#~builtin<compat/resolve>": +"resolve@patch:resolve@^1.1.6#~builtin<compat/resolve>, resolve@patch:resolve@^1.10.0#~builtin<compat/resolve>, resolve@patch:resolve@^1.14.2#~builtin<compat/resolve>, resolve@patch:resolve@^1.19.0#~builtin<compat/resolve>, resolve@patch:resolve@^1.20.0#~builtin<compat/resolve>, resolve@patch:resolve@^1.22.0#~builtin<compat/resolve>, resolve@patch:resolve@^1.3.2#~builtin<compat/resolve>": version: 1.22.1 resolution: "resolve@patch:resolve@npm%3A1.22.1#~builtin<compat/resolve>::version=1.22.1&hash=07638b" dependencies: @@ -14498,22 +11925,6 @@ __metadata: languageName: node linkType: hard -"rollup-plugin-dts@npm:^5.0.0": - version: 5.0.0 - resolution: "rollup-plugin-dts@npm:5.0.0" - dependencies: - "@babel/code-frame": ^7.18.6 - magic-string: ^0.26.7 - peerDependencies: - rollup: ^3.0.0 - typescript: ^4.1 - dependenciesMeta: - "@babel/code-frame": - optional: true - checksum: feb2d614528c255ee698120be0fd404b0a4fa312362a3d687d76551157464decc66be6dfecb624c42bc64a9e6298ed21e13e689dc9b144acab8294cd08a53455 - languageName: node - linkType: hard - "rollup-plugin-terser@npm:^7.0.0": version: 7.0.2 resolution: "rollup-plugin-terser@npm:7.0.2" @@ -14528,7 +11939,7 @@ __metadata: languageName: node linkType: hard -"rollup@npm:^2.43.1, rollup@npm:^2.74.1, rollup@npm:^2.75.7": +"rollup@npm:^2.43.1": version: 2.79.1 resolution: "rollup@npm:2.79.1" dependencies: @@ -14542,113 +11953,6 @@ __metadata: languageName: node linkType: hard -"rollup@npm:^3.2.1": - version: 3.2.3 - resolution: "rollup@npm:3.2.3" - dependencies: - fsevents: ~2.3.2 - dependenciesMeta: - fsevents: - optional: true - bin: - rollup: dist/bin/rollup - checksum: e4b4f3b70fad4b8f7dabc579fb8bbe14399d5aed0cc1fcee39f15ae81804d6acd0e1063b653e6cf5ef50e8e954801689e2c822e99ed31ca18f1b1fbbea8075e5 - languageName: node - linkType: hard - -"rollup@npm:~2.78.0": - version: 2.78.1 - resolution: "rollup@npm:2.78.1" - dependencies: - fsevents: ~2.3.2 - dependenciesMeta: - fsevents: - optional: true - bin: - rollup: dist/bin/rollup - checksum: 9034814383ca5bdb4bea6d499270aeb31cdb0bb884f81b0c6a1d19c63cc973f040e6ee09b7af8a7169dd231c090f4b44ef8b99c4bfdf884aceeb3dcefb8cfa14 - languageName: node - linkType: hard - -"root-plugins@workspace:projects/plugins": - version: 0.0.0-use.local - resolution: "root-plugins@workspace:projects/plugins" - dependencies: - "@actions/core": ^1.10.0 - "@commitlint/cli": ^17.1.2 - "@commitlint/config-conventional": ^17.1.0 - "@favware/cliff-jumper": ^1.8.8 - "@favware/npm-deprecate": ^1.0.5 - "@sapphire/eslint-config": ^4.3.8 - "@sapphire/framework": ^3.1.3 - "@sapphire/pieces": ^3.5.2 - "@sapphire/prettier-config": ^1.4.4 - "@sapphire/stopwatch": ^1.5.0 - "@sapphire/ts-config": ^3.3.4 - "@sapphire/utilities": ^3.11.0 - "@types/node": ^18.11.0 - "@types/node-fetch": ^2.6.2 - "@types/ws": ^8.5.3 - "@typescript-eslint/eslint-plugin": ^5.40.0 - "@typescript-eslint/parser": ^5.40.0 - "@vitest/coverage-c8": ^0.24.3 - cz-conventional-changelog: ^3.3.0 - discord-api-types: ^0.33.5 - discord.js: ^13.12.0 - eslint: ^8.25.0 - eslint-config-prettier: ^8.5.0 - eslint-plugin-prettier: ^4.2.1 - gen-esm-wrapper: ^1.1.3 - husky: ^8.0.1 - lint-staged: ^13.0.3 - prettier: ^2.7.1 - pretty-quick: ^3.1.3 - rimraf: ^3.0.2 - turbo: ^1.5.6 - typescript: ^4.8.4 - vitest: ^0.24.3 - languageName: unknown - linkType: soft - -"root-utilities@workspace:projects/utilities": - version: 0.0.0-use.local - resolution: "root-utilities@workspace:projects/utilities" - dependencies: - "@actions/core": ^1.10.0 - "@commitlint/cli": ^17.1.2 - "@commitlint/config-conventional": ^17.1.0 - "@discordjs/collection": ^1.2.0 - "@favware/cliff-jumper": ^1.8.8 - "@favware/npm-deprecate": ^1.0.5 - "@favware/rollup-type-bundler": ^2.0.0 - "@sapphire/framework": ^3.1.3 - "@types/lodash": ^4.14.186 - "@types/node": ^18.11.0 - "@types/ws": ^8.5.3 - "@typescript-eslint/eslint-plugin": ^5.40.0 - "@typescript-eslint/parser": ^5.40.0 - "@vitest/coverage-c8": ^0.24.3 - cz-conventional-changelog: ^3.3.0 - discord-api-types: ^0.33.5 - discord.js: ^13.12.0 - eslint: ^8.25.0 - eslint-config-prettier: ^8.5.0 - eslint-plugin-prettier: ^4.2.1 - husky: ^8.0.1 - lint-staged: ^13.0.3 - lodash: ^4.17.21 - nock: ^13.2.9 - prettier: ^2.7.1 - pretty-quick: ^3.1.3 - rimraf: ^3.0.2 - tslib: ^2.4.0 - tsup: ^6.2.3 - turbo: ^1.5.6 - typescript: ^4.8.4 - vitest: ^0.24.3 - languageName: unknown - linkType: soft - "root-website@workspace:.": version: 0.0.0-use.local resolution: "root-website@workspace:." @@ -14662,17 +11966,11 @@ __metadata: "@docusaurus/theme-search-algolia": 2.1.0 "@heroicons/react": ^1.0.6 "@mdx-js/react": ^1.6.22 - "@sapphire/cron": ^1.0.0 - "@sapphire/decorators": ^5.0.0 "@sapphire/docusaurus-plugin-npm2yarn2pnpm": 1.1.4 "@sapphire/docusaurus-plugin-ts2esm2cjs": 1.1.3 - "@sapphire/duration": ^1.0.0 "@sapphire/eslint-config": ^4.3.8 "@sapphire/fetch": ^2.4.1 "@sapphire/prettier-config": ^1.4.4 - "@sapphire/result": ^2.6.0 - "@sapphire/timer-manager": ^1.0.0 - "@sapphire/timestamp": ^1.0.0 "@sapphire/ts-config": ^3.3.4 "@svgr/webpack": ^6.5.0 "@tippyjs/react": ^4.2.6 @@ -14683,7 +11981,6 @@ __metadata: "@typescript-eslint/parser": ^5.40.1 clsx: ^1.2.1 cz-conventional-changelog: ^3.3.0 - docusaurus-plugin-typedoc: ^0.17.5 eslint: ^8.26.0 eslint-config-prettier: ^8.5.0 eslint-plugin-import: ^2.26.0 @@ -14700,14 +11997,7 @@ __metadata: prism-react-renderer: ^1.3.5 react: ^17.0.2 react-dom: ^17.0.2 - replace-in-file: ^6.3.5 - rimraf: ^3.0.2 swr: ^1.3.0 - ts-node: ^10.9.1 - typedoc: 0.22.18 - typedoc-plugin-djs-links: ^1.2.0 - typedoc-plugin-markdown: ^3.13.6 - typedoc-plugin-mdn-links: ^2.0.0 typescript: ^4.8.4 languageName: unknown linkType: soft @@ -14790,29 +12080,13 @@ __metadata: languageName: node linkType: hard -"sax@npm:1.2.1": - version: 1.2.1 - resolution: "sax@npm:1.2.1" - checksum: 8dca7d5e1cd7d612f98ac50bdf0b9f63fbc964b85f0c4e2eb271f8b9b47fd3bf344c4d6a592e69ecf726d1485ca62cd8a52e603bbc332d18a66af25a9a1045ad - languageName: node - linkType: hard - -"sax@npm:>=0.6.0, sax@npm:^1.2.4": +"sax@npm:^1.2.4": version: 1.2.4 resolution: "sax@npm:1.2.4" checksum: d3df7d32b897a2c2f28e941f732c71ba90e27c24f62ee918bd4d9a8cfb3553f2f81e5493c7f0be94a11c1911b643a9108f231dd6f60df3fa9586b5d2e3e9e1fe languageName: node linkType: hard -"saxes@npm:^6.0.0": - version: 6.0.0 - resolution: "saxes@npm:6.0.0" - dependencies: - xmlchars: ^2.2.0 - checksum: d3fa3e2aaf6c65ed52ee993aff1891fc47d5e47d515164b5449cbf5da2cbdc396137e55590472e64c5c436c14ae64a8a03c29b9e7389fc6f14035cf4e982ef3b - languageName: node - linkType: hard - "scheduler@npm:^0.20.2": version: 0.20.2 resolution: "scheduler@npm:0.20.2" @@ -14932,7 +12206,7 @@ __metadata: languageName: node linkType: hard -"semver@npm:^7.0.0, semver@npm:^7.3.2, semver@npm:^7.3.4, semver@npm:^7.3.5, semver@npm:^7.3.7": +"semver@npm:^7.3.2, semver@npm:^7.3.4, semver@npm:^7.3.5, semver@npm:^7.3.7": version: 7.3.8 resolution: "semver@npm:7.3.8" dependencies: @@ -15105,14 +12379,14 @@ __metadata: languageName: node linkType: hard -"shiki@npm:^0.10.1": - version: 0.10.1 - resolution: "shiki@npm:0.10.1" +"shiki@npm:^0.11.1": + version: 0.11.1 + resolution: "shiki@npm:0.11.1" dependencies: jsonc-parser: ^3.0.0 vscode-oniguruma: ^1.6.1 - vscode-textmate: 5.2.0 - checksum: fb746f3cb3de7e545e3b10a6cb658d3938f840e4ccc9a3c90ceb7e69a8f89dbb432171faac1e9f02a03f103684dad88ee5e54b5c4964fa6b579fca6e8e26424d + vscode-textmate: ^6.0.0 + checksum: 2a4ebc3b466816263fc244ae4f67a4ff96aa74d863b9c5e7e4affc50f37fd6d1a781405de0dbf763b777bc33e49a0d441de7ff3fededb8b01e3b8dbb37e2927d languageName: node linkType: hard @@ -15127,7 +12401,7 @@ __metadata: languageName: node linkType: hard -"signal-exit@npm:^3.0.0, signal-exit@npm:^3.0.2, signal-exit@npm:^3.0.3, signal-exit@npm:^3.0.7": +"signal-exit@npm:^3.0.2, signal-exit@npm:^3.0.3, signal-exit@npm:^3.0.7": version: 3.0.7 resolution: "signal-exit@npm:3.0.7" checksum: a2f098f247adc367dffc27845853e9959b9e88b01cb301658cfe4194352d8d2bb32e18467c786a7fe15f1d44b233ea35633d076d5e737870b7139949d1ab6318 @@ -15265,6 +12539,16 @@ __metadata: languageName: node linkType: hard +"source-map-resolve@npm:^0.6.0": + version: 0.6.0 + resolution: "source-map-resolve@npm:0.6.0" + dependencies: + atob: ^2.1.2 + decode-uri-component: ^0.2.0 + checksum: fe503b9e5dac1c54be835282fcfec10879434e7b3ee08a9774f230299c724a8d403484d9531276d1670c87390e0e4d1d3f92b14cca6e4a2445ea3016b786ecd4 + languageName: node + linkType: hard + "source-map-support@npm:~0.5.20": version: 0.5.21 resolution: "source-map-support@npm:0.5.21" @@ -15275,15 +12559,6 @@ __metadata: languageName: node linkType: hard -"source-map@npm:0.8.0-beta.0, source-map@npm:^0.8.0-beta.0": - version: 0.8.0-beta.0 - resolution: "source-map@npm:0.8.0-beta.0" - dependencies: - whatwg-url: ^7.0.0 - checksum: e94169be6461ab0ac0913313ad1719a14c60d402bd22b0ad96f4a6cffd79130d91ab5df0a5336a326b04d2df131c1409f563c9dc0d21a6ca6239a44b6c8dbd92 - languageName: node - linkType: hard - "source-map@npm:^0.5.0": version: 0.5.7 resolution: "source-map@npm:0.5.7" @@ -15291,13 +12566,22 @@ __metadata: languageName: node linkType: hard -"source-map@npm:^0.6.0, source-map@npm:^0.6.1, source-map@npm:~0.6.0, source-map@npm:~0.6.1": +"source-map@npm:^0.6.0, source-map@npm:^0.6.1, source-map@npm:~0.6.0": version: 0.6.1 resolution: "source-map@npm:0.6.1" checksum: 59ce8640cf3f3124f64ac289012c2b8bd377c238e316fb323ea22fbfe83da07d81e000071d7242cad7a23cd91c7de98e4df8830ec3f133cb6133a5f6e9f67bc2 languageName: node linkType: hard +"source-map@npm:^0.8.0-beta.0": + version: 0.8.0-beta.0 + resolution: "source-map@npm:0.8.0-beta.0" + dependencies: + whatwg-url: ^7.0.0 + checksum: e94169be6461ab0ac0913313ad1719a14c60d402bd22b0ad96f4a6cffd79130d91ab5df0a5336a326b04d2df131c1409f563c9dc0d21a6ca6239a44b6c8dbd92 + languageName: node + linkType: hard + "sourcemap-codec@npm:^1.4.8": version: 1.4.8 resolution: "sourcemap-codec@npm:1.4.8" @@ -15389,26 +12673,6 @@ __metadata: languageName: node linkType: hard -"sqs-consumer@npm:^5.7.0": - version: 5.7.0 - resolution: "sqs-consumer@npm:5.7.0" - dependencies: - debug: ^4.3.1 - peerDependencies: - aws-sdk: ^2.1114.0 - checksum: d1eb00cbc509bfdef7bb42b649aed834daec5a9a7ac505f7a3d2e16e1e5e10f83378ca43736a13f8fab2fda91ed8551d806569bb6e9c38c057889a4717e2b621 - languageName: node - linkType: hard - -"sqs-producer@npm:^2.1.0": - version: 2.1.0 - resolution: "sqs-producer@npm:2.1.0" - dependencies: - aws-sdk: ^2.673.0 - checksum: 110caa6d82ec45131b82993a65cf5544293c74b73cccd676d2c0a1ffc9e9b6e4fa29803f0dc0415fa2e0394fcfb761cd6e783d30d5737482297b875c445b9a7d - languageName: node - linkType: hard - "ssri@npm:^9.0.0": version: 9.0.1 resolution: "ssri@npm:9.0.1" @@ -15425,13 +12689,6 @@ __metadata: languageName: node linkType: hard -"standard-as-callback@npm:^2.1.0": - version: 2.1.0 - resolution: "standard-as-callback@npm:2.1.0" - checksum: 88bec83ee220687c72d94fd86a98d5272c91d37ec64b66d830dbc0d79b62bfa6e47f53b71646011835fc9ce7fae62739545d13124262b53be4fbb3e2ebad551c - languageName: node - linkType: hard - "state-toggle@npm:^1.0.0": version: 1.0.3 resolution: "state-toggle@npm:1.0.3" @@ -15646,15 +12903,6 @@ __metadata: languageName: node linkType: hard -"strip-literal@npm:^0.4.2": - version: 0.4.2 - resolution: "strip-literal@npm:0.4.2" - dependencies: - acorn: ^8.8.0 - checksum: 831cdcaba61bc82c14ef5ca423a64bb8044b3b128abd15dff454d3fd05b0dbc7b4403760a7a636923d3c2e71a8e65174cef28ee9aef61f9a66819f865da4fdda - languageName: node - linkType: hard - "style-to-object@npm:0.3.0, style-to-object@npm:^0.3.0": version: 0.3.0 resolution: "style-to-object@npm:0.3.0" @@ -15676,23 +12924,6 @@ __metadata: languageName: node linkType: hard -"sucrase@npm:^3.20.3": - version: 3.28.0 - resolution: "sucrase@npm:3.28.0" - dependencies: - commander: ^4.0.0 - glob: 7.1.6 - lines-and-columns: ^1.1.6 - mz: ^2.7.0 - pirates: ^4.0.1 - ts-interface-checker: ^0.1.9 - bin: - sucrase: bin/sucrase - sucrase-node: bin/sucrase-node - checksum: 6a2369c140cee674988ebcf83538f38b11270e47ebaffc811baabe1db3fc586f1a357d4bbc66388a6b99054ba06a08f31b44b764e777abbd457b9e29332b12d0 - languageName: node - linkType: hard - "supports-color@npm:^5.3.0": version: 5.5.0 resolution: "supports-color@npm:5.5.0" @@ -15760,13 +12991,6 @@ __metadata: languageName: node linkType: hard -"symbol-tree@npm:^3.2.4": - version: 3.2.4 - resolution: "symbol-tree@npm:3.2.4" - checksum: 6e8fc7e1486b8b54bea91199d9535bb72f10842e40c79e882fc94fb7b14b89866adf2fd79efa5ebb5b658bc07fb459ccce5ac0e99ef3d72f474e74aaf284029d - languageName: node - linkType: hard - "tapable@npm:^1.0.0": version: 1.1.3 resolution: "tapable@npm:1.1.3" @@ -15850,17 +13074,6 @@ __metadata: languageName: node linkType: hard -"test-exclude@npm:^6.0.0": - version: 6.0.0 - resolution: "test-exclude@npm:6.0.0" - dependencies: - "@istanbuljs/schema": ^0.1.2 - glob: ^7.1.4 - minimatch: ^3.0.4 - checksum: 3b34a3d77165a2cb82b34014b3aba93b1c4637a5011807557dc2f3da826c59975a5ccad765721c4648b39817e3472789f9b0fa98fc854c5c1c7a1e632aacdc28 - languageName: node - linkType: hard - "text-extensions@npm:^1.0.0": version: 1.9.0 resolution: "text-extensions@npm:1.9.0" @@ -15875,24 +13088,6 @@ __metadata: languageName: node linkType: hard -"thenify-all@npm:^1.0.0": - version: 1.6.0 - resolution: "thenify-all@npm:1.6.0" - dependencies: - thenify: ">= 3.1.0 < 4" - checksum: dba7cc8a23a154cdcb6acb7f51d61511c37a6b077ec5ab5da6e8b874272015937788402fd271fdfc5f187f8cb0948e38d0a42dcc89d554d731652ab458f5343e - languageName: node - linkType: hard - -"thenify@npm:>= 3.1.0 < 4": - version: 3.3.1 - resolution: "thenify@npm:3.3.1" - dependencies: - any-promise: ^1.0.0 - checksum: 84e1b804bfec49f3531215f17b4a6e50fd4397b5f7c1bccc427b9c656e1ecfb13ea79d899930184f78bc2f57285c54d9a50a590c8868f4f0cef5c1d9f898b05e - languageName: node - linkType: hard - "through2@npm:^4.0.0": version: 4.0.2 resolution: "through2@npm:4.0.2" @@ -15917,37 +13112,16 @@ __metadata: linkType: hard "tiny-invariant@npm:^1.0.2": - version: 1.3.1 - resolution: "tiny-invariant@npm:1.3.1" - checksum: 872dbd1ff20a21303a2fd20ce3a15602cfa7fcf9b228bd694a52e2938224313b5385a1078cb667ed7375d1612194feaca81c4ecbe93121ca1baebe344de4f84c - languageName: node - linkType: hard - -"tiny-warning@npm:^1.0.0": - version: 1.0.3 - resolution: "tiny-warning@npm:1.0.3" - checksum: da62c4acac565902f0624b123eed6dd3509bc9a8d30c06e017104bedcf5d35810da8ff72864400ad19c5c7806fc0a8323c68baf3e326af7cb7d969f846100d71 - languageName: node - linkType: hard - -"tinybench@npm:^2.3.0": - version: 2.3.1 - resolution: "tinybench@npm:2.3.1" - checksum: 74d45fa546d964a8123f98847fc59550945ed7f0d3e5a4ce0f9596d836b51c1d340c2ae0277a8023c15dc9ea3d7cb948a79173bfc46338c9b367c6323ea1eaf3 - languageName: node - linkType: hard - -"tinypool@npm:^0.3.0": - version: 0.3.0 - resolution: "tinypool@npm:0.3.0" - checksum: 92291c309ed8d004c1ee1ef7f610cd90352383f12c52b0ec16abd9ebc665c03626e7afbc9993df97f63e67fea002b5cc18ba5e8f90260643867cbcac278a183c + version: 1.3.1 + resolution: "tiny-invariant@npm:1.3.1" + checksum: 872dbd1ff20a21303a2fd20ce3a15602cfa7fcf9b228bd694a52e2938224313b5385a1078cb667ed7375d1612194feaca81c4ecbe93121ca1baebe344de4f84c languageName: node linkType: hard -"tinyspy@npm:^1.0.2": - version: 1.0.2 - resolution: "tinyspy@npm:1.0.2" - checksum: 32096121aa8d52bb625ad62c9314b3e4daba4ab9ac428217b12b1e1dfe9860e3c94d54a7affa279cc70dc6f10d88c6ba46b51de68896b318a06d02f05e87dcc3 +"tiny-warning@npm:^1.0.0": + version: 1.0.3 + resolution: "tiny-warning@npm:1.0.3" + checksum: da62c4acac565902f0624b123eed6dd3509bc9a8d30c06e017104bedcf5d35810da8ff72864400ad19c5c7806fc0a8323c68baf3e326af7cb7d969f846100d71 languageName: node linkType: hard @@ -16006,18 +13180,6 @@ __metadata: languageName: node linkType: hard -"tough-cookie@npm:^4.1.2": - version: 4.1.2 - resolution: "tough-cookie@npm:4.1.2" - dependencies: - psl: ^1.1.33 - punycode: ^2.1.1 - universalify: ^0.2.0 - url-parse: ^1.5.3 - checksum: a7359e9a3e875121a84d6ba40cc184dec5784af84f67f3a56d1d2ae39b87c0e004e6ba7c7331f9622a7d2c88609032473488b28fe9f59a1fec115674589de39a - languageName: node - linkType: hard - "tr46@npm:^1.0.1": version: 1.0.1 resolution: "tr46@npm:1.0.1" @@ -16027,15 +13189,6 @@ __metadata: languageName: node linkType: hard -"tr46@npm:^3.0.0": - version: 3.0.0 - resolution: "tr46@npm:3.0.0" - dependencies: - punycode: ^2.1.1 - checksum: 44c3cc6767fb800490e6e9fd64fd49041aa4e49e1f6a012b34a75de739cc9ed3a6405296072c1df8b6389ae139c5e7c6496f659cfe13a04a4bff3a1422981270 - languageName: node - linkType: hard - "tr46@npm:~0.0.3": version: 0.0.3 resolution: "tr46@npm:0.0.3" @@ -16043,15 +13196,6 @@ __metadata: languageName: node linkType: hard -"tree-kill@npm:^1.2.2": - version: 1.2.2 - resolution: "tree-kill@npm:1.2.2" - bin: - tree-kill: cli.js - checksum: 49117f5f410d19c84b0464d29afb9642c863bc5ba40fcb9a245d474c6d5cc64d1b177a6e6713129eb346b40aebb9d4631d967517f9fbe8251c35b21b13cd96c7 - languageName: node - linkType: hard - "trim-newlines@npm:^3.0.0": version: 3.0.1 resolution: "trim-newlines@npm:3.0.1" @@ -16080,21 +13224,7 @@ __metadata: languageName: node linkType: hard -"ts-interface-checker@npm:^0.1.9": - version: 0.1.13 - resolution: "ts-interface-checker@npm:0.1.13" - checksum: 20c29189c2dd6067a8775e07823ddf8d59a33e2ffc47a1bd59a5cb28bb0121a2969a816d5e77eda2ed85b18171aa5d1c4005a6b88ae8499ec7cc49f78571cb5e - languageName: node - linkType: hard - -"ts-mixer@npm:^6.0.1": - version: 6.0.1 - resolution: "ts-mixer@npm:6.0.1" - checksum: 7050f6e85a24155d18cecdcc0a098d1038991cc498317fcffa9d7a8654c776d417fb97e65de1ce8e7ed54ef4814abd8057d0efb9c3b24e9cc78ac3c0f48bbf53 - languageName: node - linkType: hard - -"ts-node@npm:^10.8.1, ts-node@npm:^10.9.1": +"ts-node@npm:^10.8.1": version: 10.9.1 resolution: "ts-node@npm:10.9.1" dependencies: @@ -16144,13 +13274,6 @@ __metadata: languageName: node linkType: hard -"tslib@npm:2.x, tslib@npm:^2.0.0, tslib@npm:^2.0.3, tslib@npm:^2.1.0, tslib@npm:^2.3.1, tslib@npm:^2.4.0": - version: 2.4.0 - resolution: "tslib@npm:2.4.0" - checksum: 8c4aa6a3c5a754bf76aefc38026134180c053b7bd2f81338cb5e5ebf96fefa0f417bff221592bf801077f5bf990562f6264fecbc42cd3309b33872cb6fc3b113 - languageName: node - linkType: hard - "tslib@npm:^1.8.1": version: 1.14.1 resolution: "tslib@npm:1.14.1" @@ -16158,39 +13281,10 @@ __metadata: languageName: node linkType: hard -"tsup@npm:^6.2.3, tsup@npm:^6.3.0": - version: 6.3.0 - resolution: "tsup@npm:6.3.0" - dependencies: - bundle-require: ^3.1.0 - cac: ^6.7.12 - chokidar: ^3.5.1 - debug: ^4.3.1 - esbuild: ^0.15.1 - execa: ^5.0.0 - globby: ^11.0.3 - joycon: ^3.0.1 - postcss-load-config: ^3.0.1 - resolve-from: ^5.0.0 - rollup: ^2.74.1 - source-map: 0.8.0-beta.0 - sucrase: ^3.20.3 - tree-kill: ^1.2.2 - peerDependencies: - "@swc/core": ^1 - postcss: ^8.4.12 - typescript: ^4.1.0 - peerDependenciesMeta: - "@swc/core": - optional: true - postcss: - optional: true - typescript: - optional: true - bin: - tsup: dist/cli-default.js - tsup-node: dist/cli-node.js - checksum: f1fccd555a77ff82b3b3d4ce28188f5703695af5e9d593a4edcfc3807cbebb5b04e619ad9ae0b0c92830cbbcbf6d76356365a8986ebe82d7389151a4f66a6c49 +"tslib@npm:^2.0.3, tslib@npm:^2.1.0, tslib@npm:^2.3.1, tslib@npm:^2.4.0": + version: 2.4.0 + resolution: "tslib@npm:2.4.0" + checksum: 8c4aa6a3c5a754bf76aefc38026134180c053b7bd2f81338cb5e5ebf96fefa0f417bff221592bf801077f5bf990562f6264fecbc42cd3309b33872cb6fc3b113 languageName: node linkType: hard @@ -16205,84 +13299,6 @@ __metadata: languageName: node linkType: hard -"tunnel@npm:^0.0.6": - version: 0.0.6 - resolution: "tunnel@npm:0.0.6" - checksum: c362948df9ad34b649b5585e54ce2838fa583aa3037091aaed66793c65b423a264e5229f0d7e9a95513a795ac2bd4cb72cda7e89a74313f182c1e9ae0b0994fa - languageName: node - linkType: hard - -"turbo-darwin-64@npm:1.6.1": - version: 1.6.1 - resolution: "turbo-darwin-64@npm:1.6.1" - conditions: os=darwin & cpu=x64 - languageName: node - linkType: hard - -"turbo-darwin-arm64@npm:1.6.1": - version: 1.6.1 - resolution: "turbo-darwin-arm64@npm:1.6.1" - conditions: os=darwin & cpu=arm64 - languageName: node - linkType: hard - -"turbo-linux-64@npm:1.6.1": - version: 1.6.1 - resolution: "turbo-linux-64@npm:1.6.1" - conditions: os=linux & cpu=x64 - languageName: node - linkType: hard - -"turbo-linux-arm64@npm:1.6.1": - version: 1.6.1 - resolution: "turbo-linux-arm64@npm:1.6.1" - conditions: os=linux & cpu=arm64 - languageName: node - linkType: hard - -"turbo-windows-64@npm:1.6.1": - version: 1.6.1 - resolution: "turbo-windows-64@npm:1.6.1" - conditions: os=win32 & cpu=x64 - languageName: node - linkType: hard - -"turbo-windows-arm64@npm:1.6.1": - version: 1.6.1 - resolution: "turbo-windows-arm64@npm:1.6.1" - conditions: os=win32 & cpu=arm64 - languageName: node - linkType: hard - -"turbo@npm:^1.5.6": - version: 1.6.1 - resolution: "turbo@npm:1.6.1" - dependencies: - turbo-darwin-64: 1.6.1 - turbo-darwin-arm64: 1.6.1 - turbo-linux-64: 1.6.1 - turbo-linux-arm64: 1.6.1 - turbo-windows-64: 1.6.1 - turbo-windows-arm64: 1.6.1 - dependenciesMeta: - turbo-darwin-64: - optional: true - turbo-darwin-arm64: - optional: true - turbo-linux-64: - optional: true - turbo-linux-arm64: - optional: true - turbo-windows-64: - optional: true - turbo-windows-arm64: - optional: true - bin: - turbo: bin/turbo - checksum: 45e89ff34d877c28181e4b61e0f7bca792c88b0446eb2fbdfe433119cf70a4d4897c8c62744f687aea597161387de80a3fed606eb8b8857cb6c6ab3ad563681e - languageName: node - linkType: hard - "type-check@npm:^0.4.0, type-check@npm:~0.4.0": version: 0.4.0 resolution: "type-check@npm:0.4.0" @@ -16292,22 +13308,6 @@ __metadata: languageName: node linkType: hard -"type-check@npm:~0.3.2": - version: 0.3.2 - resolution: "type-check@npm:0.3.2" - dependencies: - prelude-ls: ~1.1.2 - checksum: dd3b1495642731bc0e1fc40abe5e977e0263005551ac83342ecb6f4f89551d106b368ec32ad3fb2da19b3bd7b2d1f64330da2ea9176d8ddbfe389fb286eb5124 - languageName: node - linkType: hard - -"type-detect@npm:^4.0.0, type-detect@npm:^4.0.5": - version: 4.0.8 - resolution: "type-detect@npm:4.0.8" - checksum: 62b5628bff67c0eb0b66afa371bd73e230399a8d2ad30d852716efcc4656a7516904570cd8631a49a3ce57c10225adf5d0cbdcb47f6b0255fe6557c453925a15 - languageName: node - linkType: hard - "type-fest@npm:^0.16.0": version: 0.16.0 resolution: "type-fest@npm:0.16.0" @@ -16376,16 +13376,9 @@ __metadata: languageName: node linkType: hard -"typedarray@npm:^0.0.6": - version: 0.0.6 - resolution: "typedarray@npm:0.0.6" - checksum: 33b39f3d0e8463985eeaeeacc3cb2e28bc3dfaf2a5ed219628c0b629d5d7b810b0eb2165f9f607c34871d5daa92ba1dc69f49051cf7d578b4cbd26c340b9d1b1 - languageName: node - linkType: hard - -"typedoc-json-parser@npm:^6.0.0": - version: 6.0.1 - resolution: "typedoc-json-parser@npm:6.0.1" +"typedoc-json-parser@npm:^6.0.2": + version: 6.0.2 + resolution: "typedoc-json-parser@npm:6.0.2" dependencies: "@favware/colorette-spinner": ^1.0.1 "@sapphire/node-utilities": ^1.0.0 @@ -16396,51 +13389,23 @@ __metadata: typedoc: ^0.23.16 bin: typedoc-json-parser: ./dist/bin/index.js - checksum: 62dc5e575089e2bf093ffbe2be2ebbe9d53d832a05d8f5284dc1bcc32a007d35e3475032103176bbf1711f9e1937f6c1e272187acfff90befc2f610c0b965cc4 - languageName: node - linkType: hard - -"typedoc-plugin-djs-links@npm:^1.2.0": - version: 1.2.0 - resolution: "typedoc-plugin-djs-links@npm:1.2.0" - checksum: 0f54136a4efebbdc689273d933ac70fc4d36df7c7b67179a86077678a152e3add6be3bc7c0633f66bea1b32a69bd18ac49b8812ab7aeca57a66fd042ce6b5a91 - languageName: node - linkType: hard - -"typedoc-plugin-markdown@npm:^3.13.6": - version: 3.13.6 - resolution: "typedoc-plugin-markdown@npm:3.13.6" - dependencies: - handlebars: ^4.7.7 - peerDependencies: - typedoc: ">=0.23.0" - checksum: eae59997759f485b2a6f2c306dc6de47dc0b008acc4651d66a24b8ba31fc7fd7729b69ba0b1235aaab268931701510ef5af88588f9b3ea124166a2ca7b63f954 - languageName: node - linkType: hard - -"typedoc-plugin-mdn-links@npm:^2.0.0": - version: 2.0.0 - resolution: "typedoc-plugin-mdn-links@npm:2.0.0" - peerDependencies: - typedoc: 0.22.x || 0.23.x - checksum: 576cc61935f25f5e91ef0e9582822e9548336297b160e63d284d41f703d6fa8e000b1b9fc7083e35fecf8895d94213326f9513dbc761f3a60c228aedca488328 + checksum: 4e8a5e84729d14dc98f24181d90d44d914f92ef119e0ce005b62d051a15c7bef096fd2badff99f7215511bc854a8d13807163ef6f06d294490e80fd9f63e693d languageName: node linkType: hard -"typedoc@npm:0.22.17": - version: 0.22.17 - resolution: "typedoc@npm:0.22.17" +"typedoc@npm:^0.23.16": + version: 0.23.17 + resolution: "typedoc@npm:0.23.17" dependencies: - glob: ^8.0.3 lunr: ^2.3.9 - marked: ^4.0.16 + marked: ^4.0.19 minimatch: ^5.1.0 - shiki: ^0.10.1 + shiki: ^0.11.1 peerDependencies: - typescript: 4.0.x || 4.1.x || 4.2.x || 4.3.x || 4.4.x || 4.5.x || 4.6.x || 4.7.x + typescript: 4.6.x || 4.7.x || 4.8.x bin: typedoc: bin/typedoc - checksum: 3a2f492477989855fa43afc0ebfb84dca819436ec5c868ca175cb02485c6347c04dbb2d11669a8be04fc6860a8f3d29d124300b5718ba17174622ace29a0276a + checksum: 9bfcfa762205f42645a5c545cf75399346663209e1f91f3e630880a6f48a5676a2efab23305df7aca69c6fe19bd4b1c42470bf39b95a369811f6eb4d5a8549e8 languageName: node linkType: hard @@ -16478,15 +13443,6 @@ __metadata: languageName: node linkType: hard -"uglify-js@npm:^3.1.4": - version: 3.17.3 - resolution: "uglify-js@npm:3.17.3" - bin: - uglifyjs: bin/uglifyjs - checksum: 2650b2e0385fe6bf68bc0b7746028fd004bbe839447c28a59f8a9e458187e897a5057900cb715b3be4cf7cf3f1d10217198210c5c23c0bffcb20feca2de5bb17 - languageName: node - linkType: hard - "unbox-primitive@npm:^1.0.2": version: 1.0.2 resolution: "unbox-primitive@npm:1.0.2" @@ -16671,13 +13627,6 @@ __metadata: languageName: node linkType: hard -"universalify@npm:^0.2.0": - version: 0.2.0 - resolution: "universalify@npm:0.2.0" - checksum: e86134cb12919d177c2353196a4cc09981524ee87abf621f7bc8d249dbbbebaec5e7d1314b96061497981350df786e4c5128dbf442eba104d6e765bc260678b5 - languageName: node - linkType: hard - "universalify@npm:^2.0.0": version: 2.0.0 resolution: "universalify@npm:2.0.0" @@ -16770,26 +13719,6 @@ __metadata: languageName: node linkType: hard -"url-parse@npm:^1.5.3": - version: 1.5.10 - resolution: "url-parse@npm:1.5.10" - dependencies: - querystringify: ^2.1.1 - requires-port: ^1.0.0 - checksum: fbdba6b1d83336aca2216bbdc38ba658d9cfb8fc7f665eb8b17852de638ff7d1a162c198a8e4ed66001ddbf6c9888d41e4798912c62b4fd777a31657989f7bdf - languageName: node - linkType: hard - -"url@npm:0.10.3": - version: 0.10.3 - resolution: "url@npm:0.10.3" - dependencies: - punycode: 1.3.2 - querystring: 0.2.0 - checksum: 7b83ddb106c27bf9bde8629ccbe8d26e9db789c8cda5aa7db72ca2c6f9b8a88a5adf206f3e10db78e6e2d042b327c45db34c7010c1bf0d9908936a17a2b57d05 - languageName: node - linkType: hard - "use-composed-ref@npm:^1.3.0": version: 1.3.0 resolution: "use-composed-ref@npm:1.3.0" @@ -16832,28 +13761,6 @@ __metadata: languageName: node linkType: hard -"util@npm:0.10.3": - version: 0.10.3 - resolution: "util@npm:0.10.3" - dependencies: - inherits: 2.0.1 - checksum: bd800f5d237a82caddb61723a6cbe45297d25dd258651a31335a4d5d981fd033cb4771f82db3d5d59b582b187cb69cfe727dc6f4d8d7826f686ee6c07ce611e0 - languageName: node - linkType: hard - -"util@npm:^0.12.4": - version: 0.12.5 - resolution: "util@npm:0.12.5" - dependencies: - inherits: ^2.0.3 - is-arguments: ^1.0.4 - is-generator-function: ^1.0.7 - is-typed-array: ^1.1.3 - which-typed-array: ^1.1.2 - checksum: 705e51f0de5b446f4edec10739752ac25856541e0254ea1e7e45e5b9f9b0cb105bc4bd415736a6210edc68245a7f903bf085ffb08dd7deb8a0e847f60538a38a - languageName: node - linkType: hard - "utila@npm:~0.4": version: 0.4.0 resolution: "utila@npm:0.4.0" @@ -16875,15 +13782,6 @@ __metadata: languageName: node linkType: hard -"uuid@npm:8.0.0": - version: 8.0.0 - resolution: "uuid@npm:8.0.0" - bin: - uuid: dist/bin/uuid - checksum: 56d4e23aa7ac26fa2db6bd1778db34cb8c9f5a10df1770a27167874bf6705fc8f14a4ac414af58a0d96c7653b2bd4848510b29d1c2ef8c91ccb17429c1872b5e - languageName: node - linkType: hard - "uuid@npm:^8.3.2": version: 8.3.2 resolution: "uuid@npm:8.3.2" @@ -16893,15 +13791,6 @@ __metadata: languageName: node linkType: hard -"uuid@npm:^9.0.0": - version: 9.0.0 - resolution: "uuid@npm:9.0.0" - bin: - uuid: dist/bin/uuid - checksum: 8dd2c83c43ddc7e1c71e36b60aea40030a6505139af6bee0f382ebcd1a56f6cd3028f7f06ffb07f8cf6ced320b76aea275284b224b002b289f89fe89c389b028 - languageName: node - linkType: hard - "v8-compile-cache-lib@npm:^3.0.1": version: 3.0.1 resolution: "v8-compile-cache-lib@npm:3.0.1" @@ -16909,17 +13798,6 @@ __metadata: languageName: node linkType: hard -"v8-to-istanbul@npm:^9.0.0": - version: 9.0.1 - resolution: "v8-to-istanbul@npm:9.0.1" - dependencies: - "@jridgewell/trace-mapping": ^0.3.12 - "@types/istanbul-lib-coverage": ^2.0.1 - convert-source-map: ^1.6.0 - checksum: a49c34bf0a3af0c11041a3952a2600913904a983bd1bc87148b5c033bc5c1d02d5a13620fcdbfa2c60bc582a2e2970185780f0c844b4c3a220abf405f8af6311 - languageName: node - linkType: hard - "validate-npm-package-license@npm:^3.0.1": version: 3.0.4 resolution: "validate-npm-package-license@npm:3.0.4" @@ -16930,15 +13808,6 @@ __metadata: languageName: node linkType: hard -"validate-npm-package-name@npm:^4.0.0": - version: 4.0.0 - resolution: "validate-npm-package-name@npm:4.0.0" - dependencies: - builtins: ^5.0.0 - checksum: a32fd537bad17fcb59cfd58ae95a414d443866020d448ec3b22e8d40550cb585026582a57efbe1f132b882eea4da8ac38ee35f7be0dd72988a3cb55d305a20c1 - languageName: node - linkType: hard - "value-equal@npm:^1.0.1": version: 1.0.1 resolution: "value-equal@npm:1.0.1" @@ -16982,76 +13851,6 @@ __metadata: languageName: node linkType: hard -"vite@npm:^3.0.0": - version: 3.1.8 - resolution: "vite@npm:3.1.8" - dependencies: - esbuild: ^0.15.9 - fsevents: ~2.3.2 - postcss: ^8.4.16 - resolve: ^1.22.1 - rollup: ~2.78.0 - peerDependencies: - less: "*" - sass: "*" - stylus: "*" - terser: ^5.4.0 - dependenciesMeta: - fsevents: - optional: true - peerDependenciesMeta: - less: - optional: true - sass: - optional: true - stylus: - optional: true - terser: - optional: true - bin: - vite: bin/vite.js - checksum: 982696ad134577dd9915c4c3548ad36ddcf5dc6d341058548a670a13d860e4cdaaf2b320a59221f178018df089d148b9980e9a344316bef12b698a1c1abc7390 - languageName: node - linkType: hard - -"vitest@npm:0.24.3, vitest@npm:^0.24.3": - version: 0.24.3 - resolution: "vitest@npm:0.24.3" - dependencies: - "@types/chai": ^4.3.3 - "@types/chai-subset": ^1.3.3 - "@types/node": "*" - chai: ^4.3.6 - debug: ^4.3.4 - local-pkg: ^0.4.2 - strip-literal: ^0.4.2 - tinybench: ^2.3.0 - tinypool: ^0.3.0 - tinyspy: ^1.0.2 - vite: ^3.0.0 - peerDependencies: - "@edge-runtime/vm": "*" - "@vitest/browser": "*" - "@vitest/ui": "*" - happy-dom: "*" - jsdom: "*" - peerDependenciesMeta: - "@edge-runtime/vm": - optional: true - "@vitest/browser": - optional: true - "@vitest/ui": - optional: true - happy-dom: - optional: true - jsdom: - optional: true - bin: - vitest: vitest.mjs - checksum: dd954f57396b81df466dd4346aa6c95709a1b3c2409d5526d3172fa34ec684f756a855f885778929a6b903a22b2517ff79d22f936fb3e4d7d54ff24e8e577459 - languageName: node - linkType: hard - "vscode-oniguruma@npm:^1.6.1": version: 1.6.2 resolution: "vscode-oniguruma@npm:1.6.2" @@ -17059,19 +13858,10 @@ __metadata: languageName: node linkType: hard -"vscode-textmate@npm:5.2.0": - version: 5.2.0 - resolution: "vscode-textmate@npm:5.2.0" - checksum: 5449b42d451080f6f3649b66948f4b5ee4643c4e88cfe3558a3b31c84c78060cfdd288c4958c1690eaa5cd65d09992fa6b7c3bef9d4aa72b3651054a04624d20 - languageName: node - linkType: hard - -"w3c-xmlserializer@npm:^3.0.0": - version: 3.0.0 - resolution: "w3c-xmlserializer@npm:3.0.0" - dependencies: - xml-name-validator: ^4.0.0 - checksum: 0af8589942eeb11c9fe29eb31a1a09f3d5dd136aea53a9848dfbabff79ac0dd26fe13eb54d330d5555fe27bb50b28dca0715e09f9cc2bfa7670ccc8b7f919ca2 +"vscode-textmate@npm:^6.0.0": + version: 6.0.0 + resolution: "vscode-textmate@npm:6.0.0" + checksum: ff6f17a406c2906586afc14ef01cb122e33acd35312e815abb5c924347a777c6783ce3fe7db8b83f1760ebf843c669843b9390f905b69c433b3395af28e4b483 languageName: node linkType: hard @@ -17139,13 +13929,6 @@ __metadata: languageName: node linkType: hard -"webidl-conversions@npm:^7.0.0": - version: 7.0.0 - resolution: "webidl-conversions@npm:7.0.0" - checksum: f05588567a2a76428515333eff87200fae6c83c3948a7482ebb109562971e77ef6dc49749afa58abb993391227c5697b3ecca52018793e0cb4620a48f10bd21b - languageName: node - linkType: hard - "webpack-bundle-analyzer@npm:^4.5.0": version: 4.6.1 resolution: "webpack-bundle-analyzer@npm:4.6.1" @@ -17310,32 +14093,6 @@ __metadata: languageName: node linkType: hard -"whatwg-encoding@npm:^2.0.0": - version: 2.0.0 - resolution: "whatwg-encoding@npm:2.0.0" - dependencies: - iconv-lite: 0.6.3 - checksum: 7087810c410aa9b689cbd6af8773341a53cdc1f3aae2a882c163bd5522ec8ca4cdfc269aef417a5792f411807d5d77d50df4c24e3abb00bb60192858a40cc675 - languageName: node - linkType: hard - -"whatwg-mimetype@npm:^3.0.0": - version: 3.0.0 - resolution: "whatwg-mimetype@npm:3.0.0" - checksum: ce08bbb36b6aaf64f3a84da89707e3e6a31e5ab1c1a2379fd68df79ba712a4ab090904f0b50e6693b0dafc8e6343a6157e40bf18fdffd26e513cf95ee2a59824 - languageName: node - linkType: hard - -"whatwg-url@npm:^11.0.0": - version: 11.0.0 - resolution: "whatwg-url@npm:11.0.0" - dependencies: - tr46: ^3.0.0 - webidl-conversions: ^7.0.0 - checksum: ed4826aaa57e66bb3488a4b25c9cd476c46ba96052747388b5801f137dd740b73fde91ad207d96baf9f17fbcc80fc1a477ad65181b5eb5fa718d27c69501d7af - languageName: node - linkType: hard - "whatwg-url@npm:^5.0.0": version: 5.0.0 resolution: "whatwg-url@npm:5.0.0" @@ -17370,20 +14127,6 @@ __metadata: languageName: node linkType: hard -"which-typed-array@npm:^1.1.2": - version: 1.1.8 - resolution: "which-typed-array@npm:1.1.8" - dependencies: - available-typed-arrays: ^1.0.5 - call-bind: ^1.0.2 - es-abstract: ^1.20.0 - for-each: ^0.3.3 - has-tostringtag: ^1.0.0 - is-typed-array: ^1.1.9 - checksum: bedf4d30a738e848404fe67fe0ace33433a7298cf3f5a4d4b2c624ba99c4d25f06a7fd6f3566c3d16af5f8a54f0c6293cbfded5b1208ce11812753990223b45a - languageName: node - linkType: hard - "which@npm:^1.2.14, which@npm:^1.3.1": version: 1.3.1 resolution: "which@npm:1.3.1" @@ -17406,7 +14149,7 @@ __metadata: languageName: node linkType: hard -"wide-align@npm:^1.1.2, wide-align@npm:^1.1.5": +"wide-align@npm:^1.1.5": version: 1.1.5 resolution: "wide-align@npm:1.1.5" dependencies: @@ -17440,20 +14183,13 @@ __metadata: languageName: node linkType: hard -"word-wrap@npm:^1.0.3, word-wrap@npm:^1.2.3, word-wrap@npm:~1.2.3": +"word-wrap@npm:^1.0.3, word-wrap@npm:^1.2.3": version: 1.2.3 resolution: "word-wrap@npm:1.2.3" checksum: 30b48f91fcf12106ed3186ae4fa86a6a1842416df425be7b60485de14bec665a54a68e4b5156647dec3a70f25e84d270ca8bc8cd23182ed095f5c7206a938c1f languageName: node linkType: hard -"wordwrap@npm:^1.0.0": - version: 1.0.0 - resolution: "wordwrap@npm:1.0.0" - checksum: 2a44b2788165d0a3de71fd517d4880a8e20ea3a82c080ce46e294f0b68b69a2e49cff5f99c600e275c698a90d12c5ea32aff06c311f0db2eb3f1201f3e7b2a04 - languageName: node - linkType: hard - "workbox-background-sync@npm:6.5.4": version: 6.5.4 resolution: "workbox-background-sync@npm:6.5.4" @@ -17711,7 +14447,7 @@ __metadata: languageName: node linkType: hard -"ws@npm:^8.4.2, ws@npm:^8.9.0": +"ws@npm:^8.4.2": version: 8.9.0 resolution: "ws@npm:8.9.0" peerDependencies: @@ -17744,37 +14480,6 @@ __metadata: languageName: node linkType: hard -"xml-name-validator@npm:^4.0.0": - version: 4.0.0 - resolution: "xml-name-validator@npm:4.0.0" - checksum: af100b79c29804f05fa35aa3683e29a321db9b9685d5e5febda3fa1e40f13f85abc40f45a6b2bf7bee33f68a1dc5e8eaef4cec100a304a9db565e6061d4cb5ad - languageName: node - linkType: hard - -"xml2js@npm:0.4.19": - version: 0.4.19 - resolution: "xml2js@npm:0.4.19" - dependencies: - sax: ">=0.6.0" - xmlbuilder: ~9.0.1 - checksum: ca8b2fee430d450a18947786bfd7cd1a353ee00fc6fd550acbc8a8e65f1b4df5e9786fcb2990c1a5514ecd554d445fb74e1d716b3a4fcfffc10554aeb5db482b - languageName: node - linkType: hard - -"xmlbuilder@npm:~9.0.1": - version: 9.0.7 - resolution: "xmlbuilder@npm:9.0.7" - checksum: 8193bb323806a002764f013bea0c6e9ff2dc26fd29109408761b16b59a8ad2214c2abe8e691755fd8b525586e3a0e1efeb92335947d7b0899032b779f1705a53 - languageName: node - linkType: hard - -"xmlchars@npm:^2.2.0": - version: 2.2.0 - resolution: "xmlchars@npm:2.2.0" - checksum: 8c70ac94070ccca03f47a81fcce3b271bd1f37a591bf5424e787ae313fcb9c212f5f6786e1fa82076a2c632c0141552babcd85698c437506dfa6ae2d58723062 - languageName: node - linkType: hard - "xtend@npm:^4.0.0, xtend@npm:^4.0.1": version: 4.0.2 resolution: "xtend@npm:4.0.2" @@ -17817,7 +14522,7 @@ __metadata: languageName: node linkType: hard -"yargs-parser@npm:^20.2.2, yargs-parser@npm:^20.2.3, yargs-parser@npm:^20.2.9": +"yargs-parser@npm:^20.2.3": version: 20.2.9 resolution: "yargs-parser@npm:20.2.9" checksum: 8bb69015f2b0ff9e17b2c8e6bfe224ab463dd00ca211eece72a4cd8a906224d2703fb8a326d36fdd0e68701e201b2a60ed7cf81ce0fd9b3799f9fe7745977ae3 @@ -17831,22 +14536,7 @@ __metadata: languageName: node linkType: hard -"yargs@npm:^16.2.0": - version: 16.2.0 - resolution: "yargs@npm:16.2.0" - dependencies: - cliui: ^7.0.2 - escalade: ^3.1.1 - get-caller-file: ^2.0.5 - require-directory: ^2.1.1 - string-width: ^4.2.0 - y18n: ^5.0.5 - yargs-parser: ^20.2.2 - checksum: b14afbb51e3251a204d81937c86a7e9d4bdbf9a2bcee38226c900d00f522969ab675703bee2a6f99f8e20103f608382936034e64d921b74df82b63c07c5e8f59 - languageName: node - linkType: hard - -"yargs@npm:^17.0.0, yargs@npm:^17.2.1": +"yargs@npm:^17.0.0": version: 17.6.0 resolution: "yargs@npm:17.6.0" dependencies: