import { useState, useCallback } from "react";

type SuccessDialogConfig = {
  title?: string;
  description?: string;
};

export const useSuccessDialog = () => {
  const [isSuccessOpen, setIsOpen] = useState(false);
  const [config, setConfig] = useState<SuccessDialogConfig>({
    title: "Success",
    description: "Action completed successfully.",
  });

  const openDialog = useCallback((newConfig?: SuccessDialogConfig) => {
    setConfig({
      title: newConfig?.title || "Success",
      description: newConfig?.description || "Action completed successfully.",
    });
    setIsOpen(true);
  }, []);

  const closeDialog = useCallback(() => {
    setIsOpen(false);
  }, []);

  return {
    isSuccessOpen,
    openDialog,
    closeDialog,
    config,
  };
};
