"use strict";
var __assign = (this && this.__assign) || Object.assign || function(t) {
    for (var s, i = 1, n = arguments.length; i < n; i++) {
        s = arguments[i];
        for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
            t[p] = s[p];
    }
    return t;
};
/* tslint:disable */
var React = require("react");
var Icon_scss_1 = require("./Icon.scss");
var IconType_1 = require("./IconType");
var Image_1 = require("../Image/Image");
var Utilities_1 = require("../../Utilities");
exports.Icon = function (props) {
    var customIcon = props.iconName === 'None';
    if (props.iconType === IconType_1.IconType.Image) {
        var containerClassName = Utilities_1.css('ms-Icon', 'ms-Icon-imageContainer', Icon_scss_1.default.imageContainer, props.className);
        return (React.createElement("div", { className: containerClassName },
            React.createElement(Image_1.Image, __assign({}, props.imageProps))));
    }
    else {
        var className = Utilities_1.css('ms-Icon', customIcon ? '' : ('ms-Icon--' + props.iconName), props.className);
        return React.createElement("i", __assign({}, Utilities_1.getNativeProps(props, Utilities_1.htmlElementProperties), { className: className }));
    }
};

//# sourceMappingURL=Icon.js.map
