import * as T from '../../../base/lib/types'; import { ImageId, VolumeId } from '../../../base/lib/types'; import { SDKManifest, SDKImageInputSpec } from '../../../base/lib/types/ManifestTypes'; import { VersionGraph } from '../version/VersionGraph'; /** * @description Use this function to define critical information about your package * * @param manifest Static properties of the package */ export declare function setupManifest(manifest: Manifest & SDKManifest): Manifest; /** * Build the final publishable manifest by combining the SDK manifest definition * with version graph metadata, OS version, SDK version, and computed fields * (migration ranges, hardware requirements, alerts, etc.). * * @param versions - The service's VersionGraph, used to extract the current version, release notes, and migration ranges * @param manifest - The SDK manifest definition (from `setupManifest`) * @returns A fully resolved Manifest ready for packaging */ export declare function buildManifest, VolumesTypes extends VolumeId, ImagesTypes extends ImageId, Manifest extends { dependencies: Dependencies; id: Id; images: Record; volumes: VolumesTypes[]; }>(versions: VersionGraph, manifest: SDKManifest & Manifest): Manifest & T.Manifest;