This may not be possible due to current language limitations, but I'm using the latest TS (1.8.10) and am running into an issue with the ui-grid typings. The isRowSelectable
property on IGridOptions
is defined as an optional boolean but the documentation says it's a function (and it is). I am trying to override the boolean property to be a function that returns a boolean.
Normally, I just extend the typing interface and do what I need, but that's not working in this case. Here's what I have:
interface ISelectionGridOptions extends IGridOptions {
isRowSelectable: (row: IGridRowOf<Profile>) => boolean;
}
Where the relevant field in IGridOptions
is:
export interface IGridOptions {
...
isRowSelectable?: boolean
...
}
And the error I'm getting is:
(41,11): error TS2430: Interface 'ISelectionGridOptions' incorrectly extends interface 'IGridOptionsOf<any>'.
Types of property 'isRowSelectable' are incompatible.
Type '(row: IGridRowOf<Profile>) => boolean' is not assignable to type 'boolean'.
Short of fixing the core typings definitions, is there a way to fix this in my code?