import type { EvoPaths } from "../paths.ts"; import type { EvoComponentManifest, EvoComponentSelection } from "../types.ts"; import type { EvoAbiRegistry } from "./registry.ts"; export interface LoadedEvoComponentArtifact { directory: string; entrypoint: string; manifest: EvoComponentManifest; } export interface InspectedEvoComponentArtifact { manifest: EvoComponentManifest; entrypointContent: Buffer; } export interface PublishEvoComponentArtifactInput { id: string; version: string; abi: string; activationBoundary: EvoComponentManifest["activationBoundary"]; capabilities: string[]; entrypointName?: string; entrypointContent: string | Uint8Array; } export declare function publishEvoComponentArtifact(paths: EvoPaths, input: PublishEvoComponentArtifactInput): Promise; /** Purely inspect an external artifact without publishing it locally. */ export declare function inspectEvoComponentArtifact(sourceDirectory: string, registry: EvoAbiRegistry): Promise; /** Publish an already inspected artifact into the immutable local store. */ export declare function publishInspectedEvoComponentArtifact(paths: EvoPaths, artifact: InspectedEvoComponentArtifact): Promise; /** * Verify and publish an artifact received outside the local component store. * Only the manifest and its direct entrypoint are accepted; symlinks, support * files, digest drift, unknown ABIs, and capability-ceiling violations fail * before the immutable local copy is published. */ export declare function importEvoComponentArtifact(paths: EvoPaths, sourceDirectory: string, registry: EvoAbiRegistry): Promise; export declare function loadEvoComponentArtifact(paths: EvoPaths, digest: string, registry?: EvoAbiRegistry): Promise; export declare function validateEvoComponentSelection(paths: EvoPaths, surface: string, selection: EvoComponentSelection, registry: EvoAbiRegistry): Promise; //# sourceMappingURL=artifact.d.ts.map