// WARNING: Please don't edit this file. It was generated by C++/WinRT v2.0.240405.15 #pragma once #ifndef WINRT_Windows_Foundation_Collections_1_H #define WINRT_Windows_Foundation_Collections_1_H #include "winrt/impl/Windows.Foundation.Collections.0.h" WINRT_EXPORT namespace winrt::Windows::Foundation::Collections { template struct WINRT_IMPL_EMPTY_BASES IIterable : winrt::Windows::Foundation::IInspectable, impl::consume_t> { static_assert(impl::has_category_v, "T must be WinRT type."); IIterable(std::nullptr_t = nullptr) noexcept {} IIterable(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {} }; template struct WINRT_IMPL_EMPTY_BASES IIterator : winrt::Windows::Foundation::IInspectable, impl::consume_t> { static_assert(impl::has_category_v, "T must be WinRT type."); IIterator(std::nullptr_t = nullptr) noexcept {} IIterator(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {} using iterator_concept = std::input_iterator_tag; using iterator_category = std::input_iterator_tag; using value_type = T; using difference_type = ptrdiff_t; using pointer = void; using reference = T; }; template struct WINRT_IMPL_EMPTY_BASES IKeyValuePair : winrt::Windows::Foundation::IInspectable, impl::consume_t> { static_assert(impl::has_category_v, "K must be WinRT type."); static_assert(impl::has_category_v, "V must be WinRT type."); IKeyValuePair(std::nullptr_t = nullptr) noexcept {} IKeyValuePair(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {} }; template struct WINRT_IMPL_EMPTY_BASES IMapChangedEventArgs : winrt::Windows::Foundation::IInspectable, impl::consume_t> { static_assert(impl::has_category_v, "K must be WinRT type."); IMapChangedEventArgs(std::nullptr_t = nullptr) noexcept {} IMapChangedEventArgs(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {} }; template struct WINRT_IMPL_EMPTY_BASES IMapView : winrt::Windows::Foundation::IInspectable, impl::consume_t>, impl::require, winrt::Windows::Foundation::Collections::IIterable>> { static_assert(impl::has_category_v, "K must be WinRT type."); static_assert(impl::has_category_v, "V must be WinRT type."); IMapView(std::nullptr_t = nullptr) noexcept {} IMapView(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {} }; template struct WINRT_IMPL_EMPTY_BASES IMap : winrt::Windows::Foundation::IInspectable, impl::consume_t>, impl::require, winrt::Windows::Foundation::Collections::IIterable>> { static_assert(impl::has_category_v, "K must be WinRT type."); static_assert(impl::has_category_v, "V must be WinRT type."); IMap(std::nullptr_t = nullptr) noexcept {} IMap(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {} }; template struct WINRT_IMPL_EMPTY_BASES IObservableMap : winrt::Windows::Foundation::IInspectable, impl::consume_t>, impl::require, winrt::Windows::Foundation::Collections::IIterable>, winrt::Windows::Foundation::Collections::IMap> { static_assert(impl::has_category_v, "K must be WinRT type."); static_assert(impl::has_category_v, "V must be WinRT type."); IObservableMap(std::nullptr_t = nullptr) noexcept {} IObservableMap(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {} }; template struct WINRT_IMPL_EMPTY_BASES IObservableVector : winrt::Windows::Foundation::IInspectable, impl::consume_t>, impl::require, winrt::Windows::Foundation::Collections::IIterable, winrt::Windows::Foundation::Collections::IVector> { static_assert(impl::has_category_v, "T must be WinRT type."); IObservableVector(std::nullptr_t = nullptr) noexcept {} IObservableVector(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {} }; struct WINRT_IMPL_EMPTY_BASES IPropertySet : winrt::Windows::Foundation::IInspectable, impl::consume_t, impl::require>, winrt::Windows::Foundation::Collections::IMap, winrt::Windows::Foundation::Collections::IObservableMap> { IPropertySet(std::nullptr_t = nullptr) noexcept {} IPropertySet(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {} }; struct WINRT_IMPL_EMPTY_BASES IVectorChangedEventArgs : winrt::Windows::Foundation::IInspectable, impl::consume_t { IVectorChangedEventArgs(std::nullptr_t = nullptr) noexcept {} IVectorChangedEventArgs(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {} }; template struct WINRT_IMPL_EMPTY_BASES IVectorView : winrt::Windows::Foundation::IInspectable, impl::consume_t>, impl::require, winrt::Windows::Foundation::Collections::IIterable> { static_assert(impl::has_category_v, "T must be WinRT type."); IVectorView(std::nullptr_t = nullptr) noexcept {} IVectorView(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {} }; template struct WINRT_IMPL_EMPTY_BASES IVector : winrt::Windows::Foundation::IInspectable, impl::consume_t>, impl::require, winrt::Windows::Foundation::Collections::IIterable> { static_assert(impl::has_category_v, "T must be WinRT type."); IVector(std::nullptr_t = nullptr) noexcept {} IVector(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {} }; } #endif