/** * EmptyState — the placeholder shown when a list or view has no content. * * Centred Header / Media / Title / Description / Content, with an `icon` media * variant that stacks two rotated ghost cards behind the icon. On the web that * is a pair of CSS pseudo-elements; React Native has none, so it is two * absolutely positioned siblings with static rotate transforms. */ import { type ReactNode } from 'react'; import { View, type Text as RNText, type ViewProps } from 'react-native'; import { type VariantProps } from 'tailwind-variants'; import { type TextProps } from '../../primitives/text.js'; type EmptyStateSize = 'sm' | 'default' | 'lg'; declare const emptyStateVariants: import("tailwind-variants").TVReturnType<{ variant: { default: { root: string; }; card: { root: string; }; }; size: { sm: { root: string; title: string; description: string; }; default: { root: string; title: string; description: string; }; lg: { root: string; title: string; description: string; }; }; }, { root: string; header: string; title: string; description: string; content: string; }, undefined, { variant: { default: { root: string; }; card: { root: string; }; }; size: { sm: { root: string; title: string; description: string; }; default: { root: string; title: string; description: string; }; lg: { root: string; title: string; description: string; }; }; }, { root: string; header: string; title: string; description: string; content: string; }, import("tailwind-variants").TVReturnType<{ variant: { default: { root: string; }; card: { root: string; }; }; size: { sm: { root: string; title: string; description: string; }; default: { root: string; title: string; description: string; }; lg: { root: string; title: string; description: string; }; }; }, { root: string; header: string; title: string; description: string; content: string; }, undefined, unknown, unknown, undefined>>; declare const mediaVariants: import("tailwind-variants").TVReturnType<{ variant: { default: { card: string; ghost: string; }; icon: { card: string; }; }; size: { sm: { card: string; ghost: string; }; default: { card: string; ghost: string; }; lg: { card: string; ghost: string; }; }; }, { wrapper: string; card: string; ghost: string; }, undefined, { variant: { default: { card: string; ghost: string; }; icon: { card: string; }; }; size: { sm: { card: string; ghost: string; }; default: { card: string; ghost: string; }; lg: { card: string; ghost: string; }; }; }, { wrapper: string; card: string; ghost: string; }, import("tailwind-variants").TVReturnType<{ variant: { default: { card: string; ghost: string; }; icon: { card: string; }; }; size: { sm: { card: string; ghost: string; }; default: { card: string; ghost: string; }; lg: { card: string; ghost: string; }; }; }, { wrapper: string; card: string; ghost: string; }, undefined, unknown, unknown, undefined>>; export interface EmptyStateProps extends ViewProps, VariantProps { className?: string; /** * `default` fills its parent — a whole screen, or a flex slot. `card` is a * self-contained bordered block for an empty state that sits inside content * rather than owning the screen. */ variant?: 'default' | 'card'; /** Scales the padding, media, title and description together. */ size?: EmptyStateSize; children?: ReactNode; } export interface EmptyStateMediaProps extends ViewProps, VariantProps { className?: string; children?: ReactNode; } export declare const EmptyState: import("react").ForwardRefExoticComponent> & { Header: import("react").ForwardRefExoticComponent>; Media: import("react").ForwardRefExoticComponent>; Title: import("react").ForwardRefExoticComponent>; Description: import("react").ForwardRefExoticComponent>; Content: import("react").ForwardRefExoticComponent>; }; export {}; //# sourceMappingURL=index.d.ts.map