import { CreateApiKeyRequestDto, ListApiKeysQueryDto, UpdateApiKeyRequestDto } from '@n8n/api-types'; import { AuthenticatedRequest } from '@n8n/db'; import type { RequestHandler } from 'express'; import { EventService } from '../events/event.service'; import { PublicApiKeyService } from '../services/public-api-key.service'; export declare const isApiEnabledMiddleware: RequestHandler; export declare class ApiKeysController { private readonly eventService; private readonly publicApiKeyService; constructor(eventService: EventService, publicApiKeyService: PublicApiKeyService); createApiKey(req: AuthenticatedRequest, _res: Response, body: CreateApiKeyRequestDto): Promise<{ apiKey: string; rawApiKey: string; expiresAt: number | null; user: import("@n8n/db").User; userId: string; label: string; scopes: import("@n8n/permissions").ApiKeyScope[]; audience: import("n8n-workflow").ApiKeyAudience; lastUsedAt: Date | null; id: string; generateId(): void; createdAt: Date; updatedAt: Date; setUpdateDate(): void; }>; getApiKeys(req: AuthenticatedRequest, _res: Response, query: ListApiKeysQueryDto): Promise<{ items: { apiKey: string; expiresAt: number | null; owner: { id: string; firstName: string; lastName: string; email: string; }; userId: string; label: string; scopes: import("@n8n/permissions").ApiKeyScope[]; audience: import("n8n-workflow").ApiKeyAudience; lastUsedAt: Date | null; id: string; generateId(): void; createdAt: Date; updatedAt: Date; setUpdateDate(): void; }[]; counts: { mine: number; all: number; }; totals: { mine: number; all: number; }; }>; deleteApiKey(req: AuthenticatedRequest, _res: Response, apiKeyId: string): Promise<{ success: boolean; }>; updateApiKey(req: AuthenticatedRequest, _res: Response, apiKeyId: string, body: UpdateApiKeyRequestDto): Promise<{ success: boolean; }>; getApiKeyScopes(req: AuthenticatedRequest, _res: Response): Promise; }