import { type RecipeSourceProvenance } from '@farmslot/protocol'; import type { LoadedRecipeLibrarySource, RecipeLibrarySource, RecipeLogger } from './types.js'; export type RecipeLibraryEnv = Record; export interface ResolvedLibraryRecipe { ref: string; document: Record; source: string; /** Recipe file path relative to the library root. */ file: string; path: string; adapter?: string; provenance: RecipeSourceProvenance; /** Source names that also declare this ref at lower precedence. */ shadows: string[]; } export interface RecipeLibraryResolution { sources: LoadedRecipeLibrarySource[]; recipes: ReadonlyMap; } export declare function parseRecipeLibraryPath(value: string): RecipeLibrarySource[]; export declare function personalRecipeLibraryRoot(env?: RecipeLibraryEnv): string; export declare function defaultRecipeLibrarySources(env?: RecipeLibraryEnv): Promise; export declare function resolveRecipeLibrarySources(options?: { cliEntries?: string[]; env?: RecipeLibraryEnv; recipePath?: string; }): Promise; export declare function applyTaskLocalInvocationTrust(sources: readonly RecipeLibrarySource[], invocationTrust: RecipeSourceProvenance['trust']): RecipeLibrarySource[]; /** * Load ordered library sources into one recipe index. The first source wins; * within one source an exact adapter variant wins over the generic recipe. */ export declare function loadRecipeLibraries(sources: readonly RecipeLibrarySource[], options?: { adapter?: string; logger?: RecipeLogger; }): Promise; export declare function listRecipeFiles(root: string): Promise; //# sourceMappingURL=library.d.ts.map