microsoft / microsoft/TypeScript
Outline view does not show props of typescript type
Nobody has claimed this yet.
- Dominant language
- Go
- Stars
- 111k
- Forks
- 14.3k
- Avg merge
- 2d 4h
- Merged PRs (30d)
- 132
Description
🔍 Search Terms
tsserver type outline view
✅ Viability Checklist
- This wouldn't be a breaking change in existing TypeScript/JavaScript code
- This wouldn't change the runtime behavior of existing JavaScript code
- This could be implemented without emitting different JS based on the types of the expressions
- This isn't a runtime feature (e.g. library functionality, non-ECMAScript syntax with JavaScript output, new syntax sugar for JS, etc.)
- This isn't a request to add a new utility type: https://github.com/microsoft/TypeScript/wiki/No-New-Utility-Types
- This feature would agree with the rest of our Design Goals: https://github.com/Microsoft/TypeScript/wiki/TypeScript-Design-Goals
⭐ Suggestion
When using typescript interface instead of type:
export interface User {
id?: string | undefined;
username: string;
}
the props are shown in the editor's Outline view.
However, when I have a typical typescript type:
export type User = {
id?: string | undefined;
username: string;
}
the props are not shown in the Outline view (e.g. VSCode or Eclipse Editor Outline View)
Please show the props in the Ouline view also for typescript type.
This issue was previously created on other repos and delegated to this repo:
- See https://github.com/eclipse-wildwebdeveloper/wildwebdeveloper/issues/1753#issuecomment-2919335238 for more information.
- See https://github.com/typescript-language-server/typescript-language-server/issues/960#issuecomment-3154878653
📃 Motivating Example
Show the props in the Ouline view also for typescript type.
💻 Use Cases
- What do you want to use this for? for outline view
- What shortcomings exist with current approaches? properties in the
Ouline viewdoes not appear for typescripttype - What workarounds are you using in the meantime? nothing
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
No source file or test is named. Start by investigating the tsserver document-symbol or outline handling, comparing the symbols produced for the interface and type examples in the issue. Done means the type alias's properties appear in the editor Outline view as the interface properties do.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- developer-experience, tooling
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100