/** * @author linhd * @date 2022/3/7 4:03 PM * @description 折叠面板 */ import React from 'react'; import CollapsePanel, { CollapsibleType } from './collapsePanel'; import './index.scss'; export type ExpandIconPosition = 'left' | 'right' | undefined; export interface CollapseProps { /** className */ className?: string; /** 样式 */ style?: React.CSSProperties; /** 初始化选中面板的 key */ defaultActiveKey?: Array | string | number; /** 当前激活 tab 面板的 key */ activeKey?: Array | string | number; /** 手风琴模式 */ accordion?: boolean; /** 所有子面板是否可折叠或指定可折叠触发区域 */ collapsible?: CollapsibleType; /** 销毁折叠隐藏的面板 */ destroyInactivePanel?: boolean; /** 自定义切换图标 */ expandIcon?: (panelProps: PanelProps) => React.ReactNode; /** 设置图标位置 */ expandIconPosition?: ExpandIconPosition; /** onChange */ onChange?: (key: string | string[]) => void; children?: any; } interface PanelProps { /** 是否展开 */ isActive?: boolean; /** 面板头内容 */ header?: React.ReactNode; /** className */ className?: string; /** style */ style?: React.CSSProperties; /** 是否展示当前面板上的箭头 */ showArrow?: boolean; /** 被隐藏时是否渲染 DOM 结构 */ forceRender?: boolean; /** @deprecated Use `collapsible="disabled"` instead */ disabled?: boolean; /** 自定义渲染每个面板右上角的内容 */ extra?: React.ReactNode; /** 是否可折叠或指定可折叠触发区域 */ collapsible?: CollapsibleType; } interface CollapseInterface extends React.FC { Panel: typeof CollapsePanel; } export declare const Collapse: CollapseInterface; export default Collapse;