microsoft / microsoft/typespec
Proposal: Allow overriding property from spread
- Dominant language
- Java
- Stars
- 5.9k
- Forks
- 394
- Avg merge
- 1d 23h
- Merged PRs (30d)
- 104
Description
### Clear and concise description of the problem
To improve model reusability while allowing customization at the point of use, it would be helpful to support redefining properties that are inherited through the spread operator. This would work similarly to how TypeScript allows property overrides in objects ([Playground Link](https://www.typescriptlang.org/play/?#code/MYewdgzgLgBAhjAvDA3gKBp+AuGBGAJgGYAWAGgywCNcAiK2igXwG401RJYqlVLMAdELgUsOGCSIE8zNh3AQQAGwCmApSADmACioBKFkA))
Example:
```tsp
model A {
prop?: in32;
}
model B {
...A;
prop: int64;
}
```
### Checklist
- [x] Follow our [Code of Conduct](https://github.com/microsoft/typespec/blob/main/CODE_OF_CONDUCT.md)
- [x] Read the [docs](https://typespec.io/docs/).
- [x] Check that there isn't already an issue that request the same feature to avoid creating a duplicate.
Contributor guide
Assessment
This issue has not been assessed yet.