n8n
Version:
n8n Workflow Automation Tool
25 lines (24 loc) • 1.38 kB
TypeScript
import { ApiKey, ApiKeyRepository, User, UserRepository } from '@n8n/db';
import { EntityManager } from '@n8n/typeorm';
import { AuthStrategyRegistry } from '../../services/auth-strategy.registry';
import { JwtService } from '../../services/jwt.service';
import { AccessTokenRepository } from './database/repositories/oauth-access-token.repository';
import { UserWithContext } from './mcp.types';
export declare class McpServerApiKeyService {
private readonly apiKeyRepository;
private readonly jwtService;
private readonly userRepository;
private readonly accessTokenRepository;
private readonly authStrategyRegistry;
constructor(apiKeyRepository: ApiKeyRepository, jwtService: JwtService, userRepository: UserRepository, accessTokenRepository: AccessTokenRepository, authStrategyRegistry: AuthStrategyRegistry);
createMcpServerApiKey(user: User, trx?: EntityManager): Promise<ApiKey>;
findServerApiKeyForUser(user: User, { redact }?: {
redact?: boolean | undefined;
}): Promise<ApiKey | null>;
verifyApiKey(apiKey: string): Promise<UserWithContext>;
getUserForAccessToken(token: string): Promise<User | null>;
deleteAllMcpApiKeysForUser(user: User, trx?: EntityManager): Promise<void>;
private redactApiKey;
getOrCreateApiKey(user: User): Promise<ApiKey>;
rotateMcpServerApiKey(user: User): Promise<ApiKey>;
}