typespec

前項のライブラリが全滅したので新たに発見したマイクロソフト謹製のライブラリを使用する。現時点で ver. 0.6 ということもあり正式リリースまで仕様が維持されるかどうかはわからない。インストール方法は省いて1ファイルに全 schema をまとめて export するための config ファイルを記録しておく。

// tspconfig.yaml

emit:

  - "@typespec/json-schema"

options:

  "@typespec/json-schema":

	"bundleId": "schema.json"

	"file-type": json

	"emitter-output-dir": "{cwd}/output"

	"emitAllModels": false

これで main.tsp と同階層に output ディレクトリができ、その配下に全 schema をまとめた schema.json が作成される。それぞれの schema が必要な場合は emitAllModels を true にすればいい。

用途としてschema ファーストのためのツールで ts の型情報を読み込んで利用するといった使い方ではなさそうだ。できたら嬉しいけれども。