import "Types.idl"; namespace RNSVG { interface IRenderable { Windows.UI.Xaml.FrameworkElement SvgParent; Microsoft.Graphics.Canvas.Geometry.CanvasGeometry Geometry; Boolean IsResponsible; void CreateResources( Microsoft.Graphics.Canvas.ICanvasResourceCreator resourceCreator, Microsoft.Graphics.Canvas.UI.CanvasCreateResourcesEventArgs args); void Render( Microsoft.Graphics.Canvas.UI.Xaml.CanvasControl canvas, Microsoft.Graphics.Canvas.CanvasDrawingSession session); void UpdateProperties(Microsoft.ReactNative.IJSValueReader reader, Boolean forceUpdate, Boolean invalidate); void MergeProperties(RenderableView other); void SaveDefinition(); void Unload(); void CreateGeometry(Microsoft.Graphics.Canvas.UI.Xaml.CanvasControl canvas); IRenderable HitTest(Windows.Foundation.Point point); }; [default_interface] runtimeclass SvgView : Windows.UI.Xaml.Controls.Panel, IRenderable { SvgView(Microsoft.ReactNative.IReactContext context); Single SvgScale{ get; }; GroupView Group; Windows.UI.Color CurrentColor{ get; }; Microsoft.Graphics.Canvas.UI.Xaml.CanvasControl Canvas{ get; }; Windows.Foundation.Collections.IMap Templates{ get; }; Windows.Foundation.Collections.IMap Brushes{ get; }; void InvalidateCanvas(); }; [default_interface] unsealed runtimeclass RenderableView : Windows.UI.Xaml.FrameworkElement, IRenderable { RenderableView(Microsoft.ReactNative.IReactContext context); SvgView SvgRoot{ get; }; String Id{ get; }; Windows.Foundation.Numerics.Matrix3x2 SvgTransform{ get; }; Windows.UI.Color Fill{ get; }; Single FillOpacity{ get; }; String FillBrushId{ get; }; Windows.UI.Color Stroke{ get; }; Single StrokeOpacity{ get; }; String StrokeBrushId{ get; }; SVGLength StrokeWidth{ get; }; Single StrokeMiterLimit{ get; }; Single StrokeDashOffset{ get; }; Windows.Foundation.Collections.IVector StrokeDashArray{ get; }; Microsoft.Graphics.Canvas.Geometry.CanvasCapStyle StrokeLineCap{ get; }; Microsoft.Graphics.Canvas.Geometry.CanvasLineJoin StrokeLineJoin{ get; }; Microsoft.Graphics.Canvas.Geometry.CanvasFilledRegionDetermination FillRule{ get; }; Microsoft.Graphics.Canvas.Geometry.CanvasGeometry ClipPathGeometry { get; }; }; [default_interface] runtimeclass RectView : RenderableView { RectView(); }; [default_interface] runtimeclass CircleView : RenderableView { CircleView(); }; [default_interface] runtimeclass EllipseView : RenderableView { EllipseView(); }; [default_interface] runtimeclass LineView : RenderableView { LineView(); }; [default_interface] runtimeclass PathView : RenderableView { PathView(); }; [default_interface] runtimeclass UseView : RenderableView { UseView(); }; [default_interface] runtimeclass ImageView : RenderableView { ImageView(); }; [default_interface] unsealed runtimeclass GroupView : RenderableView { GroupView(Microsoft.ReactNative.IReactContext context); Windows.Foundation.Collections.IVector Children { get; }; Single FontSize; String FontFamily; String FontWeight; void RenderGroup( Microsoft.Graphics.Canvas.UI.Xaml.CanvasControl canvas, Microsoft.Graphics.Canvas.CanvasDrawingSession session); }; [default_interface] unsealed runtimeclass TextView : GroupView { TextView(); Windows.Foundation.Collections.IVector X{ get; }; Windows.Foundation.Collections.IVector Y{ get; }; Windows.Foundation.Collections.IVector DX{ get; }; Windows.Foundation.Collections.IVector DY{ get; }; }; [default_interface] runtimeclass TSpanView : TextView { TSpanView(); Windows.Foundation.Collections.IVector Rotate { get; }; }; [default_interface] runtimeclass DefsView : GroupView { DefsView(); }; [default_interface] runtimeclass SymbolView : GroupView { SymbolView(); Single MinX{ get; }; Single MinY{ get; }; Single VbWidth{ get; }; Single VbHeight{ get; }; String Align{ get; }; MeetOrSlice MeetOrSlice{ get; }; }; [default_interface] runtimeclass ClipPathView : GroupView { ClipPathView(); }; [default_interface] unsealed runtimeclass BrushView : GroupView { BrushView(); Microsoft.Graphics.Canvas.Brushes.ICanvasBrush Brush{ get; }; void CreateBrush(); void SetBounds(Windows.Foundation.Rect rect); }; [default_interface] runtimeclass LinearGradientView : BrushView { LinearGradientView(); }; [default_interface] runtimeclass RadialGradientView : BrushView { RadialGradientView(); }; [default_interface] runtimeclass PatternView : BrushView { PatternView(); }; }