Symbol properties rendered as strings
Author: dgreenspCreated Sep 15, 2025Updated Sep 15, 2025
Search terms
Symbol property, computed property name, string
Expected Behavior
Render computed properties in some way that looks like TypeScript syntax.
Actual Behavior
Renders computed properties as string literals in signatures, both at the type level and member level:
interface Arrayish<T> {
"[iterator]"(): IterableIterator<T>;
length: number;
slice: (start?: number, end?: number) => Arrayish<T>;
readonly [index: number]: T;
}Steps to reproduce the bug
Run TypeDoc on this code:
export interface Arrayish<T> {
readonly [index: number]: T;
readonly length: number;
[Symbol.iterator](): IterableIterator<T>;
slice: (start?: number, end?: number) => Arrayish<T>;
}Environment
- Typedoc version: 0.28.13
- TypeScript version: 5.9.2
- Node.js version: v22.18.0
- OS: macOS 14.6.1
Source: TypeStrong/typedoc