import { CSSProperties, ReactNode } from 'react'; /** * @title Collapse */ export interface CollapseProps { style?: CSSProperties; className?: string | string[]; /** * 当前面板选中值 */ activeKey?: string | string[]; /** * 默认展开的面板 */ defaultActiveKey?: string | string[]; /** * 是否是手风琴模式 */ accordion?: boolean; /** * 自定义展开图标 */ expandIcon?: ReactNode; /** * 展开图标的位置 * @defaultValue left */ expandIconPosition?: 'left' | 'right'; /** * 无边框样式 * @defaultValue true */ bordered?: boolean; /** * 设置为 `true` 时,挂载时不会渲染被隐藏的面板。 * @defaultValue true */ lazyload?: boolean; /** * 是否销毁被折叠的面板 */ destroyOnHide?: boolean; /** * 可触发折叠操作的区域 */ triggerRegion?: 'header' | 'icon'; /** * 展开面板改变时触发 */ onChange?: (key: string, keys: string[], e: any) => void; } /** * @title Collapse.Item */ export interface CollapseItemProps { style?: CSSProperties; className?: string | string[]; /** * 内容区域的附加样式。 */ contentStyle?: CSSProperties; /** * 折叠面板头部内容,允许自定义 */ header?: ReactNode; /** * 对应 activeKey,当前面板组件的的唯一标识 */ name: string; /** * 是否禁用 */ disabled?: boolean; /** * 自定义展开图标 */ expandIcon?: ReactNode; /** * 是否展示展开按钮 * @defaultValue true */ showExpandIcon?: boolean; /** * 额外节点 */ extra?: ReactNode; /** * 面板被折叠时是否销毁节点,优先级高于 `Collapse` 的 `destroyOnHide` */ destroyOnHide?: boolean; }