import type { ISkillSource } from '@mcp-abap-adt/llm-agent'; import { type IMarketplaceTransport } from './http-marketplace-source.js'; /** A fetched source's config, resolved from YAML/CLI. A {@link SkillSourceStrategy} * turns it into a concrete {@link ISkillSource} with strategy-specific placement. */ export type FetchedSourceConfig = { source: string; enabled: readonly string[]; transport: IMarketplaceTransport; chunk: { maxChars: number; }; strategyConfig?: Record; }; /** Maps a {@link FetchedSourceConfig} to an {@link ISkillSource} (placement decided here). */ export type SkillSourceStrategy = (cfg: FetchedSourceConfig) => ISkillSource; /** Register (or override) a named source strategy. */ export declare function registerSkillSourceStrategy(name: string, f: SkillSourceStrategy): void; /** Resolve a registered strategy by name; throws (listing registered names) if unknown. */ export declare function resolveSkillSourceStrategy(name: string): SkillSourceStrategy; //# sourceMappingURL=source-strategies.d.ts.map