import type { AgentIntegrationConfig } from '@n8n/api-types';
import { Logger } from '@n8n/backend-common';
import { GlobalConfig } from '@n8n/config';
import type { StateAdapter } from 'chat';
import { Publisher } from '../../../scaling/pubsub/publisher.service';
import type { PubSubCommandMap } from '../../../scaling/pubsub/pubsub.event-map';
import { AgentChatSubscriptionRepository } from '../repositories/agent-chat-subscription.repository';
interface CreateStateAdapterOptions {
    agentId: string;
    integration: AgentIntegrationConfig;
    delegate: StateAdapter;
}
export declare class AgentChatSubscriptionStateService {
    private readonly logger;
    private readonly repository;
    private readonly publisher;
    private readonly globalConfig;
    private readonly activeStates;
    constructor(logger: Logger, repository: AgentChatSubscriptionRepository, publisher: Publisher, globalConfig: GlobalConfig);
    createStateAdapter(options: CreateStateAdapterOptions): StateAdapter;
    deleteSubscriptionsForIntegration(agentId: string, integration: AgentIntegrationConfig): Promise<void>;
    handleSubscriptionChanged(payload: PubSubCommandMap['agent-chat-subscription-changed']): Promise<void>;
    private unregister;
    private publishSubscriptionChanged;
}
export {};
