@platned/ui 0.7.0 → 0.7.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.cts CHANGED
@@ -1,5 +1,5 @@
1
1
  import * as react from 'react';
2
- import { ButtonHTMLAttributes, ReactNode, InputHTMLAttributes, HTMLAttributes, LabelHTMLAttributes, TextareaHTMLAttributes, RefObject, ReactElement, Ref, AnchorHTMLAttributes, TdHTMLAttributes, ThHTMLAttributes, Component, ErrorInfo } from 'react';
2
+ import { ButtonHTMLAttributes, ReactNode, InputHTMLAttributes, HTMLAttributes, LabelHTMLAttributes, TextareaHTMLAttributes, ChangeEventHandler, RefObject, ReactElement, Ref, AnchorHTMLAttributes, TdHTMLAttributes, ThHTMLAttributes, Component, ErrorInfo } from 'react';
3
3
  import { ClassValue } from 'clsx';
4
4
  import { Column, Table as Table$1, ColumnDef, RowData, SortingState, ColumnFiltersState, PaginationState, VisibilityState, RowSelectionState, TableOptions } from '@tanstack/react-table';
5
5
  export { CellContext, ColumnDef, ColumnFiltersState, Column as DataTableColumn, Table as DataTableInstance, HeaderContext, PaginationState, Row, RowSelectionState, SortingState, VisibilityState, createColumnHelper } from '@tanstack/react-table';
@@ -339,22 +339,54 @@ interface SelectProps extends SelectControlProps {
339
339
  */
340
340
  declare const Select: react.ForwardRefExoticComponent<SelectProps & react.RefAttributes<HTMLButtonElement>>;
341
341
 
342
- interface DatePickerProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'size' | 'type'> {
342
+ interface DatePickerProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'size' | 'type' | 'value' | 'defaultValue'> {
343
343
  label?: string;
344
344
  description?: string;
345
345
  /** Red border + message shown below the control. Also sets `aria-invalid`. */
346
346
  error?: string;
347
347
  hint?: string;
348
348
  size?: InputSize;
349
- }
350
- /**
351
- * A native `<input type="date">`.
352
- *
353
- * The `::-webkit-calendar-picker-indicator` styling below is Chromium-only — on Firefox
354
- * and Safari the native affordance differs, so the drawn `CalendarIcon` sits alongside
355
- * whatever the platform renders rather than replacing it. That is a known limitation of
356
- * this component, not a bug to paper over: for a real month grid, range selection, locale
357
- * control or min/max navigation, use `Calendar` and `DateField` instead.
349
+ /** The selected date as an ISO `YYYY-MM-DD` string, `''` for none. Controlled. */
350
+ value?: string;
351
+ /** Initial ISO date when uncontrolled. */
352
+ defaultValue?: string;
353
+ /**
354
+ * Called with a real change event from the underlying date input, so
355
+ * `onChange={(e) => set(e.target.value)}` keeps working; `e.target.value` is the ISO date.
356
+ */
357
+ onChange?: ChangeEventHandler<HTMLInputElement>;
358
+ /** The new ISO date. New in 0.7.1; an alternative to reading `onChange`'s event. */
359
+ onValueChange?: (value: string) => void;
360
+ /** Shown when there is no date. Default "Pick a date". */
361
+ placeholder?: string;
362
+ /** BCP 47 tag for the shown date and the calendar. Default: the browser's. */
363
+ locale?: string;
364
+ /** 0 = Sunday, 1 = Monday. Default `1`. */
365
+ weekStartsOn?: 0 | 1;
366
+ /** `dropdown` (default) puts month and year selects in the calendar header. */
367
+ captionLayout?: 'label' | 'dropdown';
368
+ /** First year in the year select. Default `min`'s year, else 100 years ago. */
369
+ startYear?: number;
370
+ /** Last year in the year select. Default `max`'s year, else 10 years ahead. */
371
+ endYear?: number;
372
+ }
373
+ /**
374
+ * A date field that opens the library's `Calendar` in a `Popover`, the shape of shadcn/ui's
375
+ * Date Picker. Rebuilt in 0.7.1: through 0.7.0 it was a native `<input type="date">`, whose
376
+ * picker is the browser's own and differs in Chromium, Firefox and Safari (Firefox draws its
377
+ * own button inside the field and cannot be restyled), so it never matched `Calendar`.
378
+ *
379
+ * - The trigger is a `role="combobox"` button with `aria-haspopup="dialog"`, named by the label
380
+ * and then the date ("Start date 22 Oct 2026"); unlike a plain button, that role carries the
381
+ * `aria-required` and `aria-invalid` that `Field` supplies.
382
+ * - Opening moves focus into the calendar grid, on the selected date or today. Picking a date
383
+ * closes the popover and returns focus to the trigger; Escape closes it without a change.
384
+ * - The month and year selects (`captionLayout="dropdown"`, the default) reach a far-away date
385
+ * in two choices instead of a PageUp per month.
386
+ * - A real, invisible `<input type="date">` keeps the old contract: it carries `name`, `value`,
387
+ * `min`, `max` and `required` for forms and native validation, the forwarded ref points at
388
+ * it, and `onChange` receives its genuine change event. When validation focuses it, focus is
389
+ * handed to the trigger.
358
390
  */
359
391
  declare const DatePicker: react.ForwardRefExoticComponent<DatePickerProps & react.RefAttributes<HTMLInputElement>>;
360
392
 
@@ -1253,6 +1285,17 @@ interface CalendarProps extends Omit<HTMLAttributes<HTMLDivElement>, 'onSelect'>
1253
1285
  locale?: string;
1254
1286
  /** Names the grid. Default `Calendar`. */
1255
1287
  label?: string;
1288
+ /**
1289
+ * `label` (default) shows the month as text between the arrows. `dropdown` replaces it with
1290
+ * month and year selects, for dates far from today (a date of birth, a start date years ago),
1291
+ * which would otherwise take a dozen PageUp presses a year to reach. Same name and behaviour
1292
+ * as shadcn/react-day-picker's `captionLayout="dropdown"`. New in 0.7.1.
1293
+ */
1294
+ captionLayout?: 'label' | 'dropdown';
1295
+ /** First year in the year select. Default `min`'s year, else 100 years ago. */
1296
+ startYear?: number;
1297
+ /** Last year in the year select. Default `max`'s year, else 10 years ahead. */
1298
+ endYear?: number;
1256
1299
  }
