Skip to content

TS 5.0: Query type failed to get a symbol for typeof TypeEmitter<T, TOptions> #2220

Closed
@timotheeguerin

Description

@timotheeguerin

Search terms

typescript5.0, query failed

Expected Behavior

Type should be extracted correctly or at least not crash

Actual Behavior

AssertionError [ERR_ASSERTION]: Query type failed to get a symbol for: typeof TypeEmitter<T, TOptions>. This is a bug.
    at Object.convertType (/Users/timotheeguerin/.npm/_npx/dafcb7cdaad6ed61/node_modules/typedoc/dist/lib/converter/types.js:394:30)
    at convertType (/Users/timotheeguerin/.npm/_npx/dafcb7cdaad6ed61/node_modules/typedoc/dist/lib/converter/types.js:105:34)
    at Converter.convertType (/Users/timotheeguerin/.npm/_npx/dafcb7cdaad6ed61/node_modules/typedoc/dist/lib/converter/converter.js:93:40)
    at /Users/timotheeguerin/.npm/_npx/dafcb7cdaad6ed61/node_modules/typedoc/dist/lib/converter/factories/signature.js:89:44
    at Array.map (<anonymous>)
    at convertParameters (/Users/timotheeguerin/.npm/_npx/dafcb7cdaad6ed61/node_modules/typedoc/dist/lib/converter/factories/signature.js:70:23)
    at createSignature (/Users/timotheeguerin/.npm/_npx/dafcb7cdaad6ed61/node_modules/typedoc/dist/lib/converter/factories/signature.js:39:25)
    at Object.convertFunctionOrMethod (/Users/timotheeguerin/.npm/_npx/dafcb7cdaad6ed61/node_modules/typedoc/dist/lib/converter/symbols.js:247:41)
    at convertSymbol (/Users/timotheeguerin/.npm/_npx/dafcb7cdaad6ed61/node_modules/typedoc/dist/lib/converter/symbols.js:135:41)
    at Converter.convertExports (/Users/timotheeguerin/.npm/_npx/dafcb7cdaad6ed61/node_modules/typedoc/dist/lib/converter/converter.js:201:41) {
  generatedMessage: false,
  code: 'ERR_ASSERTION',
  actual: undefined,
  expected: true,
  operator: '=='
}

Steps to reproduce the bug

Add the following code when using typescript 5.0(Not having an issue before)

export class TypeEmitter<T, TOptions extends object = Record<string, never>> {}

export function createAssetEmitter<T, TOptions extends object>(
  TypeEmitterClass: typeof TypeEmitter<T, TOptions>
): void {}

Repro PR: TypeStrong/typedoc-repros#28

Environment

  • Typedoc version: 0.23.28
  • TypeScript version: 5.0 (working before)
  • Node.js version: v18.8.0
  • OS: OSX

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions