/** 通用 package.json 类型定义 */ export interface PackageJson extends Record { name: string; version: string; author?: Record; bin?: Record; description?: string; dependencies?: Record; devDependencies?: Record; peerDependencies?: Record; optionalDependencies?: Record; engines?: Record; main?: string; scripts?: Record; publishConfig?: { [key: string]: unknown; access: 'public' | 'restricted'; registry: string; tags?: string; }; typings?: string; type?: string; repository?: { type?: string; url?: string; directory?: string; }; module?: string; license?: string; keywords?: string[]; packageManager?: string; bugs?: Record; homepage?: string; directories?: Record; maintainers?: { name: string; email: string; }[]; pnpm?: { overrides?: Record; } & Record; resolutions?: Record; } /** * npm registry 返回结果类型定义 * {@link https://registry.npmjs.com/@lzwme/fed-lint-helper} */ export interface NpmRegistryInfo { _id: string; _rev: string; name: string; description: string; 'dist-tags': { latest: string; next?: string; } & Record; versions: Record; _hasShrinkwrap?: boolean; _nodeVersion?: string; _npmVersion?: string; _npmUser?: Record; dist?: { /** tgz 下载地址 */ tarball: string; /** sha hash */ shasum: string; }; gitHead?: string; }>; time: { created: string; modified?: string; } & Record; users?: Record; keywords?: string[]; maintainers?: PackageJson['maintainers']; license?: string; repository?: PackageJson['repository']; homepage?: string; author?: { name: string; email: string; url: string; }; bugs?: { url: string; }; readme?: string; readmeFilename?: string; }