diff --git a/svgjs/svgjs.d.ts b/svgjs/svgjs.d.ts index 6b7a7a6ae..8a3af1d68 100644 --- a/svgjs/svgjs.d.ts +++ b/svgjs/svgjs.d.ts @@ -38,7 +38,36 @@ declare module svgjs { mask():Mask; // TODO gradients - } + } + + + // https://github.com/wout/svg.filter.js + export interface Filter { + gaussianBlur(values:string):Filter; + colorMatrix(name:string, value:number):Filter; + colorMatrix(name:string, matrix:number[]):Filter; + componentTransfer(components:{rgb?: FilterComponentTransfer; g?: FilterComponentTransfer;}):Filter; + offset(x:number, y:number):Filter; + blend():Filter; + in(source:FilterSource):Filter; + sourceAlpha:FilterSource; + source:FilterSource; + } + + export interface FilterSource { + + } + + + export interface FilterComponentTransfer { + type: string; + tableValues?: string; + slope?: number; + intercept: number; + amplitude: number; + exponent: number; + offset: number; + } export interface Element extends Text, Parent { node:LinkedHTMLElement; @@ -71,6 +100,7 @@ declare module svgjs { remove():void; each(iterator:(i?:number, children?:Element[])=>void, deep?:boolean):void; + filter(adder:(filter:Filter)=>void):Element; transform(t:Transform):Element; @@ -204,6 +234,12 @@ declare module svgjs { export interface RBox extends BBox {} + export interface Attributes { + (name:string, value:any):void; + (obj:Object):void; + (name:string):any; + } + export interface Viewbox { x: number; y: number;