import type * as Dockerode from 'dockerode'; import * as stream from 'node:stream'; import * as Compose from '@balena/compose-parser'; import type { SecretsPopulationMap } from './build-secrets'; import { BalenaYml, ParsedBalenaYml } from './build-secrets'; import type { BuildTask } from './build-task'; import type { LocalImage } from './local-image'; import * as PathUtils from './path-utils'; import type { RegistrySecrets } from './registry-secrets'; import { ResolveListeners } from './resolve'; export { QEMU_BIN_NAME } from './build-metadata'; export * from './build-task'; export * from './errors'; export * from './local-image'; export * from './registry-secrets'; export { resolveDockerPlatform } from './resolve'; export { getRegistryAndName } from './utils'; export { BalenaYml, ParsedBalenaYml }; export { PathUtils }; export { ResolveListeners }; export { CANONICAL_HUB_URL } from './constants'; export declare function generateTasks(composition: Compose.Composition, buildStream: stream.Readable, metadataDirectories?: string[]): { tasks: BuildTask[]; strippedStream: stream.Readable; }; export declare function populateTaskBuildStream(task: BuildTask, strippedStream: stream.Readable): Promise; export declare function populateStreamingTaskBuildStream(task: BuildTask, strippedStream: stream.Readable): BuildTask; export declare function splitBuildStream(composition: Compose.Composition, buildStream: stream.Readable): Promise; export declare function fromImageDescriptors(images: Compose.ImageDescriptor[], buildStream: stream.Readable, metadataDirectories?: string[]): Promise; export declare function buildHasSecrets(tasks: BuildTask[]): boolean; export declare function performResolution(tasks: BuildTask[], architecture: string, deviceType: string, resolveListeners: ResolveListeners, additionalTemplateVars?: Record, dockerfilePreprocessHook?: (dockerfile: string) => string): BuildTask[]; export declare function performSingleResolution(task: BuildTask, architecture: string, deviceType: string, resolveListeners: ResolveListeners, additionalTemplateVars?: Record, dockerfilePreprocessHook?: (dockerfile: string) => string): BuildTask; export declare function performBuilds(tasks: BuildTask[], docker: Dockerode, tmpDir: string): Promise; export declare function initializeBuildMetadata(tasks: BuildTask[], docker: Dockerode, tmpDir: string): Promise<{ secrets: SecretsPopulationMap; regSecrets: RegistrySecrets; architecture: string; }>; export declare function performSingleBuild(task: BuildTask, docker: Dockerode, registrySecrets: RegistrySecrets, secretMap?: SecretsPopulationMap, buildArgs?: Record): Promise;