import React from 'react'; import PropTypes from 'prop-types'; import '@douyinfe/semi-foundation/lib/cjs/descriptions/descriptions.css'; import { DescriptionsAlign, DescriptionLayout } from './descriptions-context'; import Item from './item'; import DescriptionsFoundation, { DescriptionsAdapter } from '@douyinfe/semi-foundation/lib/cjs/descriptions/foundation'; import BaseComponent from '../_base/baseComponent'; export type { DescriptionsItemProps } from './item'; export type DescriptionsSize = 'small' | 'medium' | 'large'; export interface Data { key?: React.ReactNode; value?: (() => React.ReactNode) | React.ReactNode; hidden?: boolean; span?: number; keyStyle?: React.CSSProperties; } export interface DescriptionsProps { align?: DescriptionsAlign; row?: boolean; size?: DescriptionsSize; style?: React.CSSProperties; className?: string; children?: React.ReactNode; data?: Data[]; layout?: DescriptionLayout; column?: number; } declare class Descriptions extends BaseComponent { static Item: typeof Item; static contextType: React.Context; static propTypes: { align: PropTypes.Requireable; row: PropTypes.Requireable; size: PropTypes.Requireable; style: PropTypes.Requireable; className: PropTypes.Requireable; data: PropTypes.Requireable; value: PropTypes.Requireable any)>>; hidden: PropTypes.Requireable; className: PropTypes.Requireable; style: PropTypes.Requireable; span: PropTypes.Requireable; keyStyle: PropTypes.Requireable; }>[]>; layout: PropTypes.Requireable; column: PropTypes.Requireable; }; static defaultProps: { align: string; row: boolean; size: string; data: Data[]; layout: string; column: number; }; foundation: DescriptionsFoundation; constructor(props: DescriptionsProps); get adapter(): DescriptionsAdapter; renderChildrenList: () => string | number | boolean | React.ReactElement> | Iterable | React.JSX.Element[]; render(): React.JSX.Element; } export default Descriptions;