/**
 * @license
 *-------------------------------------------------------------------------------------------
 * Copyright © 2026 Progress Software Corporation. All rights reserved.
 * Licensed under commercial license. See LICENSE.md in the package root for more information
 *-------------------------------------------------------------------------------------------
 */
import { PanelBarSelectEventArguments } from './PanelBarSelectEventArguments';
/**
 * Represents the expand modes of the Kendo UI for Vue PanelBar. Defaults to `multiple`.
 */
export type PanelBarExpandMode = 'single' | 'multiple';
/**
 * Represents the props of the [Kendo UI for Vue PanelBar component]({% slug overview_panelbar %}).
 */
export interface PanelBarProps {
    /**
     * The class name that is set to the PanelBar.
     */
    className?: string;
    /**
     * Sets the animation state of the PanelBar.
     */
    animation?: boolean;
    /**
     * Sets the items of the PanelBar.
     */
    items?: any[];
    /**
     * Sets the expand mode of the PanelBar ([see example]({% slug expandmodes_panelbar %})).
     *
     * The available modes are:
     * - `"single"`&mdash;Allows you to expand only one item at a time. The expanding of an item collapses the item that was previously expanded.
     * - `"multiple"` (default)&mdash;Allows you to expand two or more items at a time. Items can also be toggled.
     */
    expandMode?: PanelBarExpandMode;
    /**
     * Sets the direction of the PanelBar component.
     */
    dir?: string;
    /**
     * If set, overrides the currently selected property in the PanelBar state.
     */
    selected?: string | number;
    /**
     * Sets the initial expanded state of the PanelBar.
     */
    expanded?: string[];
    /**
     * Sets the initial focused state of the PanelBar.
     */
    focused?: string | number;
    /**
     * Determines if the PanelBar items will be mounted after expand collapse. Defaults to `false`.
     */
    keepItemsMounted?: boolean;
    /**
     * Determines if the PanelBar is going to be used in controlled state.
     */
    isControlled?: boolean;
    /**
     * Fires each time the user makes a selection ([see example]({% slug controlling_state_panelbar %})).
     */
    onSelect?: (event: PanelBarSelectEventArguments) => void;
}
