import { CSSProperties, ReactElement, ReactNode } from 'react';

export type CardLayoutProps = {
	/** 描述 */
	desc?: string | string[] | ReactElement | ReactElement[];
	/** 标题 */
	title?: string | ReactElement;
	/** 子标题，在标题右侧 */
	subTitle?: string | ReactElement;
	/**
	 * layoutType 布局类型
	 * ```
	 * 1. layer：分层布局
	 * 2. tight：紧凑布局（没有外边距）
	 * ```
	 */
	layoutType?: "layer" | "tight";
	/** 隐藏标题左侧符号 */
	titleLeftLine?: boolean;
	titleStyle?: CSSProperties;
	titleContentStyle?: CSSProperties;
	subTitleStyle?: CSSProperties;
	titleExtraStyle?: CSSProperties;
	contentStyle?: CSSProperties;
	/** 优先级大于 style padding */
	padding?: CSSProperties["padding"];
	/** 优先级大于 style width */
	width?: CSSProperties["width"];
	/** 优先级大于 style height */
	height?: CSSProperties["height"];
	/** 标题右侧布局 */
	titleExtra?: string | ReactElement;
	/** 当存在滚动条时，标题固定，滚动区域为内部部分 */
	titleFixed?: boolean;
	/**
	 * 间距尺寸
	 * 1. default = 15
	 * 2. small = 8
	 */
	size?: "default" | "small";
	onClick?: (event: any) => void;
	hidden?: boolean;
	children?: ReactNode;
	className?: string;
	style?: CSSProperties;
};
/**
 * 卡片结构布局，替代 SimpleLayout 组件
 * @param props
 * @returns
 * ```
 * 1. layoutType 布局类型
 *    layer：分层布局
 *    tight：紧凑布局（没有外边距）
 * ```
 */
export declare const CardLayout: {
	(props: CardLayoutProps): import("react").JSX.Element;
	defaultProps: {
		titleLeftLine: boolean;
		layoutType: string;
	};
};

export {};
