import { FirewallDesiredStateService } from '../../firewalls/services/firewall-desired-state.service';
import { FirewallReconciliationService } from '../../firewalls/services/firewall-reconciliation.service';
import { ClusterEntity } from '../entities/cluster.entity';
import { FirewallRuleDto } from '../../../providers/dto/firewall.dto';
import { CloudProvider } from '../../../providers/enums/cloud-provider.enum';
/**
 * Service to handle cluster-firewall integration
 * Manages firewall creation and deletion during cluster lifecycle
 */
export declare class ClusterFirewallIntegrationService {
    private readonly firewallDesiredStateService;
    private readonly firewallReconciliationService;
    private readonly logger;
    constructor(firewallDesiredStateService: FirewallDesiredStateService, firewallReconciliationService: FirewallReconciliationService);
    /**
     * Create and reconcile firewall for a cluster
     * IMPORTANT: This MUST be called BEFORE creating any cluster nodes
     */
    createAndReconcileFirewall(cluster: ClusterEntity, desiredRules: FirewallRuleDto[]): Promise<string | null>;
    /**
     * Delete firewall for a cluster
     * Called during cluster deletion
     */
    deleteClusterFirewall(clusterId: string, provider: CloudProvider): Promise<void>;
}
