import type { AntelopeLogging, ModuleSource } from "@antelopejs/interface-core/config"; import type { IFileSystem } from "../../types"; import type { ModulePackageJson } from "../module-manifest"; export interface BuildPathEntry { key: string; values: string[]; } export interface BuildAliasEntry { alias: string; replace: string; } export interface BuildImportOverride { interface: string; source: string; id?: string; } export interface BuildArtifactConfig { name: string; cacheFolder: string; projectFolder: string; logging?: AntelopeLogging; envOverrides: Record; } export interface BuildModuleEntry { folder: string; source: ModuleSource; name: string; version: string; main: string; manifest: ModulePackageJson; implements?: string[]; baseUrl: string; paths: BuildPathEntry[]; srcAliases?: BuildAliasEntry[]; config?: unknown; importOverrides?: BuildImportOverride[]; disabledExports?: string[]; } export interface BuildArtifact { version: string; buildTime: string; configHash: string; env: string; config: BuildArtifactConfig; modules: Record; } export interface BuildArtifactInput { configHash: string; env: string; config: BuildArtifactConfig; modules: Record; buildTime?: string; } export declare function getBuildFolderPath(projectFolder: string): string; export declare function getBuildArtifactPath(projectFolder: string): string; export declare function computeConfigHash(projectFolder: string, env: string, fs?: IFileSystem): Promise; export declare function createBuildArtifact(params: BuildArtifactInput): BuildArtifact; export declare function writeBuildArtifact(projectFolder: string, artifact: BuildArtifact, fs?: IFileSystem): Promise; export declare function readBuildArtifact(projectFolder: string, fs?: IFileSystem): Promise;