import React, { ReactEventHandler, ReactElement, SyntheticEvent } from 'react'; import PropTypes from 'prop-types'; import { MutationMode, OnSuccess, OnFailure, Record, RedirectionSideEffect } from '../../features/core'; import { ButtonProps } from './Button'; export declare const DeleteWithConfirmButton: { (props: DeleteWithConfirmButtonProps): JSX.Element; propTypes: { basePath: PropTypes.Requireable; classes: PropTypes.Requireable; className: PropTypes.Requireable; confirmTitle: PropTypes.Requireable; confirmContent: PropTypes.Requireable; label: PropTypes.Requireable; mutationMode: PropTypes.Requireable; undoable: PropTypes.Requireable; record: PropTypes.Requireable; redirect: PropTypes.Requireable any)>; resource: PropTypes.Requireable; icon: PropTypes.Requireable; }; }; interface Props { basePath?: string; classes?: object; className?: string; confirmTitle?: string; confirmContent?: React.ReactNode; icon?: ReactElement; label?: string; mutationMode?: MutationMode; onClick?: ReactEventHandler; record?: Record; redirect?: RedirectionSideEffect; resource?: string; handleSubmit?: (event?: SyntheticEvent) => Promise; handleSubmitWithRedirect?: (redirect?: RedirectionSideEffect) => void; invalid?: boolean; pristine?: boolean; saving?: boolean; submitOnEnter?: boolean; onSuccess?: OnSuccess; onFailure?: OnFailure; /** @deprecated use mutationMode: undoable instead */ undoable?: boolean; } export declare type DeleteWithConfirmButtonProps = Props & ButtonProps; export {};