import type { DependencyLifecycleType } from '../dependencies'; /** * Allowed values are valid semver values */ export type SemverVersion = string; export type GitUrlVersion = string; export type FileSystemPath = string; export type RemoveDepSign = '-'; /** * Allowed values are valid semver values and the "-" sign. */ export type PolicySemver = SemverVersion | RemoveDepSign; /** * Allowed values are valid semver values, git urls, fs path and the "-" sign. */ export type PolicyVersion = PolicySemver | GitUrlVersion | FileSystemPath; export type PolicyConfigKeys = { dependencies: 'dependencies'; devDependencies: 'devDependencies'; peerDependencies: 'peerDependencies'; }; export type PolicyConfigKeysNames = keyof PolicyConfigKeys; export interface Policy { toConfigObject(): T; } export type PolicyEntry = { dependencyId: string; lifecycleType: DependencyLifecycleType; };