///
/// LiveActivityKit-Swift-Cxx-Umbrella.hpp
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
/// https://github.com/mrousavy/nitro
/// Copyright © Marc Rousavy @ Margelo
///

#pragma once

// Forward declarations of C++ defined types
// Forward declaration of `HybridLiveActivityKitSpec` to properly resolve imports.
namespace margelo::nitro::liveactivitykit { class HybridLiveActivityKitSpec; }
// Forward declaration of `NativeActivityInfo` to properly resolve imports.
namespace margelo::nitro::liveactivitykit { struct NativeActivityInfo; }
// Forward declaration of `NativeActivityStateEvent` to properly resolve imports.
namespace margelo::nitro::liveactivitykit { struct NativeActivityStateEvent; }
// Forward declaration of `NativeEndConfig` to properly resolve imports.
namespace margelo::nitro::liveactivitykit { struct NativeEndConfig; }
// Forward declaration of `NativeLiveActivityAttributes` to properly resolve imports.
namespace margelo::nitro::liveactivitykit { struct NativeLiveActivityAttributes; }
// Forward declaration of `NativeLiveActivityState` to properly resolve imports.
namespace margelo::nitro::liveactivitykit { struct NativeLiveActivityState; }
// Forward declaration of `NativePushTokenEvent` to properly resolve imports.
namespace margelo::nitro::liveactivitykit { struct NativePushTokenEvent; }
// Forward declaration of `NativeStartConfig` to properly resolve imports.
namespace margelo::nitro::liveactivitykit { struct NativeStartConfig; }
// Forward declaration of `NativeStartResult` to properly resolve imports.
namespace margelo::nitro::liveactivitykit { struct NativeStartResult; }
// Forward declaration of `NativeUpdateConfig` to properly resolve imports.
namespace margelo::nitro::liveactivitykit { struct NativeUpdateConfig; }

// Include C++ defined types
#include "HybridLiveActivityKitSpec.hpp"
#include "NativeActivityInfo.hpp"
#include "NativeActivityStateEvent.hpp"
#include "NativeEndConfig.hpp"
#include "NativeLiveActivityAttributes.hpp"
#include "NativeLiveActivityState.hpp"
#include "NativePushTokenEvent.hpp"
#include "NativeStartConfig.hpp"
#include "NativeStartResult.hpp"
#include "NativeUpdateConfig.hpp"
#include <NitroModules/Promise.hpp>
#include <NitroModules/Result.hpp>
#include <exception>
#include <functional>
#include <memory>
#include <optional>
#include <string>
#include <unordered_map>
#include <vector>

// C++ helpers for Swift
#include "LiveActivityKit-Swift-Cxx-Bridge.hpp"

// Common C++ types used in Swift
#include <NitroModules/ArrayBufferHolder.hpp>
#include <NitroModules/AnyMapUtils.hpp>
#include <NitroModules/RuntimeError.hpp>
#include <NitroModules/DateToChronoDate.hpp>

// Forward declarations of Swift defined types
// Forward declaration of `HybridLiveActivityKitSpec_cxx` to properly resolve imports.
namespace LiveActivityKit { class HybridLiveActivityKitSpec_cxx; }

// Include Swift defined types
#if __has_include("LiveActivityKit-Swift.h")
// This header is generated by Xcode/Swift on every app build.
// If it cannot be found, make sure the Swift module's name (= podspec name) is actually "LiveActivityKit".
#include "LiveActivityKit-Swift.h"
// Same as above, but used when building with frameworks (`use_frameworks`)
#elif __has_include(<LiveActivityKit/LiveActivityKit-Swift.h>)
#include <LiveActivityKit/LiveActivityKit-Swift.h>
#else
#error LiveActivityKit's autogenerated Swift header cannot be found! Make sure the Swift module's name (= podspec name) is actually "LiveActivityKit", and try building the app first.
#endif
