/** @module @airtable/blocks/ui: TablePicker */ /** */ import * as PropTypes from 'prop-types'; import * as React from 'react'; import Table from '../models/table'; import { SharedSelectBaseProps } from './select'; /** * Props shared between the {@link TablePicker} and {@link TablePickerSynced} components. */ export interface SharedTablePickerProps extends SharedSelectBaseProps { /** If set to `true`, the user can unset the selected table. */ shouldAllowPickingNone?: boolean; /** The placeholder text when no table is selected. */ placeholder?: string; /** A function to be called when the selected table changes. */ onChange?: (tableModel: Table | null) => void; } export declare const sharedTablePickerPropTypes: { onMouseEnter: PropTypes.Requireable<(...args: any[]) => any>; onMouseLeave: PropTypes.Requireable<(...args: any[]) => any>; onClick: PropTypes.Requireable<(...args: any[]) => any>; hasOnClick: PropTypes.Requireable; size: PropTypes.Validator; autoFocus: PropTypes.Requireable; disabled: PropTypes.Requireable; id: PropTypes.Requireable; name: PropTypes.Requireable; tabIndex: PropTypes.Requireable; className: PropTypes.Requireable; style: PropTypes.Requireable; "aria-label": PropTypes.Requireable; "aria-labelledby": PropTypes.Requireable; "aria-describedby": PropTypes.Requireable; shouldAllowPickingNone: PropTypes.Requireable; placeholder: PropTypes.Requireable; onChange: PropTypes.Requireable<(...args: any[]) => any>; }; /** * Props for the {@link TablePicker} component. Also accepts: * * {@link SelectStyleProps} * * @docsPath UI/components/TablePicker */ interface TablePickerProps extends SharedTablePickerProps { /** The selected table model. */ table?: Table | null; } declare const ForwardedRefTablePicker: React.ForwardRefExoticComponent>; export default ForwardedRefTablePicker;