Tooling to have schema aware outputs
- Dominant language
- Bicep
- Stars
- 3.6k
- Forks
- 830
- Avg merge
- 1d 21m
- Merged PRs (30d)
- 79
Description
It would be great when a module has a "strongly typed" object output, to be able to reference its properties from the bicep file consuming the module.
Sample module:
```bicep
param message string
output foo object = {
bar: 'xxxx'
anotherProperty: 1234
input: message
}
```
So the desired output would be to list the properties of the output object ('bar', 'anotherProperty' and 'input') in the following usage of the above module:

An ARM Template has the limitation of allowing only 64 outputs, and when working around this limitation by including those values to an object output, there is no intellisense/help during coding on its schema to reference the values/properties.
Contributor guide
Research direction
Start with the sample module and consuming Bicep usage shown in the issue, then inspect how object outputs and property completion are currently handled. Done means properties such as bar, anotherProperty, and input are available as schema-aware completions when the module output is referenced.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- azure
- Domain
- tooling
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100