import { Logger } from 'winston';
import { LoggerService, AuthService } from '@backstage/backend-plugin-api';
import { RoadieVectorStore, AugmentationIndexer } from '@roadiehq/rag-ai-node';
import { CatalogApi } from '@backstage/catalog-client';
import { TokenManager, PluginEndpointDiscovery } from '@backstage/backend-common';
import { Config } from '@backstage/config';

interface RoadieBedrockEmbeddingsConfig {
    logger: Logger | LoggerService;
    tokenManager?: TokenManager;
    auth?: AuthService;
    vectorStore: RoadieVectorStore;
    catalogApi: CatalogApi;
    discovery: PluginEndpointDiscovery;
    config: Config;
}
declare function initializeOpenAiEmbeddings({ logger, tokenManager, auth, vectorStore, catalogApi, discovery, config, }: RoadieBedrockEmbeddingsConfig): Promise<AugmentationIndexer>;

export { type RoadieBedrockEmbeddingsConfig, initializeOpenAiEmbeddings };
