import * as React from 'react'; import type { BaseProps } from '../../wui-core/src/iCore'; export type ExpandIconPosition = 'left' | 'right'; export type CollapsibleString = 'icon' | 'header' | 'disabled' | string; export interface CollapsePublicProps extends BaseProps { accordion?: boolean; onChange?: (activeKey: string) => void; bordered?: boolean; ghost?: boolean; expandIconPosition?: ExpandIconPosition; collapsible?: CollapsibleString | boolean; expandIcon?: any; destroyInactivePanel?: boolean; bodyClassName?: string; } export interface CollapseProps extends CollapsePublicProps { activeKey?: string | (string)[]; defaultActiveKey?: string | (string)[]; role?: string; onSelect?: (activeKey: string | undefined, e: React.MouseEvent) => void; } export interface PanelProps extends CollapsePublicProps { header?: React.ReactNode; headerStyle?: React.CSSProperties; id?: string | undefined; headerContent?: boolean; footer?: React.ReactNode; footerStyle?: React.CSSProperties; defaultExpanded?: boolean; expanded?: boolean; eventKey?: string; headerRole?: string; panelRole?: string; colors?: string; onSelect?: (activeKey: string | undefined, expanded: boolean, e: React.MouseEvent) => void; onEnter?: () => void; onEntering?: () => void; onEntered?: () => void; onExit?: () => void; onExiting?: () => void; onExited?: () => void; copyable?: boolean; showArrow?: boolean; extra?: React.ReactNode; forceRender?: boolean; parentFlag?: boolean; defaultActiveKey?: string | (string)[]; } export interface EntranceProps extends Omit { onSelect?: (activeKey: string, e: React.MouseEvent) => void; onChange?: (activeKey: string, e: React.MouseEvent) => void; activeKey?: string | (string)[]; } export interface CollapseState { activeKey: string | (string)[] | undefined; } export interface PanelState { expanded: boolean | undefined; }