| /** |
| * Licensed to the Apache Software Foundation (ASF) under one |
| * or more contributor license agreements. See the NOTICE file |
| * distributed with this work for additional information |
| * regarding copyright ownership. The ASF licenses this file |
| * to you under the Apache License, Version 2.0 (the |
| * "License"); you may not use this file except in compliance |
| * with the License. You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, |
| * software distributed under the License is distributed on an |
| * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| * KIND, either express or implied. See the License for the |
| * specific language governing permissions and limitations |
| * under the License. |
| */ |
| import { |
| UseColumnOrderInstanceProps, |
| UseColumnOrderState, |
| UseExpandedHooks, |
| UseExpandedInstanceProps, |
| UseExpandedOptions, |
| UseExpandedRowProps, |
| UseExpandedState, |
| UseFiltersColumnOptions, |
| UseFiltersColumnProps, |
| UseFiltersInstanceProps, |
| UseFiltersOptions, |
| UseFiltersState, |
| 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'; |
| import { ColumnSizer } from 'react-virtualized'; |
| |
| declare module 'react-table' { |
| type ColumnSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl'; |
| export interface TableOptions<D extends object> |
| 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 object = {}> |
| extends UseExpandedHooks<D>, |
| UseGroupByHooks<D>, |
| UseRowSelectHooks<D>, |
| UseSortByHooks<D> {} |
| |
| export interface TableInstance<D extends object = {}> |
| extends UseColumnOrderInstanceProps<D>, |
| UseExpandedInstanceProps<D>, |
| UseFiltersInstanceProps<D>, |
| UseGlobalFiltersInstanceProps<D>, |
| UseGroupByInstanceProps<D>, |
| UsePaginationInstanceProps<D>, |
| UseRowSelectInstanceProps<D>, |
| UseRowStateInstanceProps<D>, |
| UseSortByInstanceProps<D> {} |
| |
| export interface TableState<D extends object = {}> |
| extends UseColumnOrderState<D>, |
| UseExpandedState<D>, |
| UseFiltersState<D>, |
| UseGlobalFiltersState<D>, |
| UseGroupByState<D>, |
| UsePaginationState<D>, |
| UseResizeColumnsState<D>, |
| UseRowSelectState<D>, |
| UseRowStateState<D>, |
| UseSortByState<D> {} |
| |
| export interface Column<D extends object = {}> |
| extends UseFiltersColumnOptions<D>, |
| UseGroupByColumnOptions<D>, |
| UseResizeColumnsColumnOptions<D>, |
| UseSortByColumnOptions<D> { |
| hidden?: boolean; |
| cellProps?: any; |
| size?: ColumnSize; |
| } |
| |
| export interface ColumnInstance<D extends object = {}> |
| extends UseFiltersColumnProps<D>, |
| UseGroupByColumnProps<D>, |
| UseResizeColumnsColumnProps<D>, |
| UseSortByColumnProps<D> { |
| hidden?: boolean; |
| cellProps?: any; |
| size?: ColumnSize; |
| } |
| |
| export interface Cell<D extends object = {}> |
| extends UseGroupByCellProps<D>, |
| UseRowStateCellProps<D> {} |
| |
| export interface Row<D extends object = {}> |
| extends UseExpandedRowProps<D>, |
| UseGroupByRowProps<D>, |
| UseRowSelectRowProps<D>, |
| UseRowStateRowProps<D> {} |
| } |