n8n
Version:
n8n Workflow Automation Tool
61 lines (60 loc) • 3.22 kB
TypeScript
import { AgentDisconnectIntegrationDto, type AgentIntegrationStatusResponse, CreateSlackAgentAppDto, type CreateSlackAgentAppResponse, type SlackAgentAppManifestResponse } from '@n8n/api-types';
import type { AuthenticatedRequest } from '@n8n/db';
import type { Request, Response } from 'express';
import { CredentialsService } from '../../credentials/credentials.service';
import { AgentIntegrationPersistenceService } from './agent-integration-persistence.service';
import { AgentPublishService } from './agent-publish.service';
import { AgentRunnableStateService } from './agent-runnable-state.service';
import { ChatIntegrationRegistry } from './integrations/agent-chat-integration';
import { ChatIntegrationService } from './integrations/chat-integration.service';
import { SlackAppSetupService } from './integrations/slack-app-setup.service';
import { AgentRepository } from './repositories/agent.repository';
export declare class AgentIntegrationsController {
private readonly agentIntegrationPersistenceService;
private readonly agentPublishService;
private readonly credentialsService;
private readonly chatIntegrationService;
private readonly agentRepository;
private readonly chatIntegrationRegistry;
private readonly slackAppSetupService;
private readonly agentRunnableStateService;
constructor(agentIntegrationPersistenceService: AgentIntegrationPersistenceService, agentPublishService: AgentPublishService, credentialsService: CredentialsService, chatIntegrationService: ChatIntegrationService, agentRepository: AgentRepository, chatIntegrationRegistry: ChatIntegrationRegistry, slackAppSetupService: SlackAppSetupService, agentRunnableStateService: AgentRunnableStateService);
private validateIntegration;
connectIntegration(req: AuthenticatedRequest<{
projectId: string;
}>, _res: Response, agentId: string): Promise<{
status: string;
agent: import("./entities/agent.entity").Agent & {
isRunnable: boolean;
hasPublishHistory: boolean;
};
}>;
createSlackApp(req: AuthenticatedRequest<{
projectId: string;
}>, _res: Response, agentId: string, payload: CreateSlackAgentAppDto): Promise<CreateSlackAgentAppResponse>;
getSlackAppManifest(req: AuthenticatedRequest<{
projectId: string;
}>, _res: Response, agentId: string): Promise<SlackAgentAppManifestResponse>;
handleSlackAppOAuthCallback(req: Request<{
projectId: string;
agentId: string;
}, unknown, unknown, {
code?: string;
state?: string;
error?: string;
error_description?: string;
}>, res: Response, agentId: string): Promise<void>;
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>;
}