@linzjs/step-ag-grid
Version:
[](https://github.com/semantic-release/semantic-release) > Reusable [ag-grid](https://www.ag-grid.com/) component for LINZ / Toitū te whenua.
25 lines (24 loc) • 1.09 kB
TypeScript
import { ReactElement } from 'react';
import { CellEditorCommon } from '../GridCell';
import { GridBaseRow } from '../types';
export interface MultiSelectGridOption {
value: any;
label?: string | ReactElement;
checked?: boolean | 'partial';
canSelectPartial?: boolean;
warning?: string | undefined;
}
export interface GridFormMultiSelectGridSaveProps<TData extends GridBaseRow> {
selectedRows: TData[];
addValues: any[];
removeValues: any[];
}
export interface GridFormMultiSelectGridProps<TData extends GridBaseRow> extends CellEditorCommon {
className?: string | undefined;
noOptionsMessage?: string;
onSave?: (props: GridFormMultiSelectGridSaveProps<TData>) => Promise<boolean>;
options: MultiSelectGridOption[] | ((selectedRows: TData[]) => Promise<MultiSelectGridOption[]> | MultiSelectGridOption[]);
invalid?: (props: GridFormMultiSelectGridSaveProps<TData>) => boolean;
maxRowCount?: number;
}
export declare const GridFormMultiSelectGrid: <TData extends GridBaseRow>(props: GridFormMultiSelectGridProps<TData>) => ReactElement;