import { ReactNode } from "react";
import { PersonalizationRule } from "../../types";
export declare function RuleList({ rules, selectedRuleId, appliedRuleId, disabled, onToggle, onApply, onDuplicate, onDelete, onMove, onRename, onReorder, renderRuleBody, }: {
    rules: PersonalizationRule[];
    /** UID of the rule whose body is currently expanded (accordion state). */
    selectedRuleId?: string;
    /** UID of the rule currently applied to the preview (gets the checkmark). */
    appliedRuleId?: string;
    disabled?: boolean;
    onToggle: (uid: string) => void;
    /** Apply this rule to the preview (independent of expansion). */
    onApply: (uid: string) => void;
    onDuplicate: (uid: string) => void;
    onDelete: (uid: string) => void;
    onMove: (uid: string, direction: -1 | 1) => void;
    onRename: (uid: string, name: string) => void;
    onReorder: (fromIndex: number, toIndex: number) => void;
    renderRuleBody: (rule: PersonalizationRule) => ReactNode;
}): import("react").JSX.Element | null;
