import { CatalogCardProps } from '../../types';
/**
* **CatalogCard** — tarjeta de catálogo / proveedor / usuario (API **cerrada** por props) alineada al archivo Figma
* [Cards](https://www.figma.com/design/3w0SWvV7C5tDKUybsOcgA4/Cards).
*
* Implementación partida en {@link CatalogCatalogCard}, {@link CatalogSupplierCard} y paneles de menú
* (`catalogCardMenuPanels`) para mantener archivos acotados.
*
* No expone slots `media` / `details` / `cta` con ReactNode arbitrario: el organismo compone `Picture`,
* `Icon`, `Tooltip`, `Button`, `Badge`, `Picture`, `Popup` y `List` según props. El menú **…** es lista de acciones
* ({@link CatalogCardMenuItem}); los checkboxes de `tags` van en el panel del **CTA principal** (`onPrimaryTagsSelectionChange`).
* Familia **`user`**: mismo layout que proveedor (~270px), **sin** rating; opcional **`profile.avatarImageSrc`** (o plano
* `avatarImageSrc`) para foto en el avatar en lugar de iniciales.
*
* **Catálogo `layout="horizontal"`:** fila sin wrap, imagen izquierda a toda la altura; textos y debajo **⋯** + CTA ícono; enlace de tarjeta solo en textos.
* **`layout="stacked"`:** ancho fluido; cabecera con miniatura (**1/3** del ancho en ratio **16:9**), calificación centrada y primera `tag`; cuerpo con categoría, título y ubicación; pie con fila de `tags` y **⋯** + CTA ícono; enlace solo en el cuerpo.
* **`layout="compact"`:** ancho fluido; cabecera en fila (miniatura **1/3** del ancho en **16:9**, calificación + primera `tag` debajo, solo CTA ícono arriba a la derecha; **sin** menú **⋯**); debajo categoría, título y ubicación; tags adicionales bajo el bloque enlazado si hay más de una `tag`.
* Por defecto **`vertical`** (~250px, media arriba); **`fullWidth`** quita el tope de ancho en vertical.
*
* `selected` no altera el estilo del contenedor (solo `data-selected`); el relieve viene del hover y de `emphasized`.
* Con `optionsMenu: { hidden: true }` no se muestra el **⋯**; solo el CTA del pie. Con **`primaryCta: { hidden: true }`** o **`footer: { showPrimaryCta: false }`** no se muestra el CTA principal del pie (ni el ícono horizontal en otros layouts); la interacción puede ser solo **`onClick`** en la raíz o enlaces en el cuerpo. Con **`media.hideImage`** y sin `hidden` explícito, el **⋯** también queda oculto por defecto (`hidden: false` para mostrarlo).
*
* Las props opcionales pueden **omitirse** (no hace falta pasar `undefined`/`null`); los bloques de UI asociados no se
* renderizan si falta el dato o el texto está vacío (p. ej. `categoryLabel`, `locationLabel`, `ratingValue`, `statusLabel`,
* `phone`, `email` en proveedor). En catálogo, el bloque media (~141px) se monta por defecto; sin `imageSrc`, `Picture`
* muestra su placeholder salvo que **`media.hideImage`** sea `true` (solo texto, sin imagen ni overlays de media). Con `disabled`, sin hover de tarjeta ni enlace en la zona principal; en catálogo
* `Picture` y CTAs desactivados (Figma Cards — capa terciaria + luminosity); en proveedor `Avatar`, badge de estado e
* iconos de contacto en estilo deshabilitado y CTA desactivado. El menú **⋯** (opciones) sigue activo para flujos como reactivación externa;
* opcionalmente `onClick` en la raíz también puede pasarse con `disabled` (p. ej. abrir detalle) sin `href`/`to`.
* Props compartidas `to` / `href` (`to` prioriza) enlazan la zona principal como ``; el pie con CTA y **⋯** queda fuera
* para evitar `` anidando botones.
*
* @example
* ```tsx
* {} },
* { type: 'separator' },
* { label: 'Eliminar', color: 'red', onSelect: () => {} },
* ],
* }}
* primaryCta={{ onPrimaryClick: () => {} }}
* />
* ```
*/
export declare const CatalogCard: import('react').ForwardRefExoticComponent>;
//# sourceMappingURL=CatalogCard.d.ts.map