Vitest では expectTypeOf や assetType を使って型のテストを書くことができます。自作のユーティリティ型が期待する型を返すか検査したり、言語ファイルの JSON スキーマが同じ型を返すことを確認するなどに利用できます。
デフォルトでは *.test-d.ts という名前のファイルが型テストとして実行されます。これは typecheck.include オプションで変更できます。
import { expectTypeOf, it, test } from "vitest";
it("should be same type", () => {
expectTypeOf<{ foo: string }>().toEqualTypeOf<{ foo: string }>();
});型テストを実行したい場合には --typecheck オプションを付けて vitest を実行します。
vitest --typecheck