import { type DetectOptions } from "./detect.js"; import { type DesignInventory } from "./inventory.js"; import type { DesignSystemDeclaration, ResolvedConfig } from "../types.js"; /** * Fold a declaration into the detected kits. * * A declaration that names the same kit corrects it in place; one that names a * kit detection missed is prepended, because a person naming their design * system outranks anything inferred from a dependency list. */ export declare function applyDeclaration(resolved: ResolvedConfig, inv: DesignInventory, decl: DesignSystemDeclaration): DesignInventory; export interface ResolveOptions extends DetectOptions { /** Ignore the cache and re-read the repository. */ refresh?: boolean; /** Write the result back to `.lookout/design-system.json`. */ persist?: boolean; } /** * The project's design system, from cache when there is one and from the * repository when there is not. * * Callers on the hot path (issue materialisation) pass nothing and get the * cache; `lookout design-system --refresh` forces the scan. Either way the * config declaration is applied afterwards, so editing the config takes effect * without anyone remembering to refresh. */ export declare function resolveInventory(resolved: ResolvedConfig, opts?: ResolveOptions): Promise;