import { OnModuleInit } from '@nestjs/common';
import { Model } from 'mongoose';
import { AiModelGroupDocument, AiModelDocument, ICapabilityHandler } from './ai-models.model';
import { IAiModelGroup, IAiModel } from '../app-config.interface';
import { ConfigService } from '../config/config.service';
export declare class AiModelsService implements OnModuleInit {
    private aiModelGroupModel;
    private aiModelModel;
    private readonly configService;
    constructor(aiModelGroupModel: Model<AiModelGroupDocument>, aiModelModel: Model<AiModelDocument>, configService: ConfigService);
    onModuleInit(): Promise<void>;
    private transformModelToInterface;
    private getAiModelsFromDb;
    getAiModels(): Promise<IAiModelGroup[]>;
    getModelById(modelId: string): Promise<IAiModel | null>;
    getModelByProviderKey(providerKey: string): Promise<IAiModel | null>;
    getModelIdByProviderKey(providerKey: string): Promise<string | null>;
    getModelProviderKey(modelId: string): Promise<string>;
    getCapabilityHandler(modelId: string, capability: 'text' | 'image' | 'imageReading' | 'audio'): Promise<ICapabilityHandler | null>;
    getProviderIdByModelId(modelId: string): Promise<string | null>;
    isModelSubscription(modelId: string): Promise<boolean>;
    getAiModelsByGroupId(groupId: string): Promise<IAiModel[]>;
    selectChatService(model?: string): Promise<string>;
    updateAiModelsVars(): Promise<void>;
    getImageGenerationTool(modelId: string): Promise<IAiModel | null>;
}
