//
// Copyright (c) Microsoft Corporation. All rights reserved.
// 
//
// File generated by WinMDIDL version 8.00.0014
//

import "inspectable.idl";
import "AsyncInfo.idl";
import "EventToken.idl";
import "Windows.Foundation.idl";
import "Windows.ApplicationModel.Appointments.idl";
import "Windows.ApplicationModel.Email.idl";
import "Windows.Storage.Streams.idl";
// Additional imports to ensure that all required headers are included
cpp_quote("#if defined(__cplusplus)")
cpp_quote("}")
cpp_quote("#endif // defined(__cplusplus)")
cpp_quote("#include <Windows.Foundation.h>")
cpp_quote("#if !defined(__windows2Eapplicationmodel2Eappointments_h__)")
cpp_quote("#include <Windows.ApplicationModel.Appointments.h>")
cpp_quote("#endif // !defined(__windows2Eapplicationmodel2Eappointments_h__)")
cpp_quote("#if !defined(__windows2Eapplicationmodel2Eemail_h__)")
cpp_quote("#include <Windows.ApplicationModel.Email.h>")
cpp_quote("#endif // !defined(__windows2Eapplicationmodel2Eemail_h__)")
cpp_quote("#if !defined(__windows2Estorage2Estreams_h__)")
cpp_quote("#include <Windows.Storage.Streams.h>")
cpp_quote("#endif // !defined(__windows2Estorage2Estreams_h__)")
cpp_quote("#if defined(__cplusplus)")
cpp_quote("extern \"C\" {")
cpp_quote("#endif // defined(__cplusplus)")

// Forward Declare
namespace Windows
{
    namespace ApplicationModel
    {
        namespace Appointments
        {
            runtimeclass Appointment;
        }
    }
}
namespace Windows
{
    namespace ApplicationModel
    {
        namespace Email
        {
            runtimeclass EmailMessage;
        }
    }
}
namespace Windows
{
    namespace Foundation
    {
        typedef struct DateTime DateTime;

        typedef struct TimeSpan TimeSpan;
    }
}
namespace Windows
{
    namespace Storage
    {
        namespace Streams
        {
            interface IRandomAccessStreamReference;
        }
    }
}
namespace Windows
{
    namespace Phone
    {
        namespace Notification
        {
            namespace Management
            {
                typedef enum AccessoryNotificationType AccessoryNotificationType;

                typedef enum ReminderState ReminderState;

                typedef enum PhoneNotificationType PhoneNotificationType;

                typedef enum PhoneCallTransport PhoneCallTransport;

                typedef enum PhoneMediaType PhoneMediaType;

                typedef enum PhoneCallDirection PhoneCallDirection;

                typedef enum PhoneCallState PhoneCallState;

                typedef enum PhoneCallAudioEndpoint PhoneCallAudioEndpoint;

                typedef enum PhoneLineRegistrationState PhoneLineRegistrationState;

                typedef enum CalendarChangedEvent CalendarChangedEvent;

                typedef enum PlaybackStatus PlaybackStatus;

                typedef enum PlaybackCapability PlaybackCapability;

                typedef enum PlaybackCommand PlaybackCommand;

                typedef enum VibrateState VibrateState;

                interface ITextResponse;

                interface IAppNotificationInfo;

                interface IEmailAccountInfo;

                interface IEmailFolderInfo;

                interface IBinaryId;

                interface IAccessoryNotificationTriggerDetails;

                interface IAlarmNotificationTriggerDetails;

                interface IAlarmNotificationTriggerDetails2;

                interface IEmailNotificationTriggerDetails;

                interface IEmailNotificationTriggerDetails2;

                interface IEmailReadNotificationTriggerDetails;

                interface IPhoneLineDetails;

                interface IPhoneLineDetails2;

                interface IPhoneCallDetails;

                interface IPhoneNotificationTriggerDetails;

                interface ISpeedDialEntry;

                interface IReminderNotificationTriggerDetails;

                interface IReminderNotificationTriggerDetails2;

                interface ICalendarChangedNotificationTriggerDetails;

                interface IToastNotificationTriggerDetails;

                interface IToastNotificationTriggerDetails2;

                interface ICortanaTileNotificationTriggerDetails;

                interface IMediaMetadata;

                interface IMediaControlsTriggerDetails;

                interface IVolumeInfo;

                interface IAccessoryManager;

                interface IAccessoryManager2;

                interface IAccessoryManager3;

                runtimeclass TextResponse;

                runtimeclass AppNotificationInfo;

                runtimeclass EmailAccountInfo;

                runtimeclass EmailFolderInfo;

                runtimeclass BinaryId;

                runtimeclass AlarmNotificationTriggerDetails;

                runtimeclass EmailReadNotificationTriggerDetails;

                runtimeclass EmailNotificationTriggerDetails;

                runtimeclass PhoneLineDetails;

                runtimeclass PhoneCallDetails;

                runtimeclass PhoneNotificationTriggerDetails;

                runtimeclass SpeedDialEntry;

                runtimeclass ReminderNotificationTriggerDetails;

                runtimeclass CalendarChangedNotificationTriggerDetails;

                runtimeclass ToastNotificationTriggerDetails;

                runtimeclass CortanaTileNotificationTriggerDetails;

                runtimeclass MediaMetadata;

                runtimeclass MediaControlsTriggerDetails;

                runtimeclass VolumeInfo;

                runtimeclass AccessoryManager;
            }
        }
    }
}

