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

export const Abstract115: IconComponent = React.forwardRef<
  SVGSVGElement,
  IconProps
>(function Abstract115(
  {
    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="M21.7149 9.65895H20.6014C19.8932 9.65895 19.32 10.2321 19.32 10.9386H13.3327C13.0972 10.9386 12.8763 10.8729 12.6865 10.7634L14.9171 8.53258C15.2056 8.82102 15.6747 8.82102 15.9613 8.53258L16.4158 8.07802C16.7042 7.78959 16.7042 7.32043 16.4158 7.03382L15.9613 6.57926C15.6728 6.29082 15.2056 6.29082 14.9171 6.57926L14.4626 7.03382C14.1742 7.32225 14.1742 7.78959 14.4626 8.07802L12.232 10.3088C12.1188 10.119 12.0531 9.89627 12.0531 9.65895V3.67299C12.7595 3.67299 13.3327 3.09977 13.3327 2.39328V1.27971C13.3327 0.571396 12.7595 0 12.0531 0H10.9396C10.2313 0 9.65816 0.573222 9.65816 1.27971V2.39328C9.65816 3.09977 10.2313 3.67299 10.9396 3.67299V9.65895C10.9396 9.89627 10.8739 10.1171 10.7625 10.307L8.53373 8.07802C8.82214 7.78959 8.82214 7.32043 8.53373 7.03382L8.07921 6.57926C7.7908 6.29082 7.32348 6.29082 7.03506 6.57926L6.58054 7.03382C6.29213 7.32225 6.29213 7.78959 6.58054 8.07802L7.03506 8.53258C7.32348 8.82102 7.79262 8.82102 8.07921 8.53258L10.308 10.7616C10.1182 10.8729 9.89729 10.9386 9.65999 10.9386H3.6727C3.6727 10.2321 3.09952 9.65895 2.39309 9.65895H1.27961C0.573176 9.65895 0 10.2321 0 10.9386V12.0522C0 12.7587 0.573176 13.3319 1.27961 13.3319H2.39309C3.09952 13.3319 3.6727 12.7587 3.6727 12.0522H9.65999C9.89729 12.0522 10.12 12.1179 10.3098 12.2311L8.07555 14.4656C7.78714 14.1772 7.31802 14.1772 7.0296 14.4656L6.57508 14.9201C6.28667 15.2086 6.28667 15.6777 6.57508 15.9662L7.0296 16.4207C7.31802 16.7092 7.78714 16.7092 8.07555 16.4207L8.53008 15.9662C8.81849 15.6777 8.81849 15.2086 8.53008 14.9201L10.7644 12.6875C10.8757 12.8774 10.9414 13.0983 10.9414 13.3338V19.327C10.2332 19.327 9.66181 19.9002 9.66181 20.6067V21.7203C9.66181 22.4268 10.235 23 10.9414 23H12.0549C12.7613 23 13.3345 22.4268 13.3345 21.7203V20.6067C13.3345 19.8984 12.7613 19.327 12.0549 19.327V13.3338C12.0549 13.0983 12.1206 12.8755 12.232 12.6857L14.4644 14.9183C14.176 15.2068 14.176 15.6741 14.4644 15.9625L14.919 16.4171C15.2074 16.7055 15.6765 16.7055 15.9631 16.4171L16.4176 15.9625C16.706 15.6741 16.706 15.2068 16.4176 14.9183L15.9631 14.4638C15.6747 14.1735 15.2074 14.1735 14.919 14.4638L12.6865 12.2311C12.8763 12.1198 13.099 12.0541 13.3363 12.0541H19.3236C19.3236 12.7624 19.8968 13.3356 20.6051 13.3356H21.7186C22.4268 13.3356 23 12.7624 23 12.0559V10.9423C23 10.2358 22.4268 9.66258 21.7186 9.66258L21.7149 9.65895Z"
        fill="currentColor"
      />
    </svg>
  );
});

Abstract115.displayName = "Abstract115";

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

export default Abstract115;
