// WARNING: Please don't edit this file. It was generated by C++/WinRT v2.0.250303.1

#pragma once
#ifndef WINRT_Microsoft_Graphics_Canvas_Svg_2_H
#define WINRT_Microsoft_Graphics_Canvas_Svg_2_H
#include "winrt/impl/Microsoft.Graphics.Canvas.1.h"
#include "winrt/impl/Windows.Foundation.1.h"
#include "winrt/impl/Windows.Storage.Streams.1.h"
#include "winrt/impl/Microsoft.Graphics.Canvas.Svg.1.h"
WINRT_EXPORT namespace winrt::Microsoft::Graphics::Canvas::Svg
{
    struct WINRT_IMPL_EMPTY_BASES CanvasSvgDocument : winrt::Microsoft::Graphics::Canvas::Svg::ICanvasSvgDocument
    {
        CanvasSvgDocument(std::nullptr_t) noexcept {}
        CanvasSvgDocument(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Microsoft::Graphics::Canvas::Svg::ICanvasSvgDocument(ptr, take_ownership_from_abi) {}
        explicit CanvasSvgDocument(winrt::Microsoft::Graphics::Canvas::ICanvasResourceCreator const& resourceCreator);
        static auto LoadFromXml(winrt::Microsoft::Graphics::Canvas::ICanvasResourceCreator const& resourceCreator, param::hstring const& xmlString);
        static auto LoadAsync(winrt::Microsoft::Graphics::Canvas::ICanvasResourceCreator const& resourceCreator, winrt::Windows::Storage::Streams::IRandomAccessStream const& stream);
        static auto IsSupported(winrt::Microsoft::Graphics::Canvas::CanvasDevice const& device);
    };
    struct WINRT_IMPL_EMPTY_BASES CanvasSvgNamedElement : winrt::Microsoft::Graphics::Canvas::Svg::ICanvasSvgNamedElement
    {
        CanvasSvgNamedElement(std::nullptr_t) noexcept {}
        CanvasSvgNamedElement(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Microsoft::Graphics::Canvas::Svg::ICanvasSvgNamedElement(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES CanvasSvgPaintAttribute : winrt::Microsoft::Graphics::Canvas::Svg::ICanvasSvgPaintAttribute
    {
        CanvasSvgPaintAttribute(std::nullptr_t) noexcept {}
        CanvasSvgPaintAttribute(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Microsoft::Graphics::Canvas::Svg::ICanvasSvgPaintAttribute(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES CanvasSvgPathAttribute : winrt::Microsoft::Graphics::Canvas::Svg::ICanvasSvgPathAttribute
    {
        CanvasSvgPathAttribute(std::nullptr_t) noexcept {}
        CanvasSvgPathAttribute(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Microsoft::Graphics::Canvas::Svg::ICanvasSvgPathAttribute(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES CanvasSvgPointsAttribute : winrt::Microsoft::Graphics::Canvas::Svg::ICanvasSvgPointsAttribute
    {
        CanvasSvgPointsAttribute(std::nullptr_t) noexcept {}
        CanvasSvgPointsAttribute(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Microsoft::Graphics::Canvas::Svg::ICanvasSvgPointsAttribute(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES CanvasSvgStrokeDashArrayAttribute : winrt::Microsoft::Graphics::Canvas::Svg::ICanvasSvgStrokeDashArrayAttribute
    {
        CanvasSvgStrokeDashArrayAttribute(std::nullptr_t) noexcept {}
        CanvasSvgStrokeDashArrayAttribute(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Microsoft::Graphics::Canvas::Svg::ICanvasSvgStrokeDashArrayAttribute(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES CanvasSvgTextElement : winrt::Microsoft::Graphics::Canvas::Svg::ICanvasSvgTextElement
    {
        CanvasSvgTextElement(std::nullptr_t) noexcept {}
        CanvasSvgTextElement(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Microsoft::Graphics::Canvas::Svg::ICanvasSvgTextElement(ptr, take_ownership_from_abi) {}
    };
}
#endif
