import { UseDeleteOptions } from "../../dataProvider/useDelete.js";
import { RedirectionSideEffect } from "../../routing/useRedirect.js";
import { RaRecord, MutationMode } from "../../types.js";
/**
* Prepare a set of callbacks for a delete button
*
* @example
* const DeleteButton = ({
* redirect,
* ...rest
* }) => {
* const {
* isPending,
* handleDelete,
* } = useDeleteController({
* mutationMode: 'pessimistic',
* redirect,
* });
*
* const [open, setOpen] = useState(false);
*
* return (
*
*
* handleDelete()}
* onClose={() => setOpen(false)}
* />
*
* );
* };
*/
export declare const useDeleteController: (props: UseDeleteControllerParams) => UseDeleteControllerReturn;
export interface UseDeleteControllerParams {
mutationMode?: MutationMode;
mutationOptions?: UseDeleteOptions;
record?: RecordType;
redirect?: RedirectionSideEffect;
resource?: string;
successMessage?: string;
}
export interface UseDeleteControllerReturn {
isLoading: boolean;
isPending: boolean;
handleDelete: () => void;
}
//# sourceMappingURL=useDeleteController.d.ts.map