// Generic instantiations
namespace Windows
{
    namespace Phone
    {
        namespace Notification
        {
            namespace Management
            {
                declare
                {
                    interface Windows.Foundation.Collections.IIterable<Windows.Foundation.Collections.IKeyValuePair<HSTRING, Windows.Phone.Notification.Management.AppNotificationInfo*>*>;

                    interface Windows.Foundation.Collections.IIterable<Windows.Phone.Notification.Management.EmailAccountInfo*>;

                    interface Windows.Foundation.Collections.IIterable<Windows.Phone.Notification.Management.EmailFolderInfo*>;

                    interface Windows.Foundation.Collections.IIterable<Windows.Phone.Notification.Management.PhoneLineDetails*>;

                    interface Windows.Foundation.Collections.IIterable<Windows.Phone.Notification.Management.SpeedDialEntry*>;

                    interface Windows.Foundation.Collections.IIterable<Windows.Phone.Notification.Management.TextResponse*>;

                    interface Windows.Foundation.Collections.IIterator<Windows.Foundation.Collections.IKeyValuePair<HSTRING, Windows.Phone.Notification.Management.AppNotificationInfo*>*>;

                    interface Windows.Foundation.Collections.IIterator<Windows.Phone.Notification.Management.EmailAccountInfo*>;

                    interface Windows.Foundation.Collections.IIterator<Windows.Phone.Notification.Management.EmailFolderInfo*>;

                    interface Windows.Foundation.Collections.IIterator<Windows.Phone.Notification.Management.PhoneLineDetails*>;

                    interface Windows.Foundation.Collections.IIterator<Windows.Phone.Notification.Management.SpeedDialEntry*>;

                    interface Windows.Foundation.Collections.IIterator<Windows.Phone.Notification.Management.TextResponse*>;

                    interface Windows.Foundation.Collections.IKeyValuePair<HSTRING, Windows.Phone.Notification.Management.AppNotificationInfo*>;

                    interface Windows.Foundation.Collections.IMapView<HSTRING, Windows.Phone.Notification.Management.AppNotificationInfo*>;

                    interface Windows.Foundation.Collections.IVectorView<Windows.Phone.Notification.Management.EmailAccountInfo*>;

                    interface Windows.Foundation.Collections.IVectorView<Windows.Phone.Notification.Management.EmailFolderInfo*>;

                    interface Windows.Foundation.Collections.IVectorView<Windows.Phone.Notification.Management.PhoneLineDetails*>;

                    interface Windows.Foundation.Collections.IVectorView<Windows.Phone.Notification.Management.SpeedDialEntry*>;

                    interface Windows.Foundation.Collections.IVectorView<Windows.Phone.Notification.Management.TextResponse*>;
                }
            }
        }
    }
}

// Type definition
namespace Windows
{
    namespace Phone
    {
        namespace Notification
        {
            namespace Management
            {
                [flags]
                [version(0x06030000)]
                enum AccessoryNotificationType
                {
                    None                   = 0x0,
                    Phone                  = 0x1,
                    Email                  = 0x2,
                    Reminder               = 0x4,
                    Alarm                  = 0x8,
                    Toast                  = 0x10,
                    AppUninstalled         = 0x20,
                    Dnd                    = 0x40,
                    DrivingMode            = 0x80,
                    BatterySaver           = 0x100,
                    Media                  = 0x200,
                    CortanaTile            = 0x400,
                    ToastCleared           = 0x800,
                    CalendarChanged        = 0x1000,
                    VolumeChanged          = 0x2000,
                    EmailReadStatusChanged = 0x4000
                };

                [version(0x06030000)]
                enum ReminderState
                {
                    Active    = 0,
                    Snoozed   = 1,
                    Dismissed = 2
                };

                [version(0x06030000)]
                enum PhoneNotificationType
                {
                    NewCall                       = 0,
                    CallChanged                   = 1,
                    LineChanged                   = 2,
                    PhoneCallAudioEndpointChanged = 3,
                    PhoneMuteChanged              = 4
                };

                [version(0x06030000)]
                enum PhoneCallTransport
                {
                    Cellular = 0,
                    Voip     = 1
                };

                [version(0x06030000)]
                enum PhoneMediaType
                {
                    AudioOnly  = 0,
                    AudioVideo = 1
                };

                [version(0x06030000)]
                enum PhoneCallDirection
                {
                    Incoming = 0,
                    Outgoing = 1
                };

                [version(0x06030000)]
                enum PhoneCallState
                {
                    Unknown = 0,
                    Ringing = 1,
                    Talking = 2,
                    Held    = 3,
                    Ended   = 4
                };

                [version(0x06030000)]
                enum PhoneCallAudioEndpoint
                {
                    Default   = 0,
                    Speaker   = 1,
                    Handsfree = 2
                };

                [version(0x06030000)]
                enum PhoneLineRegistrationState
                {
                    Disconnected = 0,
                    Home         = 1,
                    Roaming      = 2
                };

                [deprecated("Calendar Event notification type is no longer supported by Accessory Manager.", deprecate, 0x0A000000)]
                [version(0x06030000)]
                enum CalendarChangedEvent
                {
                    LostEvents         = 0,
                    AppointmentAdded   = 1,
                    AppointmentChanged = 2,
                    AppointmentDeleted = 3,
                    CalendarAdded      = 4,
                    CalendarChanged    = 5,
                    CalendarDeleted    = 6
                };

