import foldingPanelProps from '../hy-folding-panel/props' import type { ExtractPropTypes, ToRefs } from 'vue' export interface IFoldingPanelConfig extends ToRefs> { /** * 当前激活的索引 */ activeIndex: Ref /** * 更新激活索引的方法 */ updateActiveIndex: (index: number | string) => void } // 折叠面板项组件的事件接口 export interface IFoldingPanelItemEmits { /** * 点击面板时触发 */ (e: 'click', index: number | string): void /** * 面板打开时触发 */ (e: 'open', index: number | string): void /** * 面板关闭时触发 */ (e: 'close', index: number | string): void /** * 面板状态改变时触发 */ (e: 'change', expanded: boolean, index: number | string): void /** * 子项点击时通知父组件 */ (e: 'child-click', index: number | string): void } /** HyFoldingPanelItem 组件实例暴露的方法 */ export interface IFoldingPanelItemExpose { /** * 打开面板 */ open: () => void /** * 关闭面板 */ close: () => void /** * 切换面板状态 */ toggle: () => void /** * 获取当前展开状态 * @returns 当前展开状态 */ getExpanded: () => boolean }