import React from 'react';
import { RuleTier, RuleDefinition, RuleVariant, OverrideHistoryResponse } from '../types';
/**
 * Props for the TierCard component.
 * Library-ready: fully controlled via props.
 */
interface TierCardProps {
    /** The rule tier object containing tier details and rules */
    tier: RuleTier;
    /** All tiers data for linked variant lookup */
    allTiers?: RuleTier[];
    /** Callback function to toggle the expansion state of the tier */
    onToggle: () => void;
    /** Callback function to delete a rule */
    onDeleteRule: (id: string) => void;
    /** Whether the current rule set is global scope */
    isGlobalScope?: boolean;
    /**
     * Optional handler to fetch override history for a rule/variant.
     * Parent component should implement API call logic.
     */
    onFetchOverrideHistory?: (ruleId: string, variantId?: string) => Promise<OverrideHistoryResponse | null>;
    /** Callback when Edit button is clicked for a rule (legacy) */
    onEditRule?: (rule: RuleDefinition, tierName?: string) => void;
    /** Callback when Edit button is clicked for a variant */
    onEditVariant?: (variant: RuleVariant, ruleId: string, tierName?: string) => void;
    /** Callback when Delete button is clicked for a variant */
    onDeleteVariant?: (variantId: string, ruleId: string) => void;
    /** Custom label for empty rules text */
    emptyRulesText?: string;
    /** Custom label for single rule suffix */
    singleRuleSuffix?: string;
    /** Custom label for multiple rules suffix */
    multipleRulesSuffix?: string;
    /** Map of highlighted variant IDs to their action type */
    highlightedVariants?: Map<string, 'new' | 'existing'>;
    /** Display names of all tiers that have highlighted variants (for cross-tier banner) */
    highlightedTierNames?: string[];
    /** func for fetch rules for enable/disable Btn */
    onToggleSuccess: () => void;
    /** func for reordering rules by dragging */
    onReorderRules?: (scopeId: string, tierId: string, movedRuleId: string, prevRuleId: string | null, nextRuleId: string | null) => void;
    /**Id of scope */
    scopeId?: string;
    onRefreshRuleSets?: (showLoader?: boolean, scopeId?: string) => void;
    setDeleteConfirmationUsedFor?: (value: 'ruleDeletion' | 'variantDeletion') => void;
    onCopyToTier?: (variant: RuleVariant, ruleId: string, ruleTitle: string, sourceTier: string, targetTier: string) => void;
}
/**
 * Component to display a Rule Tier card.
 * Can be expanded to show the list of rules within the tier.
 * Library-ready: fully controlled via props, uses CSS modules.
 *
 * @param props - Component props
 * @returns JSX element displaying the tier card
 */
declare const TierCard: React.FC<TierCardProps>;
export default TierCard;
//# sourceMappingURL=TierCard.d.ts.map