                [version(0x06030000)]
                enum PlaybackStatus
                {
                    None         = 0,
                    TrackChanged = 1,
                    Stopped      = 2,
                    Playing      = 3,
                    Paused       = 4
                };

                [flags]
                [version(0x06030000)]
                enum PlaybackCapability
                {
                    None        = 0x0,
                    Play        = 0x1,
                    Pause       = 0x2,
                    Stop        = 0x4,
                    Record      = 0x8,
                    FastForward = 0x10,
                    Rewind      = 0x20,
                    Next        = 0x40,
                    Previous    = 0x80,
                    ChannelUp   = 0x100,
                    ChannelDown = 0x200
                };

                [version(0x06030000)]
                enum PlaybackCommand
                {
                    Play        = 0,
                    Pause       = 1,
                    Stop        = 2,
                    Record      = 3,
                    FastForward = 4,
                    Rewind      = 5,
                    Next        = 6,
                    Previous    = 7,
                    ChannelUp   = 8,
                    ChannelDown = 9
                };

                [version(0x06030000)]
                enum VibrateState
                {
                    RingerOffVibrateOff = 0,
                    RingerOffVibrateOn  = 1,
                    RingerOnVibrateOff  = 2,
                    RingerOnVibrateOn   = 3
                };

                [exclusiveto(Windows.Phone.Notification.Management.TextResponse)]
                [uuid(E9CB74C3-2457-4CDB-8110-72F5E8E883E8)]
                [version(0x06030000)]
                interface ITextResponse : IInspectable
                {
                    [propget] HRESULT Id([out] [retval] UINT32* value);
                    [propget] HRESULT Content([out] [retval] HSTRING* value);
                }

                [exclusiveto(Windows.Phone.Notification.Management.AppNotificationInfo)]
                [uuid(2157BEA5-E286-45D3-9BEA-F790FC216E0E)]
                [version(0x06030000)]
                interface IAppNotificationInfo : IInspectable
                {
                    [propget] HRESULT Id([out] [retval] HSTRING* value);
                    [propget] HRESULT Name([out] [retval] HSTRING* value);
                }

                [exclusiveto(Windows.Phone.Notification.Management.EmailAccountInfo)]
                [uuid(DFBC02AB-BDA0-4568-927E-B2EDE35818A1)]
                [version(0x06030000)]
                interface IEmailAccountInfo : IInspectable
                {
                    [propget] HRESULT DisplayName([out] [retval] HSTRING* value);
                    [propget] HRESULT IsNotificationEnabled([out] [retval] boolean* value);
                }

                [exclusiveto(Windows.Phone.Notification.Management.EmailFolderInfo)]
                [uuid(C207150E-E237-46D6-90E6-4F529EEAC1E2)]
                [version(0x06030000)]
                interface IEmailFolderInfo : IInspectable
                {
                    [propget] HRESULT DisplayName([out] [retval] HSTRING* value);
                    [propget] HRESULT IsNotificationEnabled([out] [retval] boolean* value);
                }

                [exclusiveto(Windows.Phone.Notification.Management.BinaryId)]
                [uuid(4F0DA531-5595-44B4-9181-CE4EFA3FC168)]
                [version(0x06030000)]
                interface IBinaryId : IInspectable
                {
                    [propget] HRESULT Id([out] [retval] BYTE* value);
                    [propget] HRESULT Length([out] [retval] UINT32* value);
                }

                [uuid(6968A7D4-E3CA-49CB-8C87-2C11CDFF9646)]
                [version(0x06030000)]
                interface IAccessoryNotificationTriggerDetails : IInspectable
                {
                    [propget] HRESULT TimeCreated([out] [retval] Windows.Foundation.DateTime* value);
                    [propget] HRESULT AppDisplayName([out] [retval] HSTRING* value);
                    [propget] HRESULT AppId([out] [retval] HSTRING* value);
                    [propget] HRESULT AccessoryNotificationType([out] [retval] Windows.Phone.Notification.Management.AccessoryNotificationType* value);
                    [propget] HRESULT StartedProcessing([out] [retval] boolean* value);
                    [propput] HRESULT StartedProcessing([in] boolean value);
                }

                [exclusiveto(Windows.Phone.Notification.Management.AlarmNotificationTriggerDetails)]
                [uuid(38F5FA30-C738-4DA2-908C-775D83C36ABB)]
                [version(0x06030000)]
                interface IAlarmNotificationTriggerDetails : IInspectable
                    requires
                        Windows.Phone.Notification.Management.IAccessoryNotificationTriggerDetails
                {
                    [propget] HRESULT AlarmId([out] [retval] GUID* value);
                    [propget] HRESULT Title([out] [retval] HSTRING* value);
                    [propget] HRESULT Timestamp([out] [retval] Windows.Foundation.DateTime* value);
                    [propget] HRESULT ReminderState([out] [retval] Windows.Phone.Notification.Management.ReminderState* value);
                }

                [exclusiveto(Windows.Phone.Notification.Management.AlarmNotificationTriggerDetails)]
                [uuid(CF16E06A-7155-40FE-A9C2-7BD2127EF853)]
                [version(0x0A000000)]
                interface IAlarmNotificationTriggerDetails2 : IInspectable
                {
                    [propget] HRESULT InstanceId([out] [retval] HSTRING* value);
                }

