import React from "react"; import Body from "./Body.js"; import ColumnHeader from "./ColumnHeader.js"; import DataCell from "./DataCell.js"; import ExpandableRow from "./ExpandableRow.js"; import Header from "./Header.js"; import HeaderCell from "./HeaderCell.js"; import Row from "./Row.js"; import { SortState } from "./types.js"; export interface TableProps extends React.TableHTMLAttributes { /** * Changes padding around Cells * @default "medium" */ size?: "large" | "medium" | "small"; /** * Zebra striped table * @default false */ zebraStripes?: boolean; /** * Makes the header sticky * @default false */ stickyHeader?: boolean; /** * Sort state */ sort?: SortState; /** * Callback whens sort state changes */ onSortChange?: (sortKey: string) => void; } export interface TableType extends React.ForwardRefExoticComponent> { Header: typeof Header; Body: typeof Body; Row: typeof Row; DataCell: typeof DataCell; HeaderCell: typeof HeaderCell; ColumnHeader: typeof ColumnHeader; ExpandableRow: typeof ExpandableRow; } /** * A component that displays a table with headers and rows. * * @see [📝 Documentation](https://aksel.nav.no/komponenter/core/table) * @see 🏷️ {@link TableProps} * * @example * ```jsx * * * * Navn * Fødselsnr. * Start * * * * {data.map(({ name, fnr, start }, i) => { * return ( * * {name} * {fnr} * * {format(new Date(start), "dd.MM.yyyy")} * * * ); * })} * *
* ``` */ export declare const Table: TableType; export default Table;