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

export const MySql: IconComponent = React.forwardRef<SVGSVGElement, IconProps>(
  function MySql(
    {
      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}
      >
        <g fill="#00546b" clipPath="url(#undefined-clip0_2062_3083)">
          <path d="M22.1251 18.4762C20.8126 18.4762 19.7814 18.5714 18.9376 18.9524C18.6564 19.0476 18.2814 19.0476 18.2814 19.3333L18.5626 19.9048C18.7501 20.1905 19.0314 20.6667 19.4064 20.9524L20.4376 21.7143L22.4064 22.6667L23.4376 23.5238L24.0001 23.9048L23.7189 23.3333L23.2501 22.8572C22.7814 22.1905 22.2189 21.6191 21.5626 21.1429C21.0001 20.8572 19.8751 20.2857 19.6876 19.7143H19.5939L20.7189 19.4286L22.4064 19.1429L23.1564 18.9524V18.7619L22.3126 17.8095C21.5626 17.0476 20.6251 16.381 19.6876 15.7143L18.0001 14.9524C17.8126 14.8572 17.4376 14.7619 17.3439 14.5714L16.6876 13.3333L15.2814 10.4762L14.5314 8.57144C12.8439 5.7143 10.9689 4.00001 8.15636 2.38096C7.59386 2.00001 6.84386 1.90477 6.09386 1.7143L4.87511 1.61906L4.12511 1.04763C3.18761 0.476201 0.750113 -0.857132 0.0938627 0.857153C-0.374887 1.90477 0.750113 2.95239 1.12511 3.52382L1.96886 4.76192L2.25011 5.61906C2.53136 6.38096 2.71886 7.23811 3.09386 7.90477L3.65636 8.85715C3.84386 9.04763 4.03136 9.14287 4.12511 9.42858C3.84386 9.80953 3.84386 10.2857 3.75011 10.6667C3.09386 12.5714 3.37511 14.8572 4.21886 16.2857C4.40636 16.6667 5.06261 17.6191 5.90636 17.2381C6.65636 16.9524 6.46886 16 6.65636 15.1429L6.75011 14.7619L7.50011 16.0952C7.96886 16.9524 8.81261 17.8095 9.56261 18.381C9.93761 18.6667 10.3126 19.1429 10.7814 19.3333L10.4064 18.9524L9.56261 18C8.81261 17.0476 8.25011 16 7.68761 14.9524L7.03136 13.3333L6.75011 12.7619C6.46886 13.1429 6.09386 13.4286 5.90636 13.9048C5.62511 14.5714 5.62511 15.5238 5.53136 16.381H5.43761C4.87511 16.2857 4.68761 15.7143 4.50011 15.2381C4.03136 14.0952 3.93761 12.1905 4.40636 10.8572C4.50011 10.4762 4.96886 9.42858 4.78136 9.04763C4.68761 8.76192 4.40636 8.57144 4.21886 8.38096L3.56261 7.23811L2.62511 4.38096L1.78136 3.14287C1.50011 2.66668 1.12511 2.38096 0.843863 1.80953C0.750113 1.61906 0.656363 1.33334 0.843863 1.14287L1.03136 0.952391C1.21886 0.761915 1.87511 0.952391 2.06261 1.04763C2.62511 1.33334 3.18761 1.52382 3.65636 1.90477L4.40636 2.4762H4.78136C5.34386 2.57144 5.90636 2.4762 6.37511 2.66668C7.21886 2.95239 8.06261 3.33334 8.71886 3.80953C10.8751 5.14287 12.6564 7.14287 13.7814 9.42858C14.0626 9.80953 14.0626 10.1905 14.2501 10.5714L15.3751 13.0476C15.7501 13.8095 16.0314 14.5714 16.5001 15.2381C16.7814 15.6191 17.8126 15.8095 18.1876 16L19.3126 16.381L21.0001 17.5238C21.1876 17.7143 22.0314 18.1905 22.1251 18.4762Z" />
          <path d="M5.4375 4.09521L4.78125 4.19045L5.34375 4.85712L5.71875 5.71426V5.61902C6 5.52379 6.09375 5.23807 6.09375 4.85712L5.90625 4.47617L5.4375 4.09521Z" />
        </g>
        <defs>
          <clipPath id="undefined-clip0_2062_3083">
            <path fill="#fff" d="M0 0H24V24H0z" />
          </clipPath>
        </defs>
      </svg>
    );
  },
);

MySql.displayName = "MySql";

MySql.metadata = {
  name: "MySql",
  category: "icon/database",
  tags: ["my", "sql", "icon"],
  description: "MySql icon from icon/database category",
  type: ["stroke", "icon"],
} as IconMetadata;

export default MySql;
