/** * RelationshipMap — Track component composition recipes * * Stores canonical composition recipes and analyzes component relationships * to understand how components work together. */ import type { CompositionRecipe } from '../types.js'; import type { ComponentIndex } from './component-index.js'; export declare class RelationshipMap { private recipes; /** * Add a composition recipe */ addRecipe(recipe: CompositionRecipe): void; /** * Get a recipe by name */ getRecipe(name: string): CompositionRecipe | undefined; /** * Find all recipes that involve a component */ findRecipesFor(tagName: string): CompositionRecipe[]; /** * Get all recipes */ getAll(): CompositionRecipe[]; /** * Get recipes by status */ getByStatus(status: 'canonical' | 'candidate' | 'deprecated'): CompositionRecipe[]; /** * Build relationships from component analysis * * Scans component properties and slots to infer composition recipes. * This is a starting point for recipe discovery. */ buildFromComponents(componentIndex: ComponentIndex): Promise; /** * Infer composition recipes from component metadata */ private inferRecipes; /** * Infer the role of a card child component */ private inferCardChildRole; /** * Serialize to JSON */ toJSON(): Record; /** * Deserialize from JSON */ static fromJSON(obj: Record): RelationshipMap; } //# sourceMappingURL=relationship-map.d.ts.map