mirror of
https://github.com/lensapp/lens.git
synced 2024-09-20 05:47:24 +03:00
c6dce043a7
Signed-off-by: Sebastian Malton <sebastian@malton.name>
142 lines
4.9 KiB
TypeScript
142 lines
4.9 KiB
TypeScript
/**
|
|
* Copyright (c) 2021 OpenLens Authors
|
|
*
|
|
* Permission is hereby granted, free of charge, to any person obtaining a copy of
|
|
* this software and associated documentation files (the "Software"), to deal in
|
|
* the Software without restriction, including without limitation the rights to
|
|
* use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
|
|
* the Software, and to permit persons to whom the Software is furnished to do so,
|
|
* subject to the following conditions:
|
|
*
|
|
* The above copyright notice and this permission notice shall be included in all
|
|
* copies or substantial portions of the Software.
|
|
*
|
|
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
|
* FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
|
* COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
|
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
|
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
*/
|
|
|
|
import {
|
|
UseColumnOrderInstanceProps,
|
|
UseColumnOrderState,
|
|
UseExpandedHooks,
|
|
UseExpandedInstanceProps,
|
|
UseExpandedOptions,
|
|
UseExpandedRowProps,
|
|
UseExpandedState,
|
|
UseFiltersColumnOptions,
|
|
UseFiltersColumnProps,
|
|
UseFiltersInstanceProps,
|
|
UseFiltersOptions,
|
|
UseFiltersState,
|
|
UseGlobalFiltersColumnOptions,
|
|
UseGlobalFiltersInstanceProps,
|
|
UseGlobalFiltersOptions,
|
|
UseGlobalFiltersState,
|
|
UseGroupByCellProps,
|
|
UseGroupByColumnOptions,
|
|
UseGroupByColumnProps,
|
|
UseGroupByHooks,
|
|
UseGroupByInstanceProps,
|
|
UseGroupByOptions,
|
|
UseGroupByRowProps,
|
|
UseGroupByState,
|
|
UsePaginationInstanceProps,
|
|
UsePaginationOptions,
|
|
UsePaginationState,
|
|
UseResizeColumnsColumnOptions,
|
|
UseResizeColumnsColumnProps,
|
|
UseResizeColumnsOptions,
|
|
UseResizeColumnsState,
|
|
UseRowSelectHooks,
|
|
UseRowSelectInstanceProps,
|
|
UseRowSelectOptions,
|
|
UseRowSelectRowProps,
|
|
UseRowSelectState,
|
|
UseRowStateCellProps,
|
|
UseRowStateInstanceProps,
|
|
UseRowStateOptions,
|
|
UseRowStateRowProps,
|
|
UseRowStateState,
|
|
UseSortByColumnOptions,
|
|
UseSortByColumnProps,
|
|
UseSortByHooks,
|
|
UseSortByInstanceProps,
|
|
UseSortByOptions,
|
|
UseSortByState,
|
|
} from "react-table";
|
|
|
|
declare module "react-table" {
|
|
// take this file as-is, or comment out the sections that don't apply to your plugin configuration
|
|
|
|
export interface TableOptions<D extends Record<string, unknown>>
|
|
extends UseExpandedOptions<D>,
|
|
UseFiltersOptions<D>,
|
|
UseGlobalFiltersOptions<D>,
|
|
UseGroupByOptions<D>,
|
|
UsePaginationOptions<D>,
|
|
UseResizeColumnsOptions<D>,
|
|
UseRowSelectOptions<D>,
|
|
UseRowStateOptions<D>,
|
|
UseSortByOptions<D>,
|
|
// note that having Record here allows you to add anything to the options, this matches the spirit of the
|
|
// underlying js library, but might be cleaner if it's replaced by a more specific type that matches your
|
|
// feature set, this is a safe default.
|
|
Record<string, any> {}
|
|
|
|
export interface Hooks<D extends Record<string, unknown> = Record<string, unknown>>
|
|
extends UseExpandedHooks<D>,
|
|
UseGroupByHooks<D>,
|
|
UseRowSelectHooks<D>,
|
|
UseSortByHooks<D> {}
|
|
|
|
export interface TableInstance<D extends Record<string, unknown> = Record<string, unknown>>
|
|
extends UseColumnOrderInstanceProps<D>,
|
|
UseExpandedInstanceProps<D>,
|
|
UseFiltersInstanceProps<D>,
|
|
UseGlobalFiltersInstanceProps<D>,
|
|
UseGroupByInstanceProps<D>,
|
|
UsePaginationInstanceProps<D>,
|
|
UseRowSelectInstanceProps<D>,
|
|
UseRowStateInstanceProps<D>,
|
|
UseSortByInstanceProps<D> {}
|
|
|
|
export interface TableState<D extends Record<string, unknown> = Record<string, unknown>>
|
|
extends UseColumnOrderState<D>,
|
|
UseExpandedState<D>,
|
|
UseFiltersState<D>,
|
|
UseGlobalFiltersState<D>,
|
|
UseGroupByState<D>,
|
|
UsePaginationState<D>,
|
|
UseResizeColumnsState<D>,
|
|
UseRowSelectState<D>,
|
|
UseRowStateState<D>,
|
|
UseSortByState<D> {}
|
|
|
|
export interface ColumnInterface<D extends Record<string, unknown> = Record<string, unknown>>
|
|
extends UseFiltersColumnOptions<D>,
|
|
UseGlobalFiltersColumnOptions<D>,
|
|
UseGroupByColumnOptions<D>,
|
|
UseResizeColumnsColumnOptions<D>,
|
|
UseSortByColumnOptions<D> {}
|
|
|
|
export interface ColumnInstance<D extends Record<string, unknown> = Record<string, unknown>>
|
|
extends UseFiltersColumnProps<D>,
|
|
UseGroupByColumnProps<D>,
|
|
UseResizeColumnsColumnProps<D>,
|
|
UseSortByColumnProps<D> {}
|
|
|
|
export interface Cell<D extends Record<string, unknown> = Record<string, unknown>>
|
|
extends UseGroupByCellProps<D>,
|
|
UseRowStateCellProps<D> {}
|
|
|
|
export interface Row<D extends Record<string, unknown> = Record<string, unknown>>
|
|
extends UseExpandedRowProps<D>,
|
|
UseGroupByRowProps<D>,
|
|
UseRowSelectRowProps<D>,
|
|
UseRowStateRowProps<D> {}
|
|
}
|