---
# Change versionKind to one of: internal, fix, dependencies, feature, deprecation, breaking
changeKind: breaking
packages:
  - "@typespec/http"
---

Empty model after removing metadata and visibility property result in void always
  This means the following case have changed from returning `{}` to no body
  
  ```tsp
  op b1(): {};
  op b2(): {@visibility("none") prop: string};
  op b3(): {@added(Versions.v2) prop: string};
  ```
  
  Workaround: Use explicit `@body`
  
  ```tsp
  op b1(): {@body _: {}};
  op b2(): {@body _: {@visibility("none") prop: string}};
  op b3(): {@body _: {@added(Versions.v2) prop: string}};
  ```
