import React from 'react';
import { type RaRecord, type UseGetListOptions, type UseReferenceArrayFieldControllerParams, type UseReferenceManyFieldControllerParams } from 'ra-core';
import { type ComponentsOverrides } from '@mui/material/styles';
import { type ButtonProps } from './Button';
/**
* Select all items in the current List context.
*
* Used in Datagrid's bulk action toolbar.
*
* @typedef {Object} Props the props you can use
* @prop {string} label Button label. Defaults to 'ra.action.select_all_button', translated.
* @prop {string} limit Maximum number of items to select. Defaults to 250.
* @prop {function} queryOptions Object of options passed to react-query.
*
* @param {Props} props
*
* @example
*
* import { List, Datagrid, BulkActionsToolbar, SelectAllButton, BulkDeleteButton } from 'react-admin';
*
* const PostSelectAllButton = () => (
*
* );
*
* export const PostList = () => (
*
*
*
*
* }
* >
* ...
*
*
* );
*/
export declare const SelectAllButton: (inProps: SelectAllButtonProps) => React.JSX.Element | null;
export type SelectAllButtonProps = ButtonProps & {
limit?: number;
queryOptions?: UseGetListOptions | UseReferenceArrayFieldControllerParams['queryOptions'] | UseReferenceManyFieldControllerParams['queryOptions'];
};
declare module '@mui/material/styles' {
interface ComponentNameToClassKey {
RaSelectAllButton: 'root';
}
interface ComponentsPropsList {
RaSelectAllButton: Partial;
}
interface Components {
RaSelectAllButton?: {
defaultProps?: ComponentsPropsList['RaSelectAllButton'];
styleOverrides?: ComponentsOverrides>['RaSelectAllButton'];
};
}
}
//# sourceMappingURL=SelectAllButton.d.ts.map