#import <SVG/SVGAnimatedEnumeration.idl>
#import <SVG/SVGAnimatedString.idl>
#import <SVG/SVGFilterPrimitiveStandardAttributes.idl>

// https://www.w3.org/TR/filter-effects-1/#InterfaceSVGFEBlendElement
[Exposed=Window]
interface SVGFEBlendElement : SVGElement {

  // Blend Mode Types
    const unsigned short SVG_FEBLEND_MODE_UNKNOWN = 0;
    const unsigned short SVG_FEBLEND_MODE_NORMAL = 1;
    const unsigned short SVG_FEBLEND_MODE_MULTIPLY = 2;
    const unsigned short SVG_FEBLEND_MODE_SCREEN = 3;
    const unsigned short SVG_FEBLEND_MODE_DARKEN = 4;
    const unsigned short SVG_FEBLEND_MODE_LIGHTEN = 5;
    const unsigned short SVG_FEBLEND_MODE_OVERLAY = 6;
    const unsigned short SVG_FEBLEND_MODE_COLOR_DODGE = 7;
    const unsigned short SVG_FEBLEND_MODE_COLOR_BURN = 8;
    const unsigned short SVG_FEBLEND_MODE_HARD_LIGHT = 9;
    const unsigned short SVG_FEBLEND_MODE_SOFT_LIGHT = 10;
    const unsigned short SVG_FEBLEND_MODE_DIFFERENCE = 11;
    const unsigned short SVG_FEBLEND_MODE_EXCLUSION = 12;
    const unsigned short SVG_FEBLEND_MODE_HUE = 13;
    const unsigned short SVG_FEBLEND_MODE_SATURATION = 14;
    const unsigned short SVG_FEBLEND_MODE_COLOR = 15;
    const unsigned short SVG_FEBLEND_MODE_LUMINOSITY = 16;

    readonly attribute SVGAnimatedString in1;
    readonly attribute SVGAnimatedString in2;
    [ImplementedAs=mode_for_bindings] readonly attribute SVGAnimatedEnumeration mode;
};

SVGFEBlendElement includes SVGFilterPrimitiveStandardAttributes;
