import { SemVer } from 'semver';
import { Submodule } from '@codiac.io/codiac-relay-contracts';
import { CommandBaseTenantless } from "../../command-base-tenantless";
export default class DepList extends CommandBaseTenantless {
    static description: string;
    static flags: {
        help: import("@oclif/core/lib/interfaces").BooleanFlag<void>;
    };
    static args: {};
    run(): Promise<void>;
    hasPackageName(submodule: Submodule, name: string): boolean;
}
export interface IPackageDependency {
    name: string;
    versionSpec: string;
    version: string;
}
export type SemVerDictionary = {
    [name: string]: SemVer;
};
export interface INpmPackage {
    name: string;
    description?: string;
    author?: string;
    version: string;
    requires?: boolean;
    dependencies?: {
        [name: string]: string;
    };
    devDependencies?: {
        [name: string]: string;
    };
    scripts?: {
        [name: string]: string;
    };
    homepage?: string;
    keywords?: string[];
    license?: string;
    main?: string;
}
export interface IPackageLockDependency {
    version: string;
    resolved: string;
    integrity: string;
    requires?: SemVerDictionary;
}
export interface INpmPackageLock {
    name: string;
    version: string;
    lockfileVersion: number;
    requires: boolean;
    dependencies?: {
        [name: string]: IPackageLockDependency;
    };
}
