UNPKG

react-native-paper

Version:
97 lines 3.32 kB
import * as React from 'react'; import { StyleProp, View, ViewStyle } from 'react-native'; export declare type Props = React.ComponentPropsWithRef<typeof View> & { /** * Content of the `DataTable`. */ children: React.ReactNode; style?: StyleProp<ViewStyle>; }; /** * Data tables allow displaying sets of data. * * <div class="screenshots"> * <figure> * <img class="large" src="screenshots/data-table.png" /> * <figcaption>Data table</figcaption> * </figure> * </div> * * ## Usage * ```js * import * as React from 'react'; * import { DataTable } from 'react-native-paper'; * * const optionsPerPage = [2, 3, 4]; * * const MyComponent = () => { * const [page, setPage] = React.useState<number>(0); * const [itemsPerPage, setItemsPerPage] = React.useState(optionsPerPage[0]); * * React.useEffect(() => { * setPage(0); * }, [itemsPerPage]); * * return ( * <DataTable> * <DataTable.Header> * <DataTable.Title>Dessert</DataTable.Title> * <DataTable.Title numeric>Calories</DataTable.Title> * <DataTable.Title numeric>Fat</DataTable.Title> * </DataTable.Header> * * <DataTable.Row> * <DataTable.Cell>Frozen yogurt</DataTable.Cell> * <DataTable.Cell numeric>159</DataTable.Cell> * <DataTable.Cell numeric>6.0</DataTable.Cell> * </DataTable.Row> * * <DataTable.Row> * <DataTable.Cell>Ice cream sandwich</DataTable.Cell> * <DataTable.Cell numeric>237</DataTable.Cell> * <DataTable.Cell numeric>8.0</DataTable.Cell> * </DataTable.Row> * * <DataTable.Pagination * page={page} * numberOfPages={3} * onPageChange={(page) => setPage(page)} * label="1-2 of 6" * optionsPerPage={optionsPerPage} * itemsPerPage={itemsPerPage} * setItemsPerPage={setItemsPerPage} * showFastPagination * optionsLabel={'Rows per page'} * /> * </DataTable> * ); *} * * export default MyComponent; * ``` */ declare const DataTable: { ({ children, style, ...rest }: Props): JSX.Element; Header: { ({ children, style, theme: themeOverrides, ...rest }: import("./DataTableHeader").Props): JSX.Element; displayName: string; }; Title: { ({ numeric, children, onPress, sortDirection, textStyle, style, theme: themeOverrides, numberOfLines, ...rest }: import("./DataTableTitle").Props): JSX.Element; displayName: string; }; Row: { ({ onPress, style, children, pointerEvents, theme: themeOverrides, ...rest }: import("./DataTableRow").Props): JSX.Element; displayName: string; }; Cell: { ({ children, textStyle, style, numeric, ...rest }: import("./DataTableCell").Props): JSX.Element; displayName: string; }; Pagination: { ({ label, accessibilityLabel, page, numberOfPages, onPageChange, style, showFastPaginationControls, numberOfItemsPerPageList, numberOfItemsPerPage, onItemsPerPageChange, selectPageDropdownLabel, selectPageDropdownAccessibilityLabel, theme: themeOverrides, ...rest }: import("./DataTablePagination").Props): JSX.Element; displayName: string; }; }; export default DataTable; //# sourceMappingURL=DataTable.d.ts.map