// C++/WinRT v2.0.250303.1 // Copyright (c) Microsoft Corporation. All rights reserved. // Licensed under the MIT License. #pragma once #ifndef WINRT_Windows_UI_Xaml_Navigation_2_H #define WINRT_Windows_UI_Xaml_Navigation_2_H #include "winrt/impl/Windows.UI.Xaml.1.h" #include "winrt/impl/Windows.UI.Xaml.Interop.1.h" #include "winrt/impl/Windows.UI.Xaml.Media.Animation.1.h" #include "winrt/impl/Windows.UI.Xaml.Navigation.1.h" WINRT_EXPORT namespace winrt::Windows::UI::Xaml::Navigation { struct LoadCompletedEventHandler : winrt::Windows::Foundation::IUnknown { LoadCompletedEventHandler(std::nullptr_t = nullptr) noexcept {} LoadCompletedEventHandler(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IUnknown(ptr, take_ownership_from_abi) {} template LoadCompletedEventHandler(L lambda); template LoadCompletedEventHandler(F* function); template LoadCompletedEventHandler(O* object, M method); template LoadCompletedEventHandler(com_ptr&& object, M method); template LoadCompletedEventHandler(weak_ref&& object, LM&& lambda_or_method); template LoadCompletedEventHandler(std::shared_ptr&& object, M method); template LoadCompletedEventHandler(std::weak_ptr&& object, LM&& lambda_or_method); auto operator()(winrt::Windows::Foundation::IInspectable const& sender, winrt::Windows::UI::Xaml::Navigation::NavigationEventArgs const& e) const; }; struct NavigatedEventHandler : winrt::Windows::Foundation::IUnknown { NavigatedEventHandler(std::nullptr_t = nullptr) noexcept {} NavigatedEventHandler(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IUnknown(ptr, take_ownership_from_abi) {} template NavigatedEventHandler(L lambda); template NavigatedEventHandler(F* function); template NavigatedEventHandler(O* object, M method); template NavigatedEventHandler(com_ptr&& object, M method); template NavigatedEventHandler(weak_ref&& object, LM&& lambda_or_method); template NavigatedEventHandler(std::shared_ptr&& object, M method); template NavigatedEventHandler(std::weak_ptr&& object, LM&& lambda_or_method); auto operator()(winrt::Windows::Foundation::IInspectable const& sender, winrt::Windows::UI::Xaml::Navigation::NavigationEventArgs const& e) const; }; struct NavigatingCancelEventHandler : winrt::Windows::Foundation::IUnknown { NavigatingCancelEventHandler(std::nullptr_t = nullptr) noexcept {} NavigatingCancelEventHandler(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IUnknown(ptr, take_ownership_from_abi) {} template NavigatingCancelEventHandler(L lambda); template NavigatingCancelEventHandler(F* function); template NavigatingCancelEventHandler(O* object, M method); template NavigatingCancelEventHandler(com_ptr&& object, M method); template NavigatingCancelEventHandler(weak_ref&& object, LM&& lambda_or_method); template NavigatingCancelEventHandler(std::shared_ptr&& object, M method); template NavigatingCancelEventHandler(std::weak_ptr&& object, LM&& lambda_or_method); auto operator()(winrt::Windows::Foundation::IInspectable const& sender, winrt::Windows::UI::Xaml::Navigation::NavigatingCancelEventArgs const& e) const; }; struct NavigationFailedEventHandler : winrt::Windows::Foundation::IUnknown { NavigationFailedEventHandler(std::nullptr_t = nullptr) noexcept {} NavigationFailedEventHandler(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IUnknown(ptr, take_ownership_from_abi) {} template NavigationFailedEventHandler(L lambda); template NavigationFailedEventHandler(F* function); template NavigationFailedEventHandler(O* object, M method); template NavigationFailedEventHandler(com_ptr&& object, M method); template NavigationFailedEventHandler(weak_ref&& object, LM&& lambda_or_method); template NavigationFailedEventHandler(std::shared_ptr&& object, M method); template NavigationFailedEventHandler(std::weak_ptr&& object, LM&& lambda_or_method); auto operator()(winrt::Windows::Foundation::IInspectable const& sender, winrt::Windows::UI::Xaml::Navigation::NavigationFailedEventArgs const& e) const; }; struct NavigationStoppedEventHandler : winrt::Windows::Foundation::IUnknown { NavigationStoppedEventHandler(std::nullptr_t = nullptr) noexcept {} NavigationStoppedEventHandler(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IUnknown(ptr, take_ownership_from_abi) {} template NavigationStoppedEventHandler(L lambda); template NavigationStoppedEventHandler(F* function); template NavigationStoppedEventHandler(O* object, M method); template NavigationStoppedEventHandler(com_ptr&& object, M method); template NavigationStoppedEventHandler(weak_ref&& object, LM&& lambda_or_method); template NavigationStoppedEventHandler(std::shared_ptr&& object, M method); template NavigationStoppedEventHandler(std::weak_ptr&& object, LM&& lambda_or_method); auto operator()(winrt::Windows::Foundation::IInspectable const& sender, winrt::Windows::UI::Xaml::Navigation::NavigationEventArgs const& e) const; }; struct WINRT_IMPL_EMPTY_BASES FrameNavigationOptions : winrt::Windows::UI::Xaml::Navigation::IFrameNavigationOptions { FrameNavigationOptions(std::nullptr_t) noexcept {} FrameNavigationOptions(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::UI::Xaml::Navigation::IFrameNavigationOptions(ptr, take_ownership_from_abi) {} FrameNavigationOptions(); }; struct WINRT_IMPL_EMPTY_BASES NavigatingCancelEventArgs : winrt::Windows::UI::Xaml::Navigation::INavigatingCancelEventArgs, impl::require { NavigatingCancelEventArgs(std::nullptr_t) noexcept {} NavigatingCancelEventArgs(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::UI::Xaml::Navigation::INavigatingCancelEventArgs(ptr, take_ownership_from_abi) {} }; struct WINRT_IMPL_EMPTY_BASES NavigationEventArgs : winrt::Windows::UI::Xaml::Navigation::INavigationEventArgs, impl::require { NavigationEventArgs(std::nullptr_t) noexcept {} NavigationEventArgs(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::UI::Xaml::Navigation::INavigationEventArgs(ptr, take_ownership_from_abi) {} }; struct WINRT_IMPL_EMPTY_BASES NavigationFailedEventArgs : winrt::Windows::UI::Xaml::Navigation::INavigationFailedEventArgs { NavigationFailedEventArgs(std::nullptr_t) noexcept {} NavigationFailedEventArgs(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::UI::Xaml::Navigation::INavigationFailedEventArgs(ptr, take_ownership_from_abi) {} }; struct WINRT_IMPL_EMPTY_BASES PageStackEntry : winrt::Windows::UI::Xaml::Navigation::IPageStackEntry, impl::base, impl::require { PageStackEntry(std::nullptr_t) noexcept {} PageStackEntry(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::UI::Xaml::Navigation::IPageStackEntry(ptr, take_ownership_from_abi) {} PageStackEntry(winrt::Windows::UI::Xaml::Interop::TypeName const& sourcePageType, winrt::Windows::Foundation::IInspectable const& parameter, winrt::Windows::UI::Xaml::Media::Animation::NavigationTransitionInfo const& navigationTransitionInfo); [[nodiscard]] static auto SourcePageTypeProperty(); }; } #endif