                [exclusiveto(Windows.Phone.Notification.Management.EmailNotificationTriggerDetails)]
                [uuid(F3B82612-46CF-4E70-8E0D-7B2E04AB492B)]
                [version(0x06030000)]
                interface IEmailNotificationTriggerDetails : IInspectable
                    requires
                        Windows.Phone.Notification.Management.IAccessoryNotificationTriggerDetails
                {
                    [propget] HRESULT AccountName([out] [retval] HSTRING* value);
                    [propget] HRESULT ParentFolderName([out] [retval] HSTRING* value);
                    [propget] HRESULT SenderName([out] [retval] HSTRING* value);
                    [propget] HRESULT SenderAddress([out] [retval] HSTRING* value);
                    [propget] HRESULT EmailMessage([out] [retval] Windows.ApplicationModel.Email.EmailMessage** value);
                    [propget] HRESULT Timestamp([out] [retval] Windows.Foundation.DateTime* value);
                }

                [exclusiveto(Windows.Phone.Notification.Management.EmailNotificationTriggerDetails)]
                [uuid(168067E3-C56F-4EC7-BED1-F734E08DE5B2)]
                [version(0x06030000)]
                interface IEmailNotificationTriggerDetails2 : IInspectable
                    requires
                        Windows.Phone.Notification.Management.IAccessoryNotificationTriggerDetails
                {
                    [propget] HRESULT MessageEntryId([out] [retval] Windows.Phone.Notification.Management.BinaryId** value);
                }

                [exclusiveto(Windows.Phone.Notification.Management.EmailReadNotificationTriggerDetails)]
                [uuid(F5B7A087-06F3-4E3E-8C42-325E67010413)]
                [version(0x06030000)]
                interface IEmailReadNotificationTriggerDetails : IInspectable
                    requires
                        Windows.Phone.Notification.Management.IAccessoryNotificationTriggerDetails
                {
                    [propget] HRESULT AccountName([out] [retval] HSTRING* value);
                    [propget] HRESULT ParentFolderName([out] [retval] HSTRING* value);
                    [propget] HRESULT MessageEntryId([out] [retval] Windows.Phone.Notification.Management.BinaryId** value);
                    [propget] HRESULT IsRead([out] [retval] boolean* value);
                }

                [exclusiveto(Windows.Phone.Notification.Management.PhoneLineDetails)]
                [uuid(47EB32DC-33ED-49B9-995C-A296BAC82B77)]
                [version(0x06030000)]
                interface IPhoneLineDetails : IInspectable
                {
                    [propget] HRESULT LineId([out] [retval] GUID* value);
                    [propget] HRESULT DisplayName([out] [retval] HSTRING* value);
                    [propget] HRESULT LineNumber([out] [retval] HSTRING* value);
                    [propget] HRESULT DefaultOutgoingLine([out] [retval] boolean* value);
                    [propget] HRESULT VoicemailCount([out] [retval] UINT32* value);
                    [propget] HRESULT RegistrationState([out] [retval] Windows.Phone.Notification.Management.PhoneLineRegistrationState* value);
                }

                [exclusiveto(Windows.Phone.Notification.Management.PhoneLineDetails)]
                [uuid(B30CD77D-0147-498C-8241-BF0CABC60A25)]
                [version(0x06030000)]
                interface IPhoneLineDetails2 : IInspectable
                {
                    [propget] HRESULT MissedCallCount([out] [retval] UINT32* value);
                }

                [exclusiveto(Windows.Phone.Notification.Management.PhoneCallDetails)]
                [uuid(0C1B6F53-F071-483E-BF33-EBD44B724447)]
                [version(0x06030000)]
                interface IPhoneCallDetails : IInspectable
                {
                    [propget] HRESULT PhoneLine([out] [retval] GUID* value);
                    [propget] HRESULT CallId([out] [retval] UINT32* value);
                    [propget] HRESULT CallTransport([out] [retval] Windows.Phone.Notification.Management.PhoneCallTransport* value);
                    [propget] HRESULT CallMediaType([out] [retval] Windows.Phone.Notification.Management.PhoneMediaType* value);
                    [propget] HRESULT CallDirection([out] [retval] Windows.Phone.Notification.Management.PhoneCallDirection* value);
                    [propget] HRESULT State([out] [retval] Windows.Phone.Notification.Management.PhoneCallState* value);
                    [propget] HRESULT ConferenceCallId([out] [retval] UINT32* value);
                    [propget] HRESULT StartTime([out] [retval] Windows.Foundation.DateTime* value);
                    [propget] HRESULT EndTime([out] [retval] Windows.Foundation.DateTime* value);
                    [propget] HRESULT PhoneNumber([out] [retval] HSTRING* value);
                    [propget] HRESULT ContactName([out] [retval] HSTRING* value);
                    [propget] HRESULT PresetTextResponses([out] [retval] Windows.Foundation.Collections.IVectorView<Windows.Phone.Notification.Management.TextResponse*>** value);
                }

                [exclusiveto(Windows.Phone.Notification.Management.PhoneNotificationTriggerDetails)]
                [uuid(CCC2FDF7-09C3-4118-91BC-CA6323A8D383)]
                [version(0x06030000)]
                interface IPhoneNotificationTriggerDetails : IInspectable
                    requires
                        Windows.Phone.Notification.Management.IAccessoryNotificationTriggerDetails
                {
                    [propget] HRESULT PhoneNotificationType([out] [retval] Windows.Phone.Notification.Management.PhoneNotificationType* value);
                    [propget] HRESULT CallDetails([out] [retval] Windows.Phone.Notification.Management.PhoneCallDetails** value);
                    [propget] HRESULT PhoneLineChangedId([out] [retval] GUID* value);
                }

