/**-----------------------------------------------------------------------------------------
* Copyright © 2026 Progress Software Corporation. All rights reserved.
* Licensed under commercial license. See LICENSE.md in the project root for more information
*-------------------------------------------------------------------------------------------*/
/**
 * The settings for the selection functionality of the TreeList. [See example](https://www.telerik.com/kendo-angular-ui/components/treelist/selection#setup).
 */
export interface SelectableSettings {
    /**
     * Specifies the selection mode.
     */
    mode?: 'cell' | 'row';
    /**
     * Specifies if multiple selection is enabled.
     */
    multiple?: boolean;
    /**
     * Specifies the drag selection options.
     */
    drag?: boolean | {
        snap: boolean;
    };
    /**
     * Specifies if the selection functionality is enabled.
     * Setting this option to `false` stops all selection-related functionality.
     * The end user cannot select or deselect rows or cells.
     * Items in the [selectedItems](https://www.telerik.com/kendo-angular-ui/components/treelist/api/selectabledirective#selecteditems) collection are not rendered as selected.
     * The [isSelected](https://www.telerik.com/kendo-angular-ui/components/treelist/api/treelistcomponent#isselected) callback is ignored.
     */
    enabled?: boolean;
    /**
     * Determines if the selection is performed only through clicking a checkbox.
     * If enabled, clicking the row itself does not select the row.
     * Applicable if at least one checkbox column is present.
     */
    checkboxOnly?: boolean;
    /**
     * Setting this option to `true` prevents the end user from selecting and deselecting items.
     * When the selection functionality is enabled and `readonly` is set to `true`,
     * programmatic selection is still possible by using the [selectedItems](https://www.telerik.com/kendo-angular-ui/components/treelist/api/selectabledirective#selecteditems) collection
     * or the [isSelected](https://www.telerik.com/kendo-angular-ui/components/treelist/api/treelistcomponent#isselected) callback.
     */
    readonly?: boolean;
}
