mirror of
https://github.com/renovatebot/renovate.git
synced 2025-05-13 08:01:49 +00:00
31 lines
687 B
TypeScript
31 lines
687 B
TypeScript
import { z } from 'zod';
|
|
|
|
export const File = z.object({
|
|
version: z.string(),
|
|
createdAt: z.string().nullable(),
|
|
yankedReason: z.string().nullable(),
|
|
urls: z
|
|
.array(z.object({ url: z.string(), kind: z.string() }))
|
|
.optional()
|
|
.default([])
|
|
.transform((urls) => {
|
|
return Object.fromEntries(urls.map((url) => [url.kind, url.url]));
|
|
}),
|
|
});
|
|
|
|
export type File = z.infer<typeof File>;
|
|
|
|
export const PagedResponseSchema = z.object({
|
|
data: z.object({
|
|
package: z
|
|
.object({
|
|
variants: z
|
|
.object({
|
|
pages: z.number(),
|
|
page: z.array(File),
|
|
})
|
|
.nullable(),
|
|
})
|
|
.nullable(),
|
|
}),
|
|
});
|