import { ContextValue } from 'react-aria-components/slots';
import { ReactNode } from 'react';
import { DOMProps, DOMRefValue, GlobalDOMAttributes } from '@react-types/shared';
import { StyleProps, UnsafeStyles } from './style-utils';
import { GridListItemProps } from 'react-aria-components/GridList';
interface CardRenderProps {
    /** The size of the Card. */
    size: 'XS' | 'S' | 'M' | 'L' | 'XL';
}
export interface CardProps extends Omit<GridListItemProps, 'className' | 'style' | 'render' | 'children' | 'onHoverChange' | 'onHoverStart' | 'onHoverEnd' | 'onClick' | keyof GlobalDOMAttributes>, StyleProps {
    /** The children of the Card. */
    children: ReactNode | ((renderProps: CardRenderProps) => ReactNode);
    /**
     * The size of the Card.
     * @default 'M'
     */
    size?: 'XS' | 'S' | 'M' | 'L' | 'XL';
    /**
     * The amount of internal padding within the Card.
     * @default 'regular'
     */
    density?: 'compact' | 'regular' | 'spacious';
    /**
     * The visual style of the Card.
     * @default 'primary'
     */
    variant?: 'primary' | 'secondary' | 'tertiary' | 'quiet';
}
export declare const InternalCardViewContext: import("react").Context<{
    ElementType: "div" | (<T extends object>(props: GridListItemProps<T> & import("react").RefAttributes<HTMLDivElement>) => import("react").ReactElement<unknown, string | import("react").JSXElementConstructor<any>> | null);
    layout: "grid" | "waterfall";
}>;
export declare const CardContext: import("react").Context<ContextValue<Partial<CardProps>, DOMRefValue<HTMLDivElement>>>;
/**
 * A Card summarizes an object that a user can select or navigate to.
 */
export declare const Card: import("react").ForwardRefExoticComponent<CardProps & import("react").RefAttributes<DOMRefValue<HTMLDivElement>>>;
export interface CardPreviewProps extends UnsafeStyles, DOMProps {
    children: ReactNode;
}
export declare const CardPreview: import("react").ForwardRefExoticComponent<CardPreviewProps & import("react").RefAttributes<DOMRefValue<HTMLDivElement>>>;
export declare const CollectionCardPreview: import("react").ForwardRefExoticComponent<CardPreviewProps & import("react").RefAttributes<DOMRefValue<HTMLDivElement>>>;
export interface AssetCardProps extends Omit<CardProps, 'density'> {
}
export declare const AssetCard: import("react").ForwardRefExoticComponent<AssetCardProps & import("react").RefAttributes<DOMRefValue<HTMLDivElement>>>;
export interface UserCardProps extends Omit<CardProps, 'density' | 'variant'> {
    /** The visual style of the Card. */
    variant?: 'primary' | 'secondary' | 'tertiary';
}
export declare const UserCard: import("react").ForwardRefExoticComponent<UserCardProps & import("react").RefAttributes<DOMRefValue<HTMLDivElement>>>;
export interface ProductCardProps extends Omit<CardProps, 'density' | 'variant'> {
    /** The visual style of the Card. */
    variant?: 'primary' | 'secondary' | 'tertiary';
}
export declare const ProductCard: import("react").ForwardRefExoticComponent<ProductCardProps & import("react").RefAttributes<DOMRefValue<HTMLDivElement>>>;
export {};
