import type { Component, ComponentRow, ComponentsDetails, ComponentsList, MetadataStore } from '../../types'; export declare const getComponentsListFromRows: (rows: ComponentRow[]) => ComponentsList; export declare const getComponentsDetailsFromRows: (rows: ComponentRow[]) => ComponentsDetails; export declare const getComponentRow: (name: string, version: string, component: Component) => ComponentRow; export interface MetadataSnapshot { componentsList: ComponentsList; componentsDetails: ComponentsDetails; } export interface MetadataIndex { get(): MetadataSnapshot | undefined; add(row: ComponentRow): MetadataSnapshot; refresh(): Promise; getOrRefresh(): Promise; } export declare const createMetadataIndex: (metadataStore: MetadataStore) => MetadataIndex;