Microsoft/TypeScript
GitHub で見るAccessors are always reduced to properties in object literal declarations
Open
#53,775 opened on 2023年4月14日
BugDomain: Declaration EmitHelp Wanted
Repository metrics
- Stars
- (48,455 stars)
- PR merge metrics
- (平均マージ 6d 17h) (30d で 9 merged PRs)
説明
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);
};