// C++/WinRT v2.0.190620.2

// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.

#ifndef WINRT_Windows_ApplicationModel_Appointments_DataProvider_0_H
#define WINRT_Windows_ApplicationModel_Appointments_DataProvider_0_H
namespace winrt::Windows::ApplicationModel::Appointments
{
    struct Appointment;
    enum class AppointmentParticipantResponse : int32_t;
}
namespace winrt::Windows::Foundation
{
    struct Deferral;
    struct EventRegistrationToken;
    struct IAsyncAction;
    template <typename TSender, typename TResult> struct TypedEventHandler;
}
namespace winrt::Windows::ApplicationModel::Appointments::DataProvider
{
    struct IAppointmentCalendarCancelMeetingRequest;
    struct IAppointmentCalendarCancelMeetingRequestEventArgs;
    struct IAppointmentCalendarCreateOrUpdateAppointmentRequest;
    struct IAppointmentCalendarCreateOrUpdateAppointmentRequestEventArgs;
    struct IAppointmentCalendarForwardMeetingRequest;
    struct IAppointmentCalendarForwardMeetingRequestEventArgs;
    struct IAppointmentCalendarProposeNewTimeForMeetingRequest;
    struct IAppointmentCalendarProposeNewTimeForMeetingRequestEventArgs;
    struct IAppointmentCalendarSyncManagerSyncRequest;
    struct IAppointmentCalendarSyncManagerSyncRequestEventArgs;
    struct IAppointmentCalendarUpdateMeetingResponseRequest;
    struct IAppointmentCalendarUpdateMeetingResponseRequestEventArgs;
    struct IAppointmentDataProviderConnection;
    struct IAppointmentDataProviderTriggerDetails;
    struct AppointmentCalendarCancelMeetingRequest;
    struct AppointmentCalendarCancelMeetingRequestEventArgs;
    struct AppointmentCalendarCreateOrUpdateAppointmentRequest;
    struct AppointmentCalendarCreateOrUpdateAppointmentRequestEventArgs;
    struct AppointmentCalendarForwardMeetingRequest;
    struct AppointmentCalendarForwardMeetingRequestEventArgs;
    struct AppointmentCalendarProposeNewTimeForMeetingRequest;
    struct AppointmentCalendarProposeNewTimeForMeetingRequestEventArgs;
    struct AppointmentCalendarSyncManagerSyncRequest;
    struct AppointmentCalendarSyncManagerSyncRequestEventArgs;
    struct AppointmentCalendarUpdateMeetingResponseRequest;
    struct AppointmentCalendarUpdateMeetingResponseRequestEventArgs;
    struct AppointmentDataProviderConnection;
    struct AppointmentDataProviderTriggerDetails;
}
namespace winrt::impl
{
    template <> struct category<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarCancelMeetingRequest>
    {
        using type = interface_category;
    };
    template <> struct category<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarCancelMeetingRequestEventArgs>
    {
        using type = interface_category;
    };
    template <> struct category<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarCreateOrUpdateAppointmentRequest>
    {
        using type = interface_category;
    };
    template <> struct category<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarCreateOrUpdateAppointmentRequestEventArgs>
    {
        using type = interface_category;
    };
    template <> struct category<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarForwardMeetingRequest>
    {
        using type = interface_category;
    };
    template <> struct category<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarForwardMeetingRequestEventArgs>
    {
        using type = interface_category;
    };
    template <> struct category<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarProposeNewTimeForMeetingRequest>
    {
        using type = interface_category;
    };
    template <> struct category<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarProposeNewTimeForMeetingRequestEventArgs>
    {
        using type = interface_category;
    };
    template <> struct category<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarSyncManagerSyncRequest>
    {
        using type = interface_category;
    };
    template <> struct category<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarSyncManagerSyncRequestEventArgs>
    {
        using type = interface_category;
    };
    template <> struct category<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarUpdateMeetingResponseRequest>
    {
        using type = interface_category;
    };
    template <> struct category<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarUpdateMeetingResponseRequestEventArgs>
    {
        using type = interface_category;
    };
    template <> struct category<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentDataProviderConnection>
    {
        using type = interface_category;
    };
    template <> struct category<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentDataProviderTriggerDetails>
    {
        using type = interface_category;
    };
    template <> struct category<Windows::ApplicationModel::Appointments::DataProvider::AppointmentCalendarCancelMeetingRequest>
    {
        using type = class_category;
    };
    template <> struct category<Windows::ApplicationModel::Appointments::DataProvider::AppointmentCalendarCancelMeetingRequestEventArgs>
    {
        using type = class_category;
    };
    template <> struct category<Windows::ApplicationModel::Appointments::DataProvider::AppointmentCalendarCreateOrUpdateAppointmentRequest>
    {
        using type = class_category;
    };
    template <> struct category<Windows::ApplicationModel::Appointments::DataProvider::AppointmentCalendarCreateOrUpdateAppointmentRequestEventArgs>
    {
        using type = class_category;
    };
    template <> struct category<Windows::ApplicationModel::Appointments::DataProvider::AppointmentCalendarForwardMeetingRequest>
    {
        using type = class_category;
    };
    template <> struct category<Windows::ApplicationModel::Appointments::DataProvider::AppointmentCalendarForwardMeetingRequestEventArgs>
    {
        using type = class_category;
    };
    template <> struct category<Windows::ApplicationModel::Appointments::DataProvider::AppointmentCalendarProposeNewTimeForMeetingRequest>
    {
        using type = class_category;
    };
    template <> struct category<Windows::ApplicationModel::Appointments::DataProvider::AppointmentCalendarProposeNewTimeForMeetingRequestEventArgs>
    {
        using type = class_category;
    };
    template <> struct category<Windows::ApplicationModel::Appointments::DataProvider::AppointmentCalendarSyncManagerSyncRequest>
    {
        using type = class_category;
    };
    template <> struct category<Windows::ApplicationModel::Appointments::DataProvider::AppointmentCalendarSyncManagerSyncRequestEventArgs>
    {
        using type = class_category;
    };
    template <> struct category<Windows::ApplicationModel::Appointments::DataProvider::AppointmentCalendarUpdateMeetingResponseRequest>
    {
        using type = class_category;
    };
    template <> struct category<Windows::ApplicationModel::Appointments::DataProvider::AppointmentCalendarUpdateMeetingResponseRequestEventArgs>
    {
        using type = class_category;
    };
    template <> struct category<Windows::ApplicationModel::Appointments::DataProvider::AppointmentDataProviderConnection>
    {
        using type = class_category;
    };
    template <> struct category<Windows::ApplicationModel::Appointments::DataProvider::AppointmentDataProviderTriggerDetails>
    {
        using type = class_category;
    };
    template <> struct name<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarCancelMeetingRequest>
    {
        static constexpr auto & value{ L"Windows.ApplicationModel.Appointments.DataProvider.IAppointmentCalendarCancelMeetingRequest" };
    };
    template <> struct name<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarCancelMeetingRequestEventArgs>
    {
        static constexpr auto & value{ L"Windows.ApplicationModel.Appointments.DataProvider.IAppointmentCalendarCancelMeetingRequestEventArgs" };
    };
    template <> struct name<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarCreateOrUpdateAppointmentRequest>
    {
        static constexpr auto & value{ L"Windows.ApplicationModel.Appointments.DataProvider.IAppointmentCalendarCreateOrUpdateAppointmentRequest" };
    };
    template <> struct name<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarCreateOrUpdateAppointmentRequestEventArgs>
    {
        static constexpr auto & value{ L"Windows.ApplicationModel.Appointments.DataProvider.IAppointmentCalendarCreateOrUpdateAppointmentRequestEventArgs" };
    };
    template <> struct name<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarForwardMeetingRequest>
    {
        static constexpr auto & value{ L"Windows.ApplicationModel.Appointments.DataProvider.IAppointmentCalendarForwardMeetingRequest" };
    };
    template <> struct name<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarForwardMeetingRequestEventArgs>
    {
        static constexpr auto & value{ L"Windows.ApplicationModel.Appointments.DataProvider.IAppointmentCalendarForwardMeetingRequestEventArgs" };
    };
    template <> struct name<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarProposeNewTimeForMeetingRequest>
    {
        static constexpr auto & value{ L"Windows.ApplicationModel.Appointments.DataProvider.IAppointmentCalendarProposeNewTimeForMeetingRequest" };
    };
    template <> struct name<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarProposeNewTimeForMeetingRequestEventArgs>
    {
        static constexpr auto & value{ L"Windows.ApplicationModel.Appointments.DataProvider.IAppointmentCalendarProposeNewTimeForMeetingRequestEventArgs" };
    };
    template <> struct name<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarSyncManagerSyncRequest>
    {
        static constexpr auto & value{ L"Windows.ApplicationModel.Appointments.DataProvider.IAppointmentCalendarSyncManagerSyncRequest" };
    };
    template <> struct name<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarSyncManagerSyncRequestEventArgs>
    {
        static constexpr auto & value{ L"Windows.ApplicationModel.Appointments.DataProvider.IAppointmentCalendarSyncManagerSyncRequestEventArgs" };
    };
    template <> struct name<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarUpdateMeetingResponseRequest>
    {
        static constexpr auto & value{ L"Windows.ApplicationModel.Appointments.DataProvider.IAppointmentCalendarUpdateMeetingResponseRequest" };
    };
    template <> struct name<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarUpdateMeetingResponseRequestEventArgs>
    {
        static constexpr auto & value{ L"Windows.ApplicationModel.Appointments.DataProvider.IAppointmentCalendarUpdateMeetingResponseRequestEventArgs" };
    };
    template <> struct name<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentDataProviderConnection>
    {
        static constexpr auto & value{ L"Windows.ApplicationModel.Appointments.DataProvider.IAppointmentDataProviderConnection" };
    };
    template <> struct name<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentDataProviderTriggerDetails>
    {
        static constexpr auto & value{ L"Windows.ApplicationModel.Appointments.DataProvider.IAppointmentDataProviderTriggerDetails" };
    };
    template <> struct name<Windows::ApplicationModel::Appointments::DataProvider::AppointmentCalendarCancelMeetingRequest>
    {
        static constexpr auto & value{ L"Windows.ApplicationModel.Appointments.DataProvider.AppointmentCalendarCancelMeetingRequest" };
    };
    template <> struct name<Windows::ApplicationModel::Appointments::DataProvider::AppointmentCalendarCancelMeetingRequestEventArgs>
    {
        static constexpr auto & value{ L"Windows.ApplicationModel.Appointments.DataProvider.AppointmentCalendarCancelMeetingRequestEventArgs" };
    };
    template <> struct name<Windows::ApplicationModel::Appointments::DataProvider::AppointmentCalendarCreateOrUpdateAppointmentRequest>
    {
        static constexpr auto & value{ L"Windows.ApplicationModel.Appointments.DataProvider.AppointmentCalendarCreateOrUpdateAppointmentRequest" };
    };
    template <> struct name<Windows::ApplicationModel::Appointments::DataProvider::AppointmentCalendarCreateOrUpdateAppointmentRequestEventArgs>
    {
        static constexpr auto & value{ L"Windows.ApplicationModel.Appointments.DataProvider.AppointmentCalendarCreateOrUpdateAppointmentRequestEventArgs" };
    };
    template <> struct name<Windows::ApplicationModel::Appointments::DataProvider::AppointmentCalendarForwardMeetingRequest>
    {
        static constexpr auto & value{ L"Windows.ApplicationModel.Appointments.DataProvider.AppointmentCalendarForwardMeetingRequest" };
    };
    template <> struct name<Windows::ApplicationModel::Appointments::DataProvider::AppointmentCalendarForwardMeetingRequestEventArgs>
    {
        static constexpr auto & value{ L"Windows.ApplicationModel.Appointments.DataProvider.AppointmentCalendarForwardMeetingRequestEventArgs" };
    };
    template <> struct name<Windows::ApplicationModel::Appointments::DataProvider::AppointmentCalendarProposeNewTimeForMeetingRequest>
    {
        static constexpr auto & value{ L"Windows.ApplicationModel.Appointments.DataProvider.AppointmentCalendarProposeNewTimeForMeetingRequest" };
    };
    template <> struct name<Windows::ApplicationModel::Appointments::DataProvider::AppointmentCalendarProposeNewTimeForMeetingRequestEventArgs>
    {
        static constexpr auto & value{ L"Windows.ApplicationModel.Appointments.DataProvider.AppointmentCalendarProposeNewTimeForMeetingRequestEventArgs" };
    };
    template <> struct name<Windows::ApplicationModel::Appointments::DataProvider::AppointmentCalendarSyncManagerSyncRequest>
    {
        static constexpr auto & value{ L"Windows.ApplicationModel.Appointments.DataProvider.AppointmentCalendarSyncManagerSyncRequest" };
    };
    template <> struct name<Windows::ApplicationModel::Appointments::DataProvider::AppointmentCalendarSyncManagerSyncRequestEventArgs>
    {
        static constexpr auto & value{ L"Windows.ApplicationModel.Appointments.DataProvider.AppointmentCalendarSyncManagerSyncRequestEventArgs" };
    };
    template <> struct name<Windows::ApplicationModel::Appointments::DataProvider::AppointmentCalendarUpdateMeetingResponseRequest>
    {
        static constexpr auto & value{ L"Windows.ApplicationModel.Appointments.DataProvider.AppointmentCalendarUpdateMeetingResponseRequest" };
    };
    template <> struct name<Windows::ApplicationModel::Appointments::DataProvider::AppointmentCalendarUpdateMeetingResponseRequestEventArgs>
    {
        static constexpr auto & value{ L"Windows.ApplicationModel.Appointments.DataProvider.AppointmentCalendarUpdateMeetingResponseRequestEventArgs" };
    };
    template <> struct name<Windows::ApplicationModel::Appointments::DataProvider::AppointmentDataProviderConnection>
    {
        static constexpr auto & value{ L"Windows.ApplicationModel.Appointments.DataProvider.AppointmentDataProviderConnection" };
    };
    template <> struct name<Windows::ApplicationModel::Appointments::DataProvider::AppointmentDataProviderTriggerDetails>
    {
        static constexpr auto & value{ L"Windows.ApplicationModel.Appointments.DataProvider.AppointmentDataProviderTriggerDetails" };
    };
    template <> struct guid_storage<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarCancelMeetingRequest>
    {
        static constexpr guid value{ 0x49460F8D,0x6434,0x40D7,{ 0xAD,0x46,0x62,0x97,0x41,0x93,0x14,0xD1 } };
    };
    template <> struct guid_storage<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarCancelMeetingRequestEventArgs>
    {
        static constexpr guid value{ 0x1A79BE16,0x7F30,0x4E35,{ 0xBE,0xEF,0x9D,0x2C,0x7B,0x6D,0xCA,0xE1 } };
    };
    template <> struct guid_storage<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarCreateOrUpdateAppointmentRequest>
    {
        static constexpr guid value{ 0x2E62F2B2,0xCA96,0x48AC,{ 0x91,0x24,0x40,0x6B,0x19,0xFE,0xFA,0x70 } };
    };
    template <> struct guid_storage<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarCreateOrUpdateAppointmentRequestEventArgs>
    {
        static constexpr guid value{ 0xCF8DED28,0x002E,0x4BF7,{ 0x8E,0x9D,0x5E,0x20,0xD4,0x9A,0xA3,0xBA } };
    };
    template <> struct guid_storage<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarForwardMeetingRequest>
    {
        static constexpr guid value{ 0x82E5EE56,0x26B6,0x4253,{ 0x8A,0x8F,0x6C,0xF5,0xF2,0xFF,0x78,0x84 } };
    };
    template <> struct guid_storage<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarForwardMeetingRequestEventArgs>
    {
        static constexpr guid value{ 0x3109151A,0x23A2,0x42FD,{ 0x9C,0x82,0xC9,0xA6,0x0D,0x59,0xF8,0xA8 } };
    };
    template <> struct guid_storage<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarProposeNewTimeForMeetingRequest>
    {
        static constexpr guid value{ 0xCE1C63F5,0xEDF6,0x43C3,{ 0x82,0xB7,0xBE,0x6B,0x36,0x8C,0x69,0x00 } };
    };
    template <> struct guid_storage<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarProposeNewTimeForMeetingRequestEventArgs>
    {
        static constexpr guid value{ 0xD2D777D8,0xFED1,0x4280,{ 0xA3,0xBA,0x2E,0x1F,0x47,0x60,0x9A,0xA2 } };
    };
    template <> struct guid_storage<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarSyncManagerSyncRequest>
    {
        static constexpr guid value{ 0x12AB382B,0x7163,0x4A56,{ 0x9A,0x4E,0x72,0x23,0xA8,0x4A,0xDF,0x46 } };
    };
    template <> struct guid_storage<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarSyncManagerSyncRequestEventArgs>
    {
        static constexpr guid value{ 0xCA17C6F7,0x0284,0x4EDD,{ 0x87,0xBA,0x4D,0x8F,0x69,0xDC,0xF5,0xC0 } };
    };
    template <> struct guid_storage<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarUpdateMeetingResponseRequest>
    {
        static constexpr guid value{ 0xA36D608C,0xC29D,0x4B94,{ 0xB0,0x86,0x7E,0x9F,0xF7,0xBD,0x84,0xA0 } };
    };
    template <> struct guid_storage<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarUpdateMeetingResponseRequestEventArgs>
    {
        static constexpr guid value{ 0x88759883,0x97BF,0x479D,{ 0xAE,0xD5,0x0B,0xE8,0xCE,0x56,0x7D,0x1E } };
    };
    template <> struct guid_storage<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentDataProviderConnection>
    {
        static constexpr guid value{ 0xF3DD9D83,0x3254,0x465F,{ 0xAB,0xDB,0x92,0x80,0x46,0x55,0x2C,0xF4 } };
    };
    template <> struct guid_storage<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentDataProviderTriggerDetails>
    {
        static constexpr guid value{ 0xB3283C01,0x7E12,0x4E5E,{ 0xB1,0xEF,0x74,0xFB,0x68,0xAC,0x6F,0x2A } };
    };
    template <> struct default_interface<Windows::ApplicationModel::Appointments::DataProvider::AppointmentCalendarCancelMeetingRequest>
    {
        using type = Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarCancelMeetingRequest;
    };
    template <> struct default_interface<Windows::ApplicationModel::Appointments::DataProvider::AppointmentCalendarCancelMeetingRequestEventArgs>
    {
        using type = Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarCancelMeetingRequestEventArgs;
    };
    template <> struct default_interface<Windows::ApplicationModel::Appointments::DataProvider::AppointmentCalendarCreateOrUpdateAppointmentRequest>
    {
        using type = Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarCreateOrUpdateAppointmentRequest;
    };
    template <> struct default_interface<Windows::ApplicationModel::Appointments::DataProvider::AppointmentCalendarCreateOrUpdateAppointmentRequestEventArgs>
    {
        using type = Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarCreateOrUpdateAppointmentRequestEventArgs;
    };
    template <> struct default_interface<Windows::ApplicationModel::Appointments::DataProvider::AppointmentCalendarForwardMeetingRequest>
    {
        using type = Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarForwardMeetingRequest;
    };
    template <> struct default_interface<Windows::ApplicationModel::Appointments::DataProvider::AppointmentCalendarForwardMeetingRequestEventArgs>
    {
        using type = Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarForwardMeetingRequestEventArgs;
    };
    template <> struct default_interface<Windows::ApplicationModel::Appointments::DataProvider::AppointmentCalendarProposeNewTimeForMeetingRequest>
    {
        using type = Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarProposeNewTimeForMeetingRequest;
    };
    template <> struct default_interface<Windows::ApplicationModel::Appointments::DataProvider::AppointmentCalendarProposeNewTimeForMeetingRequestEventArgs>
    {
        using type = Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarProposeNewTimeForMeetingRequestEventArgs;
    };
    template <> struct default_interface<Windows::ApplicationModel::Appointments::DataProvider::AppointmentCalendarSyncManagerSyncRequest>
    {
        using type = Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarSyncManagerSyncRequest;
    };
    template <> struct default_interface<Windows::ApplicationModel::Appointments::DataProvider::AppointmentCalendarSyncManagerSyncRequestEventArgs>
    {
        using type = Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarSyncManagerSyncRequestEventArgs;
    };
    template <> struct default_interface<Windows::ApplicationModel::Appointments::DataProvider::AppointmentCalendarUpdateMeetingResponseRequest>
    {
        using type = Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarUpdateMeetingResponseRequest;
    };
    template <> struct default_interface<Windows::ApplicationModel::Appointments::DataProvider::AppointmentCalendarUpdateMeetingResponseRequestEventArgs>
    {
        using type = Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarUpdateMeetingResponseRequestEventArgs;
    };
    template <> struct default_interface<Windows::ApplicationModel::Appointments::DataProvider::AppointmentDataProviderConnection>
    {
        using type = Windows::ApplicationModel::Appointments::DataProvider::IAppointmentDataProviderConnection;
    };
    template <> struct default_interface<Windows::ApplicationModel::Appointments::DataProvider::AppointmentDataProviderTriggerDetails>
    {
        using type = Windows::ApplicationModel::Appointments::DataProvider::IAppointmentDataProviderTriggerDetails;
    };
    template <> struct abi<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarCancelMeetingRequest>
    {
        struct __declspec(novtable) type : inspectable_abi
        {
            virtual int32_t __stdcall get_AppointmentCalendarLocalId(void**) noexcept = 0;
            virtual int32_t __stdcall get_AppointmentLocalId(void**) noexcept = 0;
            virtual int32_t __stdcall get_AppointmentOriginalStartTime(void**) noexcept = 0;
            virtual int32_t __stdcall get_Subject(void**) noexcept = 0;
            virtual int32_t __stdcall get_Comment(void**) noexcept = 0;
            virtual int32_t __stdcall get_NotifyInvitees(bool*) noexcept = 0;
            virtual int32_t __stdcall ReportCompletedAsync(void**) noexcept = 0;
            virtual int32_t __stdcall ReportFailedAsync(void**) noexcept = 0;
        };
    };
    template <> struct abi<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarCancelMeetingRequestEventArgs>
    {
        struct __declspec(novtable) type : inspectable_abi
        {
            virtual int32_t __stdcall get_Request(void**) noexcept = 0;
            virtual int32_t __stdcall GetDeferral(void**) noexcept = 0;
        };
    };
    template <> struct abi<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarCreateOrUpdateAppointmentRequest>
    {
        struct __declspec(novtable) type : inspectable_abi
        {
            virtual int32_t __stdcall get_AppointmentCalendarLocalId(void**) noexcept = 0;
            virtual int32_t __stdcall get_Appointment(void**) noexcept = 0;
            virtual int32_t __stdcall get_NotifyInvitees(bool*) noexcept = 0;
            virtual int32_t __stdcall get_ChangedProperties(void**) noexcept = 0;
            virtual int32_t __stdcall ReportCompletedAsync(void*, void**) noexcept = 0;
            virtual int32_t __stdcall ReportFailedAsync(void**) noexcept = 0;
        };
    };
    template <> struct abi<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarCreateOrUpdateAppointmentRequestEventArgs>
    {
        struct __declspec(novtable) type : inspectable_abi
        {
            virtual int32_t __stdcall get_Request(void**) noexcept = 0;
            virtual int32_t __stdcall GetDeferral(void**) noexcept = 0;
        };
    };
    template <> struct abi<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarForwardMeetingRequest>
    {
        struct __declspec(novtable) type : inspectable_abi
        {
            virtual int32_t __stdcall get_AppointmentCalendarLocalId(void**) noexcept = 0;
            virtual int32_t __stdcall get_AppointmentLocalId(void**) noexcept = 0;
            virtual int32_t __stdcall get_AppointmentOriginalStartTime(void**) noexcept = 0;
            virtual int32_t __stdcall get_Invitees(void**) noexcept = 0;
            virtual int32_t __stdcall get_Subject(void**) noexcept = 0;
            virtual int32_t __stdcall get_ForwardHeader(void**) noexcept = 0;
            virtual int32_t __stdcall get_Comment(void**) noexcept = 0;
            virtual int32_t __stdcall ReportCompletedAsync(void**) noexcept = 0;
            virtual int32_t __stdcall ReportFailedAsync(void**) noexcept = 0;
        };
    };
    template <> struct abi<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarForwardMeetingRequestEventArgs>
    {
        struct __declspec(novtable) type : inspectable_abi
        {
            virtual int32_t __stdcall get_Request(void**) noexcept = 0;
            virtual int32_t __stdcall GetDeferral(void**) noexcept = 0;
        };
    };
    template <> struct abi<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarProposeNewTimeForMeetingRequest>
    {
        struct __declspec(novtable) type : inspectable_abi
        {
            virtual int32_t __stdcall get_AppointmentCalendarLocalId(void**) noexcept = 0;
            virtual int32_t __stdcall get_AppointmentLocalId(void**) noexcept = 0;
            virtual int32_t __stdcall get_AppointmentOriginalStartTime(void**) noexcept = 0;
            virtual int32_t __stdcall get_NewStartTime(int64_t*) noexcept = 0;
            virtual int32_t __stdcall get_NewDuration(int64_t*) noexcept = 0;
            virtual int32_t __stdcall get_Subject(void**) noexcept = 0;
            virtual int32_t __stdcall get_Comment(void**) noexcept = 0;
            virtual int32_t __stdcall ReportCompletedAsync(void**) noexcept = 0;
            virtual int32_t __stdcall ReportFailedAsync(void**) noexcept = 0;
        };
    };
    template <> struct abi<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarProposeNewTimeForMeetingRequestEventArgs>
    {
        struct __declspec(novtable) type : inspectable_abi
        {
            virtual int32_t __stdcall get_Request(void**) noexcept = 0;
            virtual int32_t __stdcall GetDeferral(void**) noexcept = 0;
        };
    };
    template <> struct abi<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarSyncManagerSyncRequest>
    {
        struct __declspec(novtable) type : inspectable_abi
        {
            virtual int32_t __stdcall get_AppointmentCalendarLocalId(void**) noexcept = 0;
            virtual int32_t __stdcall ReportCompletedAsync(void**) noexcept = 0;
            virtual int32_t __stdcall ReportFailedAsync(void**) noexcept = 0;
        };
    };
    template <> struct abi<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarSyncManagerSyncRequestEventArgs>
    {
        struct __declspec(novtable) type : inspectable_abi
        {
            virtual int32_t __stdcall get_Request(void**) noexcept = 0;
            virtual int32_t __stdcall GetDeferral(void**) noexcept = 0;
        };
    };
    template <> struct abi<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarUpdateMeetingResponseRequest>
    {
        struct __declspec(novtable) type : inspectable_abi
        {
            virtual int32_t __stdcall get_AppointmentCalendarLocalId(void**) noexcept = 0;
            virtual int32_t __stdcall get_AppointmentLocalId(void**) noexcept = 0;
            virtual int32_t __stdcall get_AppointmentOriginalStartTime(void**) noexcept = 0;
            virtual int32_t __stdcall get_Response(int32_t*) noexcept = 0;
            virtual int32_t __stdcall get_Subject(void**) noexcept = 0;
            virtual int32_t __stdcall get_Comment(void**) noexcept = 0;
            virtual int32_t __stdcall get_SendUpdate(bool*) noexcept = 0;
            virtual int32_t __stdcall ReportCompletedAsync(void**) noexcept = 0;
            virtual int32_t __stdcall ReportFailedAsync(void**) noexcept = 0;
        };
    };
    template <> struct abi<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarUpdateMeetingResponseRequestEventArgs>
    {
        struct __declspec(novtable) type : inspectable_abi
        {
            virtual int32_t __stdcall get_Request(void**) noexcept = 0;
            virtual int32_t __stdcall GetDeferral(void**) noexcept = 0;
        };
    };
    template <> struct abi<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentDataProviderConnection>
    {
        struct __declspec(novtable) type : inspectable_abi
        {
            virtual int32_t __stdcall add_SyncRequested(void*, winrt::event_token*) noexcept = 0;
            virtual int32_t __stdcall remove_SyncRequested(winrt::event_token) noexcept = 0;
            virtual int32_t __stdcall add_CreateOrUpdateAppointmentRequested(void*, winrt::event_token*) noexcept = 0;
            virtual int32_t __stdcall remove_CreateOrUpdateAppointmentRequested(winrt::event_token) noexcept = 0;
            virtual int32_t __stdcall add_CancelMeetingRequested(void*, winrt::event_token*) noexcept = 0;
            virtual int32_t __stdcall remove_CancelMeetingRequested(winrt::event_token) noexcept = 0;
            virtual int32_t __stdcall add_ForwardMeetingRequested(void*, winrt::event_token*) noexcept = 0;
            virtual int32_t __stdcall remove_ForwardMeetingRequested(winrt::event_token) noexcept = 0;
            virtual int32_t __stdcall add_ProposeNewTimeForMeetingRequested(void*, winrt::event_token*) noexcept = 0;
            virtual int32_t __stdcall remove_ProposeNewTimeForMeetingRequested(winrt::event_token) noexcept = 0;
            virtual int32_t __stdcall add_UpdateMeetingResponseRequested(void*, winrt::event_token*) noexcept = 0;
            virtual int32_t __stdcall remove_UpdateMeetingResponseRequested(winrt::event_token) noexcept = 0;
            virtual int32_t __stdcall Start() noexcept = 0;
        };
    };
    template <> struct abi<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentDataProviderTriggerDetails>
    {
        struct __declspec(novtable) type : inspectable_abi
        {
            virtual int32_t __stdcall get_Connection(void**) noexcept = 0;
        };
    };
    template <typename D>
    struct consume_Windows_ApplicationModel_Appointments_DataProvider_IAppointmentCalendarCancelMeetingRequest
    {
        [[nodiscard]] auto AppointmentCalendarLocalId() const;
        [[nodiscard]] auto AppointmentLocalId() const;
        [[nodiscard]] auto AppointmentOriginalStartTime() const;
        [[nodiscard]] auto Subject() const;
        [[nodiscard]] auto Comment() const;
        [[nodiscard]] auto NotifyInvitees() const;
        auto ReportCompletedAsync() const;
        auto ReportFailedAsync() const;
    };
    template <> struct consume<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarCancelMeetingRequest>
    {
        template <typename D> using type = consume_Windows_ApplicationModel_Appointments_DataProvider_IAppointmentCalendarCancelMeetingRequest<D>;
    };
    template <typename D>
    struct consume_Windows_ApplicationModel_Appointments_DataProvider_IAppointmentCalendarCancelMeetingRequestEventArgs
    {
        [[nodiscard]] auto Request() const;
        auto GetDeferral() const;
    };
    template <> struct consume<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarCancelMeetingRequestEventArgs>
    {
        template <typename D> using type = consume_Windows_ApplicationModel_Appointments_DataProvider_IAppointmentCalendarCancelMeetingRequestEventArgs<D>;
    };
    template <typename D>
    struct consume_Windows_ApplicationModel_Appointments_DataProvider_IAppointmentCalendarCreateOrUpdateAppointmentRequest
    {
        [[nodiscard]] auto AppointmentCalendarLocalId() const;
        [[nodiscard]] auto Appointment() const;
        [[nodiscard]] auto NotifyInvitees() const;
        [[nodiscard]] auto ChangedProperties() const;
        auto ReportCompletedAsync(Windows::ApplicationModel::Appointments::Appointment const& createdOrUpdatedAppointment) const;
        auto ReportFailedAsync() const;
    };
    template <> struct consume<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarCreateOrUpdateAppointmentRequest>
    {
        template <typename D> using type = consume_Windows_ApplicationModel_Appointments_DataProvider_IAppointmentCalendarCreateOrUpdateAppointmentRequest<D>;
    };
    template <typename D>
    struct consume_Windows_ApplicationModel_Appointments_DataProvider_IAppointmentCalendarCreateOrUpdateAppointmentRequestEventArgs
    {
        [[nodiscard]] auto Request() const;
        auto GetDeferral() const;
    };
    template <> struct consume<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarCreateOrUpdateAppointmentRequestEventArgs>
    {
        template <typename D> using type = consume_Windows_ApplicationModel_Appointments_DataProvider_IAppointmentCalendarCreateOrUpdateAppointmentRequestEventArgs<D>;
    };
    template <typename D>
    struct consume_Windows_ApplicationModel_Appointments_DataProvider_IAppointmentCalendarForwardMeetingRequest
    {
        [[nodiscard]] auto AppointmentCalendarLocalId() const;
        [[nodiscard]] auto AppointmentLocalId() const;
        [[nodiscard]] auto AppointmentOriginalStartTime() const;
        [[nodiscard]] auto Invitees() const;
        [[nodiscard]] auto Subject() const;
        [[nodiscard]] auto ForwardHeader() const;
        [[nodiscard]] auto Comment() const;
        auto ReportCompletedAsync() const;
        auto ReportFailedAsync() const;
    };
    template <> struct consume<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarForwardMeetingRequest>
    {
        template <typename D> using type = consume_Windows_ApplicationModel_Appointments_DataProvider_IAppointmentCalendarForwardMeetingRequest<D>;
    };
    template <typename D>
    struct consume_Windows_ApplicationModel_Appointments_DataProvider_IAppointmentCalendarForwardMeetingRequestEventArgs
    {
        [[nodiscard]] auto Request() const;
        auto GetDeferral() const;
    };
    template <> struct consume<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarForwardMeetingRequestEventArgs>
    {
        template <typename D> using type = consume_Windows_ApplicationModel_Appointments_DataProvider_IAppointmentCalendarForwardMeetingRequestEventArgs<D>;
    };
    template <typename D>
    struct consume_Windows_ApplicationModel_Appointments_DataProvider_IAppointmentCalendarProposeNewTimeForMeetingRequest
    {
        [[nodiscard]] auto AppointmentCalendarLocalId() const;
        [[nodiscard]] auto AppointmentLocalId() const;
        [[nodiscard]] auto AppointmentOriginalStartTime() const;
        [[nodiscard]] auto NewStartTime() const;
        [[nodiscard]] auto NewDuration() const;
        [[nodiscard]] auto Subject() const;
        [[nodiscard]] auto Comment() const;
        auto ReportCompletedAsync() const;
        auto ReportFailedAsync() const;
    };
    template <> struct consume<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarProposeNewTimeForMeetingRequest>
    {
        template <typename D> using type = consume_Windows_ApplicationModel_Appointments_DataProvider_IAppointmentCalendarProposeNewTimeForMeetingRequest<D>;
    };
    template <typename D>
    struct consume_Windows_ApplicationModel_Appointments_DataProvider_IAppointmentCalendarProposeNewTimeForMeetingRequestEventArgs
    {
        [[nodiscard]] auto Request() const;
        auto GetDeferral() const;
    };
    template <> struct consume<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarProposeNewTimeForMeetingRequestEventArgs>
    {
        template <typename D> using type = consume_Windows_ApplicationModel_Appointments_DataProvider_IAppointmentCalendarProposeNewTimeForMeetingRequestEventArgs<D>;
    };
    template <typename D>
    struct consume_Windows_ApplicationModel_Appointments_DataProvider_IAppointmentCalendarSyncManagerSyncRequest
    {
        [[nodiscard]] auto AppointmentCalendarLocalId() const;
        auto ReportCompletedAsync() const;
        auto ReportFailedAsync() const;
    };
    template <> struct consume<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarSyncManagerSyncRequest>
    {
        template <typename D> using type = consume_Windows_ApplicationModel_Appointments_DataProvider_IAppointmentCalendarSyncManagerSyncRequest<D>;
    };
    template <typename D>
    struct consume_Windows_ApplicationModel_Appointments_DataProvider_IAppointmentCalendarSyncManagerSyncRequestEventArgs
    {
        [[nodiscard]] auto Request() const;
        auto GetDeferral() const;
    };
    template <> struct consume<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarSyncManagerSyncRequestEventArgs>
    {
        template <typename D> using type = consume_Windows_ApplicationModel_Appointments_DataProvider_IAppointmentCalendarSyncManagerSyncRequestEventArgs<D>;
    };
    template <typename D>
    struct consume_Windows_ApplicationModel_Appointments_DataProvider_IAppointmentCalendarUpdateMeetingResponseRequest
    {
        [[nodiscard]] auto AppointmentCalendarLocalId() const;
        [[nodiscard]] auto AppointmentLocalId() const;
        [[nodiscard]] auto AppointmentOriginalStartTime() const;
        [[nodiscard]] auto Response() const;
        [[nodiscard]] auto Subject() const;
        [[nodiscard]] auto Comment() const;
        [[nodiscard]] auto SendUpdate() const;
        auto ReportCompletedAsync() const;
        auto ReportFailedAsync() const;
    };
    template <> struct consume<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarUpdateMeetingResponseRequest>
    {
        template <typename D> using type = consume_Windows_ApplicationModel_Appointments_DataProvider_IAppointmentCalendarUpdateMeetingResponseRequest<D>;
    };
    template <typename D>
    struct consume_Windows_ApplicationModel_Appointments_DataProvider_IAppointmentCalendarUpdateMeetingResponseRequestEventArgs
    {
        [[nodiscard]] auto Request() const;
        auto GetDeferral() const;
    };
    template <> struct consume<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentCalendarUpdateMeetingResponseRequestEventArgs>
    {
        template <typename D> using type = consume_Windows_ApplicationModel_Appointments_DataProvider_IAppointmentCalendarUpdateMeetingResponseRequestEventArgs<D>;
    };
    template <typename D>
    struct consume_Windows_ApplicationModel_Appointments_DataProvider_IAppointmentDataProviderConnection
    {
        auto SyncRequested(Windows::Foundation::TypedEventHandler<Windows::ApplicationModel::Appointments::DataProvider::AppointmentDataProviderConnection, Windows::ApplicationModel::Appointments::DataProvider::AppointmentCalendarSyncManagerSyncRequestEventArgs> const& handler) const;
        using SyncRequested_revoker = impl::event_revoker<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentDataProviderConnection, &impl::abi_t<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentDataProviderConnection>::remove_SyncRequested>;
        SyncRequested_revoker SyncRequested(auto_revoke_t, Windows::Foundation::TypedEventHandler<Windows::ApplicationModel::Appointments::DataProvider::AppointmentDataProviderConnection, Windows::ApplicationModel::Appointments::DataProvider::AppointmentCalendarSyncManagerSyncRequestEventArgs> const& handler) const;
        auto SyncRequested(winrt::event_token const& token) const noexcept;
        auto CreateOrUpdateAppointmentRequested(Windows::Foundation::TypedEventHandler<Windows::ApplicationModel::Appointments::DataProvider::AppointmentDataProviderConnection, Windows::ApplicationModel::Appointments::DataProvider::AppointmentCalendarCreateOrUpdateAppointmentRequestEventArgs> const& handler) const;
        using CreateOrUpdateAppointmentRequested_revoker = impl::event_revoker<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentDataProviderConnection, &impl::abi_t<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentDataProviderConnection>::remove_CreateOrUpdateAppointmentRequested>;
        CreateOrUpdateAppointmentRequested_revoker CreateOrUpdateAppointmentRequested(auto_revoke_t, Windows::Foundation::TypedEventHandler<Windows::ApplicationModel::Appointments::DataProvider::AppointmentDataProviderConnection, Windows::ApplicationModel::Appointments::DataProvider::AppointmentCalendarCreateOrUpdateAppointmentRequestEventArgs> const& handler) const;
        auto CreateOrUpdateAppointmentRequested(winrt::event_token const& token) const noexcept;
        auto CancelMeetingRequested(Windows::Foundation::TypedEventHandler<Windows::ApplicationModel::Appointments::DataProvider::AppointmentDataProviderConnection, Windows::ApplicationModel::Appointments::DataProvider::AppointmentCalendarCancelMeetingRequestEventArgs> const& handler) const;
        using CancelMeetingRequested_revoker = impl::event_revoker<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentDataProviderConnection, &impl::abi_t<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentDataProviderConnection>::remove_CancelMeetingRequested>;
        CancelMeetingRequested_revoker CancelMeetingRequested(auto_revoke_t, Windows::Foundation::TypedEventHandler<Windows::ApplicationModel::Appointments::DataProvider::AppointmentDataProviderConnection, Windows::ApplicationModel::Appointments::DataProvider::AppointmentCalendarCancelMeetingRequestEventArgs> const& handler) const;
        auto CancelMeetingRequested(winrt::event_token const& token) const noexcept;
        auto ForwardMeetingRequested(Windows::Foundation::TypedEventHandler<Windows::ApplicationModel::Appointments::DataProvider::AppointmentDataProviderConnection, Windows::ApplicationModel::Appointments::DataProvider::AppointmentCalendarForwardMeetingRequestEventArgs> const& handler) const;
        using ForwardMeetingRequested_revoker = impl::event_revoker<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentDataProviderConnection, &impl::abi_t<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentDataProviderConnection>::remove_ForwardMeetingRequested>;
        ForwardMeetingRequested_revoker ForwardMeetingRequested(auto_revoke_t, Windows::Foundation::TypedEventHandler<Windows::ApplicationModel::Appointments::DataProvider::AppointmentDataProviderConnection, Windows::ApplicationModel::Appointments::DataProvider::AppointmentCalendarForwardMeetingRequestEventArgs> const& handler) const;
        auto ForwardMeetingRequested(winrt::event_token const& token) const noexcept;
        auto ProposeNewTimeForMeetingRequested(Windows::Foundation::TypedEventHandler<Windows::ApplicationModel::Appointments::DataProvider::AppointmentDataProviderConnection, Windows::ApplicationModel::Appointments::DataProvider::AppointmentCalendarProposeNewTimeForMeetingRequestEventArgs> const& handler) const;
        using ProposeNewTimeForMeetingRequested_revoker = impl::event_revoker<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentDataProviderConnection, &impl::abi_t<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentDataProviderConnection>::remove_ProposeNewTimeForMeetingRequested>;
        ProposeNewTimeForMeetingRequested_revoker ProposeNewTimeForMeetingRequested(auto_revoke_t, Windows::Foundation::TypedEventHandler<Windows::ApplicationModel::Appointments::DataProvider::AppointmentDataProviderConnection, Windows::ApplicationModel::Appointments::DataProvider::AppointmentCalendarProposeNewTimeForMeetingRequestEventArgs> const& handler) const;
        auto ProposeNewTimeForMeetingRequested(winrt::event_token const& token) const noexcept;
        auto UpdateMeetingResponseRequested(Windows::Foundation::TypedEventHandler<Windows::ApplicationModel::Appointments::DataProvider::AppointmentDataProviderConnection, Windows::ApplicationModel::Appointments::DataProvider::AppointmentCalendarUpdateMeetingResponseRequestEventArgs> const& handler) const;
        using UpdateMeetingResponseRequested_revoker = impl::event_revoker<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentDataProviderConnection, &impl::abi_t<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentDataProviderConnection>::remove_UpdateMeetingResponseRequested>;
        UpdateMeetingResponseRequested_revoker UpdateMeetingResponseRequested(auto_revoke_t, Windows::Foundation::TypedEventHandler<Windows::ApplicationModel::Appointments::DataProvider::AppointmentDataProviderConnection, Windows::ApplicationModel::Appointments::DataProvider::AppointmentCalendarUpdateMeetingResponseRequestEventArgs> const& handler) const;
        auto UpdateMeetingResponseRequested(winrt::event_token const& token) const noexcept;
        auto Start() const;
    };
    template <> struct consume<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentDataProviderConnection>
    {
        template <typename D> using type = consume_Windows_ApplicationModel_Appointments_DataProvider_IAppointmentDataProviderConnection<D>;
    };
    template <typename D>
    struct consume_Windows_ApplicationModel_Appointments_DataProvider_IAppointmentDataProviderTriggerDetails
    {
        [[nodiscard]] auto Connection() const;
    };
    template <> struct consume<Windows::ApplicationModel::Appointments::DataProvider::IAppointmentDataProviderTriggerDetails>
    {
        template <typename D> using type = consume_Windows_ApplicationModel_Appointments_DataProvider_IAppointmentDataProviderTriggerDetails<D>;
    };
}
#endif
