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

export const Abstract118: IconComponent = React.forwardRef<
  SVGSVGElement,
  IconProps
>(function Abstract118(
  {
    color = "currentColor",
    fill,
    size = 24,
    strokeWidth,
    strokeLinecap,
    strokeLinejoin,
    strokeDasharray,
    opacity,
    className,
    ...props
  },
  forwardedRef,
) {
  return (
    <svg
      width={size}
      height={size}
      viewBox="0 0 23 23"
      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="M18.6902 4.30976C16.8484 2.46793 14.3111 1.33072 11.5 1.33072C8.68889 1.33072 6.15158 2.46793 4.30976 4.30976C2.46793 6.15158 1.33071 8.69071 1.33071 11.5C1.33071 14.3093 2.46793 16.8484 4.30976 18.6902C6.15158 20.5302 8.68889 21.6675 11.5 21.6693C14.3111 21.6693 16.8484 20.5321 18.6902 18.6902C20.5321 16.8484 21.6693 14.3093 21.6693 11.5C21.6693 8.69071 20.5321 6.15158 18.6902 4.30976ZM11.5 23C5.14762 23 0 17.8524 0 11.5C0 5.14762 5.14762 0 11.5 0C17.8524 0 23 5.14762 23 11.5C23 17.8524 17.8524 23 11.5 23ZM4.70769 18.2923C4.39373 17.9783 4.10167 17.6425 3.83333 17.2865H5.47254C5.71897 17.7921 5.99826 18.2667 6.3031 18.7012C6.76675 19.3601 7.29428 19.9297 7.86928 20.3933C6.6773 19.9059 5.60396 19.1867 4.70769 18.2905V18.2923ZM4.20571 11.1806H1.90206C1.96047 9.4081 2.49714 7.75793 3.38976 6.3542H5.18595C4.59634 7.77983 4.24404 9.42635 4.20571 11.1806ZM6.82699 18.3343C6.59699 18.0075 6.38341 17.6571 6.18992 17.2865H8.6542C8.75825 17.7611 8.87508 18.2047 9.00286 18.6136C9.30222 19.5701 9.6673 20.3459 10.0835 20.8862C8.83309 20.4919 7.70866 19.5883 6.82699 18.3361V18.3343ZM6.3031 4.29882C5.99826 4.73326 5.71897 5.20787 5.47254 5.7135H3.83333C4.10167 5.35755 4.39373 5.02167 4.70769 4.70771C5.60396 3.81144 6.6773 3.09223 7.86928 2.60484C7.29428 3.0685 6.76675 3.63985 6.3031 4.29882ZM3.38976 16.6476C2.49714 15.2439 1.95865 13.5937 1.90206 11.8213H4.20571C4.24404 13.5773 4.59634 15.222 5.18595 16.6476H3.38976ZM19.6121 16.6476H17.8159C18.4055 15.222 18.7578 13.5773 18.7961 11.8213H21.1016C21.0432 13.5937 20.5047 15.2439 19.6121 16.6476ZM13.3893 18.4237C12.8709 20.0812 12.201 21.1052 11.5 21.1052C10.799 21.1052 10.1291 20.0812 9.61072 18.4237C9.50119 18.0714 9.39896 17.6917 9.30587 17.2865H13.6905C13.5974 17.6899 13.4952 18.0696 13.3856 18.4237H13.3893ZM18.2923 18.2923C17.396 19.1886 16.3227 19.9078 15.1307 20.3952C15.7075 19.9315 16.2332 19.362 16.6969 18.703C17.0017 18.2686 17.281 17.794 17.5275 17.2883H19.1667C18.8983 17.6443 18.6063 17.9802 18.2923 18.2941V18.2923ZM16.1748 18.3343C15.2932 19.5883 14.1706 20.4901 12.9183 20.8844C13.3345 20.3441 13.6996 19.5682 13.999 18.6117C14.1267 18.2029 14.2436 17.7593 14.3476 17.2847H16.8119C16.6166 17.6552 16.403 18.0057 16.1748 18.3324V18.3343ZM14.9208 11.1806C14.9044 9.4227 14.7437 7.77618 14.4772 6.3542H17.1204C17.741 7.75793 18.1152 9.4081 18.1554 11.1806H14.9208ZM17.5275 5.7135C17.281 5.20787 17.0017 4.73326 16.6969 4.29882C16.2332 3.63985 15.7075 3.07032 15.1307 2.60484C16.3227 3.09223 17.396 3.81144 18.2923 4.70771C18.6063 5.02167 18.8983 5.35755 19.1667 5.7135H17.5275ZM17.1204 16.6476H14.4772C14.7437 15.2256 14.9025 13.5791 14.9208 11.8213H18.1554C18.1152 13.5937 17.741 15.2439 17.1204 16.6476ZM18.7961 11.1806C18.7578 9.42452 18.4055 7.77983 17.8159 6.3542H19.6121C20.5047 7.75793 21.0432 9.4081 21.1016 11.1806H18.7961ZM14.3476 5.7135C14.2436 5.2389 14.1267 4.79532 13.999 4.38643C13.6996 3.42993 13.3345 2.65595 12.9183 2.11563C14.1687 2.50991 15.2932 3.41166 16.1748 4.6657C16.4048 4.99245 16.6184 5.34295 16.8119 5.7135H14.3476ZM8.71992 11.1806C8.73818 9.41175 8.90063 7.7634 9.17262 6.3542H13.8274C14.0994 7.7634 14.2618 9.41175 14.2801 11.1806H8.71992ZM8.08104 11.1806H4.84643C4.88659 9.4081 5.26079 7.75793 5.88142 6.3542H8.52278C8.25627 7.77618 8.09746 9.4227 8.07921 11.1806H8.08104ZM5.88142 16.6476C5.26079 15.2439 4.88659 13.5937 4.84643 11.8213H8.08104C8.09746 13.5791 8.2581 15.2256 8.52461 16.6476H5.88325H5.88142ZM9.00286 4.38643C8.87508 4.79532 8.75825 5.2389 8.6542 5.7135H6.18992C6.38523 5.34295 6.59881 4.99245 6.82699 4.6657C7.70866 3.41166 8.83127 2.50991 10.0835 2.11563C9.6673 2.65595 9.30222 3.43175 9.00286 4.38643ZM13.8274 16.6476H9.17262C8.90063 15.2384 8.73818 13.5901 8.71992 11.8213H14.2801C14.2618 13.5901 14.0994 15.2384 13.8274 16.6476ZM9.3077 5.7135C9.40079 5.31009 9.50301 4.93039 9.61253 4.57626C10.1309 2.9188 10.8009 1.89476 11.5018 1.89476C12.2028 1.89476 12.8727 2.9188 13.3911 4.57626C13.5006 4.92856 13.6029 5.31009 13.696 5.7135H9.31135H9.3077Z"
        fill="currentColor"
      />
    </svg>
  );
});

Abstract118.displayName = "Abstract118";

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

export default Abstract118;
