import { z } from 'zod';
/**
 * Accordion icon styles for expand/collapse indicators
 */
export declare const accordionIconSchema: z.ZodEnum<{
    "plus-minus": "plus-minus";
    chevron: "chevron";
    caret: "caret";
    arrow: "arrow";
    "circle-plus-minus": "circle-plus-minus";
}>;
export type AccordionIcon = z.infer<typeof accordionIconSchema>;
/**
 * Accordion icon names used in ICON_CONFIG
 * These are the only Lucide icons bundled for accordions
 */
export type AccordionLucideIcon = 'Plus' | 'Minus' | 'ChevronDown' | 'ArrowDown' | 'CirclePlus' | 'CircleMinus';
/**
 * Accordion configuration for a theme
 * Single style per theme (no variants needed)
 */
export declare const accordionSystemSchema: z.ZodObject<{
    background: z.ZodObject<{
        type: z.ZodLiteral<"solid">;
        colorToken: z.ZodString;
    }, z.core.$strip>;
    spacing: z.ZodEnum<{
        none: "none";
        compact: "compact";
        medium: "medium";
        spacious: "spacious";
        comfortable: "comfortable";
        cozy: "cozy";
    }>;
    corners: z.ZodNullable<z.ZodEnum<{
        soft: "soft";
        square: "square";
        rounded: "rounded";
        pill: "pill";
    }>>;
    border: z.ZodNullable<z.ZodObject<{
        widthClass: z.ZodString;
        colorToken: z.ZodString;
    }, z.core.$strip>>;
    shadow: z.ZodNullable<z.ZodObject<{
        elevation: z.ZodEnum<{
            none: "none";
            low: "low";
            high: "high";
            medium: "medium";
        }>;
        softness: z.ZodNullable<z.ZodEnum<{
            crisp: "crisp";
            soft: "soft";
            hard: "hard";
        }>>;
        position: z.ZodEnum<{
            bottom: "bottom";
            "bottom-right": "bottom-right";
        }>;
    }, z.core.$strip>>;
    icon: z.ZodObject<{
        style: z.ZodEnum<{
            "plus-minus": "plus-minus";
            chevron: "chevron";
            caret: "caret";
            arrow: "arrow";
            "circle-plus-minus": "circle-plus-minus";
        }>;
        position: z.ZodEnum<{
            left: "left";
            right: "right";
        }>;
        size: z.ZodEnum<{
            md: "md";
            lg: "lg";
            sm: "sm";
        }>;
    }, z.core.$strip>;
    trigger: z.ZodObject<{
        textColorToken: z.ZodString;
        fontWeight: z.ZodNullable<z.ZodEnum<{
            bold: "bold";
            regular: "regular";
            medium: "medium";
            semibold: "semibold";
        }>>;
    }, z.core.$strip>;
    hover: z.ZodObject<{
        backgroundColorToken: z.ZodOptional<z.ZodString>;
        textColorToken: z.ZodOptional<z.ZodString>;
        borderColorToken: z.ZodOptional<z.ZodString>;
    }, z.core.$strip>;
    content: z.ZodObject<{
        textColorToken: z.ZodString;
    }, z.core.$strip>;
}, z.core.$strip>;
export type AccordionSystem = z.infer<typeof accordionSystemSchema>;
/**
 * Icon configuration mapping icon styles to Lucide icons and behavior
 * Used by both CSS generation (for rotation) and component rendering (for icon selection)
 */
export declare const ICON_CONFIG: Record<AccordionIcon, {
    closedIcon: AccordionLucideIcon;
    openIcon?: AccordionLucideIcon;
    rotation: 0 | 90 | 180;
}>;
/**
 * Icon size mapping (px values for CSS and Lucide React)
 */
export declare const ICON_SIZE_PX: Record<AccordionSystem['icon']['size'], string>;
/**
 * Spacing map for accordion content padding
 */
export declare const ACCORDION_SPACING_MAP: Record<AccordionSystem['spacing'], string>;
