import { AgentDisconnectIntegrationDto, type AgentIntegrationStatusResponse } from '@n8n/api-types';
import type { AuthenticatedRequest } from '@n8n/db';
import type { Request, Response } from 'express';
import { AgentIntegrationManagementService } from './agent-integration-management.service';
import { ChatIntegrationRegistry } from './integrations/agent-chat-integration';
import { ChatIntegrationService } from './integrations/chat-integration.service';
import { AgentRepository } from './repositories/agent.repository';
export declare class AgentIntegrationsController {
    private readonly integrationManagementService;
    private readonly chatIntegrationService;
    private readonly agentRepository;
    private readonly chatIntegrationRegistry;
    constructor(integrationManagementService: AgentIntegrationManagementService, chatIntegrationService: ChatIntegrationService, agentRepository: AgentRepository, chatIntegrationRegistry: ChatIntegrationRegistry);
    connectIntegration(req: AuthenticatedRequest<{
        projectId: string;
    }>, _res: Response, agentId: string): Promise<{
        status: string;
    }>;
    disconnectIntegration(req: AuthenticatedRequest<{
        projectId: string;
    }>, _res: Response, agentId: string, payload: AgentDisconnectIntegrationDto): Promise<{
        status: string;
    }>;
    integrationStatus(req: AuthenticatedRequest<{
        projectId: string;
    }>, _res: Response, agentId: string): Promise<AgentIntegrationStatusResponse>;
    handleWebhook(req: Request<{
        projectId: string;
        agentId: string;
        platform: string;
    }>, res: Response): Promise<void>;
}
