import type { CollectedRefs } from './definition-ref-registry.js'; import type { ReferencePath } from './types.js'; interface ResolvedSlot { /** * Path to the resolved slot */ resolvedPath: ReferencePath; /** * Path to the parent context of the slot */ path: ReferencePath; } /** * Finds the nearest ancestor slot for a given target path. * * @param candidateSlots - The candidate slots to search through. * @param targetPath - The target path to find the nearest ancestor slot for. * @returns The nearest ancestor slot, or undefined if no slot is found. */ export declare function findNearestAncestorSlot(candidateSlots: T[] | undefined, targetPath: ReferencePath): T | undefined; /** * Resolves all slot references to actual paths. * * This function takes the collected refs (which have `parentSlot` references) * and resolves them to `parentPath` values using the slotPaths map. * * For scoped slots (where the same slot can be registered multiple times), * we find the registration whose path is the nearest ancestor of the entity/reference. * * @param collected - The collected refs with unresolved slots. * @returns The resolved refs with parentPath instead of parentSlot. * @throws If a required slot is not found in the slotPaths map. */ export declare function resolveSlots(collected: CollectedRefs): Map; export {}; //# sourceMappingURL=resolve-slots.d.ts.map