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

export const Sequelize: IconComponent = React.forwardRef<
  SVGSVGElement,
  IconProps
>(function Sequelize(
  {
    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 clipPath="url(#undefined-clip0_2066_403)">
        <path
          d="M18.9649 7.654V16.2972L11.5329 20.6351L11.4673 20.6999V23.9189L11.5329 23.9837L22.0001 18.0162V5.97562L21.9017 5.95129L18.9485 7.57292L18.9649 7.654Z"
          fill="#2f406a"
        />
        <path
          d="M4.08437 16.3622L11.5328 20.6352V24.0001L1 17.9919V6.00005L1.10664 5.99194L4.05156 7.67843L4.08437 7.77573V16.3703"
          fill="#2379bd"
        />
        <path
          d="M4.08437 7.76757L1 6L11.5082 0L22 5.97568L18.9648 7.65405L11.5082 3.44595L4.08437 7.76757Z"
          fill="#03afef"
        />
        <path
          d="M11.4097 15.373L11.3276 15.2919V12.0487L11.4097 12.0081L11.4261 11.927L14.2397 10.3054L14.3218 10.3216V13.6703L11.4097 15.373Z"
          fill="#2f406a"
        />
        <path
          d="M8.44019 13.7756V10.2972H8.52222L11.3851 11.9432L11.4097 12.0081V15.3729L8.44019 13.7837"
          fill="#2379bd"
        />
        <path
          d="M11.3605 8.5946L8.44019 10.2973L11.4097 12.0081L14.33 10.3216L11.3605 8.5946Z"
          fill="#03afef"
        />
        <path
          d="M7.77588 17.4892L7.69385 17.4081V14.1649L7.77588 14.1243L7.79229 14.0433L10.606 12.4216L10.688 12.4378V15.7865L7.77588 17.4892Z"
          fill="#2f406a"
        />
        <path
          d="M4.80615 15.8919V12.4054H4.88818L7.75107 14.0513L7.77568 14.1162V17.4811L4.80615 15.8919Z"
          fill="#2379bd"
        />
        <path
          d="M7.72646 10.7028L4.80615 12.4136L7.77568 14.1244L10.696 12.4379L7.72646 10.7109"
          fill="#03afef"
        />
        <path
          d="M15.2981 17.5703L15.2161 17.4892V14.2459L15.2981 14.2054L15.3227 14.1243L18.1364 12.5027L18.2184 12.5189V15.8676L15.2981 17.5703Z"
          fill="#2f406a"
        />
        <path
          d="M12.3368 15.9729V12.4865H12.4188L15.2817 14.1324L15.3063 14.1973V17.5621L12.3286 15.9729"
          fill="#2379bd"
        />
        <path
          d="M15.257 10.7838L12.3367 12.4946L15.3062 14.2054L18.2265 12.5189L15.257 10.7919"
          fill="#03afef"
        />
        <path
          d="M11.6641 19.6865L11.582 19.6054V16.3621L11.6641 16.3216L11.6887 16.2405L14.5023 14.6189L14.5844 14.6351V17.9838L11.6641 19.6865Z"
          fill="#2f406a"
        />
        <path
          d="M8.69458 18.0811V14.6108H8.77661L11.6477 16.2568L11.6641 16.3217V19.6865L8.69458 18.0892"
          fill="#2379bd"
        />
        <path
          d="M11.6149 12.9081L8.69458 14.6108L11.6641 16.3216L14.5844 14.6351L11.6149 12.9081Z"
          fill="#03afef"
        />
        <path
          d="M11.4097 10.7756L11.3276 10.6945V7.4513L11.4097 7.40265L11.4261 7.32157L14.2397 5.69995L14.3218 5.72428V9.06482L11.4097 10.7675"
          fill="#2f406a"
        />
        <path
          d="M8.44019 9.16218V5.70813H8.52222L11.3851 7.34597L11.4097 7.41083V10.7838L8.44019 9.16218Z"
          fill="#2379bd"
        />
        <path
          d="M11.3605 3.98914L8.44019 5.69184L11.4097 7.40265L14.33 5.72427L11.3605 3.98914Z"
          fill="#03afef"
        />
        <path
          d="M7.77588 12.8918L7.69385 12.8108V9.56751L7.77588 9.51886L7.79229 9.43778L10.606 7.81616L10.688 7.84049V11.181L7.77588 12.8837"
          fill="#2f406a"
        />
        <path
          d="M4.80615 11.2864V7.81616H4.88818L7.75107 9.454L7.77568 9.51886V12.8918L4.80615 11.2864Z"
          fill="#2379bd"
        />
        <path
          d="M7.72646 6.10535L4.80615 7.80805L7.77568 9.51886L10.696 7.84048L7.72646 6.10535Z"
          fill="#03afef"
        />
        <path
          d="M15.2981 12.973L15.2161 12.8919V9.64869L15.2981 9.60004L15.3227 9.51896L18.1364 7.89734L18.2184 7.92166V11.2622L15.2981 12.9649"
          fill="#2f406a"
        />
        <path
          d="M12.3367 11.3676V7.89734H12.4187L15.2816 9.53518L15.3062 9.60004V12.973L12.3367 11.3676Z"
          fill="#2379bd"
        />
        <path
          d="M15.257 6.18652L12.3367 7.88923L15.3062 9.60004L18.2265 7.92166L15.257 6.18652Z"
          fill="#03afef"
        />
        <path
          d="M11.6641 15.0811L11.582 15V11.7568L11.6641 11.7163L11.6887 11.6352L14.5023 10.0135L14.5844 10.0379V13.3784L11.6641 15.0811Z"
          fill="#2f406a"
        />
        <path
          d="M8.69458 13.4838V10.0135H8.77661L11.6477 11.6514L11.6641 11.7163V15.0892L8.69458 13.4838Z"
          fill="#2379bd"
        />
        <path
          d="M11.6149 8.30273L8.69458 10.0054L11.6641 11.7162L14.5844 10.0379L11.6149 8.30273Z"
          fill="#03afef"
        />
      </g>
      <defs>
        <clipPath id="undefined-clip0_2066_403">
          <path fill="#fff" transform="translate(1)" d="M0 0H21V24H0z" />
        </clipPath>
      </defs>
    </svg>
  );
});

Sequelize.displayName = "Sequelize";

Sequelize.metadata = {
  name: "Sequelize",
  category: "icon/framework",
  tags: ["sequelize", "icon"],
  description: "Sequelize icon from icon/framework category",
  type: ["stroke", "icon"],
} as IconMetadata;

export default Sequelize;
