Skip to content

Does not use Destructured Params in JSDoc comments in JS #3026

@CxRes

Description

@CxRes

Search terms

JSDoc, destructured, javascript, function

Might be related to #2430.

Expected Behavior

I am getting the following waning with the code below:

$ pnpm dlx typedoc  --entryPoints "./src/index.js" --entryPoints "./src/types.d.ts"
./src/index.js:91:3 - [warning] Encountered an unknown block tag @this


[warning] The signature index.default has an @param with name "params", which was not used
[warning] The signature index.default has an @param with name "params.headers", which was not used
[warning] The signature index.default has an @param with name "params.firstMessage", which was not used
[warning] The signature index.default has an @param with name "params.messages", which was not used
[warning] The signature index.default has an @param with name "params.lastMessage", which was not used
[warning] The signature index.default has an @param with name "params.abortController", which was not used
[warning] The signature index.default has an @param with name "params.duration", which was not used
[info] html generated at ./docs
[warning] Found 0 errors and 8 warnings

Actual Behavior

No warnings.

Steps to reproduce the bug

Run TypeDoc on a js file with:

/*
 * Awesome function
 *
 * @param {object} params Extended Response Parameters
 * @param {Record<string, string>} [params.headers = {}] Headers to be sent
 * @param {Message} [params.firstMessage = ""] Message to be started immediately with
 *   headers
 * @param {AsyncIterable<Message>} params.messages Async messages to be sent
 * @param {Message} [params.lastMessage = ""] Message to be sent immediately before
 *   normal response termination
 * @param {AbortController} [params.abortController] Abort Controller for async
 *   messages
 * @param {number} [params.duration = 0] Time in milliseconds after which the
 *   response stream will be closed
 * @returns {Promise<void>} A Promise that resolves
 *
 * @this {ServerResponse}
 * A Node.js HTTP
 * {@link https://nodejs.org/api/http.html#class-httpserverresponse|ServerResponse}
 * instance.
 */
async function extendedResponse({
  headers = {},
  firstMessage = "",
  messages,
  lastMessage = "",
  abortController,
  duration = 0,
}) {
return 0;
}

Environment

  • TypeDoc version: 0.28.13
  • TypeScript version: 5.8.3
  • Node.js version: 24.8.0
  • OS: Windows 10

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions