UNPKG

snyk-nodejs-lockfile-parser

Version:
88 lines (87 loc) 2.62 kB
import { DepGraph } from '@snyk/dep-graph'; export declare type PackageJsonBase = { name: string; version: string; dependencies?: Record<string, string>; devDependencies?: Record<string, string>; optionalDependencies?: Record<string, string>; peerDependencies?: Record<string, string>; resolutions?: Record<string, string>; overrides?: Overrides; pnpm?: { overrides?: Overrides; }; }; export declare type Overrides = string | { [key: string]: Overrides; }; export declare type PkgIdentifier = string; export declare type NormalisedPkgs = Record<PkgIdentifier, { version: string; dependencies: Record<string, string>; optionalDependencies: Record<string, string>; }>; export declare type DepGraphBuildOptions = { includeDevDeps: boolean; includeOptionalDeps: boolean; strictOutOfSync: boolean; includePeerDeps?: boolean; }; export declare type LockFileParseOptions = { includeOptionalDeps: boolean; }; export declare type ProjectParseOptions = DepGraphBuildOptions & LockFileParseOptions & { pruneCycles: boolean; }; export declare type YarnLockV2WorkspaceArgs = { isWorkspacePkg: boolean; isRoot: boolean; rootResolutions: Record<string, string>; }; export declare type YarnLockV2ProjectParseOptions = { includeDevDeps: boolean; includeOptionalDeps: boolean; strictOutOfSync: boolean; pruneWithinTopLevelDeps: boolean; }; export declare type PruneLevel = 'cycles' | 'withinTopLevelDeps' | 'none'; export declare type YarnLockV1ProjectParseOptions = { includeDevDeps: boolean; includeOptionalDeps: boolean; includePeerDeps: boolean; strictOutOfSync: boolean; pruneLevel: PruneLevel; }; export declare type Yarn1DepGraphBuildOptions = { includeDevDeps: boolean; includeOptionalDeps: boolean; includePeerDeps: boolean; strictOutOfSync: boolean; pruneWithinTopLevelDeps: boolean; }; export declare type PnpmWorkspaceArgs = { isWorkspace: boolean; projectsVersionMap: Record<string, PnpmProject>; }; export declare type PnpmProject = { name: string; version: string; }; export declare type PnpmProjectParseOptions = { includeDevDeps: boolean; includePeerDeps?: boolean; includeOptionalDeps: boolean; strictOutOfSync: boolean; pruneWithinTopLevelDeps: boolean; }; declare type NodePkgManagers = 'npm' | 'yarn' | 'pnpm'; export declare type ScannedNodeProject = { packageManager: NodePkgManagers; targetFile: string; depGraph: DepGraph; plugin: { name: string; runtime: string; }; }; export {};