import * as React from "react";
import type { IconProps, IconMetadata, IconComponent } from "../../types";

export const Abstract18: IconComponent = React.forwardRef<
  SVGSVGElement,
  IconProps
>(function Abstract18(
  {
    color = "currentColor",
    fill,
    size = 24,
    strokeWidth,
    strokeLinecap,
    strokeLinejoin,
    strokeDasharray,
    opacity,
    className,
    ...props
  },
  forwardedRef,
) {
  return (
    <svg
      width={size}
      height={size}
      viewBox="0 0 24 24"
      fill="none"
      xmlns="http://www.w3.org/2000/svg"
      className={className}
      strokeWidth={strokeWidth}
      strokeLinecap={strokeLinecap}
      strokeLinejoin={strokeLinejoin}
      strokeDasharray={strokeDasharray}
      opacity={opacity}
      {...props}
      ref={forwardedRef}
    >
      <path
        d="M22.6963 21.4984C22.5907 21.7999 22.441 22.0437 22.2413 22.2433C22.0416 22.443 21.7978 22.5928 21.4963 22.6964C21.1949 22.802 20.8339 22.8577 20.4192 22.8577C19.0406 22.8634 17.088 22.2145 14.953 20.9858C14.3059 20.6153 13.6397 20.191 12.9638 19.7187C14.1638 18.7895 15.3734 17.7298 16.5504 16.551C17.7293 15.3722 18.7891 14.1646 19.7165 12.9647C20.1888 13.6405 20.6131 14.3067 20.9837 14.9556C22.2125 17.0905 22.8595 19.041 22.8557 20.4195C22.8557 20.8342 22.8 21.1951 22.6944 21.4965L22.6963 21.4984ZM9.04704 20.9897C6.912 22.2184 4.96128 22.8654 3.5808 22.8596C3.16608 22.8596 2.80512 22.8039 2.50368 22.6983C2.20224 22.5927 1.95839 22.4449 1.75871 22.2453C1.55903 22.0456 1.40928 21.8018 1.3056 21.5004C1.2 21.1989 1.14432 20.838 1.14432 20.4233C1.13856 19.0449 1.78752 17.0943 3.01632 14.9594C3.38688 14.3105 3.81312 13.6443 4.28352 12.9686C5.21088 14.1685 6.27264 15.378 7.45152 16.5548C8.6304 17.7336 9.83808 18.7934 11.0381 19.7226C10.3622 20.1949 9.696 20.6192 9.04896 20.9897H9.04704ZM3.0144 9.04824C1.7856 6.91337 1.13856 4.9628 1.1424 3.58435C1.1424 3.16966 1.19808 2.80873 1.30368 2.50732C1.40928 2.2059 1.55903 1.96208 1.75871 1.76242C1.95839 1.56275 2.20224 1.41301 2.50368 1.30741C2.80512 1.20182 3.16608 1.14615 3.5808 1.14615C4.95936 1.14039 6.91008 1.7893 9.04512 3.018C9.69408 3.38853 10.3603 3.81474 11.0362 4.2851C9.83616 5.2143 8.62656 6.27406 7.4496 7.45284C6.27072 8.63163 5.20896 9.83921 4.2816 11.0391C3.80928 10.3633 3.38496 9.69714 3.0144 9.04824ZM19.0176 12.0029C18.0749 13.2489 16.9766 14.514 15.744 15.7447C14.5133 16.9772 13.248 18.0754 12.0019 19.018C10.7558 18.0754 9.49056 16.9772 8.25792 15.7447C7.02528 14.514 5.92704 13.2489 4.98432 12.001C5.92896 10.755 7.0272 9.4898 8.25792 8.25918C9.48864 7.02664 10.7539 5.92849 12.0019 4.98585C13.248 5.92849 14.5133 7.02664 15.744 8.25918C16.9766 9.4898 18.0749 10.755 19.0176 12.0029ZM14.9549 3.01608C17.0899 1.78738 19.0406 1.14039 20.4192 1.14423C20.8339 1.14423 21.1949 1.1999 21.4963 1.30549C21.7978 1.41108 22.0416 1.55892 22.2413 1.75859C22.441 1.95825 22.5907 2.20207 22.6963 2.50349C22.8 2.8049 22.8576 3.16583 22.8576 3.58052C22.8634 4.95897 22.2144 6.91145 20.9856 9.04631C20.615 9.6933 20.1888 10.3595 19.7184 11.0353C18.791 9.83537 17.7293 8.62587 16.5523 7.449C15.3734 6.27022 14.1658 5.21046 12.9658 4.28125C13.6416 3.80897 14.3078 3.38469 14.9568 3.01416L14.9549 3.01608ZM23.04 23.042C23.3702 22.7118 23.6237 22.3182 23.7773 21.8728C23.9309 21.4274 24 20.9398 24 20.4214C23.9942 18.707 23.2608 16.6336 21.9782 14.3892C21.5309 13.6098 21.0144 12.8092 20.4365 12.0029C21.0144 11.1965 21.5309 10.396 21.9782 9.61652C23.2608 7.3703 23.9962 5.29686 24 3.58244C24 3.066 23.9309 2.57836 23.7773 2.13104C23.6237 1.68563 23.3818 1.28054 23.0515 0.950326C22.7213 0.620113 22.3162 0.376296 21.8707 0.222709C21.4253 0.069121 20.9376 0 20.4192 0C18.7046 0.00575954 16.631 0.739146 14.3846 2.0216C13.6051 2.46893 12.8064 2.98536 12 3.56323C11.1936 2.98536 10.393 2.46893 9.61344 2.0216C7.36896 0.739146 5.29536 0.00575954 3.5808 0C3.0624 0 2.57473 0.069121 2.12929 0.222709C1.68385 0.376296 1.27872 0.618191 0.94848 0.948404C0.61824 1.27862 0.376315 1.68371 0.222715 2.12911C0.0691148 2.57452 0 3.06408 0 3.58052C0.00576 5.29494 0.739206 7.36837 2.02177 9.61459C2.46913 10.3941 2.9856 11.1927 3.56352 11.999C2.9856 12.8054 2.46913 13.6059 2.02177 14.3854C0.739206 16.6316 0.00576 18.7051 0 20.4195C0 20.9359 0.0691148 21.4255 0.222715 21.8709C0.376315 22.3163 0.61824 22.7214 0.94848 23.0516C1.27872 23.3818 1.68385 23.6237 2.12929 23.7773C2.57473 23.9309 3.06432 24 3.5808 24C5.29536 23.9942 7.36896 23.2609 9.61536 21.9784C10.3949 21.5311 11.1936 21.0146 12.0019 20.4368C12.8083 21.0146 13.607 21.5311 14.3866 21.9784C16.631 23.2609 18.7046 23.9962 20.4211 24C20.9376 24 21.4253 23.9309 21.8726 23.7773C22.3181 23.6237 22.7117 23.3722 23.0419 23.0401L23.04 23.042Z"
        fill="currentColor"
      />
    </svg>
  );
});

Abstract18.displayName = "Abstract18";

Abstract18.metadata = {
  name: "Abstract18",
  category: "shapes/abstract",
  tags: ["abstract", "18", "icon"],
  description: "Abstract18 icon from shapes/abstract category",
  type: ["stroke", "icon"],
} as IconMetadata;

export default Abstract18;