                [exclusiveto(Windows.Phone.Notification.Management.SpeedDialEntry)]
                [uuid(9240B6DB-872C-46DC-B62A-BE4541B166F8)]
                [version(0x06030000)]
                interface ISpeedDialEntry : IInspectable
                {
                    [propget] HRESULT PhoneNumber([out] [retval] HSTRING* value);
                    [propget] HRESULT NumberType([out] [retval] HSTRING* value);
                    [propget] HRESULT ContactName([out] [retval] HSTRING* value);
                }

                [exclusiveto(Windows.Phone.Notification.Management.ReminderNotificationTriggerDetails)]
                [uuid(5BDDAA5D-9F61-4BF0-9FEB-10502BC0B0C2)]
                [version(0x06030000)]
                interface IReminderNotificationTriggerDetails : IInspectable
                    requires
                        Windows.Phone.Notification.Management.IAccessoryNotificationTriggerDetails
                {
                    [propget] HRESULT ReminderId([out] [retval] GUID* value);
                    [propget] HRESULT Title([out] [retval] HSTRING* value);
                    [propget] HRESULT Description([out] [retval] HSTRING* value);
                    [propget] HRESULT Details([out] [retval] HSTRING* value);
                    [propget] HRESULT Timestamp([out] [retval] Windows.Foundation.DateTime* value);
                    [propget] HRESULT Appointment([out] [retval] Windows.ApplicationModel.Appointments.Appointment** value);
                    [propget] HRESULT ReminderState([out] [retval] Windows.Phone.Notification.Management.ReminderState* value);
                }

                [exclusiveto(Windows.Phone.Notification.Management.ReminderNotificationTriggerDetails)]
                [uuid(E715F9C0-504D-4C0F-A6B3-BCB9722C6CDD)]
                [version(0x0A000000)]
                interface IReminderNotificationTriggerDetails2 : IInspectable
                {
                    [propget] HRESULT InstanceId([out] [retval] HSTRING* value);
                }

                [deprecated("Calendar Event notification type is no longer supported by Accessory Manager.", deprecate, 0x0A000000)]
                [exclusiveto(Windows.Phone.Notification.Management.CalendarChangedNotificationTriggerDetails)]
                [uuid(4B8A3BFC-279D-42AB-9C68-3E87977BF216)]
                [version(0x06030000)]
                interface ICalendarChangedNotificationTriggerDetails : IInspectable
                    requires
                        Windows.Phone.Notification.Management.IAccessoryNotificationTriggerDetails
                {
                    [deprecated("Calendar Event notification type is no longer supported by Accessory Manager.", deprecate, 0x0A000000)] [propget] HRESULT EventType([out] [retval] Windows.Phone.Notification.Management.CalendarChangedEvent* value);
                    [deprecated("Calendar Event notification type is no longer supported by Accessory Manager.", deprecate, 0x0A000000)] [propget] HRESULT ItemId([out] [retval] HSTRING* value);
                }

                [exclusiveto(Windows.Phone.Notification.Management.ToastNotificationTriggerDetails)]
                [uuid(C9314895-4E6D-4E9D-AFEC-9E921B875AE8)]
                [version(0x06030000)]
                interface IToastNotificationTriggerDetails : IInspectable
                    requires
                        Windows.Phone.Notification.Management.IAccessoryNotificationTriggerDetails
                {
                    [propget] HRESULT Text1([out] [retval] HSTRING* value);
                    [propget] HRESULT Text2([out] [retval] HSTRING* value);
                    [propget] HRESULT Text3([out] [retval] HSTRING* value);
                    [propget] HRESULT Text4([out] [retval] HSTRING* value);
                    [propget] HRESULT SuppressPopup([out] [retval] boolean* value);
                }

                [exclusiveto(Windows.Phone.Notification.Management.ToastNotificationTriggerDetails)]
                [uuid(3E0479DD-CAC4-4F60-AFA3-B925D9D83C93)]
                [version(0x06030000)]
                interface IToastNotificationTriggerDetails2 : IInspectable
                {
                    [propget] HRESULT InstanceId([out] [retval] HSTRING* value);
                }

                [exclusiveto(Windows.Phone.Notification.Management.CortanaTileNotificationTriggerDetails)]
                [uuid(DC0F01D5-1489-46BB-B73B-7F90067ECF27)]
                [version(0x06030000)]
                interface ICortanaTileNotificationTriggerDetails : IInspectable
                    requires
                        Windows.Phone.Notification.Management.IAccessoryNotificationTriggerDetails
                {
                    [propget] HRESULT TileId([out] [retval] HSTRING* value);
                    [propget] HRESULT Content([out] [retval] HSTRING* value);
                    [propget] HRESULT LargeContent1([out] [retval] HSTRING* value);
                    [propget] HRESULT LargeContent2([out] [retval] HSTRING* value);
                    [propget] HRESULT EmphasizedText([out] [retval] HSTRING* value);
                    [propget] HRESULT NonWrappedSmallContent1([out] [retval] HSTRING* value);
                    [propget] HRESULT NonWrappedSmallContent2([out] [retval] HSTRING* value);
                    [propget] HRESULT NonWrappedSmallContent3([out] [retval] HSTRING* value);
                    [propget] HRESULT NonWrappedSmallContent4([out] [retval] HSTRING* value);
                    [propget] HRESULT Source([out] [retval] HSTRING* value);
                }

