/** * Platform-Specific Constants * * Design system constants that ensure compliance with platform guidelines. * These values are based on official Human Interface Guidelines (HIG) from Apple and Material Design from Google. */ /** * iOS Human Interface Guidelines (HIG) Constants * * @see https://developer.apple.com/design/human-interface-guidelines/layout */ export declare const IOS_HIG: { /** * Minimum Touch Target Size * * Apple requires a minimum tappable area of 44pt x 44pt for ALL interactive controls. * This is enforced during App Store review. * * @critical Violating this can result in App Store rejection */ readonly MIN_TOUCH_TARGET: 44; /** * Recommended Minimum Touch Target Size * * For better accessibility and usability, Apple recommends 48pt x 48pt. */ readonly RECOMMENDED_TOUCH_TARGET: 48; /** * Minimum Text Size * * Minimum font size for body text to ensure readability. */ readonly MIN_TEXT_SIZE: 17; }; /** * Universal Platform Constants * * These values work across both iOS and Android, taking the more restrictive requirement. */ export declare const PLATFORM_CONSTANTS: { /** * Minimum Touch Target Size * * Uses iOS requirement (44pt) as it's more restrictive than Android (48dp). * This ensures compliance on both platforms. */ readonly MIN_TOUCH_TARGET: number; /** * Recommended Touch Target Size * * Uses the higher value between iOS and Android recommendations. */ readonly RECOMMENDED_TOUCH_TARGET: 48; /** * Minimum Text Size * * Uses iOS requirement as it's larger. */ readonly MIN_TEXT_SIZE: number; }; /** * Helper function to validate touch target size * * @param size - The size to validate (in pt/dp) * @returns true if size meets platform requirements */ export declare const isValidTouchTarget: (size: number) => boolean; /** * Helper function to get minimum touch target for component * * @param componentType - The type of component ('button' | 'input' | 'icon' | 'generic') * @returns The minimum touch target size for that component type */ export declare const getMinTouchTarget: (componentType?: "button" | "input" | "icon" | "generic") => number;