bcherny/json-schema-to-typescript

Empty objects produce broken schema (empty interface)

Open

#486 opened on 2022年9月18日

GitHub で見る
 (3 comments) (1 reaction) (0 assignees)TypeScript (449 forks)github user discovery
buggood first issuehelp wanted

Repository metrics

Stars
 (3,302 stars)
PR merge metrics
 (30d に merged PR はありません)

説明

I searched a bit but didn't find any issues/discussion that looked relevant, please forgive me if I missed something.

I'm dealing with an api that has "sometype": {} fields sometimes (that is, it requires an empty object) with a definition like

{
  "title": "Empty",
  "type": "object",
  "properties": {},
  "additionalProperties": false
}

This produces the invalid ts definition

export interface Empty {}

where I'd expect

export type Empty = Record<string, never>;

Obviously there won't be significant type safety (or unsafety) in these situations, but it will compile/check.

コントリビューターガイド