                [exclusiveto(Windows.Phone.Notification.Management.MediaMetadata)]
                [uuid(9B50DDF7-BB6C-4330-B3CD-0704A54CDB80)]
                [version(0x06030000)]
                interface IMediaMetadata : IInspectable
                {
                    [propget] HRESULT Title([out] [retval] HSTRING* value);
                    [propget] HRESULT Subtitle([out] [retval] HSTRING* value);
                    [propget] HRESULT Artist([out] [retval] HSTRING* value);
                    [propget] HRESULT Album([out] [retval] HSTRING* value);
                    [propget] HRESULT Track([out] [retval] UINT32* value);
                    [propget] HRESULT Duration([out] [retval] Windows.Foundation.TimeSpan* value);
                    [propget] HRESULT Thumbnail([out] [retval] Windows.Storage.Streams.IRandomAccessStreamReference** value);
                }

                [exclusiveto(Windows.Phone.Notification.Management.MediaControlsTriggerDetails)]
                [uuid(FAB4648B-AE45-4548-91CA-4AB0548E33B5)]
                [version(0x06030000)]
                interface IMediaControlsTriggerDetails : IInspectable
                    requires
                        Windows.Phone.Notification.Management.IAccessoryNotificationTriggerDetails
                {
                    [propget] HRESULT PlaybackStatus([out] [retval] Windows.Phone.Notification.Management.PlaybackStatus* value);
                    [propget] HRESULT MediaMetadata([out] [retval] Windows.Phone.Notification.Management.MediaMetadata** value);
                }

                [exclusiveto(Windows.Phone.Notification.Management.VolumeInfo)]
                [uuid(944DD118-7704-4481-B92E-D3ED3ECE6322)]
                [version(0x06030000)]
                interface IVolumeInfo : IInspectable
                {
                    [propget] HRESULT SystemVolume([out] [retval] UINT32* value);
                    [propget] HRESULT CallVolume([out] [retval] UINT32* value);
                    [propget] HRESULT MediaVolume([out] [retval] UINT32* value);
                    [propget] HRESULT IsMuted([out] [retval] boolean* value);
                    [propget] HRESULT IsVibrateEnabled([out] [retval] Windows.Phone.Notification.Management.VibrateState* value);
                }

                [exclusiveto(Windows.Phone.Notification.Management.AccessoryManager)]
                [uuid(0D04A12C-883D-4AA7-BCA7-FA4BB8BFFEE6)]
                [version(0x06030000)]
                interface IAccessoryManager : IInspectable
                {
                    HRESULT RegisterAccessoryApp([out] [retval] HSTRING* triggerId);
                    HRESULT GetNextTriggerDetails([out] [retval] Windows.Phone.Notification.Management.IAccessoryNotificationTriggerDetails** pDetails);
                    HRESULT ProcessTriggerDetails([in] Windows.Phone.Notification.Management.IAccessoryNotificationTriggerDetails* pDetails);
                    [propget] HRESULT PhoneLineDetails([out] [retval] Windows.Foundation.Collections.IVectorView<Windows.Phone.Notification.Management.PhoneLineDetails*>** ppvalue);
                    HRESULT GetPhoneLineDetails([in] GUID phoneLine, [out] [retval] Windows.Phone.Notification.Management.PhoneLineDetails** ppdetails);
                    [overload("AcceptPhoneCall")] HRESULT AcceptPhoneCall([in] UINT32 phoneCallId);
                    [overload("AcceptPhoneCall")] HRESULT AcceptPhoneCallOnEndpoint([in] UINT32 phoneCallId, [in] Windows.Phone.Notification.Management.PhoneCallAudioEndpoint endPoint);
                    [overload("AcceptPhoneCallWithVideo")] HRESULT AcceptPhoneCallWithVideo([in] UINT32 phoneCallId);
                    [overload("AcceptPhoneCallWithVideo")] HRESULT AcceptPhoneCallWithVideoOnAudioEndpoint([in] UINT32 phoneCallId, [in] Windows.Phone.Notification.Management.PhoneCallAudioEndpoint endPoint);
                    [overload("RejectPhoneCall")] HRESULT RejectPhoneCall([in] UINT32 phoneCallId);
                    [overload("RejectPhoneCall")] HRESULT RejectPhoneCallWithText([in] UINT32 phoneCallId, [in] UINT32 textResponseID);
                    [overload("MakePhoneCall")] HRESULT MakePhoneCall([in] GUID phoneLine, [in] HSTRING phoneNumber);
                    [overload("MakePhoneCall")] HRESULT MakePhoneCallOnAudioEndpoint([in] GUID phoneLine, [in] HSTRING phoneNumber, [in] Windows.Phone.Notification.Management.PhoneCallAudioEndpoint endPoint);
                    [overload("MakePhoneCallWithVideo")] HRESULT MakePhoneCallWithVideo([in] GUID phoneLine, [in] HSTRING phoneNumber);
                    [overload("MakePhoneCallWithVideo")] HRESULT MakePhoneCallWithVideoOnAudioEndpoint([in] GUID phoneLine, [in] HSTRING phoneNumber, [in] Windows.Phone.Notification.Management.PhoneCallAudioEndpoint endPoint);
                    HRESULT SwapPhoneCalls([in] UINT32 phoneCallIdToHold, [in] UINT32 phoneCallIdOnHold);
                    HRESULT HoldPhoneCall([in] UINT32 phoneCallId, [in] boolean holdCall);
                    HRESULT EndPhoneCall([in] UINT32 phoneCallId);
                    [propput] HRESULT PhoneMute([in] boolean value);
                    [propget] HRESULT PhoneMute([out] [retval] boolean* value);
                    [propput] HRESULT PhoneCallAudioEndpoint([in] Windows.Phone.Notification.Management.PhoneCallAudioEndpoint value);
                    [propget] HRESULT PhoneCallAudioEndpoint([out] [retval] Windows.Phone.Notification.Management.PhoneCallAudioEndpoint* value);
                    [overload("SnoozeAlarm")] HRESULT SnoozeAlarm([in] GUID alarmId);
                    [overload("SnoozeAlarm")] HRESULT SnoozeAlarmForSpecifiedTime([in] GUID alarmId, [in] Windows.Foundation.TimeSpan timeSpan);
                    HRESULT DismissAlarm([in] GUID alarmId);
                    [overload("SnoozeReminder")] HRESULT SnoozeReminder([in] GUID reminderId);
                    [overload("SnoozeReminder")] HRESULT SnoozeReminderForSpecifiedTime([in] GUID reminderId, [in] Windows.Foundation.TimeSpan timeSpan);
                    HRESULT DismissReminder([in] GUID reminderId);
                    HRESULT GetMediaMetadata([out] [retval] Windows.Phone.Notification.Management.MediaMetadata** ppMetadata);
                    [propget] HRESULT MediaPlaybackCapabilities([out] [retval] Windows.Phone.Notification.Management.PlaybackCapability* value);
                    [propget] HRESULT MediaPlaybackStatus([out] [retval] Windows.Phone.Notification.Management.PlaybackStatus* value);
                    HRESULT PerformMediaPlaybackCommand([in] Windows.Phone.Notification.Management.PlaybackCommand command);
                    [propget] HRESULT DoNotDisturbEnabled([out] [retval] boolean* value);
                    [propget] HRESULT DrivingModeEnabled([out] [retval] boolean* value);
                    [propget] HRESULT BatterySaverState([out] [retval] boolean* value);
                    HRESULT GetApps([out] [retval] Windows.Foundation.Collections.IMapView<HSTRING, Windows.Phone.Notification.Management.AppNotificationInfo*>** returnValue);
                    HRESULT EnableNotificationsForApplication([in] HSTRING appId);
                    HRESULT DisableNotificationsForApplication([in] HSTRING appId);
                    HRESULT IsNotificationEnabledForApplication([in] HSTRING appId, [out] [retval] boolean* enabled);
                    HRESULT GetEnabledAccessoryNotificationTypes([out] [retval] INT32* enabledAccessoryNotificationTypes);
                    HRESULT EnableAccessoryNotificationTypes([in] INT32 accessoryNotificationTypes);
                    HRESULT DisableAllAccessoryNotificationTypes();
                    HRESULT GetUserConsent([out] [retval] boolean* enabled);
                    HRESULT GetAppIcon([in] HSTRING appId, [out] [retval] Windows.Storage.Streams.IRandomAccessStreamReference** returnValue);
                }

