import type { HttpResponse } from '../../../util/http/types'; import { Datasource } from '../datasource'; import type { DigestConfig, GetReleasesConfig, Release, ReleaseResult } from '../types'; import { OciHelmConfig, OciImageConfig } from './schema'; export declare class DockerDatasource extends Datasource { static readonly id = "docker"; readonly defaultVersioning = "docker"; readonly defaultRegistryUrls: string[]; readonly defaultConfig: { commitMessageTopic: string; commitMessageExtra: string; digest: { branchTopic: string; commitMessageExtra: string; commitMessageTopic: string; group: { commitMessageTopic: string; commitMessageExtra: string; }; }; pin: { commitMessageExtra: string; groupName: string; group: { commitMessageTopic: string; branchTopic: string; }; }; }; constructor(); private getManifestResponse; getImageConfig(registryHost: string, dockerRepository: string, configDigest: string): Promise | undefined>; getHelmConfig(registryHost: string, dockerRepository: string, configDigest: string): Promise | undefined>; private getConfigDigest; private getManifest; getImageArchitecture(registryHost: string, dockerRepository: string, currentDigest: string): Promise; getLabels(registryHost: string, dockerRepository: string, tag: string): Promise | undefined>; private getTagsQuayRegistry; private getDockerApiTags; getTags(registryHost: string, dockerRepository: string): Promise; /** * docker.getDigest * * The `newValue` supplied here should be a valid tag for the docker image. * * This function will: * - Look up a sha256 digest for a tag on its registry * - Return the digest as a string */ getDigest({ registryUrl, lookupName, packageName, currentDigest }: DigestConfig, newValue?: string): Promise; getDockerHubTags(dockerRepository: string): Promise; /** * docker.getReleases * * A docker image usually looks something like this: somehost.io/owner/repo:8.1.0-alpine * In the above: * - 'somehost.io' is the registry * - 'owner/repo' is the package name * - '8.1.0-alpine' is the tag * * This function will filter only tags that contain a semver version */ getReleases({ packageName, registryUrl, }: GetReleasesConfig): Promise; }