import type { MindContext } from "../types.js"; import type { ConceptLicence, ConnectorLicence, Site } from "../graph-search.js"; import type { PipelineMechanism } from "../pipeline-mechanism.js"; /** The concept hops the cover may take, OFFERED up front and looked up only * when the search asks (see {@link Licence}): every recognised form with no * continuation of its own may borrow a halo sibling's. */ export interface CoverConcepts extends ConceptLicence { /** Look up the asked forms' concept targets not yet granted. */ grant(nodes: Iterable): Promise; } export declare function offerConcepts(ctx: MindContext, sites: ReadonlyArray): CoverConcepts; /** The connectors the cover may splice, OFFERED up front and BRIDGED only when * the search asks (see {@link ConnectorLicence}): every pair a learnt whole * could run together — two touching sites, each side as itself or as its * answer, in both orders — and, when three or more answers are recognised, the * first answer to each later one (the N-ary whole). */ export interface CoverConnectors extends ConnectorLicence { /** Bridge the asked pairs not yet granted. */ grant(keys: Iterable): Promise; } export declare function offerConnectors(ctx: MindContext, sites: ReadonlyArray, query?: Uint8Array): CoverConnectors; export declare const coverMechanism: PipelineMechanism;