import { type DiscriminatedVersion } from './version'; type FeatureClassification = 'nrf-internal-confidential' | 'nrf-internal' | 'nrf-external-confidential' | 'nrf-external'; type Plugin = DiscriminatedVersion & { dependencies: TopLevelDependency[]; name: string; }; type DependencyWithoutVersion = { name: string; description?: string; dependencies?: Dependency[]; expectedVersion?: DiscriminatedVersion; }; type DependencyWithVersion = DiscriminatedVersion & DependencyWithoutVersion; export type Dependency = DependencyWithoutVersion | DependencyWithVersion; type TopLevelDependency = Dependency & { classification?: FeatureClassification; plugins?: Plugin[]; }; export type ModuleVersion = { build_timestamp: string; classification: FeatureClassification; commit_date: string; commit_hash: string; dependencies: TopLevelDependency[]; host: string; name: string; version: string; }; export declare const hasVersion: (dependency?: Dependency | DiscriminatedVersion) => dependency is DependencyWithVersion | DiscriminatedVersion; export declare const describeVersion: (dependencyOrVersion?: Dependency | string) => string; type KnownModule = 'nrfdl' | 'nrf-probe' | 'JlinkARM'; export declare const getExpectedVersion: (dependency: Dependency) => { isExpectedVersion: boolean; expectedVersion: string; } | null; export declare const findDependency: (module: KnownModule, versions?: TopLevelDependency[]) => Dependency | undefined; export declare const versionToInstall: (module: string, version?: string) => string; export declare const coreVersionsToInstall: (coreVersion?: string) => string | undefined; export {}; //# sourceMappingURL=moduleVersion.d.ts.map