import { BaseDependencyManager } from './base-dependency-manager.js';
import { PackageDownloader } from '../package-downloader.js';
import { Zippy } from '../zippy.js';
export declare class CraneDependencyManager extends BaseDependencyManager {
    private readonly zippy;
    protected checksum: string;
    protected releaseBaseUrl: string;
    protected artifactFileName: string;
    protected artifactVersion: string;
    constructor(downloader: PackageDownloader, zippy: Zippy, installationDirectory: string, osArch: string, craneVersion: string);
    /**
     * This class uses GitHub release discovery in preInstall(), so the artifact name
     * is determined dynamically from the matching asset.
     */
    protected getArtifactName(): string;
    getVersion(executableWithPath: string): Promise<string>;
    /**
     * Match the release asset name for the current platform and architecture.
     *
     * Release examples observed publicly include:
     * - go-containerregistry_Linux_x86_64.tar.gz
     * - go-containerregistry_darwin_arm64.tar.gz
     *
     * We use a case-insensitive regex because historical naming appears to vary in capitalization.
     */
    private getAssetPattern;
    private fetchReleaseInfo;
    protected preInstall(): Promise<void>;
    protected getDownloadURL(): string;
    protected getChecksumURL(): string;
    protected processDownloadedPackage(packageFilePath: string, temporaryDirectory: string): Promise<string[]>;
}
