compare-dependencies
Version:
Compares listed dependencies between two package.json objects.
139 lines (138 loc) • 3.81 kB
TypeScript
declare class DependencyHolder {
}
/** @module compare-dependencies
*/
declare module "compare-dependencies" {
/**
* @typedef {Object} PkgWithDependencies
* @prop {Object<string, string>} dependencies
* @prop {Object<string, string>} devDependencies
* @prop {Object<string, string>} peerDependencies
* @prop {Object<string, string>} optionalDependencies
* @prop {Object<string, string>} bundleDependencies
* @prop {Object<string, string>} bundledDependencies
*/
export type PkgWithDependencies = {
dependencies: {
[key: string]: string;
};
devDependencies: {
[key: string]: string;
};
peerDependencies: {
[key: string]: string;
};
optionalDependencies: {
[key: string]: string;
};
bundleDependencies: {
[key: string]: string;
};
bundledDependencies: {
[key: string]: string;
};
};
/**
* @typedef {Object} AddEvent
* @prop {string} name
* @prop {import("sver").SemverRange} range
*/
export type AddEvent = {
name: string;
};
/**
* @typedef {Object} RemoveEvent
* @prop {string} name
* @prop {import("sver").SemverRange} range
*/
export type RemoveEvent = {
name: string;
};
/**
* @typedef {Object} MoveEvent
* @prop {string} name
* @prop {string} oldType
* @prop {string} newType
*/
export type MoveEvent = {
name: string;
oldType: string;
newType: string;
};
/**
* @typedef {Object} LockEvent
* @prop {string} name
* @prop {import("sver").SemverRange} oldRange
* @prop {import("sver").SemverRange} newRange
*/
export type LockEvent = {
name: string;
};
/**
* @typedef {Object} UnlockEvent
* @prop {string} name
* @prop {import("sver").SemverRange} oldRange
* @prop {import("sver").SemverRange} newRange
*/
export type UnlockEvent = {
name: string;
};
/**
* @typedef {Object} UpgradeEvent
* @prop {string} name
* @prop {import("sver").SemverRange} oldRange
* @prop {import("sver").SemverRange} newRange
*/
export type UpgradeEvent = {
name: string;
};
/**
* @typedef {Object} DowngradeEvent
* @prop {string} name
* @prop {import("sver").SemverRange} oldRange
* @prop {import("sver").SemverRange} newRange
*/
export type DowngradeEvent = {
name: string;
};
/**
* @typedef {Object} TypeChanges
* @prop {AddEvent[]} added
* @prop {RemoveEvent[]} removed
* @prop {UpgradeEvent[]} upgraded
* @prop {DowngradeEvent[]} downgraded
* @prop {UnlockEvent[]} unlocked
* @prop {LockEvent[]} locked
* @prop {MoveEvent} moved
*/
export type TypeChanges = {
added: AddEvent[];
removed: RemoveEvent[];
upgraded: UpgradeEvent[];
downgraded: DowngradeEvent[];
unlocked: UnlockEvent[];
locked: LockEvent[];
moved: MoveEvent;
};
/**
* @typedef {Object} Changes
* @prop {TypeChanges} production
* @prop {TypeChanges} peer
* @prop {TypeChanges} bundled
* @prop {TypeChanges} development
* @prop {TypeChanges} optional
*/
export type Changes = {
production: TypeChanges;
peer: TypeChanges;
bundled: TypeChanges;
development: TypeChanges;
optional: TypeChanges;
};
/**
* @param {PkgWithDependencies} oldPkg
* @param {PkgWithDependencies} newPkg
* @returns {Changes}
*/
export default function(oldPkg: PkgWithDependencies, newPkg: PkgWithDependencies): Changes;
}