/** * Multi-registry parallel query orchestration. * Queries all configured registries in parallel using Promise.allSettled() * and merges results with source labels. */ import type { ResolvedRegistry } from './config'; import type { DossierContentResult, DossierInfo, DossierListItem, ListDossiersOptions, SearchOptions } from './registry-client'; export interface LabeledDossierListItem extends DossierListItem { _registry: string; } export interface LabeledDossierInfo extends DossierInfo { _registry: string; } export interface MultiRegistryListResult { dossiers: LabeledDossierListItem[]; total: number; errors: Array<{ registry: string; error: string; }>; } export interface MultiRegistrySearchResult { dossiers: LabeledDossierListItem[]; total: number; errors: Array<{ registry: string; error: string; }>; } export interface MultiRegistryGetDossierResult { result: LabeledDossierInfo | null; errors: Array<{ registry: string; error: string; }>; } export interface MultiRegistryGetContentResult { result: (DossierContentResult & { _registry: string; }) | null; errors: Array<{ registry: string; error: string; }>; } /** * List dossiers from all configured registries in parallel. */ declare function multiRegistryList(options?: ListDossiersOptions): Promise; /** * List dossiers from specified registries in parallel. */ declare function multiRegistryListFrom(registries: ResolvedRegistry[], options?: ListDossiersOptions): Promise; /** * Search dossiers across all registries using server-side search. * Each registry filters results server-side; this function merges them. */ declare function multiRegistrySearch(query: string, options?: SearchOptions): Promise; /** * Get dossier info from the first registry that has it. * Tries all registries in parallel, returns the first success. * Returns error details when all registries fail. * When DOSSIER_DEBUG is set, logs which registry served the request to stderr. */ declare function multiRegistryGetDossier(name: string, version?: string | null): Promise; /** * Get dossier content from the first registry that has it. * Returns error details when all registries fail. * When DOSSIER_DEBUG is set, logs which registry served the request to stderr. */ declare function multiRegistryGetContent(name: string, version?: string | null): Promise; export { multiRegistryList, multiRegistryListFrom, multiRegistrySearch, multiRegistryGetDossier, multiRegistryGetContent, }; //# sourceMappingURL=multi-registry.d.ts.map