ts-pkgx
Version:
A library & CLI for managing packages
58 lines • 2.15 kB
TypeScript
import type { PackageInfo, PackageName, VersionSpec } from './package-types';
/**
* Get the latest version of a package (versions[0] is always the latest)
*/
export declare function getLatestVersion(packageName: PackageName): Promise<string | null>;
/**
* Get all available versions for a package
*/
export declare function getAvailableVersions(packageName: PackageName): Promise<string[]>;
/**
* Get PHP versions suitable for CI/CD workflows
* Returns the latest versions from each supported major.minor branch
*/
export declare function getPhpVersionsForWorkflow(options?: {
supportedBranches?: string[]
fallbackVersions?: string[]
}): string[];
/**
* Check if a specific version is available for a package
*/
export declare function isVersionAvailable(packageName: PackageName, version: string): Promise<boolean>;
/**
* Resolve a version specification to an actual version
*/
export declare function resolveVersion(packageName: PackageName, versionSpec?: VersionSpec): Promise<string | null>;
/**
* Get comprehensive package information
*/
export declare function getPackageInfo(packageName: PackageName): Promise<PackageInfo | null>;
/**
* Resolve package name to domain (handles aliases)
*/
export declare function resolvePackageDomain(packageName: PackageName): string | null;
/**
* Get all packages that match a search term
*/
export declare function searchPackages(searchTerm: string): Promise<PackageInfo[]>;
/**
* Get packages by category based on domain patterns
*/
export declare function getPackagesByPattern(pattern: RegExp): Promise<PackageInfo[]>;
/**
* Get popular packages (those with many versions, indicating active development)
*/
export declare function getPopularPackages(minVersions?: number): Promise<PackageInfo[]>;
/**
* Get recently updated packages (those with many versions, assuming frequent updates)
*/
export declare function getActivePackages(limit?: number): Promise<PackageInfo[]>;
/**
* Validate a package specification
*/
export declare function validatePackageSpec(packageSpec: string): Promise<{
isValid: boolean
packageName?: PackageName
version?: string
error?: string
}>;