目前我正在开发一个使用 prisma 提供数据的 api。该 API 被多个项目使用。在 api 中,我生成用于Prisma.ModelGetPayload定义某些 api 响应的返回类型的类型。
import { Prisma } from "@prisma/client";
export const minimalSelect = Prisma.validator<Prisma.ModelXYSelect>()({
id: true,
name: true
});
export type MinimalModelXY = Prisma.ModelXYGetPayload<{
select: typeof minimalSelect;
}>;
Run Code Online (Sandbox Code Playgroud)
或者可以简单地从 prisma 客户端导入枚举。
import { EnumXY } from "@prisma/client";
Run Code Online (Sandbox Code Playgroud)
这些枚举和类型定义依赖于生成的 API 的 Prisma 客户端。
有一些解决方案可以将整个 prisma 客户端提取到 npm 包中(请参阅此处),但是,这不是我想要做的。
是否可以将这些类型提取到 npm 包中以在多个项目之间共享它们,而无需提取整个 prisma 客户端?