import { CollectionProxy, useCollectionProxy } from 'onekijs-framework'; import TableService from '../TableService'; import { TableColumn, TableItem, TableState, UseTableOptions } from '../typings'; import useTableInitialState from './useTableInitialState'; const useTableController = ( dataSource: T[] | string | undefined, initialColumns: TableColumn>[] | undefined, options: UseTableOptions> = {}, ): CollectionProxy< T, TableItem, TableState>, TableService, TableState>> > => { const tableState = useTableInitialState>(dataSource, initialColumns, options); return useCollectionProxy< T, TableItem, TableState>, TableService, TableState>> >(dataSource, TableService, tableState); }; export default useTableController;