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

#pragma once
#ifndef WINRT_Microsoft_Windows_ApplicationModel_Resources_0_H
#define WINRT_Microsoft_Windows_ApplicationModel_Resources_0_H
WINRT_EXPORT namespace winrt::Windows::Foundation
{
    struct EventRegistrationToken;
    template <typename TSender, typename TResult> struct WINRT_IMPL_EMPTY_BASES TypedEventHandler;
    struct Uri;
}
WINRT_EXPORT namespace winrt::Microsoft::Windows::ApplicationModel::Resources
{
    enum class ResourceCandidateKind : int32_t
    {
        Unknown = 0,
        String = 1,
        FilePath = 2,
        EmbeddedData = 3,
    };
    struct IKnownResourceQualifierNameStatics;
    struct IResourceCandidate;
    struct IResourceCandidateFactory;
    struct IResourceContext;
    struct IResourceContext2;
    struct IResourceLoader;
    struct IResourceLoaderFactory;
    struct IResourceLoaderStatics;
    struct IResourceManager;
    struct IResourceManager2;
    struct IResourceManagerFactory;
    struct IResourceMap;
    struct IResourceNotFoundEventArgs;
    struct KnownResourceQualifierName;
    struct ResourceCandidate;
    struct ResourceContext;
    struct ResourceLoader;
    struct ResourceManager;
    struct ResourceMap;
    struct ResourceNotFoundEventArgs;
    struct MrtCoreContract;
}
namespace winrt::impl
{
    template <> struct category<winrt::Microsoft::Windows::ApplicationModel::Resources::IKnownResourceQualifierNameStatics>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceCandidate>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceCandidateFactory>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceContext>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceContext2>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceLoader>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceLoaderFactory>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceLoaderStatics>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceManager>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceManager2>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceManagerFactory>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceMap>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceNotFoundEventArgs>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::Windows::ApplicationModel::Resources::KnownResourceQualifierName>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::Windows::ApplicationModel::Resources::ResourceCandidate>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::Windows::ApplicationModel::Resources::ResourceContext>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::Windows::ApplicationModel::Resources::ResourceLoader>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::Windows::ApplicationModel::Resources::ResourceManager>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::Windows::ApplicationModel::Resources::ResourceMap>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::Windows::ApplicationModel::Resources::ResourceNotFoundEventArgs>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::Windows::ApplicationModel::Resources::ResourceCandidateKind>{ using type = enum_category; };
    template <> inline constexpr auto& name_v<winrt::Microsoft::Windows::ApplicationModel::Resources::KnownResourceQualifierName> = L"Microsoft.Windows.ApplicationModel.Resources.KnownResourceQualifierName";
    template <> inline constexpr auto& name_v<winrt::Microsoft::Windows::ApplicationModel::Resources::ResourceCandidate> = L"Microsoft.Windows.ApplicationModel.Resources.ResourceCandidate";
    template <> inline constexpr auto& name_v<winrt::Microsoft::Windows::ApplicationModel::Resources::ResourceContext> = L"Microsoft.Windows.ApplicationModel.Resources.ResourceContext";
    template <> inline constexpr auto& name_v<winrt::Microsoft::Windows::ApplicationModel::Resources::ResourceLoader> = L"Microsoft.Windows.ApplicationModel.Resources.ResourceLoader";
    template <> inline constexpr auto& name_v<winrt::Microsoft::Windows::ApplicationModel::Resources::ResourceManager> = L"Microsoft.Windows.ApplicationModel.Resources.ResourceManager";
    template <> inline constexpr auto& name_v<winrt::Microsoft::Windows::ApplicationModel::Resources::ResourceMap> = L"Microsoft.Windows.ApplicationModel.Resources.ResourceMap";
    template <> inline constexpr auto& name_v<winrt::Microsoft::Windows::ApplicationModel::Resources::ResourceNotFoundEventArgs> = L"Microsoft.Windows.ApplicationModel.Resources.ResourceNotFoundEventArgs";
    template <> inline constexpr auto& name_v<winrt::Microsoft::Windows::ApplicationModel::Resources::ResourceCandidateKind> = L"Microsoft.Windows.ApplicationModel.Resources.ResourceCandidateKind";
    template <> inline constexpr auto& name_v<winrt::Microsoft::Windows::ApplicationModel::Resources::IKnownResourceQualifierNameStatics> = L"Microsoft.Windows.ApplicationModel.Resources.IKnownResourceQualifierNameStatics";
    template <> inline constexpr auto& name_v<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceCandidate> = L"Microsoft.Windows.ApplicationModel.Resources.IResourceCandidate";
    template <> inline constexpr auto& name_v<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceCandidateFactory> = L"Microsoft.Windows.ApplicationModel.Resources.IResourceCandidateFactory";
    template <> inline constexpr auto& name_v<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceContext> = L"Microsoft.Windows.ApplicationModel.Resources.IResourceContext";
    template <> inline constexpr auto& name_v<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceContext2> = L"Microsoft.Windows.ApplicationModel.Resources.IResourceContext2";
    template <> inline constexpr auto& name_v<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceLoader> = L"Microsoft.Windows.ApplicationModel.Resources.IResourceLoader";
    template <> inline constexpr auto& name_v<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceLoaderFactory> = L"Microsoft.Windows.ApplicationModel.Resources.IResourceLoaderFactory";
    template <> inline constexpr auto& name_v<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceLoaderStatics> = L"Microsoft.Windows.ApplicationModel.Resources.IResourceLoaderStatics";
    template <> inline constexpr auto& name_v<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceManager> = L"Microsoft.Windows.ApplicationModel.Resources.IResourceManager";
    template <> inline constexpr auto& name_v<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceManager2> = L"Microsoft.Windows.ApplicationModel.Resources.IResourceManager2";
    template <> inline constexpr auto& name_v<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceManagerFactory> = L"Microsoft.Windows.ApplicationModel.Resources.IResourceManagerFactory";
    template <> inline constexpr auto& name_v<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceMap> = L"Microsoft.Windows.ApplicationModel.Resources.IResourceMap";
    template <> inline constexpr auto& name_v<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceNotFoundEventArgs> = L"Microsoft.Windows.ApplicationModel.Resources.IResourceNotFoundEventArgs";
    template <> inline constexpr auto& name_v<winrt::Microsoft::Windows::ApplicationModel::Resources::MrtCoreContract> = L"Microsoft.Windows.ApplicationModel.Resources.MrtCoreContract";
    template <> inline constexpr guid guid_v<winrt::Microsoft::Windows::ApplicationModel::Resources::IKnownResourceQualifierNameStatics>{ 0xDD6CDEDC,0x559B,0x50C8,{ 0xAC,0x53,0x82,0xFE,0x21,0xF9,0x15,0xF3 } }; // DD6CDEDC-559B-50C8-AC53-82FE21F915F3
    template <> inline constexpr guid guid_v<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceCandidate>{ 0x6C54BC0C,0xEF1E,0x57B8,{ 0xB4,0x78,0x34,0xFE,0xCE,0x73,0x73,0x56 } }; // 6C54BC0C-EF1E-57B8-B478-34FECE737356
    template <> inline constexpr guid guid_v<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceCandidateFactory>{ 0xBB2B30F8,0xC19B,0x5F43,{ 0x88,0xD9,0x69,0xAD,0x72,0x8A,0x32,0xF4 } }; // BB2B30F8-C19B-5F43-88D9-69AD728A32F4
    template <> inline constexpr guid guid_v<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceContext>{ 0x96FB48DC,0xF77D,0x55FF,{ 0xAF,0x12,0x34,0x86,0x1E,0x3D,0x49,0x39 } }; // 96FB48DC-F77D-55FF-AF12-34861E3D4939
    template <> inline constexpr guid guid_v<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceContext2>{ 0x7A3B1158,0x798C,0x5949,{ 0x96,0x9D,0x03,0x51,0x0B,0x9C,0xE6,0xCA } }; // 7A3B1158-798C-5949-969D-03510B9CE6CA
    template <> inline constexpr guid guid_v<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceLoader>{ 0xBC3F76BF,0xDA46,0x54CD,{ 0x87,0x15,0x8B,0x8A,0xAF,0x16,0xEA,0xAC } }; // BC3F76BF-DA46-54CD-8715-8B8AAF16EAAC
    template <> inline constexpr guid guid_v<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceLoaderFactory>{ 0x871F83AA,0xFB34,0x50D6,{ 0xB9,0xB9,0x2C,0x35,0xF3,0xFF,0xC0,0x04 } }; // 871F83AA-FB34-50D6-B9B9-2C35F3FFC004
    template <> inline constexpr guid guid_v<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceLoaderStatics>{ 0xEC9C894A,0x1466,0x5F2F,{ 0x8E,0xEE,0xA7,0x0C,0xBD,0x2B,0x51,0xBB } }; // EC9C894A-1466-5F2F-8EEE-A70CBD2B51BB
    template <> inline constexpr guid guid_v<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceManager>{ 0xAC2291EF,0x81BE,0x5C99,{ 0xA0,0xAE,0xBC,0xEE,0x01,0x80,0xB8,0xA8 } }; // AC2291EF-81BE-5C99-A0AE-BCEE0180B8A8
    template <> inline constexpr guid guid_v<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceManager2>{ 0x7EC10160,0xA154,0x5C42,{ 0x82,0x68,0x30,0xE3,0x06,0xB1,0xF5,0x85 } }; // 7EC10160-A154-5C42-8268-30E306B1F585
    template <> inline constexpr guid guid_v<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceManagerFactory>{ 0xD6ACF18F,0x458A,0x535B,{ 0xA5,0xC4,0xAC,0x2D,0xC4,0xE4,0x90,0x99 } }; // D6ACF18F-458A-535B-A5C4-AC2DC4E49099
    template <> inline constexpr guid guid_v<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceMap>{ 0x4ABBD9BC,0xDF4E,0x5C7B,{ 0x81,0x2C,0x7E,0x7B,0xB0,0xC2,0x23,0x77 } }; // 4ABBD9BC-DF4E-5C7B-812C-7E7BB0C22377
    template <> inline constexpr guid guid_v<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceNotFoundEventArgs>{ 0x64ABB08B,0xE77D,0x5B26,{ 0x83,0x0F,0x15,0x94,0x1E,0x0E,0x82,0x00 } }; // 64ABB08B-E77D-5B26-830F-15941E0E8200
    template <> struct default_interface<winrt::Microsoft::Windows::ApplicationModel::Resources::ResourceCandidate>{ using type = winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceCandidate; };
    template <> struct default_interface<winrt::Microsoft::Windows::ApplicationModel::Resources::ResourceContext>{ using type = winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceContext; };
    template <> struct default_interface<winrt::Microsoft::Windows::ApplicationModel::Resources::ResourceLoader>{ using type = winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceLoader; };
    template <> struct default_interface<winrt::Microsoft::Windows::ApplicationModel::Resources::ResourceManager>{ using type = winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceManager; };
    template <> struct default_interface<winrt::Microsoft::Windows::ApplicationModel::Resources::ResourceMap>{ using type = winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceMap; };
    template <> struct default_interface<winrt::Microsoft::Windows::ApplicationModel::Resources::ResourceNotFoundEventArgs>{ using type = winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceNotFoundEventArgs; };
    template <> struct abi<winrt::Microsoft::Windows::ApplicationModel::Resources::IKnownResourceQualifierNameStatics>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_Contrast(void**) noexcept = 0;
            virtual int32_t __stdcall get_Custom(void**) noexcept = 0;
            virtual int32_t __stdcall get_DeviceFamily(void**) noexcept = 0;
            virtual int32_t __stdcall get_HomeRegion(void**) noexcept = 0;
            virtual int32_t __stdcall get_Language(void**) noexcept = 0;
            virtual int32_t __stdcall get_LayoutDirection(void**) noexcept = 0;
            virtual int32_t __stdcall get_Scale(void**) noexcept = 0;
            virtual int32_t __stdcall get_TargetSize(void**) noexcept = 0;
            virtual int32_t __stdcall get_Theme(void**) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceCandidate>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_ValueAsString(void**) noexcept = 0;
            virtual int32_t __stdcall get_ValueAsBytes(uint32_t* __valueSize, uint8_t**) noexcept = 0;
            virtual int32_t __stdcall get_Kind(int32_t*) noexcept = 0;
            virtual int32_t __stdcall get_QualifierValues(void**) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceCandidateFactory>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall CreateInstance(int32_t, void*, void**) noexcept = 0;
            virtual int32_t __stdcall CreateInstance2(uint32_t, uint8_t*, void**) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceContext>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_QualifierValues(void**) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceContext2>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
        };
    };
    template <> struct abi<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceLoader>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall GetString(void*, void**) noexcept = 0;
            virtual int32_t __stdcall GetStringForUri(void*, void**) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceLoaderFactory>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall CreateInstance(void*, void**) noexcept = 0;
            virtual int32_t __stdcall CreateInstance2(void*, void*, void**) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceLoaderStatics>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall GetDefaultResourceFilePath(void**) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceManager>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_MainResourceMap(void**) noexcept = 0;
            virtual int32_t __stdcall CreateResourceContext(void**) noexcept = 0;
            virtual int32_t __stdcall add_ResourceNotFound(void*, winrt::event_token*) noexcept = 0;
            virtual int32_t __stdcall remove_ResourceNotFound(winrt::event_token) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceManager2>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
        };
    };
    template <> struct abi<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceManagerFactory>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall CreateInstance(void*, void**) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceMap>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_ResourceCount(uint32_t*) noexcept = 0;
            virtual int32_t __stdcall GetSubtree(void*, void**) noexcept = 0;
            virtual int32_t __stdcall TryGetSubtree(void*, void**) noexcept = 0;
            virtual int32_t __stdcall GetValue(void*, void**) noexcept = 0;
            virtual int32_t __stdcall GetValueWithContext(void*, void*, void**) noexcept = 0;
            virtual int32_t __stdcall GetValueByIndex(uint32_t, void**) noexcept = 0;
            virtual int32_t __stdcall GetValueByIndexWithContext(uint32_t, void*, void**) noexcept = 0;
            virtual int32_t __stdcall TryGetValue(void*, void**) noexcept = 0;
            virtual int32_t __stdcall TryGetValueWithContext(void*, void*, void**) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceNotFoundEventArgs>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_Context(void**) noexcept = 0;
            virtual int32_t __stdcall get_Name(void**) noexcept = 0;
            virtual int32_t __stdcall SetResolvedCandidate(void*) noexcept = 0;
        };
    };
    template <typename D>
    struct consume_Microsoft_Windows_ApplicationModel_Resources_IKnownResourceQualifierNameStatics
    {
        [[nodiscard]] auto Contrast() const;
        [[nodiscard]] auto Custom() const;
        [[nodiscard]] auto DeviceFamily() const;
        [[nodiscard]] auto HomeRegion() const;
        [[nodiscard]] auto Language() const;
        [[nodiscard]] auto LayoutDirection() const;
        [[nodiscard]] auto Scale() const;
        [[nodiscard]] auto TargetSize() const;
        [[nodiscard]] auto Theme() const;
    };
    template <> struct consume<winrt::Microsoft::Windows::ApplicationModel::Resources::IKnownResourceQualifierNameStatics>
    {
        template <typename D> using type = consume_Microsoft_Windows_ApplicationModel_Resources_IKnownResourceQualifierNameStatics<D>;
    };
    template <typename D>
    struct consume_Microsoft_Windows_ApplicationModel_Resources_IResourceCandidate
    {
        [[nodiscard]] auto ValueAsString() const;
        [[nodiscard]] auto ValueAsBytes() const;
        [[nodiscard]] auto Kind() const;
        [[nodiscard]] auto QualifierValues() const;
    };
    template <> struct consume<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceCandidate>
    {
        template <typename D> using type = consume_Microsoft_Windows_ApplicationModel_Resources_IResourceCandidate<D>;
    };
    template <typename D>
    struct consume_Microsoft_Windows_ApplicationModel_Resources_IResourceCandidateFactory
    {
        auto CreateInstance(winrt::Microsoft::Windows::ApplicationModel::Resources::ResourceCandidateKind const& kind, param::hstring const& data) const;
        auto CreateInstance2(array_view<uint8_t const> data) const;
    };
    template <> struct consume<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceCandidateFactory>
    {
        template <typename D> using type = consume_Microsoft_Windows_ApplicationModel_Resources_IResourceCandidateFactory<D>;
    };
    template <typename D>
    struct consume_Microsoft_Windows_ApplicationModel_Resources_IResourceContext
    {
        [[nodiscard]] auto QualifierValues() const;
    };
    template <> struct consume<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceContext>
    {
        template <typename D> using type = consume_Microsoft_Windows_ApplicationModel_Resources_IResourceContext<D>;
    };
    template <typename D>
    struct consume_Microsoft_Windows_ApplicationModel_Resources_IResourceContext2
    {
    };
    template <> struct consume<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceContext2>
    {
        template <typename D> using type = consume_Microsoft_Windows_ApplicationModel_Resources_IResourceContext2<D>;
    };
    template <typename D>
    struct consume_Microsoft_Windows_ApplicationModel_Resources_IResourceLoader
    {
        auto GetString(param::hstring const& resourceId) const;
        auto GetStringForUri(winrt::Windows::Foundation::Uri const& resourceUri) const;
    };
    template <> struct consume<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceLoader>
    {
        template <typename D> using type = consume_Microsoft_Windows_ApplicationModel_Resources_IResourceLoader<D>;
    };
    template <typename D>
    struct consume_Microsoft_Windows_ApplicationModel_Resources_IResourceLoaderFactory
    {
        auto CreateInstance(param::hstring const& fileName) const;
        auto CreateInstance2(param::hstring const& fileName, param::hstring const& resourceMap) const;
    };
    template <> struct consume<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceLoaderFactory>
    {
        template <typename D> using type = consume_Microsoft_Windows_ApplicationModel_Resources_IResourceLoaderFactory<D>;
    };
    template <typename D>
    struct consume_Microsoft_Windows_ApplicationModel_Resources_IResourceLoaderStatics
    {
        auto GetDefaultResourceFilePath() const;
    };
    template <> struct consume<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceLoaderStatics>
    {
        template <typename D> using type = consume_Microsoft_Windows_ApplicationModel_Resources_IResourceLoaderStatics<D>;
    };
    template <typename D>
    struct consume_Microsoft_Windows_ApplicationModel_Resources_IResourceManager
    {
        [[nodiscard]] auto MainResourceMap() const;
        auto CreateResourceContext() const;
        auto ResourceNotFound(winrt::Windows::Foundation::TypedEventHandler<winrt::Microsoft::Windows::ApplicationModel::Resources::ResourceManager, winrt::Microsoft::Windows::ApplicationModel::Resources::ResourceNotFoundEventArgs> const& handler) const;
        using ResourceNotFound_revoker = impl::event_revoker<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceManager, &impl::abi_t<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceManager>::remove_ResourceNotFound>;
        [[nodiscard]] auto ResourceNotFound(auto_revoke_t, winrt::Windows::Foundation::TypedEventHandler<winrt::Microsoft::Windows::ApplicationModel::Resources::ResourceManager, winrt::Microsoft::Windows::ApplicationModel::Resources::ResourceNotFoundEventArgs> const& handler) const;
        auto ResourceNotFound(winrt::event_token const& token) const noexcept;
    };
    template <> struct consume<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceManager>
    {
        template <typename D> using type = consume_Microsoft_Windows_ApplicationModel_Resources_IResourceManager<D>;
    };
    template <typename D>
    struct consume_Microsoft_Windows_ApplicationModel_Resources_IResourceManager2
    {
    };
    template <> struct consume<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceManager2>
    {
        template <typename D> using type = consume_Microsoft_Windows_ApplicationModel_Resources_IResourceManager2<D>;
    };
    template <typename D>
    struct consume_Microsoft_Windows_ApplicationModel_Resources_IResourceManagerFactory
    {
        auto CreateInstance(param::hstring const& fileName) const;
    };
    template <> struct consume<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceManagerFactory>
    {
        template <typename D> using type = consume_Microsoft_Windows_ApplicationModel_Resources_IResourceManagerFactory<D>;
    };
    template <typename D>
    struct consume_Microsoft_Windows_ApplicationModel_Resources_IResourceMap
    {
        [[nodiscard]] auto ResourceCount() const;
        auto GetSubtree(param::hstring const& reference) const;
        auto TryGetSubtree(param::hstring const& reference) const;
        auto GetValue(param::hstring const& resource) const;
        auto GetValue(param::hstring const& resource, winrt::Microsoft::Windows::ApplicationModel::Resources::ResourceContext const& context) const;
        auto GetValueByIndex(uint32_t index) const;
        auto GetValueByIndex(uint32_t index, winrt::Microsoft::Windows::ApplicationModel::Resources::ResourceContext const& context) const;
        auto TryGetValue(param::hstring const& resource) const;
        auto TryGetValue(param::hstring const& resource, winrt::Microsoft::Windows::ApplicationModel::Resources::ResourceContext const& context) const;
    };
    template <> struct consume<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceMap>
    {
        template <typename D> using type = consume_Microsoft_Windows_ApplicationModel_Resources_IResourceMap<D>;
    };
    template <typename D>
    struct consume_Microsoft_Windows_ApplicationModel_Resources_IResourceNotFoundEventArgs
    {
        [[nodiscard]] auto Context() const;
        [[nodiscard]] auto Name() const;
        auto SetResolvedCandidate(winrt::Microsoft::Windows::ApplicationModel::Resources::ResourceCandidate const& candidate) const;
    };
    template <> struct consume<winrt::Microsoft::Windows::ApplicationModel::Resources::IResourceNotFoundEventArgs>
    {
        template <typename D> using type = consume_Microsoft_Windows_ApplicationModel_Resources_IResourceNotFoundEventArgs<D>;
    };
}
#endif
