Initial commit

This commit is contained in:
Devin Zuczek
2026-06-08 18:23:40 -04:00
commit 8e644a5c20
141 changed files with 21414 additions and 0 deletions
+63
View File
@@ -0,0 +1,63 @@
import { z } from 'zod'
/**
* Represents a pakcage.json file
*/
export const PackageJson = z.object({
name: z.string().optional(),
version: z.string().optional(),
description: z.string().optional(),
type: z.enum(['module', 'commonjs']).optional(),
module: z.string().optional(),
main: z.string().optional(),
types: z.string().optional(),
scripts: z.record(z.string(), z.string()).optional(),
dependencies: z.record(z.string(), z.string()).optional(),
devDependencies: z.record(z.string(), z.string()).optional(),
peerDependencies: z.record(z.string(), z.string()).optional(),
optionalDependencies: z.record(z.string(), z.string()).optional(),
packageManager: z.string().optional(),
engines: z
.object({
node: z.string().optional(),
npm: z.string().optional(),
pnpm: z.string().optional(),
})
.optional(),
repository: z
.union([
z.string(),
z.object({
type: z.string(),
url: z.string(),
}),
])
.optional(),
keywords: z.array(z.string()).optional(),
author: z
.union([
z.string(),
z.object({
name: z.string(),
email: z.string().optional(),
url: z.string().optional(),
}),
])
.optional(),
license: z.string().optional(),
bugs: z
.union([
z.string(),
z.object({
url: z.string().optional(),
email: z.string().optional(),
}),
])
.optional(),
homepage: z.string().optional(),
private: z.boolean().optional(),
publishConfig: z.record(z.string(), z.unknown()).optional(),
workspaces: z.array(z.string()).optional(),
})
export type PackageJson = z.infer<typeof PackageJson>