import { default as React } from 'react'; import { IconWithoutBackgroundProps } from '../../base/icon/icon'; export type EmptyStateType = 'separate' | 'attached' | 'inside'; export type EmptyStateSize = 'default' | 'small'; export interface EmptyStateProps { /** * Container variant — matches the Figma "Types" section. * - `'separate'` (default) — full border + radius, stands on its own. * - `'attached'` — top border omitted so the block sits flush beneath a * preceding card or table (same width + same bottom-radius). * - `'inside'` — no border, no radius; intended to be placed inside another * container such as a `` or ``. * @default separate */ type?: EmptyStateType; /** * Padding scale. `default` = 24px, `small` = 16px. * @default default */ size?: EmptyStateSize; /** * Icon rendered above the text block. Pass a Material icon name, a full * `IconWithoutBackgroundProps` object to configure the underlying `Icon`, * or `null` to hide the icon. * @default spa */ icon?: string | IconWithoutBackgroundProps | null; /** * Optional heading rendered above the description — appears as an H3 in * brand-primary text color. */ heading?: React.ReactNode; /** * Main body text describing why there is nothing to show. */ children?: React.ReactNode; /** * Call-to-action slot. Typically a `