import { type FieldProps } from '@atlaskit/form'; import { DatasourceAction } from '../../analytics/types'; export declare const COLUMN_BASE_WIDTH = 8; export type GetWidthCss = (arg: { shouldUseWidth: boolean; width?: number; }) => React.CSSProperties; export declare const getColumnMinWidth: (key: string) => number; /** * Generate width related portion of css for table cell. * * @param shouldUseWidth boolean argument defines if a given width is user defined / baked in value * or rather default width that should be treated as a maximum width. When table inserted initially * and no user custom width defined we set this value to `false`. As soon as user changes any of the * column widths we treat all width as custom hardcoded widths. * @param width Sometimes set to undefined for last column to make it occupy remainder of the table width */ export declare const getWidthCss: GetWidthCss; /** * This method should be called when one atomic action is performed on columns: adding new item, removing one item, changing items order. * The assumption is that since only one action is changed at each time, we don't have to verify the actual contents of the lists. */ export declare const getColumnAction: (oldVisibleColumnKeys: string[], newVisibleColumnKeys: string[]) => DatasourceAction; /** * Remove deprecated `aria-labelledby` prop from select component props. */ export declare const getCleanedSelectProps: (props: Omit, "value">) => { name: string; id: string; 'aria-describedby'?: string | undefined; 'aria-invalid': "true" | "false"; onFocus: () => void; onBlur: () => void; onChange: (value: string | import("react").FormEvent) => void; isDisabled: boolean; isRequired: boolean; isInvalid: boolean; }; /** * Create id for table header to be used as aria-labelledby on form fields. */ export declare const getFieldLabelById: (fieldId: string) => string;