1257
1300
  /**
1258
1301
  * Month grid. Matches Figma's `Calendar`, `Calendar Button`
@@ -1270,11 +1313,12 @@ interface CalendarProps extends Omit<HTMLAttributes<HTMLDivElement>, 'onSelect'>
1270
1313
  * 42 individually tabbable buttons takes 42 presses to get past.
1271
1314
  * - **Arrows cross month boundaries.** Pressing Left on the 1st moves to the previous
1272
1315
  * month's last day and pages the view, rather than dead-ending.
1273
- * - **PageUp/PageDown** move by month, **Home/End** to the start/end of the week.
1316
+ * - **PageUp/PageDown** move by month, **Shift+PageUp/PageDown** by year, **Home/End** to the
1317
+ * start/end of the week.
1274
1318
  * - Each day's accessible name is the full date, not the number — "14" tells a screen
1275
1319
  * reader user nothing.
1276
1320
  */
1277
- declare function Calendar({ mode, value, range, onSelect, onRangeChange, defaultMonth, min, max, isDateDisabled, weekStartsOn, locale, label, className, ...rest }: CalendarProps): react.JSX.Element;
1321
+ declare function Calendar({ mode, value, range, onSelect, onRangeChange, defaultMonth, min, max, isDateDisabled, weekStartsOn, locale, label, captionLayout, startYear, endYear, className, ...rest }: CalendarProps): react.JSX.Element;
1278
1322
 
1279
1323
  type InputGroupAlign = 'inline-start' | 'inline-end' | 'block-start' | 'block-end';
