import type { ButtonSizes, GradientDirection, ButtonPaddingPreset } from './types';
/**
 * Shared constants for button CSS generation
 *
 * These mappings convert Tailwind-style tokens to actual CSS values.
 * Centralized here to eliminate duplication across multiple files.
 */
/**
 * Map Tailwind-style gradient direction tokens to CSS gradient directions
 */
export declare const GRADIENT_DIRECTION_MAP: Record<GradientDirection, string>;
/**
 * Map Tailwind border-radius tokens to CSS values
 */
export declare const BORDER_RADIUS_MAP: Record<string, string>;
/**
 * Generate shadow CSS value dynamically based on elevation, softness, and position
 *
 * This replaces the static shadow maps with a single dynamic function.
 * Benefits: single source of truth, easy to adjust algorithm, no redundancy.
 *
 * @param elevation - Shadow elevation level
 * @param softness - Shadow softness/blur style
 * @param position - Shadow position (bottom or bottom-right diagonal)
 * @returns CSS box-shadow value
 */
export declare function generateShadowValue(elevation: 'none' | 'low' | 'medium' | 'high', softness: 'crisp' | 'soft' | 'hard' | null, position?: 'bottom' | 'bottom-right'): string;
/**
 * Map Tailwind border-width tokens to CSS values
 */
export declare const BORDER_WIDTH_MAP: Record<string, string>;
/**
 * Map Tailwind font-size tokens to CSS values
 */
export declare const FONT_SIZE_MAP: Record<string, string>;
/**
 * Map padding preset names to CSS padding values
 * These are global defaults that apply to all button variants unless overridden
 */
export declare const BUTTON_PADDING_PRESETS: Record<ButtonPaddingPreset, string>;
/**
 * System defaults used when a theme doesn't supply its own `theme.buttons.sizes`.
 *
 * Every size is defined so the size class CSS always emits a complete rule and
 * variants are never naked. Referenced by `generateButtonCss` and surfaceable
 * from UI ("Showing default size ramp") without duplicating the values.
 */
export declare const DEFAULT_BUTTON_SIZES: ButtonSizes;