                [exclusiveto(Windows.Phone.Notification.Management.AccessoryManager)]
                [uuid(BACAD44D-D393-46C6-B80C-15FDF44D5386)]
                [version(0x06030000)]
                interface IAccessoryManager2 : IInspectable
                {
                    HRESULT RingDevice();
                    [propget] HRESULT SpeedDialList([out] [retval] Windows.Foundation.Collections.IVectorView<Windows.Phone.Notification.Management.SpeedDialEntry*>** ppvalue);
                    HRESULT ClearToast([in] HSTRING instanceId);
                    [propget] HRESULT IsPhonePinLocked([out] [retval] boolean* pinLocked);
                    HRESULT IncreaseVolume([in] INT32 step);
                    HRESULT DecreaseVolume([in] INT32 step);
                    HRESULT SetMute([in] boolean mute);
                    HRESULT SetRingerVibrate([in] boolean ringer, [in] boolean vibrate);
                    [propget] HRESULT VolumeInfo([out] [retval] Windows.Phone.Notification.Management.VolumeInfo** ppVolume);
                    HRESULT GetAllEmailAccounts([out] [retval] Windows.Foundation.Collections.IVectorView<Windows.Phone.Notification.Management.EmailAccountInfo*>** emailAccounts);
                    HRESULT GetFolders([in] HSTRING emailAccount, [out] [retval] Windows.Foundation.Collections.IVectorView<Windows.Phone.Notification.Management.EmailFolderInfo*>** folders);
                    HRESULT EnableEmailNotificationEmailAccount([in] HSTRING emailAccount);
                    HRESULT DisableEmailNotificationEmailAccount([in] HSTRING emailAccount);
                    HRESULT EnableEmailNotificationFolderFilter([in] HSTRING emailAccount, [in] Windows.Foundation.Collections.IVectorView<HSTRING>* folders);
                    HRESULT UpdateEmailReadStatus([in] Windows.Phone.Notification.Management.BinaryId* messageEntryId, [in] boolean isRead);
                }

                [exclusiveto(Windows.Phone.Notification.Management.AccessoryManager)]
                [uuid(81F75137-EDC7-47E0-B2F7-7E577C833F7D)]
                [version(0x0A000000)]
                interface IAccessoryManager3 : IInspectable
                {
                    HRESULT SnoozeAlarmByInstanceId([in] HSTRING instanceId);
                    HRESULT DismissAlarmByInstanceId([in] HSTRING instanceId);
                    HRESULT SnoozeReminderByInstanceId([in] HSTRING instanceId);
                    HRESULT DismissReminderByInstanceId([in] HSTRING instanceId);
                }

