/**----------------------------------------------------------------------------------------- * Copyright © 2026 Progress Software Corporation. All rights reserved. * Licensed under commercial license. See LICENSE.md in the project root for more information *-------------------------------------------------------------------------------------------*/ import { RowArgs } from './row-args'; /** * Represents the callback arguments used by the [`rowClass`](https://www.telerik.com/kendo-angular-ui/components/grid/api/gridcomponent#rowClass) property. */ export interface RowClassArgs extends RowArgs { } /** * Represents the callback used by the [`rowClass`](https://www.telerik.com/kendo-angular-ui/components/grid/api/gridcomponent#rowclass) property. * * @example * ```typescript * rowCallback({ dataItem, index }) { * const isEven = index % 2 === 0; * return { * even: isEven, * odd: !isEven * }; * } * ``` */ export type RowClassFn = (context: RowClassArgs) => string | string[] | Set | { [key: string]: any; }; /** * Represents the callback used by the [`rowSelected`](https://www.telerik.com/kendo-angular-ui/components/grid/api/gridcomponent#rowselected) property. * * @example * ```typescript * rowCallback({ dataItem, index }) { * return index % 2 === 0; * } * ``` */ export type RowSelectedFn = (context: RowArgs) => boolean; /** * Represents the callback used to determine whether a data row is selectable. Used by the [`isRowSelectable`](https://www.telerik.com/kendo-angular-ui/components/grid/api/gridcomponent#isrowselectable) property. * * @example * ```typescript * isRowSelectableCallback({ dataItem, index }) { * return index % 2 === 0; * } * ``` */ export type RowSelectableFn = (context: RowArgs) => boolean; /** * Represents the callback used to determine whether a data row is sticky. * * @example * ```typescript * rowStickyCallback({ dataItem, index }) { * return index % 2 === 0; * } * ``` */ export type RowStickyFn = (context: RowArgs) => boolean;