/**
 * Model Catalog Loader
 *
 * Loads and merges model catalogs from multiple sources:
 * - Builtin models (shipped with AIWG)
 * - Discovered models (from auto-refresh)
 * - Custom models (user-defined)
 *
 * Merge priority: custom > discovered > builtin
 *
 * @implements @.aiwg/architecture/enhanced-model-selection-design.md#9-model-catalog-system
 * @module src/catalog/loader
 */
import type { ModelCatalog, CatalogModel, CatalogProvider, CatalogFilter } from './types.js';
/**
 * Load and merge all catalog sources
 *
 * Merge order: builtin -> discovered -> custom
 * Later sources override earlier ones
 */
export declare function loadCatalog(): Promise<ModelCatalog>;
/**
 * Get a single model by ID or alias
 */
export declare function getModel(modelIdOrAlias: string): Promise<CatalogModel | null>;
/**
 * List all models, optionally filtered
 */
export declare function listModels(filter?: CatalogFilter): Promise<CatalogModel[]>;
/**
 * Get provider information
 */
export declare function getProvider(providerId: string): Promise<CatalogProvider | null>;
/**
 * List all providers
 */
export declare function listProviders(): Promise<Array<{
    id: string;
    info: CatalogProvider;
}>>;
/**
 * Search models by query string
 * Searches in: id, displayName, aliases, tags
 */
export declare function searchModels(query: string): Promise<CatalogModel[]>;
//# sourceMappingURL=loader.d.ts.map