                [version(0x06030000)]
                runtimeclass TextResponse
                {
                    [default] interface Windows.Phone.Notification.Management.ITextResponse;
                }

                [version(0x06030000)]
                runtimeclass AppNotificationInfo
                {
                    [default] interface Windows.Phone.Notification.Management.IAppNotificationInfo;
                }

                [version(0x06030000)]
                runtimeclass EmailAccountInfo
                {
                    [default] interface Windows.Phone.Notification.Management.IEmailAccountInfo;
                }

                [version(0x06030000)]
                runtimeclass EmailFolderInfo
                {
                    [default] interface Windows.Phone.Notification.Management.IEmailFolderInfo;
                }

                [version(0x06030000)]
                runtimeclass BinaryId
                {
                    [default] interface Windows.Phone.Notification.Management.IBinaryId;
                }

                [version(0x06030000)]
                runtimeclass AlarmNotificationTriggerDetails
                {
                    [default] interface Windows.Phone.Notification.Management.IAlarmNotificationTriggerDetails;
                    interface Windows.Phone.Notification.Management.IAccessoryNotificationTriggerDetails;
                    interface Windows.Phone.Notification.Management.IAlarmNotificationTriggerDetails2;
                }

                [version(0x06030000)]
                runtimeclass EmailReadNotificationTriggerDetails
                {
                    [default] interface Windows.Phone.Notification.Management.IEmailReadNotificationTriggerDetails;
                    interface Windows.Phone.Notification.Management.IAccessoryNotificationTriggerDetails;
                }

                [version(0x06030000)]
                runtimeclass EmailNotificationTriggerDetails
                {
                    [default] interface Windows.Phone.Notification.Management.IEmailNotificationTriggerDetails;
                    interface Windows.Phone.Notification.Management.IAccessoryNotificationTriggerDetails;
                    interface Windows.Phone.Notification.Management.IEmailNotificationTriggerDetails2;
                }

                [version(0x06030000)]
                runtimeclass PhoneLineDetails
                {
                    [default] interface Windows.Phone.Notification.Management.IPhoneLineDetails;
                    interface Windows.Phone.Notification.Management.IPhoneLineDetails2;
                }

                [version(0x06030000)]
                runtimeclass PhoneCallDetails
                {
                    [default] interface Windows.Phone.Notification.Management.IPhoneCallDetails;
                }

                [version(0x06030000)]
                runtimeclass PhoneNotificationTriggerDetails
                {
                    [default] interface Windows.Phone.Notification.Management.IPhoneNotificationTriggerDetails;
                    interface Windows.Phone.Notification.Management.IAccessoryNotificationTriggerDetails;
                }

                [version(0x06030000)]
                runtimeclass SpeedDialEntry
                {
                    [default] interface Windows.Phone.Notification.Management.ISpeedDialEntry;
                }

                [version(0x06030000)]
                runtimeclass ReminderNotificationTriggerDetails
                {
                    [default] interface Windows.Phone.Notification.Management.IReminderNotificationTriggerDetails;
                    interface Windows.Phone.Notification.Management.IAccessoryNotificationTriggerDetails;
                    interface Windows.Phone.Notification.Management.IReminderNotificationTriggerDetails2;
                }

                [deprecated("Calendar Event notification type is no longer supported by Accessory Manager.", deprecate, 0x0A000000)]
                [version(0x06030000)]
                runtimeclass CalendarChangedNotificationTriggerDetails
                {
                    [default] interface Windows.Phone.Notification.Management.ICalendarChangedNotificationTriggerDetails;
                    interface Windows.Phone.Notification.Management.IAccessoryNotificationTriggerDetails;
                }

                [version(0x06030000)]
                runtimeclass ToastNotificationTriggerDetails
                {
                    [default] interface Windows.Phone.Notification.Management.IToastNotificationTriggerDetails;
                    interface Windows.Phone.Notification.Management.IAccessoryNotificationTriggerDetails;
                    interface Windows.Phone.Notification.Management.IToastNotificationTriggerDetails2;
                }

                [version(0x06030000)]
                runtimeclass CortanaTileNotificationTriggerDetails
                {
                    [default] interface Windows.Phone.Notification.Management.ICortanaTileNotificationTriggerDetails;
                    interface Windows.Phone.Notification.Management.IAccessoryNotificationTriggerDetails;
                }

                [version(0x06030000)]
                runtimeclass MediaMetadata
                {
                    [default] interface Windows.Phone.Notification.Management.IMediaMetadata;
                }

                [version(0x06030000)]
                runtimeclass MediaControlsTriggerDetails
                {
                    [default] interface Windows.Phone.Notification.Management.IMediaControlsTriggerDetails;
                    interface Windows.Phone.Notification.Management.IAccessoryNotificationTriggerDetails;
                }

                [version(0x06030000)]
                runtimeclass VolumeInfo
                {
                    [default] interface Windows.Phone.Notification.Management.IVolumeInfo;
                }

                [static(Windows.Phone.Notification.Management.IAccessoryManager, 0x06030000)]
                [static(Windows.Phone.Notification.Management.IAccessoryManager3, 0x0A000000)]
                [static(Windows.Phone.Notification.Management.IAccessoryManager2, 0x06030000)]
                [version(0x06030000)]
                runtimeclass AccessoryManager
                {
                }
            }
        }
    }
}
