import type { CapabilityManifest, CapabilityRegistryDocument, CapabilityRegistrySource, CapabilitySourceType } from '../contracts/capability'; import type { EntityRef } from '../contracts/common'; import type { WorkflowDefinition } from '../contracts/workflow-definition'; export interface CapabilityRegistryInputSource extends CapabilityRegistrySource { manifests: readonly unknown[]; } export interface CompiledCapabilityRegistry { document: CapabilityRegistryDocument; manifests: readonly CapabilityManifest[]; manifestsById: ReadonlyMap; sourcesByCapabilityId: ReadonlyMap; require(reference: EntityRef | string): CapabilityManifest; } /** Extracts only canonical extensions and fails when a declared Monkeys tool has no manifest. */ export declare const extractOpenApiCapabilityManifests: (document: unknown) => CapabilityManifest[]; export declare const createCapabilityRegistrySource: (sourceType: CapabilitySourceType, sourceId: string, ownerRepo: string, manifests: readonly unknown[]) => CapabilityRegistryInputSource; export declare const createOpenApiCapabilityRegistrySource: (sourceId: string, ownerRepo: string, document: unknown) => CapabilityRegistryInputSource; export interface WorkflowCapabilityManifestOptions { ownerRepo: string; surfaces: readonly string[]; slots?: readonly string[]; variants?: readonly string[]; tokenRefs?: readonly string[]; } export declare const createWorkflowCapabilityManifest: (input: WorkflowDefinition, options: WorkflowCapabilityManifestOptions) => CapabilityManifest; /** Compiles all production declaration sources into one immutable, conflict-free registry. */ export declare const compileCapabilityRegistry: (sources: readonly CapabilityRegistryInputSource[]) => CompiledCapabilityRegistry; //# sourceMappingURL=capability-registry.d.ts.map