///
export declare const elevationMap: {
0: string;
1: string;
2: string;
3: string;
4: string;
};
declare type elevationKeys = 0 | 1 | 2 | 3 | 4;
interface CardProps {
/**
* The html element to render.
*/
as?: 'div' | 'section' | 'aside';
/**
* The content of the card.
*/
children: React.ReactNode;
/**
* A css className. This can be used to add custom styling.
*/
className?: string;
/**
* Can be used to set data- html attributes on the element.
*/
dataAttributes?: {
[key: string]: string;
};
/**
* The border/shadow to use on the Card. 0 corresponds to a border, and the
* other values correspond to levels of shadow.
*/
elevation?: elevationKeys;
/**
* Content to render sticking out the top of the card. This will be positioned
* sticking out the top of the card and can be used for technology icons etc.
* Note this adds a position and margin-top to the card style in order to
* position the head stone content correctly.
*/
headStone?: React.ReactNode;
hoverElevation?: elevationKeys;
id?: string;
/**
* The optional callback fired when the card is clicked.
*/
onClick?: (event?: React.MouseEvent) => void;
}
declare function Card({ as: Element, children, className, dataAttributes, elevation, headStone, hoverElevation, id, onClick, }: CardProps): JSX.Element;
declare namespace Card {
var propTypes: {
/**
* The border/shadow to use when the Card is hovered. Accepts the same values
* as elevation, and must also be greater than the elevation level provided.
*/
hoverElevation(props: CardProps): Error | null;
};
}
export default Card;