UNPKG

ts-pkgx

Version:

A library & CLI for managing packages

64 lines 2.2 kB
/** * Parse a dependency file (deps.yaml, dependencies.yaml, pkgx.yaml, etc.) */ export declare function parseDependencyFile(filePath: string): Dependency[]; /** * Load available versions for a package from generated package files */ export declare function getAvailableVersionsForPackage(packageName: string, packagesDir?: any): Promise<string[]>; /** * Resolve a version constraint to the best available version using proper semver */ export declare function resolveVersionConstraint(packageName: string, constraint: string): Promise<string>; /** * Parse version constraint and compare versions for deduplication */ export declare function compareVersions(version1: string, version2: string): number; /** * Resolve transitive dependencies for a package */ export declare function resolveTransitiveDependencies(packageName: string, options?: DependencyResolverOptions, visited?: Set<string>, depth?: any): Promise<Dependency[]>; /** * Deduplicate dependencies and resolve version conflicts */ export declare function deduplicateDependencies(dependencies: Dependency[], _options?: DependencyResolverOptions): Promise<DependencyResolutionResult>; /** * Main function to resolve all dependencies from a dependency file */ export declare function resolveDependencyFile(filePath: string, options?: DependencyResolverOptions): Promise<DependencyResolutionResult>; /** * Find dependency files in a directory */ export declare function findDependencyFiles(directory: string): string[]; /** * Represents a dependency with version constraints */ export declare interface Dependency { name: string version: string constraint: string isOsSpecific: boolean os?: string } /** * Result of dependency resolution */ export declare interface DependencyResolutionResult { allDependencies: Dependency[] uniquePackages: string[] conflicts: Array<{ package: string versions: string[] }> osSpecificDeps: Record<string, Dependency[]> } /** * Options for dependency resolution */ export declare interface DependencyResolverOptions { packagesDir?: string includeOsSpecific?: boolean targetOs?: 'linux' | 'darwin' | 'windows' maxDepth?: number verbose?: boolean }