Microsoft/TypeScript
Ver no GitHubAccessors are always reduced to properties in object literal declarations
Open
#53.775 aberto em 14 de abr. de 2023
BugDomain: Declaration EmitHelp Wanted
Métricas do repositório
- Stars
- (48.455 stars)
- Métricas de merge de PR
- (Mesclagem média 6d 17h) (9 fundiu PRs em 30d)
Description
Bug Report
Currently, accessors in object literals are condensed in plain properties - this an issue when get/set use different types. The workaround is to explicitly specify the type (see playground). Ideally, accessor should be preserved in declaration files, when possible.
🔎 Search Terms
accessors, object literal
🕗 Version & Regression Information
/
⏯ Playground Link
Playground link with relevant code
💻 Code
export const Foo = {
get bar(): number { /* ... */ },
set bar(value: number | string) { /* ... */ }
};
🙁 Actual behavior
export declare const Foo: {
bar: number;
};
🙂 Expected behavior
export declare const Foo: {
get bar(): number;
set bar(value: number | string);
};