import React from 'react'; import type { POSTableProps } from './POSTable.types'; /** * POSTable - Sistema de visualización de mesas de restaurante * * Componente para mostrar mesas de restaurante con diferentes estados * (disponible, ocupada, reservada) y configuraciones de sillas según diseño de Figma. * * ⚠️ IMPORTANTE - COLORES PERSONALIZADOS DEL CLIENTE: * Este componente usa colores específicos hardcodeados según el diseño del cliente. * Estos NO son tokens del sistema de diseño general, sino colores únicos para POSTable. * Esta es una EXCEPCIÓN JUSTIFICADA similar a los iconos personalizados de POSTable. * * ESPECIFICACIONES PIXEL-PERFECT DE FIGMA: * * Colores exactos (ESPECÍFICOS DEL CLIENTE): * * LIGHT MODE: * - Available (Azul): #0e79fd (border, mesa, silla, texto) - Azul primario del sistema * - Available Active: Bg #dbeefe + Border #bce4ff (cuando isActive=true) * - Busy (Naranja): #af460e (border, mesa, silla, texto) * - Busy Active: Bg #fed7aa + Border #fed7aa (cuando isActive=true) * - Reserved (Púrpura): #7e22ce (border, mesa, silla, texto) * - Reserved Active: Bg #e9d5ff + Border #e9d5ff (cuando isActive=true) * * DARK MODE (colores más brillantes para mejor visibilidad): * - Available (Azul claro): #93d1fd (border, mesa, silla, texto) * - Available Active: Bg #1e3a5f + Border #1e3a5f (cuando isActive=true) * - Busy (Naranja/Amarillo): #f5a927 (border, mesa, silla, texto) * - Busy Active: Bg #5c3a1e + Border #5c3a1e (cuando isActive=true) * - Reserved (Púrpura claro): #c084fc (border, mesa, silla, texto) * - Reserved Active: Bg #3b1f5c + Border #3b1f5c (cuando isActive=true) * * - Texto del label: Mismo color del estado (está FUERA de la mesa según Figma) * * Dimensiones exactas: * - Container: 160x160px, border-radius: 8px, border: 2px * - Inner container: 134x134px, gap: 4px * - Mesa Square: 64x64px, border-radius: 4px * - Mesa Circle: 64x64px, border-radius: 9999px * - Mesa Rectangle: 80x64px, border-radius: 4px * - Mesa Oval: 80x64px, border-radius: 24px * - Silla: 28x22px, border-radius: 4px * - Silla Respaldo (top): 28x16px (72.73% height) * - Silla Asiento (bottom): 24x14px (85.71% width, 63.64% height) * - Gap: 4px entre todos los elementos * * Tipografía: * - Label: 10px / 12px line-height, weight: 400, font: Inter * * Mejores prácticas implementadas: * - Orden de modificadores: {responsive}:{dark}:{state}:{utility} * - Dark mode con estrategia 'class' (darkMode: 'class') * - Focus rings adaptativos para light y dark mode * - Valores exactos de Figma con notación [px] * - Type safety con TypeScript estricto * - Accesibilidad con ARIA labels * * @see docs/colors.md - Sistema de colores * @see docs/typography.md - Sistema tipográfico * @see docs/spacing.md - Sistema de espaciado * * @example * ```tsx * console.log('Mesa seleccionada')} * /> * ``` */ export declare const POSTable: React.FC; //# sourceMappingURL=POSTable.d.ts.map