UNPKG

@progress/kendo-react-layout

Version:

React Layout components enable you to create a perceptive and intuitive layout of web projects. KendoReact Layout package

100 lines (99 loc) 2.95 kB
/** * @license *------------------------------------------------------------------------------------------- * Copyright © 2026 Progress Software Corporation. All rights reserved. * Licensed under commercial license. See LICENSE.md in the package root for more information *------------------------------------------------------------------------------------------- */ import { BaseEvent, SVGIcon } from '@progress/kendo-react-common'; /** * The ExpansionPanel ref. */ export interface ExpansionPanelHandle { /** * The ExpansionPanel element. */ element: HTMLDivElement | null; } /** * The arguments for the `onAction` ExpansionPanel event. */ export interface ExpansionPanelActionEvent extends BaseEvent<ExpansionPanelHandle> { /** * Represents the `expanded` state of the ExpansionPanel. */ expanded: boolean; } /** * The props of the ExpansionPanel component. */ export interface ExpansionPanelProps { /** * The React elements that will be rendered inside the ExpansionPanel. */ children?: React.ReactNode; /** * Sets additional CSS classes to the ExpansionPanel. */ className?: string; /** * Sets additional CSS styles to the ExpansionPanel. */ style?: React.CSSProperties; /** * Sets the `id` property of the root ExpansionPanel element. */ id?: string; /** * Specifies the primary text in the header of the ExpansionPanel. */ title?: React.ReactNode; /** * Specifies the secondary text in the header of the ExpansionPanel, which is rendered next to the collapse/expand icon. */ subtitle?: React.ReactNode; /** * Sets a custom icon via css class(es), for the expanded state of the ExpansionPanel. */ expandIcon?: string; /** * Sets a custom icon via css class(es), for the collapsed state of the ExpansionPanel. */ collapseIcon?: string; /** * Sets a custom SVG icon for the expanded state of the ExpansionPanel. */ expandSVGIcon?: SVGIcon; /** * Sets a custom SVG icon for the collapsed state of the ExpansionPanel. */ collapseSVGIcon?: SVGIcon; /** * Sets the `dir` property of the ExpansionPanel. */ dir?: string; /** * Sets the `tabIndex` property of the ExpansionPanel. */ tabIndex?: number; /** * Sets the `expanded` state of the ExpansionPanel. * * @default false */ expanded?: boolean; /** * Sets the `disabled` state of the ExpansionPanel. * * @default false */ disabled?: boolean; /** * Sets `aria-controls`. The value should represent the `id` of the controlled content element. */ ariaControls?: string; /** * The event handler that will be fired when the expanded state of the ExpansionPanel is about to change. */ onAction?: (event: ExpansionPanelActionEvent) => void; }