import { UseUpdateOptions } from "../../dataProvider/useUpdate.js"; import { RedirectionSideEffect } from "../../routing/useRedirect.js"; import { RaRecord, MutationMode } from "../../types.js"; /** * Prepare a set of callbacks for an update button * * @example * const UpdateButton = ({ * resource, * record, * redirect, * ...rest * }) => { * const { * isPending, * handleUpdate, * } = useUpdateController({ * mutationMode: 'pessimistic', * resource, * record, * redirect, * }); * * const [open, setOpen] = useState(false); * * return ( * * * handleUpdate()} * onClose={() => setOpen(false)} * /> * * ); * }; */ export declare const useUpdateController: (props: UseUpdateControllerParams) => UseUpdateControllerReturn; export interface UseUpdateControllerParams { mutationMode?: MutationMode; mutationOptions?: UseUpdateOptions; record?: RecordType; redirect?: RedirectionSideEffect; resource?: string; successMessage?: string; } export interface UseUpdateControllerReturn { isLoading: boolean; isPending: boolean; handleUpdate: (data: Partial) => void; } //# sourceMappingURL=useUpdateController.d.ts.map