n8n
Version:
n8n Workflow Automation Tool
39 lines (38 loc) • 2.09 kB
TypeScript
import { type ChatHubProvider, type ChatModelDto, type ChatModelsResponse } from '@n8n/api-types';
import { WorkflowRepository, type User, type WorkflowEntity } from '@n8n/db';
import { Scope } from '@n8n/permissions';
import { CredentialsFinderService } from '../../credentials/credentials-finder.service';
import { DynamicNodeParametersService } from '../../services/dynamic-node-parameters.service';
import { WorkflowService } from '../../workflows/workflow.service';
import { ChatHubAgentService } from './chat-hub-agent.service';
import { ChatHubWorkflowService } from './chat-hub-workflow.service';
export declare class ChatHubModelsService {
private readonly nodeParametersService;
private readonly workflowService;
private readonly workflowRepository;
private readonly credentialsFinderService;
private readonly chatHubAgentService;
private readonly chatHubWorkflowService;
constructor(nodeParametersService: DynamicNodeParametersService, workflowService: WorkflowService, workflowRepository: WorkflowRepository, credentialsFinderService: CredentialsFinderService, chatHubAgentService: ChatHubAgentService, chatHubWorkflowService: ChatHubWorkflowService);
getModels(user: User, credentialIds: Partial<Record<ChatHubProvider, string | null>>): Promise<ChatModelsResponse>;
private fetchModelsForProvider;
private fetchOpenAiModels;
private fetchAnthropicModels;
private fetchGoogleModels;
private fetchOllamaModels;
private fetchAzureOpenAiModels;
private fetchAzureEntraIdModels;
private fetchAwsBedrockModels;
private fetchMistralCloudModels;
private fetchCohereModels;
private fetchDeepSeekModels;
private fetchOpenRouterModels;
private fetchGroqModels;
private fetchXAiGrokModels;
private fetchVercelAiGatewayModels;
private fetchAgentWorkflowsAsModels;
extractModelFromWorkflow({ name, activeVersion, id, shared }: WorkflowEntity, scopes: Scope[]): ChatModelDto | null;
private parseSuggestedPrompts;
private resolveOwnerProject;
private transformAndFilterModels;
}