/**----------------------------------------------------------------------------------------- * Copyright © 2026 Progress Software Corporation. All rights reserved. * Licensed under commercial license. See LICENSE.md in the project root for more information *-------------------------------------------------------------------------------------------*/ /** * Defines the settings for sorting a Grid column. */ export interface ColumnSortSettings { /** * Enables removing the column sorting. */ allowUnsort?: boolean; /** * Sets the initial sort direction when sorting from the unsorted state. */ initialDirection?: 'asc' | 'desc'; } /** * Specifies settings for sorting by a single column. */ export interface SingleSortSettings extends ColumnSortSettings { /** * Sets the sort mode of the Grid. */ mode?: 'single'; } /** * Specifies a modifier key for multiple column sorting [see example](https://www.telerik.com/kendo-angular-ui/components/grid/sorting/multi-sort#sort-key-modifier). * * @example * ```html * * * ... * * ``` */ export type ModifierKey = 'none' | 'ctrl' | 'shift' | 'alt'; /** * Specifies settings for sorting by multiple columns. [see example](https://www.telerik.com/kendo-angular-ui/components/grid/sorting/multi-sort). */ export interface MultipleSortSettings extends ColumnSortSettings { /** * Sets the sort mode of the Grid. */ mode?: 'multiple'; /** * Shows sort-sequence indicators for sorting multiple columns. */ showIndexes?: boolean; /** * Sets the modifier key for sorting by a second or more columns. * * By default, clicking a column adds it to the sort order (`'none'`). * Selecting a key modifier with the click removes sorting from all other columns. * * If set to `'ctrl'`, `'shift'`, or `'alt'`, clicking a column removes sorting from all other columns. * The specified key must be pressed to add the column to the sort order. * The `ctrl` value matches the `Command` key on macOS [see example](https://www.telerik.com/kendo-angular-ui/components/grid/sorting/multi-sort#sort-key-modifier). */ multiSortKey?: ModifierKey; } /** * Defines the settings for sorting the Grid. [See example](https://www.telerik.com/kendo-angular-ui/components/grid/sorting/multi-sort). * * The available options are: * * `boolean` * * [SingleSortSettings](https://www.telerik.com/kendo-angular-ui/components/grid/api/singlesortsettings) * * [MultipleSortSettings](https://www.telerik.com/kendo-angular-ui/components/grid/api/multiplesortsettings) * * @example * ```html * * ``` */ export type SortSettings = boolean | SingleSortSettings | MultipleSortSettings; /** * @hidden */ export declare const normalize: (...settings: (SortSettings | ColumnSortSettings)[]) => any;