import React, { ForwardedRef, useContext } from 'react';
import { OriginIconProps } from '../type';
import { Context } from '../context';

function IconTreeModelImageGenerationComponent(props: OriginIconProps, ref: ForwardedRef<SVGSVGElement>) {
    const { prefix: prefixFromContext } = useContext(Context);
    const { className = '', prefix: prefixFromProps, width = '1em', height = '1em', useCurrentColor = false, spin, ...rest } = props;

    const prefix = prefixFromProps || prefixFromContext || 'hiagent';
    const loadingKls = spin ? ` ${prefix}-icon-loading` : '';
    return <svg className={`${prefix}-icon ${prefix}-icon-tree_model_Image-generation${loadingKls} ${className}`} width={width} height={height} xmlns="http://www.w3.org/2000/svg" fill={useCurrentColor ? 'currentColor' : 'none'} viewBox="0 0 24 24" {...rest} ref={ref}><rect width="24" height="24" fill={useCurrentColor ? 'currentColor' : '#E3AF46'} rx="6"/><path fill={useCurrentColor ? 'currentColor' : '#fff'} d="M16.442 10.297a1.251 1.251 0 0 1 1.533.04l.09.084 1.297 1.297a1.25 1.25 0 0 1-.029 1.796l-6.27 5.877a1.051 1.051 0 0 1-.719.285h-1.378c-.69 0-1.25-.56-1.25-1.25V16.79c0-.298.127-.582.349-.781l6.282-5.636.095-.077ZM11.016 16.9v1.475h1.23l4.174-3.915-1.269-1.269-4.135 3.71Zm4.697-12.2c.911 0 1.65.74 1.65 1.65v1.413a.65.65 0 0 1-1.3 0V6.35a.35.35 0 0 0-.35-.35H6.45a.35.35 0 0 0-.35.35v4.67l.999-.998a1.651 1.651 0 0 1 2.334 0l2.109 2.109a.651.651 0 0 1-.92.92l-2.108-2.109a.35.35 0 0 0-.495 0L6.101 12.86v2.752c0 .193.156.35.35.35h1.01a.65.65 0 1 1 0 1.3h-1.01a1.65 1.65 0 0 1-1.651-1.65V6.35c0-.91.74-1.65 1.65-1.65h9.263Zm.408 7.622 1.248 1.248 1.037-.97-1.226-1.227-1.059.95ZM12.29 6.711a1.858 1.858 0 1 1-.003 3.715 1.858 1.858 0 0 1 .003-3.715Zm0 1.3a.557.557 0 1 0 0 1.115.557.557 0 0 0 0-1.114Z"/></svg>;
}

const IconTreeModelImageGeneration = React.forwardRef(IconTreeModelImageGenerationComponent);
export default IconTreeModelImageGeneration;
