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

#pragma once
#ifndef WINRT_Microsoft_UI_Xaml_Data_1_H
#define WINRT_Microsoft_UI_Xaml_Data_1_H
#include "winrt/impl/Windows.Foundation.0.h"
#include "winrt/impl/Windows.Foundation.Collections.0.h"
#include "winrt/impl/Microsoft.UI.Xaml.Data.0.h"
WINRT_EXPORT namespace winrt::Microsoft::UI::Xaml::Data
{
    struct WINRT_IMPL_EMPTY_BASES IBinding :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IBinding>
    {
        IBinding(std::nullptr_t = nullptr) noexcept {}
        IBinding(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IBindingBase :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IBindingBase>
    {
        IBindingBase(std::nullptr_t = nullptr) noexcept {}
        IBindingBase(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IBindingBaseFactory :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IBindingBaseFactory>
    {
        IBindingBaseFactory(std::nullptr_t = nullptr) noexcept {}
        IBindingBaseFactory(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IBindingExpression :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IBindingExpression>
    {
        IBindingExpression(std::nullptr_t = nullptr) noexcept {}
        IBindingExpression(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IBindingExpressionBase :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IBindingExpressionBase>
    {
        IBindingExpressionBase(std::nullptr_t = nullptr) noexcept {}
        IBindingExpressionBase(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IBindingExpressionBaseFactory :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IBindingExpressionBaseFactory>
    {
        IBindingExpressionBaseFactory(std::nullptr_t = nullptr) noexcept {}
        IBindingExpressionBaseFactory(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IBindingExpressionFactory :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IBindingExpressionFactory>
    {
        IBindingExpressionFactory(std::nullptr_t = nullptr) noexcept {}
        IBindingExpressionFactory(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IBindingFactory :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IBindingFactory>
    {
        IBindingFactory(std::nullptr_t = nullptr) noexcept {}
        IBindingFactory(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IBindingOperations :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IBindingOperations>
    {
        IBindingOperations(std::nullptr_t = nullptr) noexcept {}
        IBindingOperations(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IBindingOperationsStatics :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IBindingOperationsStatics>
    {
        IBindingOperationsStatics(std::nullptr_t = nullptr) noexcept {}
        IBindingOperationsStatics(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES ICollectionView :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<ICollectionView>,
        impl::require<winrt::Microsoft::UI::Xaml::Data::ICollectionView, winrt::Windows::Foundation::Collections::IIterable<winrt::Windows::Foundation::IInspectable>, winrt::Windows::Foundation::Collections::IVector<winrt::Windows::Foundation::IInspectable>, winrt::Windows::Foundation::Collections::IObservableVector<winrt::Windows::Foundation::IInspectable>>
    {
        ICollectionView(std::nullptr_t = nullptr) noexcept {}
        ICollectionView(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES ICollectionViewFactory :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<ICollectionViewFactory>
    {
        ICollectionViewFactory(std::nullptr_t = nullptr) noexcept {}
        ICollectionViewFactory(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES ICollectionViewGroup :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<ICollectionViewGroup>
    {
        ICollectionViewGroup(std::nullptr_t = nullptr) noexcept {}
        ICollectionViewGroup(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES ICollectionViewSource :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<ICollectionViewSource>
    {
        ICollectionViewSource(std::nullptr_t = nullptr) noexcept {}
        ICollectionViewSource(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES ICollectionViewSourceStatics :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<ICollectionViewSourceStatics>
    {
        ICollectionViewSourceStatics(std::nullptr_t = nullptr) noexcept {}
        ICollectionViewSourceStatics(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES ICurrentChangingEventArgs :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<ICurrentChangingEventArgs>
    {
        ICurrentChangingEventArgs(std::nullptr_t = nullptr) noexcept {}
        ICurrentChangingEventArgs(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES ICurrentChangingEventArgsFactory :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<ICurrentChangingEventArgsFactory>
    {
        ICurrentChangingEventArgsFactory(std::nullptr_t = nullptr) noexcept {}
        ICurrentChangingEventArgsFactory(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES ICustomProperty :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<ICustomProperty>
    {
        ICustomProperty(std::nullptr_t = nullptr) noexcept {}
        ICustomProperty(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES ICustomPropertyProvider :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<ICustomPropertyProvider>
    {
        ICustomPropertyProvider(std::nullptr_t = nullptr) noexcept {}
        ICustomPropertyProvider(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IDataErrorsChangedEventArgs :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IDataErrorsChangedEventArgs>
    {
        IDataErrorsChangedEventArgs(std::nullptr_t = nullptr) noexcept {}
        IDataErrorsChangedEventArgs(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IDataErrorsChangedEventArgsFactory :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IDataErrorsChangedEventArgsFactory>
    {
        IDataErrorsChangedEventArgsFactory(std::nullptr_t = nullptr) noexcept {}
        IDataErrorsChangedEventArgsFactory(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IItemIndexRange :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IItemIndexRange>
    {
        IItemIndexRange(std::nullptr_t = nullptr) noexcept {}
        IItemIndexRange(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IItemIndexRangeFactory :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IItemIndexRangeFactory>
    {
        IItemIndexRangeFactory(std::nullptr_t = nullptr) noexcept {}
        IItemIndexRangeFactory(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IItemsRangeInfo :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IItemsRangeInfo>,
        impl::require<winrt::Microsoft::UI::Xaml::Data::IItemsRangeInfo, winrt::Windows::Foundation::IClosable>
    {
        IItemsRangeInfo(std::nullptr_t = nullptr) noexcept {}
        IItemsRangeInfo(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES INotifyDataErrorInfo :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<INotifyDataErrorInfo>
    {
        INotifyDataErrorInfo(std::nullptr_t = nullptr) noexcept {}
        INotifyDataErrorInfo(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES INotifyPropertyChanged :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<INotifyPropertyChanged>
    {
        INotifyPropertyChanged(std::nullptr_t = nullptr) noexcept {}
        INotifyPropertyChanged(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IPropertyChangedEventArgs :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IPropertyChangedEventArgs>
    {
        IPropertyChangedEventArgs(std::nullptr_t = nullptr) noexcept {}
        IPropertyChangedEventArgs(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IPropertyChangedEventArgsFactory :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IPropertyChangedEventArgsFactory>
    {
        IPropertyChangedEventArgsFactory(std::nullptr_t = nullptr) noexcept {}
        IPropertyChangedEventArgsFactory(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IRelativeSource :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IRelativeSource>
    {
        IRelativeSource(std::nullptr_t = nullptr) noexcept {}
        IRelativeSource(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IRelativeSourceFactory :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IRelativeSourceFactory>
    {
        IRelativeSourceFactory(std::nullptr_t = nullptr) noexcept {}
        IRelativeSourceFactory(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES ISelectionInfo :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<ISelectionInfo>
    {
        ISelectionInfo(std::nullptr_t = nullptr) noexcept {}
        ISelectionInfo(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES ISupportIncrementalLoading :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<ISupportIncrementalLoading>
    {
        ISupportIncrementalLoading(std::nullptr_t = nullptr) noexcept {}
        ISupportIncrementalLoading(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IValueConverter :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IValueConverter>
    {
        IValueConverter(std::nullptr_t = nullptr) noexcept {}
        IValueConverter(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
}
#endif