1280
1324
  interface InputGroupProps extends HTMLAttributes<HTMLDivElement> {
@@ -1547,6 +1591,8 @@ interface PopoverContentProps extends HTMLAttributes<HTMLDivElement> {
1547
1591
  label?: string;
1548
1592
  /** Where to portal the panel. Defaults to the enclosing dialog, else `document.body`. */
1549
1593
  container?: HTMLElement | null;
1594
+ /** Radix's open auto-focus hook: `preventDefault()` and focus something else, e.g. a calendar's selected day. */
1595
+ onOpenAutoFocus?: (event: Event) => void;
1550
1596
  }
1551
1597
  declare const PopoverContent: react.ForwardRefExoticComponent<PopoverContentProps & react.RefAttributes<HTMLDivElement>>;
1552
1598
  /** Closes the enclosing popover, e.g. an "Apply" or "Cancel" button. New in 0.7.0. */
@@ -4325,6 +4371,12 @@ interface TableProps extends HTMLAttributes<HTMLTableElement> {
4325
4371
  density?: TableDensity;
4326
4372
  /** Equal-width columns driven by `<colgroup>`, matching `DataTable`. Default `false`. */
4327
4373
  fixed?: boolean;
4374
+ /**
4375
+ * Cap the height (px number or CSS length) and scroll the body inside it. Pair with
4376
+ * `<TableHead sticky>` to keep the header row in view. The wrapper becomes a focusable region
4377
+ * named by `label`, so the keyboard can scroll it. New in 0.7.1.
4378
+ */
4379
+ maxHeight?: number | string;
4328
4380
  }
4329
4381
  declare const Table: react.ForwardRefExoticComponent<TableProps & react.RefAttributes<HTMLTableElement>>;
4330
4382
  interface TableCaptionProps extends HTMLAttributes<HTMLTableCaptionElement> {
@@ -4479,7 +4531,12 @@ interface TableCellProgressProps {
4479
4531
  size?: TableCellSize;
4480
4532
  className?: string;
4481
4533
  }
4482
- /** Mini progress bar with a percentage label below. */
4534
+ /**
4535
+ * Mini progress bar with its percentage at the end. The bar fills whatever width the cell gives
4536
+ * it, as shadcn's Progress (`w-full`), Ant Design's line Progress and MUI's LinearProgress do:
4537
+ * through 0.7.0 it was a fixed 48 / 64px, which left most of a wide column, or of a card field in
4538
+ * the responsive layout, empty. `size` now sets the bar's thickness (4 / 6px).
4539
+ */
4483
4540
  declare function TableCellProgress({ percent, tone, size, className, }: TableCellProgressProps): react.JSX.Element;
4484
4541
 
4485
4542
  type DataTableColumnAlign = 'start' | 'center' | 'end';
@@ -4627,6 +4684,13 @@ interface DataTableProps<TData, TValue = unknown> {
4627
4684
  responsive?: boolean | {
4628
4685
  breakpoint?: number;
4629
4686
  };
4687
+ /**
4688
+ * Cap the table's height (px number or any CSS length) and scroll the body inside it, with the
4689
+ * header row pinned. Works with horizontal scrolling and sticky columns, and caps the card list
4690
+ * in the responsive layout. The pattern of MUI's `TableContainer` + `stickyHeader` and Ant
4691
+ * Design's `scroll.y`. New in 0.7.1.
4692
+ */
4693
+ maxHeight?: number | string;
4630
4694
  manual?: DataTableManual;
4631
4695
  /** Controlled state. Any key you pass is controlled; the rest stay internal. */
4632
4696
  state?: Partial<DataTableState>;
@@ -4662,7 +4726,7 @@ interface DataTableProps<TData, TValue = unknown> {
4662
4726
  * while loading, a polite announcement of the result count after a search, keyboard row
4663
4727
  * activation, and named selection checkboxes.
4664
4728
  */
4665
- declare function DataTable<TData, TValue = unknown>({ columns, data, getRowId, label, caption, searchable, columnVisibility: showColumnMenu, pagination: paginated, pageSize, pageSizeOptions, enableRowSelection, onSelectionChange, getRowLabel, onRowClick, getRowHref, renderRowLink, getRowTone, getRowDimmed, loading, loadingRows, error, onRetry, empty, toolbar, footer, density, align, responsive, manual, state, onSortingChange, onGlobalFilterChange, onColumnFiltersChange, onPaginationChange, onColumnVisibilityChange, onRowSelectionChange, tableOptions, className, }: DataTableProps<TData, TValue>): react.JSX.Element;
4729
+ declare function DataTable<TData, TValue = unknown>({ columns, data, getRowId, label, caption, searchable, columnVisibility: showColumnMenu, pagination: paginated, pageSize, pageSizeOptions, enableRowSelection, onSelectionChange, getRowLabel, onRowClick, getRowHref, renderRowLink, getRowTone, getRowDimmed, loading, loadingRows, error, onRetry, empty, toolbar, footer, density, align, responsive, maxHeight, manual, state, onSortingChange, onGlobalFilterChange, onColumnFiltersChange, onPaginationChange, onColumnVisibilityChange, onRowSelectionChange, tableOptions, className, }: DataTableProps<TData, TValue>): react.JSX.Element;
4666
4730
 
4667
4731
  /**
4668
4732
  * Tracks an element's rendered content-box width. New in 0.7.0, from SCIC.
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import * as react from 'react';
2
- import { ButtonHTMLAttributes, ReactNode, InputHTMLAttributes, HTMLAttributes, LabelHTMLAttributes, TextareaHTMLAttributes, RefObject, ReactElement, Ref, AnchorHTMLAttributes, TdHTMLAttributes, ThHTMLAttributes, Component, ErrorInfo } from 'react';
2
+ import { ButtonHTMLAttributes, ReactNode, InputHTMLAttributes, HTMLAttributes, LabelHTMLAttributes, TextareaHTMLAttributes, ChangeEventHandler, RefObject, ReactElement, Ref, AnchorHTMLAttributes, TdHTMLAttributes, ThHTMLAttributes, Component, ErrorInfo } from 'react';
3
3
  import { ClassValue } from 'clsx';
4
4
  import { Column, Table as Table$1, ColumnDef, RowData, SortingState, ColumnFiltersState, PaginationState, VisibilityState, RowSelectionState, TableOptions } from '@tanstack/react-table';
5
5
  export { CellContext, ColumnDef, ColumnFiltersState, Column as DataTableColumn, Table as DataTableInstance, HeaderContext, PaginationState, Row, RowSelectionState, SortingState, VisibilityState, createColumnHelper } from '@tanstack/react-table';
@@ -339,22 +339,54 @@ interface SelectProps extends SelectControlProps {
339
339
  */
340
340
  declare const Select: react.ForwardRefExoticComponent<SelectProps & react.RefAttributes<HTMLButtonElement>>;
341
341
 
342
- interface DatePickerProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'size' | 'type'> {
342
+ interface DatePickerProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'size' | 'type' | 'value' | 'defaultValue'> {
343
343
  label?: string;
344
344
  description?: string;
345
345
  /** Red border + message shown below the control. Also sets `aria-invalid`. */
346
346
  error?: string;
347
347
  hint?: string;
348
348
  size?: InputSize;
349
- }
350
- /**
351
- * A native `<input type="date">`.
352
- *
353
- * The `::-webkit-calendar-picker-indicator` styling below is Chromium-only — on Firefox
354
- * and Safari the native affordance differs, so the drawn `CalendarIcon` sits alongside
355
- * whatever the platform renders rather than replacing it. That is a known limitation of
356
- * this component, not a bug to paper over: for a real month grid, range selection, locale
357
- * control or min/max navigation, use `Calendar` and `DateField` instead.
349
+ /** The selected date as an ISO `YYYY-MM-DD` string, `''` for none. Controlled. */
350
+ value?: string;
351
+ /** Initial ISO date when uncontrolled. */
352
+ defaultValue?: string;
353
+ /**
354
+ * Called with a real change event from the underlying date input, so
355
+ * `onChange={(e) => set(e.target.value)}` keeps working; `e.target.value` is the ISO date.
356
+ */
357
+ onChange?: ChangeEventHandler<HTMLInputElement>;
358
+ /** The new ISO date. New in 0.7.1; an alternative to reading `onChange`'s event. */
359
+ onValueChange?: (value: string) => void;
360
+ /** Shown when there is no date. Default "Pick a date". */
361
+ placeholder?: string;
362
+ /** BCP 47 tag for the shown date and the calendar. Default: the browser's. */
363
+ locale?: string;
364
+ /** 0 = Sunday, 1 = Monday. Default `1`. */
365
+ weekStartsOn?: 0 | 1;
366
+ /** `dropdown` (default) puts month and year selects in the calendar header. */
367
+ captionLayout?: 'label' | 'dropdown';
368
+ /** First year in the year select. Default `min`'s year, else 100 years ago. */
369
+ startYear?: number;
370
+ /** Last year in the year select. Default `max`'s year, else 10 years ahead. */
371
+ endYear?: number;
372
+ }
373
+ /**
374
+ * A date field that opens the library's `Calendar` in a `Popover`, the shape of shadcn/ui's
375
+ * Date Picker. Rebuilt in 0.7.1: through 0.7.0 it was a native `<input type="date">`, whose
376
+ * picker is the browser's own and differs in Chromium, Firefox and Safari (Firefox draws its
377
+ * own button inside the field and cannot be restyled), so it never matched `Calendar`.
378
+ *
379
+ * - The trigger is a `role="combobox"` button with `aria-haspopup="dialog"`, named by the label
380
+ * and then the date ("Start date 22 Oct 2026"); unlike a plain button, that role carries the
381
+ * `aria-required` and `aria-invalid` that `Field` supplies.
382
+ * - Opening moves focus into the calendar grid, on the selected date or today. Picking a date
383
+ * closes the popover and returns focus to the trigger; Escape closes it without a change.
384
+ * - The month and year selects (`captionLayout="dropdown"`, the default) reach a far-away date
385
+ * in two choices instead of a PageUp per month.
386
+ * - A real, invisible `<input type="date">` keeps the old contract: it carries `name`, `value`,
387
+ * `min`, `max` and `required` for forms and native validation, the forwarded ref points at
388
+ * it, and `onChange` receives its genuine change event. When validation focuses it, focus is
389
+ * handed to the trigger.
358
390
  */
359
391
  declare const DatePicker: react.ForwardRefExoticComponent<DatePickerProps & react.RefAttributes<HTMLInputElement>>;
360
392
 
@@ -1253,6 +1285,17 @@ interface CalendarProps extends Omit<HTMLAttributes<HTMLDivElement>, 'onSelect'>
1253
1285
  locale?: string;
1254
1286
  /** Names the grid. Default `Calendar`. */
1255
1287
  label?: string;
1288
+ /**
1289
+ * `label` (default) shows the month as text between the arrows. `dropdown` replaces it with
1290
+ * month and year selects, for dates far from today (a date of birth, a start date years ago),
1291
+ * which would otherwise take a dozen PageUp presses a year to reach. Same name and behaviour
1292
+ * as shadcn/react-day-picker's `captionLayout="dropdown"`. New in 0.7.1.
1293
+ */
1294
+ captionLayout?: 'label' | 'dropdown';
1295
+ /** First year in the year select. Default `min`'s year, else 100 years ago. */
1296
+ startYear?: number;
1297
+ /** Last year in the year select. Default `max`'s year, else 10 years ahead. */
1298
+ endYear?: number;
1256
1299
  }
1257
1300
  /**
1258
1301
  * Month grid. Matches Figma's `Calendar`, `Calendar Button`
@@ -1270,11 +1313,12 @@ interface CalendarProps extends Omit<HTMLAttributes<HTMLDivElement>, 'onSelect'>
1270
1313
  * 42 individually tabbable buttons takes 42 presses to get past.
1271
1314
  * - **Arrows cross month boundaries.** Pressing Left on the 1st moves to the previous
1272
1315
  * month's last day and pages the view, rather than dead-ending.
1273
- * - **PageUp/PageDown** move by month, **Home/End** to the start/end of the week.
1316
+ * - **PageUp/PageDown** move by month, **Shift+PageUp/PageDown** by year, **Home/End** to the
1317
+ * start/end of the week.
1274
1318
  * - Each day's accessible name is the full date, not the number — "14" tells a screen
1275
1319
  * reader user nothing.
1276
1320
  */
1277
- declare function Calendar({ mode, value, range, onSelect, onRangeChange, defaultMonth, min, max, isDateDisabled, weekStartsOn, locale, label, className, ...rest }: CalendarProps): react.JSX.Element;
1321
+ declare function Calendar({ mode, value, range, onSelect, onRangeChange, defaultMonth, min, max, isDateDisabled, weekStartsOn, locale, label, captionLayout, startYear, endYear, className, ...rest }: CalendarProps): react.JSX.Element;
1278
1322
 
1279
1323
  type InputGroupAlign = 'inline-start' | 'inline-end' | 'block-start' | 'block-end';
1280
1324
  interface InputGroupProps extends HTMLAttributes<HTMLDivElement> {
@@ -1547,6 +1591,8 @@ interface PopoverContentProps extends HTMLAttributes<HTMLDivElement> {
1547
1591
  label?: string;
1548
1592
  /** Where to portal the panel. Defaults to the enclosing dialog, else `document.body`. */
1549
1593
  container?: HTMLElement | null;
1594
+ /** Radix's open auto-focus hook: `preventDefault()` and focus something else, e.g. a calendar's selected day. */
1595
+ onOpenAutoFocus?: (event: Event) => void;
1550
1596
  }
1551
1597
  declare const PopoverContent: react.ForwardRefExoticComponent<PopoverContentProps & react.RefAttributes<HTMLDivElement>>;
1552
1598
  /** Closes the enclosing popover, e.g. an "Apply" or "Cancel" button. New in 0.7.0. */
@@ -4325,6 +4371,12 @@ interface TableProps extends HTMLAttributes<HTMLTableElement> {
4325
4371
  density?: TableDensity;
4326
4372
  /** Equal-width columns driven by `<colgroup>`, matching `DataTable`. Default `false`. */
4327
4373
  fixed?: boolean;
4374
+ /**
4375
+ * Cap the height (px number or CSS length) and scroll the body inside it. Pair with
4376
+ * `<TableHead sticky>` to keep the header row in view. The wrapper becomes a focusable region
4377
+ * named by `label`, so the keyboard can scroll it. New in 0.7.1.
4378
+ */
4379
+ maxHeight?: number | string;
4328
4380
  }
4329
4381
  declare const Table: react.ForwardRefExoticComponent<TableProps & react.RefAttributes<HTMLTableElement>>;
4330
4382
  interface TableCaptionProps extends HTMLAttributes<HTMLTableCaptionElement> {
@@ -4479,7 +4531,12 @@ interface TableCellProgressProps {
4479
4531
  size?: TableCellSize;
4480
4532
  className?: string;
4481
4533
  }
4482
- /** Mini progress bar with a percentage label below. */
4534
+ /**
4535
+ * Mini progress bar with its percentage at the end. The bar fills whatever width the cell gives
4536
+ * it, as shadcn's Progress (`w-full`), Ant Design's line Progress and MUI's LinearProgress do:
4537
+ * through 0.7.0 it was a fixed 48 / 64px, which left most of a wide column, or of a card field in
4538
+ * the responsive layout, empty. `size` now sets the bar's thickness (4 / 6px).
4539
+ */
4483
4540
  declare function TableCellProgress({ percent, tone, size, className, }: TableCellProgressProps): react.JSX.Element;
4484
4541
 
4485
4542
  type DataTableColumnAlign = 'start' | 'center' | 'end';
@@ -4627,6 +4684,13 @@ interface DataTableProps<TData, TValue = unknown> {
4627
4684
  responsive?: boolean | {
4628
4685
  breakpoint?: number;
4629
4686
  };
4687
+ /**
4688
+ * Cap the table's height (px number or any CSS length) and scroll the body inside it, with the
4689
+ * header row pinned. Works with horizontal scrolling and sticky columns, and caps the card list
4690
+ * in the responsive layout. The pattern of MUI's `TableContainer` + `stickyHeader` and Ant
4691
+ * Design's `scroll.y`. New in 0.7.1.
4692
+ */
4693
+ maxHeight?: number | string;
4630
4694
  manual?: DataTableManual;
4631
4695
  /** Controlled state. Any key you pass is controlled; the rest stay internal. */
4632
4696
  state?: Partial<DataTableState>;
@@ -4662,7 +4726,7 @@ interface DataTableProps<TData, TValue = unknown> {
4662
4726
  * while loading, a polite announcement of the result count after a search, keyboard row
4663
4727
  * activation, and named selection checkboxes.
4664
4728
  */
4665
- declare function DataTable<TData, TValue = unknown>({ columns, data, getRowId, label, caption, searchable, columnVisibility: showColumnMenu, pagination: paginated, pageSize, pageSizeOptions, enableRowSelection, onSelectionChange, getRowLabel, onRowClick, getRowHref, renderRowLink, getRowTone, getRowDimmed, loading, loadingRows, error, onRetry, empty, toolbar, footer, density, align, responsive, manual, state, onSortingChange, onGlobalFilterChange, onColumnFiltersChange, onPaginationChange, onColumnVisibilityChange, onRowSelectionChange, tableOptions, className, }: DataTableProps<TData, TValue>): react.JSX.Element;
4729
+ declare function DataTable<TData, TValue = unknown>({ columns, data, getRowId, label, caption, searchable, columnVisibility: showColumnMenu, pagination: paginated, pageSize, pageSizeOptions, enableRowSelection, onSelectionChange, getRowLabel, onRowClick, getRowHref, renderRowLink, getRowTone, getRowDimmed, loading, loadingRows, error, onRetry, empty, toolbar, footer, density, align, responsive, maxHeight, manual, state, onSortingChange, onGlobalFilterChange, onColumnFiltersChange, onPaginationChange, onColumnVisibilityChange, onRowSelectionChange, tableOptions, className, }: DataTableProps<TData, TValue>): react.JSX.Element;
4666
4730
 
4667
4731
  /**
4668
4732
  * Tracks an element's rendered content-box width. New in 0.7.0, from SCIC.