import type { ToolCommandContract } from '@forgeax/engine-tool-runtime'; import type { AssetPublicationEnvelope, AssetPublicationExternalEvidence, AssetPublicationOutput, CatalogEntry, PackV2, PluginBuildTarget } from '@forgeax/engine-types'; import type { PackBlob } from './blob.js'; import type { PackProgram } from './program.js'; /** Portable delivered bytes. Decoding and dependency readiness remain loader responsibilities. */ export interface FixedPackExecution { readonly programs: Readonly>; /** Membership is the producer's explicit executable plugin projection for this target. */ readonly tools: Readonly>; } export interface FixedPackPublication { readonly pack: PackV2; readonly rows: readonly CatalogEntry[]; /** Original transport bytes keyed by the unchanged package-relative artifact path. */ readonly blobs: Readonly>; readonly executions?: Readonly>>; } export interface RuntimePackAssetInput { readonly guid: string; readonly kind: string; readonly name?: string; readonly payload: unknown; readonly refs?: readonly string[]; readonly artifacts?: Readonly>; } export interface RuntimePackInput { readonly assets: readonly RuntimePackAssetInput[]; } export interface RuntimePackEnvelope { readonly schemaVersion: '2.0.0'; readonly kind: 'internal-text-package'; readonly scopeId: string; readonly generation: number; readonly digest: string; readonly outputSetDigest: string; readonly assets: readonly RuntimePackAsset[]; } export interface RuntimePackPublication { readonly pack: RuntimePackEnvelope; readonly publication: AssetPublicationEnvelope; } interface RuntimePackAsset extends RuntimePackAssetInput { readonly refs: readonly string[]; readonly artifacts: Readonly>; } export interface RuntimePackPublicationInput { readonly pack: RuntimePackInput; readonly scopeId: string; readonly sourcePath: string; readonly sourceRevision: string; readonly packageUrl: string; readonly inputFingerprint?: string; readonly digest?: string; readonly generation?: number; readonly outputs?: readonly AssetPublicationOutput[]; /** Author/producer keys by normalized GUID when deriving output rows. */ readonly sourceKeys?: ReadonlyMap; readonly externalEvidence?: readonly AssetPublicationExternalEvidence[]; } /** * Return the immutable Pack content used by DDC identity. Runtime scope and * publication generation fence a live consumer, but do not change the * cooked asset bytes represented by an immutable DDC key. */ export declare function stripRuntimePackLifecycle(value: unknown): unknown; /** Rehydrate a DDC Pack payload into the active runtime scope for transport. */ export declare function bindRuntimePackScope(value: unknown, scopeId: string, generation: number): unknown; export declare function createRuntimePackPublication(input: RuntimePackPublicationInput): RuntimePackPublication; export {}; //# sourceMappingURL=runtime-publication.d.ts.map