import { Datasource } from '../datasource';
import type { GetReleasesConfig, ReleaseResult } from '../types';
import { PackagistFile, RegistryFile, RegistryMeta } from './schema';
export declare class PackagistDatasource extends Datasource {
    static readonly id = "packagist";
    constructor();
    readonly defaultRegistryUrls: string[];
    readonly defaultVersioning = "composer";
    readonly registryStrategy = "hunt";
    private static getHostOpts;
    private getJson;
    getRegistryMeta(regUrl: string): Promise<RegistryMeta>;
    private static isPrivatePackage;
    private static getPackagistFileUrl;
    getPackagistFile(regUrl: string, regFile: RegistryFile): Promise<PackagistFile>;
    fetchProviderPackages(regUrl: string, meta: RegistryMeta): Promise<void>;
    fetchIncludesPackages(regUrl: string, meta: RegistryMeta): Promise<void>;
    packagistOrgLookup(name: string): Promise<ReleaseResult | null>;
    getPkgUrl(packageName: string, registryUrl: string, registryMeta: RegistryMeta): string | null;
    getReleases({ packageName, registryUrl, }: GetReleasesConfig): Promise<ReleaseResult | null>;
}
