zworld-em/Plugins/sentry-unreal/Source/ThirdParty/Mac/include/Sentry/Sentry-Swift.h
2025-05-11 22:07:21 +08:00

2606 lines
112 KiB
Objective-C
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#if 0
#elif defined(__arm64e__) && __arm64e__
// Generated by Apple Swift version 5.9.2 (swiftlang-5.9.2.2.56 clang-1500.1.0.2.5)
#ifndef SENTRY_SWIFT_H
#define SENTRY_SWIFT_H
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wgcc-compat"
#if !defined(__has_include)
# define __has_include(x) 0
#endif
#if !defined(__has_attribute)
# define __has_attribute(x) 0
#endif
#if !defined(__has_feature)
# define __has_feature(x) 0
#endif
#if !defined(__has_warning)
# define __has_warning(x) 0
#endif
#if __has_include(<swift/objc-prologue.h>)
# include <swift/objc-prologue.h>
#endif
#pragma clang diagnostic ignored "-Wauto-import"
#if defined(__OBJC__)
#include <Foundation/Foundation.h>
#endif
#if defined(__cplusplus)
#include <cstdint>
#include <cstddef>
#include <cstdbool>
#include <cstring>
#include <stdlib.h>
#include <new>
#include <type_traits>
#else
#include <stdint.h>
#include <stddef.h>
#include <stdbool.h>
#include <string.h>
#endif
#if defined(__cplusplus)
#if defined(__arm64e__) && __has_include(<ptrauth.h>)
# include <ptrauth.h>
#else
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wreserved-macro-identifier"
# ifndef __ptrauth_swift_value_witness_function_pointer
# define __ptrauth_swift_value_witness_function_pointer(x)
# endif
# ifndef __ptrauth_swift_class_method_pointer
# define __ptrauth_swift_class_method_pointer(x)
# endif
#pragma clang diagnostic pop
#endif
#endif
#if !defined(SWIFT_TYPEDEFS)
# define SWIFT_TYPEDEFS 1
# if __has_include(<uchar.h>)
# include <uchar.h>
# elif !defined(__cplusplus)
typedef uint_least16_t char16_t;
typedef uint_least32_t char32_t;
# endif
typedef float swift_float2 __attribute__((__ext_vector_type__(2)));
typedef float swift_float3 __attribute__((__ext_vector_type__(3)));
typedef float swift_float4 __attribute__((__ext_vector_type__(4)));
typedef double swift_double2 __attribute__((__ext_vector_type__(2)));
typedef double swift_double3 __attribute__((__ext_vector_type__(3)));
typedef double swift_double4 __attribute__((__ext_vector_type__(4)));
typedef int swift_int2 __attribute__((__ext_vector_type__(2)));
typedef int swift_int3 __attribute__((__ext_vector_type__(3)));
typedef int swift_int4 __attribute__((__ext_vector_type__(4)));
typedef unsigned int swift_uint2 __attribute__((__ext_vector_type__(2)));
typedef unsigned int swift_uint3 __attribute__((__ext_vector_type__(3)));
typedef unsigned int swift_uint4 __attribute__((__ext_vector_type__(4)));
#endif
#if !defined(SWIFT_PASTE)
# define SWIFT_PASTE_HELPER(x, y) x##y
# define SWIFT_PASTE(x, y) SWIFT_PASTE_HELPER(x, y)
#endif
#if !defined(SWIFT_METATYPE)
# define SWIFT_METATYPE(X) Class
#endif
#if !defined(SWIFT_CLASS_PROPERTY)
# if __has_feature(objc_class_property)
# define SWIFT_CLASS_PROPERTY(...) __VA_ARGS__
# else
# define SWIFT_CLASS_PROPERTY(...)
# endif
#endif
#if !defined(SWIFT_RUNTIME_NAME)
# if __has_attribute(objc_runtime_name)
# define SWIFT_RUNTIME_NAME(X) __attribute__((objc_runtime_name(X)))
# else
# define SWIFT_RUNTIME_NAME(X)
# endif
#endif
#if !defined(SWIFT_COMPILE_NAME)
# if __has_attribute(swift_name)
# define SWIFT_COMPILE_NAME(X) __attribute__((swift_name(X)))
# else
# define SWIFT_COMPILE_NAME(X)
# endif
#endif
#if !defined(SWIFT_METHOD_FAMILY)
# if __has_attribute(objc_method_family)
# define SWIFT_METHOD_FAMILY(X) __attribute__((objc_method_family(X)))
# else
# define SWIFT_METHOD_FAMILY(X)
# endif
#endif
#if !defined(SWIFT_NOESCAPE)
# if __has_attribute(noescape)
# define SWIFT_NOESCAPE __attribute__((noescape))
# else
# define SWIFT_NOESCAPE
# endif
#endif
#if !defined(SWIFT_RELEASES_ARGUMENT)
# if __has_attribute(ns_consumed)
# define SWIFT_RELEASES_ARGUMENT __attribute__((ns_consumed))
# else
# define SWIFT_RELEASES_ARGUMENT
# endif
#endif
#if !defined(SWIFT_WARN_UNUSED_RESULT)
# if __has_attribute(warn_unused_result)
# define SWIFT_WARN_UNUSED_RESULT __attribute__((warn_unused_result))
# else
# define SWIFT_WARN_UNUSED_RESULT
# endif
#endif
#if !defined(SWIFT_NORETURN)
# if __has_attribute(noreturn)
# define SWIFT_NORETURN __attribute__((noreturn))
# else
# define SWIFT_NORETURN
# endif
#endif
#if !defined(SWIFT_CLASS_EXTRA)
# define SWIFT_CLASS_EXTRA
#endif
#if !defined(SWIFT_PROTOCOL_EXTRA)
# define SWIFT_PROTOCOL_EXTRA
#endif
#if !defined(SWIFT_ENUM_EXTRA)
# define SWIFT_ENUM_EXTRA
#endif
#if !defined(SWIFT_CLASS)
# if __has_attribute(objc_subclassing_restricted)
# define SWIFT_CLASS(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) __attribute__((objc_subclassing_restricted)) SWIFT_CLASS_EXTRA
# define SWIFT_CLASS_NAMED(SWIFT_NAME) __attribute__((objc_subclassing_restricted)) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA
# else
# define SWIFT_CLASS(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA
# define SWIFT_CLASS_NAMED(SWIFT_NAME) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA
# endif
#endif
#if !defined(SWIFT_RESILIENT_CLASS)
# if __has_attribute(objc_class_stub)
# define SWIFT_RESILIENT_CLASS(SWIFT_NAME) SWIFT_CLASS(SWIFT_NAME) __attribute__((objc_class_stub))
# define SWIFT_RESILIENT_CLASS_NAMED(SWIFT_NAME) __attribute__((objc_class_stub)) SWIFT_CLASS_NAMED(SWIFT_NAME)
# else
# define SWIFT_RESILIENT_CLASS(SWIFT_NAME) SWIFT_CLASS(SWIFT_NAME)
# define SWIFT_RESILIENT_CLASS_NAMED(SWIFT_NAME) SWIFT_CLASS_NAMED(SWIFT_NAME)
# endif
#endif
#if !defined(SWIFT_PROTOCOL)
# define SWIFT_PROTOCOL(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) SWIFT_PROTOCOL_EXTRA
# define SWIFT_PROTOCOL_NAMED(SWIFT_NAME) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_PROTOCOL_EXTRA
#endif
#if !defined(SWIFT_EXTENSION)
# define SWIFT_EXTENSION(M) SWIFT_PASTE(M##_Swift_, __LINE__)
#endif
#if !defined(OBJC_DESIGNATED_INITIALIZER)
# if __has_attribute(objc_designated_initializer)
# define OBJC_DESIGNATED_INITIALIZER __attribute__((objc_designated_initializer))
# else
# define OBJC_DESIGNATED_INITIALIZER
# endif
#endif
#if !defined(SWIFT_ENUM_ATTR)
# if __has_attribute(enum_extensibility)
# define SWIFT_ENUM_ATTR(_extensibility) __attribute__((enum_extensibility(_extensibility)))
# else
# define SWIFT_ENUM_ATTR(_extensibility)
# endif
#endif
#if !defined(SWIFT_ENUM)
# define SWIFT_ENUM(_type, _name, _extensibility) enum _name : _type _name; enum SWIFT_ENUM_ATTR(_extensibility) SWIFT_ENUM_EXTRA _name : _type
# if __has_feature(generalized_swift_name)
# define SWIFT_ENUM_NAMED(_type, _name, SWIFT_NAME, _extensibility) enum _name : _type _name SWIFT_COMPILE_NAME(SWIFT_NAME); enum SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_ENUM_ATTR(_extensibility) SWIFT_ENUM_EXTRA _name : _type
# else
# define SWIFT_ENUM_NAMED(_type, _name, SWIFT_NAME, _extensibility) SWIFT_ENUM(_type, _name, _extensibility)
# endif
#endif
#if !defined(SWIFT_UNAVAILABLE)
# define SWIFT_UNAVAILABLE __attribute__((unavailable))
#endif
#if !defined(SWIFT_UNAVAILABLE_MSG)
# define SWIFT_UNAVAILABLE_MSG(msg) __attribute__((unavailable(msg)))
#endif
#if !defined(SWIFT_AVAILABILITY)
# define SWIFT_AVAILABILITY(plat, ...) __attribute__((availability(plat, __VA_ARGS__)))
#endif
#if !defined(SWIFT_WEAK_IMPORT)
# define SWIFT_WEAK_IMPORT __attribute__((weak_import))
#endif
#if !defined(SWIFT_DEPRECATED)
# define SWIFT_DEPRECATED __attribute__((deprecated))
#endif
#if !defined(SWIFT_DEPRECATED_MSG)
# define SWIFT_DEPRECATED_MSG(...) __attribute__((deprecated(__VA_ARGS__)))
#endif
#if !defined(SWIFT_DEPRECATED_OBJC)
# if __has_feature(attribute_diagnose_if_objc)
# define SWIFT_DEPRECATED_OBJC(Msg) __attribute__((diagnose_if(1, Msg, "warning")))
# else
# define SWIFT_DEPRECATED_OBJC(Msg) SWIFT_DEPRECATED_MSG(Msg)
# endif
#endif
#if defined(__OBJC__)
#if !defined(IBSegueAction)
# define IBSegueAction
#endif
#endif
#if !defined(SWIFT_EXTERN)
# if defined(__cplusplus)
# define SWIFT_EXTERN extern "C"
# else
# define SWIFT_EXTERN extern
# endif
#endif
#if !defined(SWIFT_CALL)
# define SWIFT_CALL __attribute__((swiftcall))
#endif
#if !defined(SWIFT_INDIRECT_RESULT)
# define SWIFT_INDIRECT_RESULT __attribute__((swift_indirect_result))
#endif
#if !defined(SWIFT_CONTEXT)
# define SWIFT_CONTEXT __attribute__((swift_context))
#endif
#if !defined(SWIFT_ERROR_RESULT)
# define SWIFT_ERROR_RESULT __attribute__((swift_error_result))
#endif
#if defined(__cplusplus)
# define SWIFT_NOEXCEPT noexcept
#else
# define SWIFT_NOEXCEPT
#endif
#if !defined(SWIFT_C_INLINE_THUNK)
# if __has_attribute(always_inline)
# if __has_attribute(nodebug)
# define SWIFT_C_INLINE_THUNK inline __attribute__((always_inline)) __attribute__((nodebug))
# else
# define SWIFT_C_INLINE_THUNK inline __attribute__((always_inline))
# endif
# else
# define SWIFT_C_INLINE_THUNK inline
# endif
#endif
#if defined(_WIN32)
#if !defined(SWIFT_IMPORT_STDLIB_SYMBOL)
# define SWIFT_IMPORT_STDLIB_SYMBOL __declspec(dllimport)
#endif
#else
#if !defined(SWIFT_IMPORT_STDLIB_SYMBOL)
# define SWIFT_IMPORT_STDLIB_SYMBOL
#endif
#endif
#if defined(__OBJC__)
#if __has_feature(objc_modules)
#if __has_warning("-Watimport-in-framework-header")
#pragma clang diagnostic ignored "-Watimport-in-framework-header"
#endif
@import CoreFoundation;
@import Foundation;
@import MetricKit;
@import ObjectiveC;
#endif
#import <Sentry/Sentry.h>
#endif
#pragma clang diagnostic ignored "-Wproperty-attribute-mismatch"
#pragma clang diagnostic ignored "-Wduplicate-method-arg"
#if __has_warning("-Wpragma-clang-attribute")
# pragma clang diagnostic ignored "-Wpragma-clang-attribute"
#endif
#pragma clang diagnostic ignored "-Wunknown-pragmas"
#pragma clang diagnostic ignored "-Wnullability"
#pragma clang diagnostic ignored "-Wdollar-in-identifier-extension"
#if __has_attribute(external_source_symbol)
# pragma push_macro("any")
# undef any
# pragma clang attribute push(__attribute__((external_source_symbol(language="Swift", defined_in="Sentry",generated_declaration))), apply_to=any(function,enum,objc_interface,objc_category,objc_protocol))
# pragma pop_macro("any")
#endif
#if defined(__OBJC__)
@class NSString;
SWIFT_CLASS("_TtC6Sentry19HTTPHeaderSanitizer")
@interface HTTPHeaderSanitizer : NSObject
+ (NSDictionary<NSString *, NSString *> * _Nonnull)sanitizeHeaders:(NSDictionary<NSString *, NSString *> * _Nonnull)headers SWIFT_WARN_UNUSED_RESULT;
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
@end
SWIFT_PROTOCOL_NAMED("SentryRRWebEventProtocol")
@protocol SentryRRWebEvent <SentrySerializable>
@end
enum SentryRRWebEventType : NSInteger;
@class NSDate;
SWIFT_CLASS("_TtC6Sentry16SentryRRWebEvent")
@interface SentryRRWebEvent : NSObject <SentryRRWebEvent>
@property (nonatomic, readonly) enum SentryRRWebEventType type;
@property (nonatomic, readonly, copy) NSDate * _Nonnull timestamp;
@property (nonatomic, readonly, copy) NSDictionary<NSString *, id> * _Nullable data;
- (nonnull instancetype)initWithType:(enum SentryRRWebEventType)type timestamp:(NSDate * _Nonnull)timestamp data:(NSDictionary<NSString *, id> * _Nullable)data OBJC_DESIGNATED_INITIALIZER;
- (NSDictionary<NSString *, id> * _Nonnull)serialize SWIFT_WARN_UNUSED_RESULT;
- (nonnull instancetype)init SWIFT_UNAVAILABLE;
+ (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
@end
SWIFT_CLASS("_TtC6Sentry14RRWebMoveEvent")
@interface RRWebMoveEvent : SentryRRWebEvent
- (nonnull instancetype)initWithType:(enum SentryRRWebEventType)type timestamp:(NSDate * _Nonnull)timestamp data:(NSDictionary<NSString *, id> * _Nullable)data SWIFT_UNAVAILABLE;
@end
SWIFT_CLASS("_TtC6Sentry15RRWebTouchEvent")
@interface RRWebTouchEvent : SentryRRWebEvent
- (nonnull instancetype)initWithType:(enum SentryRRWebEventType)type timestamp:(NSDate * _Nonnull)timestamp data:(NSDictionary<NSString *, id> * _Nullable)data SWIFT_UNAVAILABLE;
@end
@protocol SentryANRTrackerDelegate;
SWIFT_PROTOCOL("_TtP6Sentry16SentryANRTracker_")
@protocol SentryANRTracker
- (void)addListener:(id <SentryANRTrackerDelegate> _Nonnull)listener;
- (void)removeListener:(id <SentryANRTrackerDelegate> _Nonnull)listener;
/// Only used for tests.
- (void)clear;
@end
enum SentryANRType : NSInteger;
/// The methods are called from a background thread.
SWIFT_PROTOCOL("_TtP6Sentry24SentryANRTrackerDelegate_")
@protocol SentryANRTrackerDelegate
- (void)anrDetectedWithType:(enum SentryANRType)type;
- (void)anrStopped;
@end
typedef SWIFT_ENUM(NSInteger, SentryANRType, closed) {
SentryANRTypeFullyBlocking = 0,
SentryANRTypeNonFullyBlocking = 1,
SentryANRTypeUnknown = 2,
};
SWIFT_CLASS("_TtC6Sentry23SentryAppHangTypeMapper")
@interface SentryAppHangTypeMapper : NSObject
+ (NSString * _Nonnull)getExceptionTypeWithAnrType:(enum SentryANRType)anrType SWIFT_WARN_UNUSED_RESULT;
+ (BOOL)isExceptionTypeAppHangWithExceptionType:(NSString * _Nonnull)exceptionType SWIFT_WARN_UNUSED_RESULT;
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
@end
SWIFT_CLASS("_TtC6Sentry26SentryBaggageSerialization")
@interface SentryBaggageSerialization : NSObject
+ (NSString * _Nonnull)encodeDictionary:(NSDictionary<NSString *, NSString *> * _Nonnull)dictionary SWIFT_WARN_UNUSED_RESULT;
+ (NSDictionary<NSString *, NSString *> * _Nonnull)decode:(NSString * _Nonnull)baggage SWIFT_WARN_UNUSED_RESULT;
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
@end
/// We need a protocol to expose SentryCurrentDateProvider to tests.
/// Mocking the previous private class from <code>SentryTestUtils</code> stopped working in Xcode 16.
SWIFT_PROTOCOL("_TtP6Sentry25SentryCurrentDateProvider_")
@protocol SentryCurrentDateProvider
- (NSDate * _Nonnull)date SWIFT_WARN_UNUSED_RESULT;
- (NSInteger)timezoneOffset SWIFT_WARN_UNUSED_RESULT;
- (uint64_t)systemTime SWIFT_WARN_UNUSED_RESULT;
- (NSTimeInterval)systemUptime SWIFT_WARN_UNUSED_RESULT;
@end
SWIFT_CLASS("_TtC6Sentry32SentryDefaultCurrentDateProvider")
@interface SentryDefaultCurrentDateProvider : NSObject <SentryCurrentDateProvider>
- (NSDate * _Nonnull)date SWIFT_WARN_UNUSED_RESULT;
- (NSInteger)timezoneOffset SWIFT_WARN_UNUSED_RESULT;
- (uint64_t)systemTime SWIFT_WARN_UNUSED_RESULT;
- (NSTimeInterval)systemUptime SWIFT_WARN_UNUSED_RESULT;
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
@end
@class SentryOptions;
SWIFT_CLASS("_TtC6Sentry28SentryEnabledFeaturesBuilder")
@interface SentryEnabledFeaturesBuilder : NSObject
+ (NSArray<NSString *> * _Nonnull)getEnabledFeaturesWithOptions:(SentryOptions * _Nonnull)options SWIFT_WARN_UNUSED_RESULT;
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
@end
SWIFT_CLASS("_TtC6Sentry25SentryExperimentalOptions")
@interface SentryExperimentalOptions : NSObject
- (void)validateOptions:(NSDictionary<NSString *, id> * _Nullable)options;
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
@end
@class NSData;
SWIFT_CLASS("_TtC6Sentry18SentryFileContents")
@interface SentryFileContents : NSObject
@property (nonatomic, readonly, copy) NSString * _Nonnull path;
@property (nonatomic, readonly, copy) NSData * _Nonnull contents;
- (nonnull instancetype)initWithPath:(NSString * _Nonnull)path contents:(NSData * _Nonnull)contents OBJC_DESIGNATED_INITIALIZER;
- (nonnull instancetype)init SWIFT_UNAVAILABLE;
+ (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
@end
SWIFT_CLASS("_TtC6Sentry23SentryFramesDelayResult")
@interface SentryFramesDelayResult : NSObject
/// The frames delay for the passed time period. If frame delay cant be calculated this is -1.
@property (nonatomic, readonly) CFTimeInterval delayDuration;
@property (nonatomic, readonly) NSUInteger framesContributingToDelayCount;
- (nonnull instancetype)initWithDelayDuration:(CFTimeInterval)delayDuration framesContributingToDelayCount:(NSUInteger)framesContributingToDelayCount OBJC_DESIGNATED_INITIALIZER;
- (nonnull instancetype)init SWIFT_UNAVAILABLE;
+ (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
@end
@class NSUUID;
SWIFT_CLASS("_TtC6Sentry8SentryId")
@interface SentryId : NSObject
/// A @c SentryId with an empty UUID “00000000000000000000000000000000”.
SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly, strong) SentryId * _Nonnull empty;)
+ (SentryId * _Nonnull)empty SWIFT_WARN_UNUSED_RESULT;
/// Returns a 32 lowercase character hexadecimal string description of the @c SentryId, such as
/// “12c2d058d58442709aa2eca08bf20986”.
@property (nonatomic, readonly, copy) NSString * _Nonnull sentryIdString;
/// Creates a @c SentryId with a random UUID.
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
/// Creates a SentryId with the given UUID.
- (nonnull instancetype)initWithUuid:(NSUUID * _Nonnull)uuid OBJC_DESIGNATED_INITIALIZER;
/// Creates a @c SentryId from a 32 character hexadecimal string without dashes such as
/// “12c2d058d58442709aa2eca08bf20986” or a 36 character hexadecimal string such as such as
/// “12c2d058-d584-4270-9aa2-eca08bf20986”.
/// @return SentryId.empty for invalid strings.
- (nonnull instancetype)initWithUUIDString:(NSString * _Nonnull)uuidString OBJC_DESIGNATED_INITIALIZER;
- (BOOL)isEqual:(id _Nullable)object SWIFT_WARN_UNUSED_RESULT;
@property (nonatomic, readonly, copy) NSString * _Nonnull description;
@property (nonatomic, readonly) NSUInteger hash;
@end
SWIFT_PROTOCOL("_TtP6Sentry25SentryIntegrationProtocol_")
@protocol SentryIntegrationProtocol <NSObject>
/// Installs the integration and returns YES if successful.
- (BOOL)installWithOptions:(SentryOptions * _Nonnull)options SWIFT_WARN_UNUSED_RESULT;
/// Uninstalls the integration.
- (void)uninstall;
@end
typedef SWIFT_ENUM(NSUInteger, SentryLevel, open) {
kSentryLevelNone SWIFT_COMPILE_NAME("none") = 0,
kSentryLevelDebug SWIFT_COMPILE_NAME("debug") = 1,
kSentryLevelInfo SWIFT_COMPILE_NAME("info") = 2,
kSentryLevelWarning SWIFT_COMPILE_NAME("warning") = 3,
kSentryLevelError SWIFT_COMPILE_NAME("error") = 4,
kSentryLevelFatal SWIFT_COMPILE_NAME("fatal") = 5,
};
SWIFT_CLASS("_TtC6Sentry17SentryLevelHelper")
@interface SentryLevelHelper : NSObject
+ (NSString * _Nonnull)nameForLevel:(enum SentryLevel)level SWIFT_WARN_UNUSED_RESULT;
+ (enum SentryLevel)levelForName:(NSString * _Nonnull)name SWIFT_WARN_UNUSED_RESULT;
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
@end
SWIFT_CLASS("_TtC6Sentry9SentryLog")
@interface SentryLog : NSObject
+ (void)configure:(BOOL)isDebug diagnosticLevel:(enum SentryLevel)diagnosticLevel;
+ (void)logWithMessage:(NSString * _Nonnull)message andLevel:(enum SentryLevel)level;
/// @return @c YES if the current logging configuration will log statements at the current level,
/// @c NO if not.
+ (BOOL)willLogAtLevel:(enum SentryLevel)level SWIFT_WARN_UNUSED_RESULT;
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
@end
@class SentryMXFrame;
SWIFT_CLASS("_TtC6Sentry17SentryMXCallStack")
@interface SentryMXCallStack : NSObject
@property (nonatomic, copy) NSArray<SentryMXFrame *> * _Nonnull callStackRootFrames;
@property (nonatomic, readonly, copy) NSArray<SentryMXFrame *> * _Nonnull flattenedRootFrames;
- (nonnull instancetype)initWithThreadAttributed:(BOOL)threadAttributed rootFrames:(NSArray<SentryMXFrame *> * _Nonnull)rootFrames OBJC_DESIGNATED_INITIALIZER;
- (nonnull instancetype)init SWIFT_UNAVAILABLE;
+ (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
@end
/// JSON specification of MXCallStackTree can be found here https://developer.apple.com/documentation/metrickit/mxcallstacktree/3552293-jsonrepresentation
SWIFT_CLASS("_TtC6Sentry21SentryMXCallStackTree")
@interface SentryMXCallStackTree : NSObject
@property (nonatomic, readonly, copy) NSArray<SentryMXCallStack *> * _Nonnull callStacks;
@property (nonatomic, readonly) BOOL callStackPerThread;
- (nonnull instancetype)initWithCallStacks:(NSArray<SentryMXCallStack *> * _Nonnull)callStacks callStackPerThread:(BOOL)callStackPerThread OBJC_DESIGNATED_INITIALIZER;
+ (SentryMXCallStackTree * _Nullable)fromData:(NSData * _Nonnull)data error:(NSError * _Nullable * _Nullable)error SWIFT_WARN_UNUSED_RESULT;
- (nonnull instancetype)init SWIFT_UNAVAILABLE;
+ (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
@end
SWIFT_CLASS("_TtC6Sentry13SentryMXFrame")
@interface SentryMXFrame : NSObject
@property (nonatomic, copy) NSUUID * _Nonnull binaryUUID;
@property (nonatomic) NSInteger offsetIntoBinaryTextSegment;
@property (nonatomic, copy) NSString * _Nullable binaryName;
@property (nonatomic) uint64_t address;
@property (nonatomic, copy) NSArray<SentryMXFrame *> * _Nullable subFrames;
@property (nonatomic, readonly, copy) NSArray<SentryMXFrame *> * _Nonnull frames;
@property (nonatomic, readonly, copy) NSArray<SentryMXFrame *> * _Nonnull framesIncludingSelf;
- (nonnull instancetype)init SWIFT_UNAVAILABLE;
+ (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
@end
@protocol SentryMXManagerDelegate;
@class MXDiagnosticPayload;
SWIFT_CLASS("_TtC6Sentry15SentryMXManager") SWIFT_AVAILABILITY(watchos,unavailable) SWIFT_AVAILABILITY(tvos,unavailable) SWIFT_AVAILABILITY(maccatalyst,introduced=15.0) SWIFT_AVAILABILITY(macos,introduced=12.0) SWIFT_AVAILABILITY(ios,introduced=15.0)
@interface SentryMXManager : NSObject <MXMetricManagerSubscriber>
@property (nonatomic, readonly) BOOL disableCrashDiagnostics;
- (nonnull instancetype)initWithDisableCrashDiagnostics:(BOOL)disableCrashDiagnostics OBJC_DESIGNATED_INITIALIZER;
@property (nonatomic, weak) id <SentryMXManagerDelegate> _Nullable delegate;
- (void)receiveReports;
- (void)pauseReports;
- (void)didReceiveDiagnosticPayloads:(NSArray<MXDiagnosticPayload *> * _Nonnull)payloads;
- (nonnull instancetype)init SWIFT_UNAVAILABLE;
+ (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
@end
@class MXCrashDiagnostic;
@class MXDiskWriteExceptionDiagnostic;
@class MXCPUExceptionDiagnostic;
@class MXHangDiagnostic;
SWIFT_PROTOCOL("_TtP6Sentry23SentryMXManagerDelegate_") SWIFT_AVAILABILITY(watchos,unavailable) SWIFT_AVAILABILITY(tvos,unavailable) SWIFT_AVAILABILITY(maccatalyst,introduced=15.0) SWIFT_AVAILABILITY(macos,introduced=12.0) SWIFT_AVAILABILITY(ios,introduced=15.0)
@protocol SentryMXManagerDelegate
- (void)didReceiveCrashDiagnostic:(MXCrashDiagnostic * _Nonnull)diagnostic callStackTree:(SentryMXCallStackTree * _Nonnull)callStackTree timeStampBegin:(NSDate * _Nonnull)timeStampBegin timeStampEnd:(NSDate * _Nonnull)timeStampEnd;
- (void)didReceiveDiskWriteExceptionDiagnostic:(MXDiskWriteExceptionDiagnostic * _Nonnull)diagnostic callStackTree:(SentryMXCallStackTree * _Nonnull)callStackTree timeStampBegin:(NSDate * _Nonnull)timeStampBegin timeStampEnd:(NSDate * _Nonnull)timeStampEnd;
- (void)didReceiveCpuExceptionDiagnostic:(MXCPUExceptionDiagnostic * _Nonnull)diagnostic callStackTree:(SentryMXCallStackTree * _Nonnull)callStackTree timeStampBegin:(NSDate * _Nonnull)timeStampBegin timeStampEnd:(NSDate * _Nonnull)timeStampEnd;
- (void)didReceiveHangDiagnostic:(MXHangDiagnostic * _Nonnull)diagnostic callStackTree:(SentryMXCallStackTree * _Nonnull)callStackTree timeStampBegin:(NSDate * _Nonnull)timeStampBegin timeStampEnd:(NSDate * _Nonnull)timeStampEnd;
@end
SWIFT_CLASS("_TtC6Sentry22SentryRRWebCustomEvent")
@interface SentryRRWebCustomEvent : SentryRRWebEvent
@property (nonatomic, readonly, copy) NSString * _Nonnull tag;
- (nonnull instancetype)initWithTimestamp:(NSDate * _Nonnull)timestamp tag:(NSString * _Nonnull)tag payload:(NSDictionary<NSString *, id> * _Nonnull)payload OBJC_DESIGNATED_INITIALIZER;
- (nonnull instancetype)initWithType:(enum SentryRRWebEventType)type timestamp:(NSDate * _Nonnull)timestamp data:(NSDictionary<NSString *, id> * _Nullable)data SWIFT_UNAVAILABLE;
@end
SWIFT_CLASS("_TtC6Sentry26SentryRRWebBreadcrumbEvent")
@interface SentryRRWebBreadcrumbEvent : SentryRRWebCustomEvent
- (nonnull instancetype)initWithTimestamp:(NSDate * _Nonnull)timestamp category:(NSString * _Nonnull)category message:(NSString * _Nullable)message level:(enum SentryLevel)level data:(NSDictionary<NSString *, id> * _Nullable)data OBJC_DESIGNATED_INITIALIZER;
- (nonnull instancetype)initWithTimestamp:(NSDate * _Nonnull)timestamp tag:(NSString * _Nonnull)tag payload:(NSDictionary<NSString *, id> * _Nonnull)payload SWIFT_UNAVAILABLE;
@end
typedef SWIFT_ENUM(NSInteger, SentryRRWebEventType, closed) {
SentryRRWebEventTypeNone = 0,
SentryRRWebEventTypeTouch = 3,
SentryRRWebEventTypeMeta = 4,
SentryRRWebEventTypeCustom = 5,
};
SWIFT_CLASS("_TtC6Sentry20SentryRRWebMetaEvent")
@interface SentryRRWebMetaEvent : SentryRRWebEvent
- (nonnull instancetype)initWithTimestamp:(NSDate * _Nonnull)timestamp height:(NSInteger)height width:(NSInteger)width OBJC_DESIGNATED_INITIALIZER;
- (nonnull instancetype)initWithType:(enum SentryRRWebEventType)type timestamp:(NSDate * _Nonnull)timestamp data:(NSDictionary<NSString *, id> * _Nullable)data SWIFT_UNAVAILABLE;
@end
SWIFT_CLASS("_TtC6Sentry20SentryRRWebSpanEvent")
@interface SentryRRWebSpanEvent : SentryRRWebCustomEvent
- (nonnull instancetype)initWithTimestamp:(NSDate * _Nonnull)timestamp endTimestamp:(NSDate * _Nonnull)endTimestamp operation:(NSString * _Nonnull)operation description:(NSString * _Nonnull)description data:(NSDictionary<NSString *, id> * _Nonnull)data OBJC_DESIGNATED_INITIALIZER;
- (nonnull instancetype)initWithTimestamp:(NSDate * _Nonnull)timestamp tag:(NSString * _Nonnull)tag payload:(NSDictionary<NSString *, id> * _Nonnull)payload SWIFT_UNAVAILABLE;
@end
SWIFT_CLASS("_TtC6Sentry21SentryRRWebVideoEvent")
@interface SentryRRWebVideoEvent : SentryRRWebCustomEvent
- (nonnull instancetype)initWithTimestamp:(NSDate * _Nonnull)timestamp segmentId:(NSInteger)segmentId size:(NSInteger)size duration:(NSTimeInterval)duration encoding:(NSString * _Nonnull)encoding container:(NSString * _Nonnull)container height:(NSInteger)height width:(NSInteger)width frameCount:(NSInteger)frameCount frameRateType:(NSString * _Nonnull)frameRateType frameRate:(NSInteger)frameRate left:(NSInteger)left top:(NSInteger)top OBJC_DESIGNATED_INITIALIZER;
- (nonnull instancetype)initWithTimestamp:(NSDate * _Nonnull)timestamp tag:(NSString * _Nonnull)tag payload:(NSDictionary<NSString *, id> * _Nonnull)payload SWIFT_UNAVAILABLE;
@end
SWIFT_PROTOCOL("_TtP6Sentry19SentryRedactOptions_")
@protocol SentryRedactOptions
@property (nonatomic, readonly) BOOL maskAllText;
@property (nonatomic, readonly) BOOL maskAllImages;
@property (nonatomic, readonly, copy) NSArray<Class> * _Nonnull maskedViewClasses;
@property (nonatomic, readonly, copy) NSArray<Class> * _Nonnull unmaskedViewClasses;
@end
@class SentryBreadcrumb;
SWIFT_PROTOCOL("_TtP6Sentry31SentryReplayBreadcrumbConverter_")
@protocol SentryReplayBreadcrumbConverter <NSObject>
- (id <SentryRRWebEvent> _Nullable)convertFrom:(SentryBreadcrumb * _Nonnull)breadcrumb SWIFT_WARN_UNUSED_RESULT;
@end
enum SentryReplayType : NSInteger;
SWIFT_CLASS("_TtC6Sentry17SentryReplayEvent")
@interface SentryReplayEvent : SentryEvent
@property (nonatomic, readonly, copy) NSDate * _Nonnull replayStartTimestamp;
@property (nonatomic, readonly) enum SentryReplayType replayType;
/// Number of the segment in the replay.
/// This is an incremental number
@property (nonatomic, readonly) NSInteger segmentId;
/// This will be used to store the name of the screens
/// that appear during the duration of the replay segment.
@property (nonatomic, copy) NSArray<NSString *> * _Nullable urls;
- (nonnull instancetype)initWithEventId:(SentryId * _Nonnull)eventId replayStartTimestamp:(NSDate * _Nonnull)replayStartTimestamp replayType:(enum SentryReplayType)replayType segmentId:(NSInteger)segmentId OBJC_DESIGNATED_INITIALIZER;
- (nonnull instancetype)init;
- (NSDictionary<NSString *, id> * _Nonnull)serialize SWIFT_WARN_UNUSED_RESULT;
@end
enum SentryReplayQuality : NSInteger;
SWIFT_CLASS("_TtC6Sentry19SentryReplayOptions")
@interface SentryReplayOptions : NSObject <SentryRedactOptions>
/// Indicates the percentage in which the replay for the session will be created.
/// note:
/// The value needs to be >= 0.0 and <= 1.0. When setting a value out of range the SDK sets it
/// to the default.
/// note:
/// The default is 0.
/// <ul>
/// <li>
/// Specifying @c 0 means never, @c 1.0 means always.
/// </li>
/// </ul>
@property (nonatomic) float sessionSampleRate;
/// Indicates the percentage in which a 30 seconds replay will be send with error events.
/// note:
/// The value needs to be >= 0.0 and <= 1.0. When setting a value out of range the SDK sets it
/// to the default.
/// note:
/// The default is 0.
/// <ul>
/// <li>
/// Specifying 0 means never, 1.0 means always.
/// </li>
/// </ul>
@property (nonatomic) float onErrorSampleRate;
/// Indicates whether session replay should redact all text in the app
/// by drawing a black rectangle over it.
/// note:
/// The default is true
@property (nonatomic) BOOL maskAllText;
/// Indicates whether session replay should redact all non-bundled image
/// in the app by drawing a black rectangle over it.
/// note:
/// The default is true
@property (nonatomic) BOOL maskAllImages;
/// Indicates the quality of the replay.
/// The higher the quality, the higher the CPU and bandwidth usage.
@property (nonatomic) enum SentryReplayQuality quality;
/// A list of custom UIView subclasses that need
/// to be masked during session replay.
/// By default Sentry already mask text and image elements from UIKit
/// Every child of a view that is redacted will also be redacted.
@property (nonatomic, copy) NSArray<Class> * _Nonnull maskedViewClasses;
/// A list of custom UIView subclasses to be ignored
/// during masking step of the session replay.
/// The views of given classes will not be redacted but their children may be.
/// This property has precedence over <code>redactViewTypes</code>.
@property (nonatomic, copy) NSArray<Class> * _Nonnull unmaskedViewClasses;
/// Defines the quality of the session replay.
/// Higher bit rates better quality, but also bigger files to transfer.
@property (nonatomic, readonly) NSInteger replayBitRate;
/// The scale related to the window size at which the replay will be created
@property (nonatomic, readonly) float sizeScale;
/// Number of frames per second of the replay.
/// The more the havier the process is.
/// The minimum is 1, if set to zero this will change to 1.
@property (nonatomic) NSUInteger frameRate;
/// The maximum duration of replays for error events.
@property (nonatomic, readonly) NSTimeInterval errorReplayDuration;
/// The maximum duration of the segment of a session replay.
@property (nonatomic, readonly) NSTimeInterval sessionSegmentDuration;
/// The maximum duration of a replay session.
@property (nonatomic, readonly) NSTimeInterval maximumDuration;
/// Inittialize session replay options disabled
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
/// Initialize session replay options
/// <ul>
/// <li>
/// parameters:
/// </li>
/// <li>
/// sessionSampleRate Indicates the percentage in which the replay for the session will be created.
/// </li>
/// <li>
/// errorSampleRate Indicates the percentage in which a 30 seconds replay will be send with
/// error events.
/// </li>
/// </ul>
- (nonnull instancetype)initWithSessionSampleRate:(float)sessionSampleRate onErrorSampleRate:(float)onErrorSampleRate maskAllText:(BOOL)maskAllText maskAllImages:(BOOL)maskAllImages OBJC_DESIGNATED_INITIALIZER;
- (nonnull instancetype)initWithDictionary:(NSDictionary<NSString *, id> * _Nonnull)dictionary;
@end
/// Enum to define the quality of the session replay.
typedef SWIFT_ENUM(NSInteger, SentryReplayQuality, open) {
/// Video Scale: 80%
/// Bit Rate: 20.000
SentryReplayQualityLow = 0,
/// Video Scale: 100%
/// Bit Rate: 40.000
SentryReplayQualityMedium = 1,
/// Video Scale: 100%
/// Bit Rate: 60.000
SentryReplayQualityHigh = 2,
};
@class SentryVideoInfo;
SWIFT_CLASS("_TtC6Sentry21SentryReplayRecording")
@interface SentryReplayRecording : NSObject
SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly, copy) NSString * _Nonnull SentryReplayEncoding;)
+ (NSString * _Nonnull)SentryReplayEncoding SWIFT_WARN_UNUSED_RESULT;
SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly, copy) NSString * _Nonnull SentryReplayContainer;)
+ (NSString * _Nonnull)SentryReplayContainer SWIFT_WARN_UNUSED_RESULT;
SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly, copy) NSString * _Nonnull SentryReplayFrameRateType;)
+ (NSString * _Nonnull)SentryReplayFrameRateType SWIFT_WARN_UNUSED_RESULT;
@property (nonatomic, readonly) NSInteger segmentId;
@property (nonatomic, readonly, copy) NSArray<id <SentryRRWebEvent>> * _Nonnull events;
@property (nonatomic, readonly) NSInteger height;
@property (nonatomic, readonly) NSInteger width;
- (nonnull instancetype)initWithSegmentId:(NSInteger)segmentId video:(SentryVideoInfo * _Nonnull)video extraEvents:(NSArray<id <SentryRRWebEvent>> * _Nonnull)extraEvents;
- (nonnull instancetype)initWithSegmentId:(NSInteger)segmentId size:(NSInteger)size start:(NSDate * _Nonnull)start duration:(NSTimeInterval)duration frameCount:(NSInteger)frameCount frameRate:(NSInteger)frameRate height:(NSInteger)height width:(NSInteger)width extraEvents:(NSArray<id <SentryRRWebEvent>> * _Nullable)extraEvents OBJC_DESIGNATED_INITIALIZER;
- (NSDictionary<NSString *, id> * _Nonnull)headerForReplayRecording SWIFT_WARN_UNUSED_RESULT;
- (NSArray<NSDictionary<NSString *, id> *> * _Nonnull)serialize SWIFT_WARN_UNUSED_RESULT;
- (nonnull instancetype)init SWIFT_UNAVAILABLE;
+ (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
@end
typedef SWIFT_ENUM(NSInteger, SentryReplayType, closed) {
SentryReplayTypeSession = 0,
SentryReplayTypeBuffer = 1,
};
SWIFT_CLASS("_TtC6Sentry34SentrySRDefaultBreadcrumbConverter")
@interface SentrySRDefaultBreadcrumbConverter : NSObject <SentryReplayBreadcrumbConverter>
/// This function will convert the SDK breadcrumbs to session replay breadcrumbs in a format that the front-end understands.
/// Any deviation in the information will cause the breadcrumb or the information itself to be discarded
/// in order to avoid unknown behavior in the front-end.
- (id <SentryRRWebEvent> _Nullable)convertFrom:(SentryBreadcrumb * _Nonnull)breadcrumb SWIFT_WARN_UNUSED_RESULT;
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
@end
@class SentrySession;
SWIFT_PROTOCOL("_TtP6Sentry21SentrySessionListener_")
@protocol SentrySessionListener <NSObject>
- (void)sentrySessionEnded:(SentrySession * _Nonnull)session;
- (void)sentrySessionStarted:(SentrySession * _Nonnull)session;
@end
SWIFT_CLASS("_TtC6Sentry29SentrySwizzleClassNameExclude")
@interface SentrySwizzleClassNameExclude : NSObject
+ (BOOL)shouldExcludeClassWithClassName:(NSString * _Nonnull)className swizzleClassNameExcludes:(NSSet<NSString *> * _Nonnull)swizzleClassNameExcludes SWIFT_WARN_UNUSED_RESULT;
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
@end
typedef SWIFT_ENUM(NSInteger, SentryTransactionNameSource, open) {
kSentryTransactionNameSourceCustom SWIFT_COMPILE_NAME("custom") = 0,
kSentryTransactionNameSourceUrl SWIFT_COMPILE_NAME("url") = 1,
kSentryTransactionNameSourceRoute SWIFT_COMPILE_NAME("route") = 2,
kSentryTransactionNameSourceView SWIFT_COMPILE_NAME("view") = 3,
kSentryTransactionNameSourceComponent SWIFT_COMPILE_NAME("component") = 4,
kSentryTransactionNameSourceTask SWIFT_COMPILE_NAME("sourceTask") = 5,
};
@class NSURL;
SWIFT_CLASS("_TtC6Sentry15SentryVideoInfo")
@interface SentryVideoInfo : NSObject
@property (nonatomic, readonly, copy) NSURL * _Nonnull path;
@property (nonatomic, readonly) NSInteger height;
@property (nonatomic, readonly) NSInteger width;
@property (nonatomic, readonly) NSTimeInterval duration;
@property (nonatomic, readonly) NSInteger frameCount;
@property (nonatomic, readonly) NSInteger frameRate;
@property (nonatomic, readonly, copy) NSDate * _Nonnull start;
@property (nonatomic, readonly, copy) NSDate * _Nonnull end;
@property (nonatomic, readonly) NSInteger fileSize;
@property (nonatomic, readonly, copy) NSArray<NSString *> * _Nonnull screens;
- (nonnull instancetype)initWithPath:(NSURL * _Nonnull)path height:(NSInteger)height width:(NSInteger)width duration:(NSTimeInterval)duration frameCount:(NSInteger)frameCount frameRate:(NSInteger)frameRate start:(NSDate * _Nonnull)start end:(NSDate * _Nonnull)end fileSize:(NSInteger)fileSize screens:(NSArray<NSString *> * _Nonnull)screens OBJC_DESIGNATED_INITIALIZER;
- (nonnull instancetype)init SWIFT_UNAVAILABLE;
+ (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
@end
SWIFT_CLASS("_TtC6Sentry15SwiftDescriptor")
@interface SwiftDescriptor : NSObject
+ (NSString * _Nonnull)getObjectClassName:(id _Nonnull)object SWIFT_WARN_UNUSED_RESULT;
+ (NSString * _Nullable)getSwiftErrorDescription:(NSError * _Nonnull)error SWIFT_WARN_UNUSED_RESULT;
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
@end
@class NSURLSessionTask;
SWIFT_CLASS("_TtC6Sentry20URLSessionTaskHelper")
@interface URLSessionTaskHelper : NSObject
+ (NSString * _Nullable)getGraphQLOperationNameFrom:(NSURLSessionTask * _Nullable)task SWIFT_WARN_UNUSED_RESULT;
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
@end
@class NSURLQueryItem;
SWIFT_CLASS("_TtC6Sentry12UrlSanitized")
@interface UrlSanitized : NSObject
SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly, copy) NSString * _Nonnull SENSITIVE_DATA_SUBSTITUTE;)
+ (NSString * _Nonnull)SENSITIVE_DATA_SUBSTITUTE SWIFT_WARN_UNUSED_RESULT;
@property (nonatomic, readonly, copy) NSString * _Nullable query;
@property (nonatomic, readonly, copy) NSArray<NSURLQueryItem *> * _Nullable queryItems;
@property (nonatomic, readonly, copy) NSString * _Nullable fragment;
- (nonnull instancetype)initWithURL:(NSURL * _Nonnull)url OBJC_DESIGNATED_INITIALIZER;
@property (nonatomic, readonly, copy) NSString * _Nullable sanitizedUrl;
- (nonnull instancetype)init SWIFT_UNAVAILABLE;
+ (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
@end
#endif
#if __has_attribute(external_source_symbol)
# pragma clang attribute pop
#endif
#if defined(__cplusplus)
#endif
#pragma clang diagnostic pop
#endif
#elif defined(__arm64__) && __arm64__
// Generated by Apple Swift version 5.9.2 (swiftlang-5.9.2.2.56 clang-1500.1.0.2.5)
#ifndef SENTRY_SWIFT_H
#define SENTRY_SWIFT_H
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wgcc-compat"
#if !defined(__has_include)
# define __has_include(x) 0
#endif
#if !defined(__has_attribute)
# define __has_attribute(x) 0
#endif
#if !defined(__has_feature)
# define __has_feature(x) 0
#endif
#if !defined(__has_warning)
# define __has_warning(x) 0
#endif
#if __has_include(<swift/objc-prologue.h>)
# include <swift/objc-prologue.h>
#endif
#pragma clang diagnostic ignored "-Wauto-import"
#if defined(__OBJC__)
#include <Foundation/Foundation.h>
#endif
#if defined(__cplusplus)
#include <cstdint>
#include <cstddef>
#include <cstdbool>
#include <cstring>
#include <stdlib.h>
#include <new>
#include <type_traits>
#else
#include <stdint.h>
#include <stddef.h>
#include <stdbool.h>
#include <string.h>
#endif
#if defined(__cplusplus)
#if defined(__arm64e__) && __has_include(<ptrauth.h>)
# include <ptrauth.h>
#else
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wreserved-macro-identifier"
# ifndef __ptrauth_swift_value_witness_function_pointer
# define __ptrauth_swift_value_witness_function_pointer(x)
# endif
# ifndef __ptrauth_swift_class_method_pointer
# define __ptrauth_swift_class_method_pointer(x)
# endif
#pragma clang diagnostic pop
#endif
#endif
#if !defined(SWIFT_TYPEDEFS)
# define SWIFT_TYPEDEFS 1
# if __has_include(<uchar.h>)
# include <uchar.h>
# elif !defined(__cplusplus)
typedef uint_least16_t char16_t;
typedef uint_least32_t char32_t;
# endif
typedef float swift_float2 __attribute__((__ext_vector_type__(2)));
typedef float swift_float3 __attribute__((__ext_vector_type__(3)));
typedef float swift_float4 __attribute__((__ext_vector_type__(4)));
typedef double swift_double2 __attribute__((__ext_vector_type__(2)));
typedef double swift_double3 __attribute__((__ext_vector_type__(3)));
typedef double swift_double4 __attribute__((__ext_vector_type__(4)));
typedef int swift_int2 __attribute__((__ext_vector_type__(2)));
typedef int swift_int3 __attribute__((__ext_vector_type__(3)));
typedef int swift_int4 __attribute__((__ext_vector_type__(4)));
typedef unsigned int swift_uint2 __attribute__((__ext_vector_type__(2)));
typedef unsigned int swift_uint3 __attribute__((__ext_vector_type__(3)));
typedef unsigned int swift_uint4 __attribute__((__ext_vector_type__(4)));
#endif
#if !defined(SWIFT_PASTE)
# define SWIFT_PASTE_HELPER(x, y) x##y
# define SWIFT_PASTE(x, y) SWIFT_PASTE_HELPER(x, y)
#endif
#if !defined(SWIFT_METATYPE)
# define SWIFT_METATYPE(X) Class
#endif
#if !defined(SWIFT_CLASS_PROPERTY)
# if __has_feature(objc_class_property)
# define SWIFT_CLASS_PROPERTY(...) __VA_ARGS__
# else
# define SWIFT_CLASS_PROPERTY(...)
# endif
#endif
#if !defined(SWIFT_RUNTIME_NAME)
# if __has_attribute(objc_runtime_name)
# define SWIFT_RUNTIME_NAME(X) __attribute__((objc_runtime_name(X)))
# else
# define SWIFT_RUNTIME_NAME(X)
# endif
#endif
#if !defined(SWIFT_COMPILE_NAME)
# if __has_attribute(swift_name)
# define SWIFT_COMPILE_NAME(X) __attribute__((swift_name(X)))
# else
# define SWIFT_COMPILE_NAME(X)
# endif
#endif
#if !defined(SWIFT_METHOD_FAMILY)
# if __has_attribute(objc_method_family)
# define SWIFT_METHOD_FAMILY(X) __attribute__((objc_method_family(X)))
# else
# define SWIFT_METHOD_FAMILY(X)
# endif
#endif
#if !defined(SWIFT_NOESCAPE)
# if __has_attribute(noescape)
# define SWIFT_NOESCAPE __attribute__((noescape))
# else
# define SWIFT_NOESCAPE
# endif
#endif
#if !defined(SWIFT_RELEASES_ARGUMENT)
# if __has_attribute(ns_consumed)
# define SWIFT_RELEASES_ARGUMENT __attribute__((ns_consumed))
# else
# define SWIFT_RELEASES_ARGUMENT
# endif
#endif
#if !defined(SWIFT_WARN_UNUSED_RESULT)
# if __has_attribute(warn_unused_result)
# define SWIFT_WARN_UNUSED_RESULT __attribute__((warn_unused_result))
# else
# define SWIFT_WARN_UNUSED_RESULT
# endif
#endif
#if !defined(SWIFT_NORETURN)
# if __has_attribute(noreturn)
# define SWIFT_NORETURN __attribute__((noreturn))
# else
# define SWIFT_NORETURN
# endif
#endif
#if !defined(SWIFT_CLASS_EXTRA)
# define SWIFT_CLASS_EXTRA
#endif
#if !defined(SWIFT_PROTOCOL_EXTRA)
# define SWIFT_PROTOCOL_EXTRA
#endif
#if !defined(SWIFT_ENUM_EXTRA)
# define SWIFT_ENUM_EXTRA
#endif
#if !defined(SWIFT_CLASS)
# if __has_attribute(objc_subclassing_restricted)
# define SWIFT_CLASS(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) __attribute__((objc_subclassing_restricted)) SWIFT_CLASS_EXTRA
# define SWIFT_CLASS_NAMED(SWIFT_NAME) __attribute__((objc_subclassing_restricted)) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA
# else
# define SWIFT_CLASS(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA
# define SWIFT_CLASS_NAMED(SWIFT_NAME) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA
# endif
#endif
#if !defined(SWIFT_RESILIENT_CLASS)
# if __has_attribute(objc_class_stub)
# define SWIFT_RESILIENT_CLASS(SWIFT_NAME) SWIFT_CLASS(SWIFT_NAME) __attribute__((objc_class_stub))
# define SWIFT_RESILIENT_CLASS_NAMED(SWIFT_NAME) __attribute__((objc_class_stub)) SWIFT_CLASS_NAMED(SWIFT_NAME)
# else
# define SWIFT_RESILIENT_CLASS(SWIFT_NAME) SWIFT_CLASS(SWIFT_NAME)
# define SWIFT_RESILIENT_CLASS_NAMED(SWIFT_NAME) SWIFT_CLASS_NAMED(SWIFT_NAME)
# endif
#endif
#if !defined(SWIFT_PROTOCOL)
# define SWIFT_PROTOCOL(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) SWIFT_PROTOCOL_EXTRA
# define SWIFT_PROTOCOL_NAMED(SWIFT_NAME) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_PROTOCOL_EXTRA
#endif
#if !defined(SWIFT_EXTENSION)
# define SWIFT_EXTENSION(M) SWIFT_PASTE(M##_Swift_, __LINE__)
#endif
#if !defined(OBJC_DESIGNATED_INITIALIZER)
# if __has_attribute(objc_designated_initializer)
# define OBJC_DESIGNATED_INITIALIZER __attribute__((objc_designated_initializer))
# else
# define OBJC_DESIGNATED_INITIALIZER
# endif
#endif
#if !defined(SWIFT_ENUM_ATTR)
# if __has_attribute(enum_extensibility)
# define SWIFT_ENUM_ATTR(_extensibility) __attribute__((enum_extensibility(_extensibility)))
# else
# define SWIFT_ENUM_ATTR(_extensibility)
# endif
#endif
#if !defined(SWIFT_ENUM)
# define SWIFT_ENUM(_type, _name, _extensibility) enum _name : _type _name; enum SWIFT_ENUM_ATTR(_extensibility) SWIFT_ENUM_EXTRA _name : _type
# if __has_feature(generalized_swift_name)
# define SWIFT_ENUM_NAMED(_type, _name, SWIFT_NAME, _extensibility) enum _name : _type _name SWIFT_COMPILE_NAME(SWIFT_NAME); enum SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_ENUM_ATTR(_extensibility) SWIFT_ENUM_EXTRA _name : _type
# else
# define SWIFT_ENUM_NAMED(_type, _name, SWIFT_NAME, _extensibility) SWIFT_ENUM(_type, _name, _extensibility)
# endif
#endif
#if !defined(SWIFT_UNAVAILABLE)
# define SWIFT_UNAVAILABLE __attribute__((unavailable))
#endif
#if !defined(SWIFT_UNAVAILABLE_MSG)
# define SWIFT_UNAVAILABLE_MSG(msg) __attribute__((unavailable(msg)))
#endif
#if !defined(SWIFT_AVAILABILITY)
# define SWIFT_AVAILABILITY(plat, ...) __attribute__((availability(plat, __VA_ARGS__)))
#endif
#if !defined(SWIFT_WEAK_IMPORT)
# define SWIFT_WEAK_IMPORT __attribute__((weak_import))
#endif
#if !defined(SWIFT_DEPRECATED)
# define SWIFT_DEPRECATED __attribute__((deprecated))
#endif
#if !defined(SWIFT_DEPRECATED_MSG)
# define SWIFT_DEPRECATED_MSG(...) __attribute__((deprecated(__VA_ARGS__)))
#endif
#if !defined(SWIFT_DEPRECATED_OBJC)
# if __has_feature(attribute_diagnose_if_objc)
# define SWIFT_DEPRECATED_OBJC(Msg) __attribute__((diagnose_if(1, Msg, "warning")))
# else
# define SWIFT_DEPRECATED_OBJC(Msg) SWIFT_DEPRECATED_MSG(Msg)
# endif
#endif
#if defined(__OBJC__)
#if !defined(IBSegueAction)
# define IBSegueAction
#endif
#endif
#if !defined(SWIFT_EXTERN)
# if defined(__cplusplus)
# define SWIFT_EXTERN extern "C"
# else
# define SWIFT_EXTERN extern
# endif
#endif
#if !defined(SWIFT_CALL)
# define SWIFT_CALL __attribute__((swiftcall))
#endif
#if !defined(SWIFT_INDIRECT_RESULT)
# define SWIFT_INDIRECT_RESULT __attribute__((swift_indirect_result))
#endif
#if !defined(SWIFT_CONTEXT)
# define SWIFT_CONTEXT __attribute__((swift_context))
#endif
#if !defined(SWIFT_ERROR_RESULT)
# define SWIFT_ERROR_RESULT __attribute__((swift_error_result))
#endif
#if defined(__cplusplus)
# define SWIFT_NOEXCEPT noexcept
#else
# define SWIFT_NOEXCEPT
#endif
#if !defined(SWIFT_C_INLINE_THUNK)
# if __has_attribute(always_inline)
# if __has_attribute(nodebug)
# define SWIFT_C_INLINE_THUNK inline __attribute__((always_inline)) __attribute__((nodebug))
# else
# define SWIFT_C_INLINE_THUNK inline __attribute__((always_inline))
# endif
# else
# define SWIFT_C_INLINE_THUNK inline
# endif
#endif
#if defined(_WIN32)
#if !defined(SWIFT_IMPORT_STDLIB_SYMBOL)
# define SWIFT_IMPORT_STDLIB_SYMBOL __declspec(dllimport)
#endif
#else
#if !defined(SWIFT_IMPORT_STDLIB_SYMBOL)
# define SWIFT_IMPORT_STDLIB_SYMBOL
#endif
#endif
#if defined(__OBJC__)
#if __has_feature(objc_modules)
#if __has_warning("-Watimport-in-framework-header")
#pragma clang diagnostic ignored "-Watimport-in-framework-header"
#endif
@import CoreFoundation;
@import Foundation;
@import MetricKit;
@import ObjectiveC;
#endif
#import <Sentry/Sentry.h>
#endif
#pragma clang diagnostic ignored "-Wproperty-attribute-mismatch"
#pragma clang diagnostic ignored "-Wduplicate-method-arg"
#if __has_warning("-Wpragma-clang-attribute")
# pragma clang diagnostic ignored "-Wpragma-clang-attribute"
#endif
#pragma clang diagnostic ignored "-Wunknown-pragmas"
#pragma clang diagnostic ignored "-Wnullability"
#pragma clang diagnostic ignored "-Wdollar-in-identifier-extension"
#if __has_attribute(external_source_symbol)
# pragma push_macro("any")
# undef any
# pragma clang attribute push(__attribute__((external_source_symbol(language="Swift", defined_in="Sentry",generated_declaration))), apply_to=any(function,enum,objc_interface,objc_category,objc_protocol))
# pragma pop_macro("any")
#endif
#if defined(__OBJC__)
@class NSString;
SWIFT_CLASS("_TtC6Sentry19HTTPHeaderSanitizer")
@interface HTTPHeaderSanitizer : NSObject
+ (NSDictionary<NSString *, NSString *> * _Nonnull)sanitizeHeaders:(NSDictionary<NSString *, NSString *> * _Nonnull)headers SWIFT_WARN_UNUSED_RESULT;
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
@end
SWIFT_PROTOCOL_NAMED("SentryRRWebEventProtocol")
@protocol SentryRRWebEvent <SentrySerializable>
@end
enum SentryRRWebEventType : NSInteger;
@class NSDate;
SWIFT_CLASS("_TtC6Sentry16SentryRRWebEvent")
@interface SentryRRWebEvent : NSObject <SentryRRWebEvent>
@property (nonatomic, readonly) enum SentryRRWebEventType type;
@property (nonatomic, readonly, copy) NSDate * _Nonnull timestamp;
@property (nonatomic, readonly, copy) NSDictionary<NSString *, id> * _Nullable data;
- (nonnull instancetype)initWithType:(enum SentryRRWebEventType)type timestamp:(NSDate * _Nonnull)timestamp data:(NSDictionary<NSString *, id> * _Nullable)data OBJC_DESIGNATED_INITIALIZER;
- (NSDictionary<NSString *, id> * _Nonnull)serialize SWIFT_WARN_UNUSED_RESULT;
- (nonnull instancetype)init SWIFT_UNAVAILABLE;
+ (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
@end
SWIFT_CLASS("_TtC6Sentry14RRWebMoveEvent")
@interface RRWebMoveEvent : SentryRRWebEvent
- (nonnull instancetype)initWithType:(enum SentryRRWebEventType)type timestamp:(NSDate * _Nonnull)timestamp data:(NSDictionary<NSString *, id> * _Nullable)data SWIFT_UNAVAILABLE;
@end
SWIFT_CLASS("_TtC6Sentry15RRWebTouchEvent")
@interface RRWebTouchEvent : SentryRRWebEvent
- (nonnull instancetype)initWithType:(enum SentryRRWebEventType)type timestamp:(NSDate * _Nonnull)timestamp data:(NSDictionary<NSString *, id> * _Nullable)data SWIFT_UNAVAILABLE;
@end
@protocol SentryANRTrackerDelegate;
SWIFT_PROTOCOL("_TtP6Sentry16SentryANRTracker_")
@protocol SentryANRTracker
- (void)addListener:(id <SentryANRTrackerDelegate> _Nonnull)listener;
- (void)removeListener:(id <SentryANRTrackerDelegate> _Nonnull)listener;
/// Only used for tests.
- (void)clear;
@end
enum SentryANRType : NSInteger;
/// The methods are called from a background thread.
SWIFT_PROTOCOL("_TtP6Sentry24SentryANRTrackerDelegate_")
@protocol SentryANRTrackerDelegate
- (void)anrDetectedWithType:(enum SentryANRType)type;
- (void)anrStopped;
@end
typedef SWIFT_ENUM(NSInteger, SentryANRType, closed) {
SentryANRTypeFullyBlocking = 0,
SentryANRTypeNonFullyBlocking = 1,
SentryANRTypeUnknown = 2,
};
SWIFT_CLASS("_TtC6Sentry23SentryAppHangTypeMapper")
@interface SentryAppHangTypeMapper : NSObject
+ (NSString * _Nonnull)getExceptionTypeWithAnrType:(enum SentryANRType)anrType SWIFT_WARN_UNUSED_RESULT;
+ (BOOL)isExceptionTypeAppHangWithExceptionType:(NSString * _Nonnull)exceptionType SWIFT_WARN_UNUSED_RESULT;
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
@end
SWIFT_CLASS("_TtC6Sentry26SentryBaggageSerialization")
@interface SentryBaggageSerialization : NSObject
+ (NSString * _Nonnull)encodeDictionary:(NSDictionary<NSString *, NSString *> * _Nonnull)dictionary SWIFT_WARN_UNUSED_RESULT;
+ (NSDictionary<NSString *, NSString *> * _Nonnull)decode:(NSString * _Nonnull)baggage SWIFT_WARN_UNUSED_RESULT;
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
@end
/// We need a protocol to expose SentryCurrentDateProvider to tests.
/// Mocking the previous private class from <code>SentryTestUtils</code> stopped working in Xcode 16.
SWIFT_PROTOCOL("_TtP6Sentry25SentryCurrentDateProvider_")
@protocol SentryCurrentDateProvider
- (NSDate * _Nonnull)date SWIFT_WARN_UNUSED_RESULT;
- (NSInteger)timezoneOffset SWIFT_WARN_UNUSED_RESULT;
- (uint64_t)systemTime SWIFT_WARN_UNUSED_RESULT;
- (NSTimeInterval)systemUptime SWIFT_WARN_UNUSED_RESULT;
@end
SWIFT_CLASS("_TtC6Sentry32SentryDefaultCurrentDateProvider")
@interface SentryDefaultCurrentDateProvider : NSObject <SentryCurrentDateProvider>
- (NSDate * _Nonnull)date SWIFT_WARN_UNUSED_RESULT;
- (NSInteger)timezoneOffset SWIFT_WARN_UNUSED_RESULT;
- (uint64_t)systemTime SWIFT_WARN_UNUSED_RESULT;
- (NSTimeInterval)systemUptime SWIFT_WARN_UNUSED_RESULT;
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
@end
@class SentryOptions;
SWIFT_CLASS("_TtC6Sentry28SentryEnabledFeaturesBuilder")
@interface SentryEnabledFeaturesBuilder : NSObject
+ (NSArray<NSString *> * _Nonnull)getEnabledFeaturesWithOptions:(SentryOptions * _Nonnull)options SWIFT_WARN_UNUSED_RESULT;
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
@end
SWIFT_CLASS("_TtC6Sentry25SentryExperimentalOptions")
@interface SentryExperimentalOptions : NSObject
- (void)validateOptions:(NSDictionary<NSString *, id> * _Nullable)options;
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
@end
@class NSData;
SWIFT_CLASS("_TtC6Sentry18SentryFileContents")
@interface SentryFileContents : NSObject
@property (nonatomic, readonly, copy) NSString * _Nonnull path;
@property (nonatomic, readonly, copy) NSData * _Nonnull contents;
- (nonnull instancetype)initWithPath:(NSString * _Nonnull)path contents:(NSData * _Nonnull)contents OBJC_DESIGNATED_INITIALIZER;
- (nonnull instancetype)init SWIFT_UNAVAILABLE;
+ (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
@end
SWIFT_CLASS("_TtC6Sentry23SentryFramesDelayResult")
@interface SentryFramesDelayResult : NSObject
/// The frames delay for the passed time period. If frame delay cant be calculated this is -1.
@property (nonatomic, readonly) CFTimeInterval delayDuration;
@property (nonatomic, readonly) NSUInteger framesContributingToDelayCount;
- (nonnull instancetype)initWithDelayDuration:(CFTimeInterval)delayDuration framesContributingToDelayCount:(NSUInteger)framesContributingToDelayCount OBJC_DESIGNATED_INITIALIZER;
- (nonnull instancetype)init SWIFT_UNAVAILABLE;
+ (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
@end
@class NSUUID;
SWIFT_CLASS("_TtC6Sentry8SentryId")
@interface SentryId : NSObject
/// A @c SentryId with an empty UUID “00000000000000000000000000000000”.
SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly, strong) SentryId * _Nonnull empty;)
+ (SentryId * _Nonnull)empty SWIFT_WARN_UNUSED_RESULT;
/// Returns a 32 lowercase character hexadecimal string description of the @c SentryId, such as
/// “12c2d058d58442709aa2eca08bf20986”.
@property (nonatomic, readonly, copy) NSString * _Nonnull sentryIdString;
/// Creates a @c SentryId with a random UUID.
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
/// Creates a SentryId with the given UUID.
- (nonnull instancetype)initWithUuid:(NSUUID * _Nonnull)uuid OBJC_DESIGNATED_INITIALIZER;
/// Creates a @c SentryId from a 32 character hexadecimal string without dashes such as
/// “12c2d058d58442709aa2eca08bf20986” or a 36 character hexadecimal string such as such as
/// “12c2d058-d584-4270-9aa2-eca08bf20986”.
/// @return SentryId.empty for invalid strings.
- (nonnull instancetype)initWithUUIDString:(NSString * _Nonnull)uuidString OBJC_DESIGNATED_INITIALIZER;
- (BOOL)isEqual:(id _Nullable)object SWIFT_WARN_UNUSED_RESULT;
@property (nonatomic, readonly, copy) NSString * _Nonnull description;
@property (nonatomic, readonly) NSUInteger hash;
@end
SWIFT_PROTOCOL("_TtP6Sentry25SentryIntegrationProtocol_")
@protocol SentryIntegrationProtocol <NSObject>
/// Installs the integration and returns YES if successful.
- (BOOL)installWithOptions:(SentryOptions * _Nonnull)options SWIFT_WARN_UNUSED_RESULT;
/// Uninstalls the integration.
- (void)uninstall;
@end
typedef SWIFT_ENUM(NSUInteger, SentryLevel, open) {
kSentryLevelNone SWIFT_COMPILE_NAME("none") = 0,
kSentryLevelDebug SWIFT_COMPILE_NAME("debug") = 1,
kSentryLevelInfo SWIFT_COMPILE_NAME("info") = 2,
kSentryLevelWarning SWIFT_COMPILE_NAME("warning") = 3,
kSentryLevelError SWIFT_COMPILE_NAME("error") = 4,
kSentryLevelFatal SWIFT_COMPILE_NAME("fatal") = 5,
};
SWIFT_CLASS("_TtC6Sentry17SentryLevelHelper")
@interface SentryLevelHelper : NSObject
+ (NSString * _Nonnull)nameForLevel:(enum SentryLevel)level SWIFT_WARN_UNUSED_RESULT;
+ (enum SentryLevel)levelForName:(NSString * _Nonnull)name SWIFT_WARN_UNUSED_RESULT;
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
@end
SWIFT_CLASS("_TtC6Sentry9SentryLog")
@interface SentryLog : NSObject
+ (void)configure:(BOOL)isDebug diagnosticLevel:(enum SentryLevel)diagnosticLevel;
+ (void)logWithMessage:(NSString * _Nonnull)message andLevel:(enum SentryLevel)level;
/// @return @c YES if the current logging configuration will log statements at the current level,
/// @c NO if not.
+ (BOOL)willLogAtLevel:(enum SentryLevel)level SWIFT_WARN_UNUSED_RESULT;
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
@end
@class SentryMXFrame;
SWIFT_CLASS("_TtC6Sentry17SentryMXCallStack")
@interface SentryMXCallStack : NSObject
@property (nonatomic, copy) NSArray<SentryMXFrame *> * _Nonnull callStackRootFrames;
@property (nonatomic, readonly, copy) NSArray<SentryMXFrame *> * _Nonnull flattenedRootFrames;
- (nonnull instancetype)initWithThreadAttributed:(BOOL)threadAttributed rootFrames:(NSArray<SentryMXFrame *> * _Nonnull)rootFrames OBJC_DESIGNATED_INITIALIZER;
- (nonnull instancetype)init SWIFT_UNAVAILABLE;
+ (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
@end
/// JSON specification of MXCallStackTree can be found here https://developer.apple.com/documentation/metrickit/mxcallstacktree/3552293-jsonrepresentation
SWIFT_CLASS("_TtC6Sentry21SentryMXCallStackTree")
@interface SentryMXCallStackTree : NSObject
@property (nonatomic, readonly, copy) NSArray<SentryMXCallStack *> * _Nonnull callStacks;
@property (nonatomic, readonly) BOOL callStackPerThread;
- (nonnull instancetype)initWithCallStacks:(NSArray<SentryMXCallStack *> * _Nonnull)callStacks callStackPerThread:(BOOL)callStackPerThread OBJC_DESIGNATED_INITIALIZER;
+ (SentryMXCallStackTree * _Nullable)fromData:(NSData * _Nonnull)data error:(NSError * _Nullable * _Nullable)error SWIFT_WARN_UNUSED_RESULT;
- (nonnull instancetype)init SWIFT_UNAVAILABLE;
+ (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
@end
SWIFT_CLASS("_TtC6Sentry13SentryMXFrame")
@interface SentryMXFrame : NSObject
@property (nonatomic, copy) NSUUID * _Nonnull binaryUUID;
@property (nonatomic) NSInteger offsetIntoBinaryTextSegment;
@property (nonatomic, copy) NSString * _Nullable binaryName;
@property (nonatomic) uint64_t address;
@property (nonatomic, copy) NSArray<SentryMXFrame *> * _Nullable subFrames;
@property (nonatomic, readonly, copy) NSArray<SentryMXFrame *> * _Nonnull frames;
@property (nonatomic, readonly, copy) NSArray<SentryMXFrame *> * _Nonnull framesIncludingSelf;
- (nonnull instancetype)init SWIFT_UNAVAILABLE;
+ (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
@end
@protocol SentryMXManagerDelegate;
@class MXDiagnosticPayload;
SWIFT_CLASS("_TtC6Sentry15SentryMXManager") SWIFT_AVAILABILITY(watchos,unavailable) SWIFT_AVAILABILITY(tvos,unavailable) SWIFT_AVAILABILITY(maccatalyst,introduced=15.0) SWIFT_AVAILABILITY(macos,introduced=12.0) SWIFT_AVAILABILITY(ios,introduced=15.0)
@interface SentryMXManager : NSObject <MXMetricManagerSubscriber>
@property (nonatomic, readonly) BOOL disableCrashDiagnostics;
- (nonnull instancetype)initWithDisableCrashDiagnostics:(BOOL)disableCrashDiagnostics OBJC_DESIGNATED_INITIALIZER;
@property (nonatomic, weak) id <SentryMXManagerDelegate> _Nullable delegate;
- (void)receiveReports;
- (void)pauseReports;
- (void)didReceiveDiagnosticPayloads:(NSArray<MXDiagnosticPayload *> * _Nonnull)payloads;
- (nonnull instancetype)init SWIFT_UNAVAILABLE;
+ (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
@end
@class MXCrashDiagnostic;
@class MXDiskWriteExceptionDiagnostic;
@class MXCPUExceptionDiagnostic;
@class MXHangDiagnostic;
SWIFT_PROTOCOL("_TtP6Sentry23SentryMXManagerDelegate_") SWIFT_AVAILABILITY(watchos,unavailable) SWIFT_AVAILABILITY(tvos,unavailable) SWIFT_AVAILABILITY(maccatalyst,introduced=15.0) SWIFT_AVAILABILITY(macos,introduced=12.0) SWIFT_AVAILABILITY(ios,introduced=15.0)
@protocol SentryMXManagerDelegate
- (void)didReceiveCrashDiagnostic:(MXCrashDiagnostic * _Nonnull)diagnostic callStackTree:(SentryMXCallStackTree * _Nonnull)callStackTree timeStampBegin:(NSDate * _Nonnull)timeStampBegin timeStampEnd:(NSDate * _Nonnull)timeStampEnd;
- (void)didReceiveDiskWriteExceptionDiagnostic:(MXDiskWriteExceptionDiagnostic * _Nonnull)diagnostic callStackTree:(SentryMXCallStackTree * _Nonnull)callStackTree timeStampBegin:(NSDate * _Nonnull)timeStampBegin timeStampEnd:(NSDate * _Nonnull)timeStampEnd;
- (void)didReceiveCpuExceptionDiagnostic:(MXCPUExceptionDiagnostic * _Nonnull)diagnostic callStackTree:(SentryMXCallStackTree * _Nonnull)callStackTree timeStampBegin:(NSDate * _Nonnull)timeStampBegin timeStampEnd:(NSDate * _Nonnull)timeStampEnd;
- (void)didReceiveHangDiagnostic:(MXHangDiagnostic * _Nonnull)diagnostic callStackTree:(SentryMXCallStackTree * _Nonnull)callStackTree timeStampBegin:(NSDate * _Nonnull)timeStampBegin timeStampEnd:(NSDate * _Nonnull)timeStampEnd;
@end
SWIFT_CLASS("_TtC6Sentry22SentryRRWebCustomEvent")
@interface SentryRRWebCustomEvent : SentryRRWebEvent
@property (nonatomic, readonly, copy) NSString * _Nonnull tag;
- (nonnull instancetype)initWithTimestamp:(NSDate * _Nonnull)timestamp tag:(NSString * _Nonnull)tag payload:(NSDictionary<NSString *, id> * _Nonnull)payload OBJC_DESIGNATED_INITIALIZER;
- (nonnull instancetype)initWithType:(enum SentryRRWebEventType)type timestamp:(NSDate * _Nonnull)timestamp data:(NSDictionary<NSString *, id> * _Nullable)data SWIFT_UNAVAILABLE;
@end
SWIFT_CLASS("_TtC6Sentry26SentryRRWebBreadcrumbEvent")
@interface SentryRRWebBreadcrumbEvent : SentryRRWebCustomEvent
- (nonnull instancetype)initWithTimestamp:(NSDate * _Nonnull)timestamp category:(NSString * _Nonnull)category message:(NSString * _Nullable)message level:(enum SentryLevel)level data:(NSDictionary<NSString *, id> * _Nullable)data OBJC_DESIGNATED_INITIALIZER;
- (nonnull instancetype)initWithTimestamp:(NSDate * _Nonnull)timestamp tag:(NSString * _Nonnull)tag payload:(NSDictionary<NSString *, id> * _Nonnull)payload SWIFT_UNAVAILABLE;
@end
typedef SWIFT_ENUM(NSInteger, SentryRRWebEventType, closed) {
SentryRRWebEventTypeNone = 0,
SentryRRWebEventTypeTouch = 3,
SentryRRWebEventTypeMeta = 4,
SentryRRWebEventTypeCustom = 5,
};
SWIFT_CLASS("_TtC6Sentry20SentryRRWebMetaEvent")
@interface SentryRRWebMetaEvent : SentryRRWebEvent
- (nonnull instancetype)initWithTimestamp:(NSDate * _Nonnull)timestamp height:(NSInteger)height width:(NSInteger)width OBJC_DESIGNATED_INITIALIZER;
- (nonnull instancetype)initWithType:(enum SentryRRWebEventType)type timestamp:(NSDate * _Nonnull)timestamp data:(NSDictionary<NSString *, id> * _Nullable)data SWIFT_UNAVAILABLE;
@end
SWIFT_CLASS("_TtC6Sentry20SentryRRWebSpanEvent")
@interface SentryRRWebSpanEvent : SentryRRWebCustomEvent
- (nonnull instancetype)initWithTimestamp:(NSDate * _Nonnull)timestamp endTimestamp:(NSDate * _Nonnull)endTimestamp operation:(NSString * _Nonnull)operation description:(NSString * _Nonnull)description data:(NSDictionary<NSString *, id> * _Nonnull)data OBJC_DESIGNATED_INITIALIZER;
- (nonnull instancetype)initWithTimestamp:(NSDate * _Nonnull)timestamp tag:(NSString * _Nonnull)tag payload:(NSDictionary<NSString *, id> * _Nonnull)payload SWIFT_UNAVAILABLE;
@end
SWIFT_CLASS("_TtC6Sentry21SentryRRWebVideoEvent")
@interface SentryRRWebVideoEvent : SentryRRWebCustomEvent
- (nonnull instancetype)initWithTimestamp:(NSDate * _Nonnull)timestamp segmentId:(NSInteger)segmentId size:(NSInteger)size duration:(NSTimeInterval)duration encoding:(NSString * _Nonnull)encoding container:(NSString * _Nonnull)container height:(NSInteger)height width:(NSInteger)width frameCount:(NSInteger)frameCount frameRateType:(NSString * _Nonnull)frameRateType frameRate:(NSInteger)frameRate left:(NSInteger)left top:(NSInteger)top OBJC_DESIGNATED_INITIALIZER;
- (nonnull instancetype)initWithTimestamp:(NSDate * _Nonnull)timestamp tag:(NSString * _Nonnull)tag payload:(NSDictionary<NSString *, id> * _Nonnull)payload SWIFT_UNAVAILABLE;
@end
SWIFT_PROTOCOL("_TtP6Sentry19SentryRedactOptions_")
@protocol SentryRedactOptions
@property (nonatomic, readonly) BOOL maskAllText;
@property (nonatomic, readonly) BOOL maskAllImages;
@property (nonatomic, readonly, copy) NSArray<Class> * _Nonnull maskedViewClasses;
@property (nonatomic, readonly, copy) NSArray<Class> * _Nonnull unmaskedViewClasses;
@end
@class SentryBreadcrumb;
SWIFT_PROTOCOL("_TtP6Sentry31SentryReplayBreadcrumbConverter_")
@protocol SentryReplayBreadcrumbConverter <NSObject>
- (id <SentryRRWebEvent> _Nullable)convertFrom:(SentryBreadcrumb * _Nonnull)breadcrumb SWIFT_WARN_UNUSED_RESULT;
@end
enum SentryReplayType : NSInteger;
SWIFT_CLASS("_TtC6Sentry17SentryReplayEvent")
@interface SentryReplayEvent : SentryEvent
@property (nonatomic, readonly, copy) NSDate * _Nonnull replayStartTimestamp;
@property (nonatomic, readonly) enum SentryReplayType replayType;
/// Number of the segment in the replay.
/// This is an incremental number
@property (nonatomic, readonly) NSInteger segmentId;
/// This will be used to store the name of the screens
/// that appear during the duration of the replay segment.
@property (nonatomic, copy) NSArray<NSString *> * _Nullable urls;
- (nonnull instancetype)initWithEventId:(SentryId * _Nonnull)eventId replayStartTimestamp:(NSDate * _Nonnull)replayStartTimestamp replayType:(enum SentryReplayType)replayType segmentId:(NSInteger)segmentId OBJC_DESIGNATED_INITIALIZER;
- (nonnull instancetype)init;
- (NSDictionary<NSString *, id> * _Nonnull)serialize SWIFT_WARN_UNUSED_RESULT;
@end
enum SentryReplayQuality : NSInteger;
SWIFT_CLASS("_TtC6Sentry19SentryReplayOptions")
@interface SentryReplayOptions : NSObject <SentryRedactOptions>
/// Indicates the percentage in which the replay for the session will be created.
/// note:
/// The value needs to be >= 0.0 and <= 1.0. When setting a value out of range the SDK sets it
/// to the default.
/// note:
/// The default is 0.
/// <ul>
/// <li>
/// Specifying @c 0 means never, @c 1.0 means always.
/// </li>
/// </ul>
@property (nonatomic) float sessionSampleRate;
/// Indicates the percentage in which a 30 seconds replay will be send with error events.
/// note:
/// The value needs to be >= 0.0 and <= 1.0. When setting a value out of range the SDK sets it
/// to the default.
/// note:
/// The default is 0.
/// <ul>
/// <li>
/// Specifying 0 means never, 1.0 means always.
/// </li>
/// </ul>
@property (nonatomic) float onErrorSampleRate;
/// Indicates whether session replay should redact all text in the app
/// by drawing a black rectangle over it.
/// note:
/// The default is true
@property (nonatomic) BOOL maskAllText;
/// Indicates whether session replay should redact all non-bundled image
/// in the app by drawing a black rectangle over it.
/// note:
/// The default is true
@property (nonatomic) BOOL maskAllImages;
/// Indicates the quality of the replay.
/// The higher the quality, the higher the CPU and bandwidth usage.
@property (nonatomic) enum SentryReplayQuality quality;
/// A list of custom UIView subclasses that need
/// to be masked during session replay.
/// By default Sentry already mask text and image elements from UIKit
/// Every child of a view that is redacted will also be redacted.
@property (nonatomic, copy) NSArray<Class> * _Nonnull maskedViewClasses;
/// A list of custom UIView subclasses to be ignored
/// during masking step of the session replay.
/// The views of given classes will not be redacted but their children may be.
/// This property has precedence over <code>redactViewTypes</code>.
@property (nonatomic, copy) NSArray<Class> * _Nonnull unmaskedViewClasses;
/// Defines the quality of the session replay.
/// Higher bit rates better quality, but also bigger files to transfer.
@property (nonatomic, readonly) NSInteger replayBitRate;
/// The scale related to the window size at which the replay will be created
@property (nonatomic, readonly) float sizeScale;
/// Number of frames per second of the replay.
/// The more the havier the process is.
/// The minimum is 1, if set to zero this will change to 1.
@property (nonatomic) NSUInteger frameRate;
/// The maximum duration of replays for error events.
@property (nonatomic, readonly) NSTimeInterval errorReplayDuration;
/// The maximum duration of the segment of a session replay.
@property (nonatomic, readonly) NSTimeInterval sessionSegmentDuration;
/// The maximum duration of a replay session.
@property (nonatomic, readonly) NSTimeInterval maximumDuration;
/// Inittialize session replay options disabled
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
/// Initialize session replay options
/// <ul>
/// <li>
/// parameters:
/// </li>
/// <li>
/// sessionSampleRate Indicates the percentage in which the replay for the session will be created.
/// </li>
/// <li>
/// errorSampleRate Indicates the percentage in which a 30 seconds replay will be send with
/// error events.
/// </li>
/// </ul>
- (nonnull instancetype)initWithSessionSampleRate:(float)sessionSampleRate onErrorSampleRate:(float)onErrorSampleRate maskAllText:(BOOL)maskAllText maskAllImages:(BOOL)maskAllImages OBJC_DESIGNATED_INITIALIZER;
- (nonnull instancetype)initWithDictionary:(NSDictionary<NSString *, id> * _Nonnull)dictionary;
@end
/// Enum to define the quality of the session replay.
typedef SWIFT_ENUM(NSInteger, SentryReplayQuality, open) {
/// Video Scale: 80%
/// Bit Rate: 20.000
SentryReplayQualityLow = 0,
/// Video Scale: 100%
/// Bit Rate: 40.000
SentryReplayQualityMedium = 1,
/// Video Scale: 100%
/// Bit Rate: 60.000
SentryReplayQualityHigh = 2,
};
@class SentryVideoInfo;
SWIFT_CLASS("_TtC6Sentry21SentryReplayRecording")
@interface SentryReplayRecording : NSObject
SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly, copy) NSString * _Nonnull SentryReplayEncoding;)
+ (NSString * _Nonnull)SentryReplayEncoding SWIFT_WARN_UNUSED_RESULT;
SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly, copy) NSString * _Nonnull SentryReplayContainer;)
+ (NSString * _Nonnull)SentryReplayContainer SWIFT_WARN_UNUSED_RESULT;
SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly, copy) NSString * _Nonnull SentryReplayFrameRateType;)
+ (NSString * _Nonnull)SentryReplayFrameRateType SWIFT_WARN_UNUSED_RESULT;
@property (nonatomic, readonly) NSInteger segmentId;
@property (nonatomic, readonly, copy) NSArray<id <SentryRRWebEvent>> * _Nonnull events;
@property (nonatomic, readonly) NSInteger height;
@property (nonatomic, readonly) NSInteger width;
- (nonnull instancetype)initWithSegmentId:(NSInteger)segmentId video:(SentryVideoInfo * _Nonnull)video extraEvents:(NSArray<id <SentryRRWebEvent>> * _Nonnull)extraEvents;
- (nonnull instancetype)initWithSegmentId:(NSInteger)segmentId size:(NSInteger)size start:(NSDate * _Nonnull)start duration:(NSTimeInterval)duration frameCount:(NSInteger)frameCount frameRate:(NSInteger)frameRate height:(NSInteger)height width:(NSInteger)width extraEvents:(NSArray<id <SentryRRWebEvent>> * _Nullable)extraEvents OBJC_DESIGNATED_INITIALIZER;
- (NSDictionary<NSString *, id> * _Nonnull)headerForReplayRecording SWIFT_WARN_UNUSED_RESULT;
- (NSArray<NSDictionary<NSString *, id> *> * _Nonnull)serialize SWIFT_WARN_UNUSED_RESULT;
- (nonnull instancetype)init SWIFT_UNAVAILABLE;
+ (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
@end
typedef SWIFT_ENUM(NSInteger, SentryReplayType, closed) {
SentryReplayTypeSession = 0,
SentryReplayTypeBuffer = 1,
};
SWIFT_CLASS("_TtC6Sentry34SentrySRDefaultBreadcrumbConverter")
@interface SentrySRDefaultBreadcrumbConverter : NSObject <SentryReplayBreadcrumbConverter>
/// This function will convert the SDK breadcrumbs to session replay breadcrumbs in a format that the front-end understands.
/// Any deviation in the information will cause the breadcrumb or the information itself to be discarded
/// in order to avoid unknown behavior in the front-end.
- (id <SentryRRWebEvent> _Nullable)convertFrom:(SentryBreadcrumb * _Nonnull)breadcrumb SWIFT_WARN_UNUSED_RESULT;
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
@end
@class SentrySession;
SWIFT_PROTOCOL("_TtP6Sentry21SentrySessionListener_")
@protocol SentrySessionListener <NSObject>
- (void)sentrySessionEnded:(SentrySession * _Nonnull)session;
- (void)sentrySessionStarted:(SentrySession * _Nonnull)session;
@end
SWIFT_CLASS("_TtC6Sentry29SentrySwizzleClassNameExclude")
@interface SentrySwizzleClassNameExclude : NSObject
+ (BOOL)shouldExcludeClassWithClassName:(NSString * _Nonnull)className swizzleClassNameExcludes:(NSSet<NSString *> * _Nonnull)swizzleClassNameExcludes SWIFT_WARN_UNUSED_RESULT;
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
@end
typedef SWIFT_ENUM(NSInteger, SentryTransactionNameSource, open) {
kSentryTransactionNameSourceCustom SWIFT_COMPILE_NAME("custom") = 0,
kSentryTransactionNameSourceUrl SWIFT_COMPILE_NAME("url") = 1,
kSentryTransactionNameSourceRoute SWIFT_COMPILE_NAME("route") = 2,
kSentryTransactionNameSourceView SWIFT_COMPILE_NAME("view") = 3,
kSentryTransactionNameSourceComponent SWIFT_COMPILE_NAME("component") = 4,
kSentryTransactionNameSourceTask SWIFT_COMPILE_NAME("sourceTask") = 5,
};
@class NSURL;
SWIFT_CLASS("_TtC6Sentry15SentryVideoInfo")
@interface SentryVideoInfo : NSObject
@property (nonatomic, readonly, copy) NSURL * _Nonnull path;
@property (nonatomic, readonly) NSInteger height;
@property (nonatomic, readonly) NSInteger width;
@property (nonatomic, readonly) NSTimeInterval duration;
@property (nonatomic, readonly) NSInteger frameCount;
@property (nonatomic, readonly) NSInteger frameRate;
@property (nonatomic, readonly, copy) NSDate * _Nonnull start;
@property (nonatomic, readonly, copy) NSDate * _Nonnull end;
@property (nonatomic, readonly) NSInteger fileSize;
@property (nonatomic, readonly, copy) NSArray<NSString *> * _Nonnull screens;
- (nonnull instancetype)initWithPath:(NSURL * _Nonnull)path height:(NSInteger)height width:(NSInteger)width duration:(NSTimeInterval)duration frameCount:(NSInteger)frameCount frameRate:(NSInteger)frameRate start:(NSDate * _Nonnull)start end:(NSDate * _Nonnull)end fileSize:(NSInteger)fileSize screens:(NSArray<NSString *> * _Nonnull)screens OBJC_DESIGNATED_INITIALIZER;
- (nonnull instancetype)init SWIFT_UNAVAILABLE;
+ (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
@end
SWIFT_CLASS("_TtC6Sentry15SwiftDescriptor")
@interface SwiftDescriptor : NSObject
+ (NSString * _Nonnull)getObjectClassName:(id _Nonnull)object SWIFT_WARN_UNUSED_RESULT;
+ (NSString * _Nullable)getSwiftErrorDescription:(NSError * _Nonnull)error SWIFT_WARN_UNUSED_RESULT;
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
@end
@class NSURLSessionTask;
SWIFT_CLASS("_TtC6Sentry20URLSessionTaskHelper")
@interface URLSessionTaskHelper : NSObject
+ (NSString * _Nullable)getGraphQLOperationNameFrom:(NSURLSessionTask * _Nullable)task SWIFT_WARN_UNUSED_RESULT;
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
@end
@class NSURLQueryItem;
SWIFT_CLASS("_TtC6Sentry12UrlSanitized")
@interface UrlSanitized : NSObject
SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly, copy) NSString * _Nonnull SENSITIVE_DATA_SUBSTITUTE;)
+ (NSString * _Nonnull)SENSITIVE_DATA_SUBSTITUTE SWIFT_WARN_UNUSED_RESULT;
@property (nonatomic, readonly, copy) NSString * _Nullable query;
@property (nonatomic, readonly, copy) NSArray<NSURLQueryItem *> * _Nullable queryItems;
@property (nonatomic, readonly, copy) NSString * _Nullable fragment;
- (nonnull instancetype)initWithURL:(NSURL * _Nonnull)url OBJC_DESIGNATED_INITIALIZER;
@property (nonatomic, readonly, copy) NSString * _Nullable sanitizedUrl;
- (nonnull instancetype)init SWIFT_UNAVAILABLE;
+ (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
@end
#endif
#if __has_attribute(external_source_symbol)
# pragma clang attribute pop
#endif
#if defined(__cplusplus)
#endif
#pragma clang diagnostic pop
#endif
#elif defined(__x86_64__) && __x86_64__
// Generated by Apple Swift version 5.9.2 (swiftlang-5.9.2.2.56 clang-1500.1.0.2.5)
#ifndef SENTRY_SWIFT_H
#define SENTRY_SWIFT_H
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wgcc-compat"
#if !defined(__has_include)
# define __has_include(x) 0
#endif
#if !defined(__has_attribute)
# define __has_attribute(x) 0
#endif
#if !defined(__has_feature)
# define __has_feature(x) 0
#endif
#if !defined(__has_warning)
# define __has_warning(x) 0
#endif
#if __has_include(<swift/objc-prologue.h>)
# include <swift/objc-prologue.h>
#endif
#pragma clang diagnostic ignored "-Wauto-import"
#if defined(__OBJC__)
#include <Foundation/Foundation.h>
#endif
#if defined(__cplusplus)
#include <cstdint>
#include <cstddef>
#include <cstdbool>
#include <cstring>
#include <stdlib.h>
#include <new>
#include <type_traits>
#else
#include <stdint.h>
#include <stddef.h>
#include <stdbool.h>
#include <string.h>
#endif
#if defined(__cplusplus)
#if defined(__arm64e__) && __has_include(<ptrauth.h>)
# include <ptrauth.h>
#else
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wreserved-macro-identifier"
# ifndef __ptrauth_swift_value_witness_function_pointer
# define __ptrauth_swift_value_witness_function_pointer(x)
# endif
# ifndef __ptrauth_swift_class_method_pointer
# define __ptrauth_swift_class_method_pointer(x)
# endif
#pragma clang diagnostic pop
#endif
#endif
#if !defined(SWIFT_TYPEDEFS)
# define SWIFT_TYPEDEFS 1
# if __has_include(<uchar.h>)
# include <uchar.h>
# elif !defined(__cplusplus)
typedef uint_least16_t char16_t;
typedef uint_least32_t char32_t;
# endif
typedef float swift_float2 __attribute__((__ext_vector_type__(2)));
typedef float swift_float3 __attribute__((__ext_vector_type__(3)));
typedef float swift_float4 __attribute__((__ext_vector_type__(4)));
typedef double swift_double2 __attribute__((__ext_vector_type__(2)));
typedef double swift_double3 __attribute__((__ext_vector_type__(3)));
typedef double swift_double4 __attribute__((__ext_vector_type__(4)));
typedef int swift_int2 __attribute__((__ext_vector_type__(2)));
typedef int swift_int3 __attribute__((__ext_vector_type__(3)));
typedef int swift_int4 __attribute__((__ext_vector_type__(4)));
typedef unsigned int swift_uint2 __attribute__((__ext_vector_type__(2)));
typedef unsigned int swift_uint3 __attribute__((__ext_vector_type__(3)));
typedef unsigned int swift_uint4 __attribute__((__ext_vector_type__(4)));
#endif
#if !defined(SWIFT_PASTE)
# define SWIFT_PASTE_HELPER(x, y) x##y
# define SWIFT_PASTE(x, y) SWIFT_PASTE_HELPER(x, y)
#endif
#if !defined(SWIFT_METATYPE)
# define SWIFT_METATYPE(X) Class
#endif
#if !defined(SWIFT_CLASS_PROPERTY)
# if __has_feature(objc_class_property)
# define SWIFT_CLASS_PROPERTY(...) __VA_ARGS__
# else
# define SWIFT_CLASS_PROPERTY(...)
# endif
#endif
#if !defined(SWIFT_RUNTIME_NAME)
# if __has_attribute(objc_runtime_name)
# define SWIFT_RUNTIME_NAME(X) __attribute__((objc_runtime_name(X)))
# else
# define SWIFT_RUNTIME_NAME(X)
# endif
#endif
#if !defined(SWIFT_COMPILE_NAME)
# if __has_attribute(swift_name)
# define SWIFT_COMPILE_NAME(X) __attribute__((swift_name(X)))
# else
# define SWIFT_COMPILE_NAME(X)
# endif
#endif
#if !defined(SWIFT_METHOD_FAMILY)
# if __has_attribute(objc_method_family)
# define SWIFT_METHOD_FAMILY(X) __attribute__((objc_method_family(X)))
# else
# define SWIFT_METHOD_FAMILY(X)
# endif
#endif
#if !defined(SWIFT_NOESCAPE)
# if __has_attribute(noescape)
# define SWIFT_NOESCAPE __attribute__((noescape))
# else
# define SWIFT_NOESCAPE
# endif
#endif
#if !defined(SWIFT_RELEASES_ARGUMENT)
# if __has_attribute(ns_consumed)
# define SWIFT_RELEASES_ARGUMENT __attribute__((ns_consumed))
# else
# define SWIFT_RELEASES_ARGUMENT
# endif
#endif
#if !defined(SWIFT_WARN_UNUSED_RESULT)
# if __has_attribute(warn_unused_result)
# define SWIFT_WARN_UNUSED_RESULT __attribute__((warn_unused_result))
# else
# define SWIFT_WARN_UNUSED_RESULT
# endif
#endif
#if !defined(SWIFT_NORETURN)
# if __has_attribute(noreturn)
# define SWIFT_NORETURN __attribute__((noreturn))
# else
# define SWIFT_NORETURN
# endif
#endif
#if !defined(SWIFT_CLASS_EXTRA)
# define SWIFT_CLASS_EXTRA
#endif
#if !defined(SWIFT_PROTOCOL_EXTRA)
# define SWIFT_PROTOCOL_EXTRA
#endif
#if !defined(SWIFT_ENUM_EXTRA)
# define SWIFT_ENUM_EXTRA
#endif
#if !defined(SWIFT_CLASS)
# if __has_attribute(objc_subclassing_restricted)
# define SWIFT_CLASS(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) __attribute__((objc_subclassing_restricted)) SWIFT_CLASS_EXTRA
# define SWIFT_CLASS_NAMED(SWIFT_NAME) __attribute__((objc_subclassing_restricted)) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA
# else
# define SWIFT_CLASS(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA
# define SWIFT_CLASS_NAMED(SWIFT_NAME) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA
# endif
#endif
#if !defined(SWIFT_RESILIENT_CLASS)
# if __has_attribute(objc_class_stub)
# define SWIFT_RESILIENT_CLASS(SWIFT_NAME) SWIFT_CLASS(SWIFT_NAME) __attribute__((objc_class_stub))
# define SWIFT_RESILIENT_CLASS_NAMED(SWIFT_NAME) __attribute__((objc_class_stub)) SWIFT_CLASS_NAMED(SWIFT_NAME)
# else
# define SWIFT_RESILIENT_CLASS(SWIFT_NAME) SWIFT_CLASS(SWIFT_NAME)
# define SWIFT_RESILIENT_CLASS_NAMED(SWIFT_NAME) SWIFT_CLASS_NAMED(SWIFT_NAME)
# endif
#endif
#if !defined(SWIFT_PROTOCOL)
# define SWIFT_PROTOCOL(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) SWIFT_PROTOCOL_EXTRA
# define SWIFT_PROTOCOL_NAMED(SWIFT_NAME) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_PROTOCOL_EXTRA
#endif
#if !defined(SWIFT_EXTENSION)
# define SWIFT_EXTENSION(M) SWIFT_PASTE(M##_Swift_, __LINE__)
#endif
#if !defined(OBJC_DESIGNATED_INITIALIZER)
# if __has_attribute(objc_designated_initializer)
# define OBJC_DESIGNATED_INITIALIZER __attribute__((objc_designated_initializer))
# else
# define OBJC_DESIGNATED_INITIALIZER
# endif
#endif
#if !defined(SWIFT_ENUM_ATTR)
# if __has_attribute(enum_extensibility)
# define SWIFT_ENUM_ATTR(_extensibility) __attribute__((enum_extensibility(_extensibility)))
# else
# define SWIFT_ENUM_ATTR(_extensibility)
# endif
#endif
#if !defined(SWIFT_ENUM)
# define SWIFT_ENUM(_type, _name, _extensibility) enum _name : _type _name; enum SWIFT_ENUM_ATTR(_extensibility) SWIFT_ENUM_EXTRA _name : _type
# if __has_feature(generalized_swift_name)
# define SWIFT_ENUM_NAMED(_type, _name, SWIFT_NAME, _extensibility) enum _name : _type _name SWIFT_COMPILE_NAME(SWIFT_NAME); enum SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_ENUM_ATTR(_extensibility) SWIFT_ENUM_EXTRA _name : _type
# else
# define SWIFT_ENUM_NAMED(_type, _name, SWIFT_NAME, _extensibility) SWIFT_ENUM(_type, _name, _extensibility)
# endif
#endif
#if !defined(SWIFT_UNAVAILABLE)
# define SWIFT_UNAVAILABLE __attribute__((unavailable))
#endif
#if !defined(SWIFT_UNAVAILABLE_MSG)
# define SWIFT_UNAVAILABLE_MSG(msg) __attribute__((unavailable(msg)))
#endif
#if !defined(SWIFT_AVAILABILITY)
# define SWIFT_AVAILABILITY(plat, ...) __attribute__((availability(plat, __VA_ARGS__)))
#endif
#if !defined(SWIFT_WEAK_IMPORT)
# define SWIFT_WEAK_IMPORT __attribute__((weak_import))
#endif
#if !defined(SWIFT_DEPRECATED)
# define SWIFT_DEPRECATED __attribute__((deprecated))
#endif
#if !defined(SWIFT_DEPRECATED_MSG)
# define SWIFT_DEPRECATED_MSG(...) __attribute__((deprecated(__VA_ARGS__)))
#endif
#if !defined(SWIFT_DEPRECATED_OBJC)
# if __has_feature(attribute_diagnose_if_objc)
# define SWIFT_DEPRECATED_OBJC(Msg) __attribute__((diagnose_if(1, Msg, "warning")))
# else
# define SWIFT_DEPRECATED_OBJC(Msg) SWIFT_DEPRECATED_MSG(Msg)
# endif
#endif
#if defined(__OBJC__)
#if !defined(IBSegueAction)
# define IBSegueAction
#endif
#endif
#if !defined(SWIFT_EXTERN)
# if defined(__cplusplus)
# define SWIFT_EXTERN extern "C"
# else
# define SWIFT_EXTERN extern
# endif
#endif
#if !defined(SWIFT_CALL)
# define SWIFT_CALL __attribute__((swiftcall))
#endif
#if !defined(SWIFT_INDIRECT_RESULT)
# define SWIFT_INDIRECT_RESULT __attribute__((swift_indirect_result))
#endif
#if !defined(SWIFT_CONTEXT)
# define SWIFT_CONTEXT __attribute__((swift_context))
#endif
#if !defined(SWIFT_ERROR_RESULT)
# define SWIFT_ERROR_RESULT __attribute__((swift_error_result))
#endif
#if defined(__cplusplus)
# define SWIFT_NOEXCEPT noexcept
#else
# define SWIFT_NOEXCEPT
#endif
#if !defined(SWIFT_C_INLINE_THUNK)
# if __has_attribute(always_inline)
# if __has_attribute(nodebug)
# define SWIFT_C_INLINE_THUNK inline __attribute__((always_inline)) __attribute__((nodebug))
# else
# define SWIFT_C_INLINE_THUNK inline __attribute__((always_inline))
# endif
# else
# define SWIFT_C_INLINE_THUNK inline
# endif
#endif
#if defined(_WIN32)
#if !defined(SWIFT_IMPORT_STDLIB_SYMBOL)
# define SWIFT_IMPORT_STDLIB_SYMBOL __declspec(dllimport)
#endif
#else
#if !defined(SWIFT_IMPORT_STDLIB_SYMBOL)
# define SWIFT_IMPORT_STDLIB_SYMBOL
#endif
#endif
#if defined(__OBJC__)
#if __has_feature(objc_modules)
#if __has_warning("-Watimport-in-framework-header")
#pragma clang diagnostic ignored "-Watimport-in-framework-header"
#endif
@import CoreFoundation;
@import Foundation;
@import MetricKit;
@import ObjectiveC;
#endif
#import <Sentry/Sentry.h>
#endif
#pragma clang diagnostic ignored "-Wproperty-attribute-mismatch"
#pragma clang diagnostic ignored "-Wduplicate-method-arg"
#if __has_warning("-Wpragma-clang-attribute")
# pragma clang diagnostic ignored "-Wpragma-clang-attribute"
#endif
#pragma clang diagnostic ignored "-Wunknown-pragmas"
#pragma clang diagnostic ignored "-Wnullability"
#pragma clang diagnostic ignored "-Wdollar-in-identifier-extension"
#if __has_attribute(external_source_symbol)
# pragma push_macro("any")
# undef any
# pragma clang attribute push(__attribute__((external_source_symbol(language="Swift", defined_in="Sentry",generated_declaration))), apply_to=any(function,enum,objc_interface,objc_category,objc_protocol))
# pragma pop_macro("any")
#endif
#if defined(__OBJC__)
@class NSString;
SWIFT_CLASS("_TtC6Sentry19HTTPHeaderSanitizer")
@interface HTTPHeaderSanitizer : NSObject
+ (NSDictionary<NSString *, NSString *> * _Nonnull)sanitizeHeaders:(NSDictionary<NSString *, NSString *> * _Nonnull)headers SWIFT_WARN_UNUSED_RESULT;
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
@end
SWIFT_PROTOCOL_NAMED("SentryRRWebEventProtocol")
@protocol SentryRRWebEvent <SentrySerializable>
@end
enum SentryRRWebEventType : NSInteger;
@class NSDate;
SWIFT_CLASS("_TtC6Sentry16SentryRRWebEvent")
@interface SentryRRWebEvent : NSObject <SentryRRWebEvent>
@property (nonatomic, readonly) enum SentryRRWebEventType type;
@property (nonatomic, readonly, copy) NSDate * _Nonnull timestamp;
@property (nonatomic, readonly, copy) NSDictionary<NSString *, id> * _Nullable data;
- (nonnull instancetype)initWithType:(enum SentryRRWebEventType)type timestamp:(NSDate * _Nonnull)timestamp data:(NSDictionary<NSString *, id> * _Nullable)data OBJC_DESIGNATED_INITIALIZER;
- (NSDictionary<NSString *, id> * _Nonnull)serialize SWIFT_WARN_UNUSED_RESULT;
- (nonnull instancetype)init SWIFT_UNAVAILABLE;
+ (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
@end
SWIFT_CLASS("_TtC6Sentry14RRWebMoveEvent")
@interface RRWebMoveEvent : SentryRRWebEvent
- (nonnull instancetype)initWithType:(enum SentryRRWebEventType)type timestamp:(NSDate * _Nonnull)timestamp data:(NSDictionary<NSString *, id> * _Nullable)data SWIFT_UNAVAILABLE;
@end
SWIFT_CLASS("_TtC6Sentry15RRWebTouchEvent")
@interface RRWebTouchEvent : SentryRRWebEvent
- (nonnull instancetype)initWithType:(enum SentryRRWebEventType)type timestamp:(NSDate * _Nonnull)timestamp data:(NSDictionary<NSString *, id> * _Nullable)data SWIFT_UNAVAILABLE;
@end
@protocol SentryANRTrackerDelegate;
SWIFT_PROTOCOL("_TtP6Sentry16SentryANRTracker_")
@protocol SentryANRTracker
- (void)addListener:(id <SentryANRTrackerDelegate> _Nonnull)listener;
- (void)removeListener:(id <SentryANRTrackerDelegate> _Nonnull)listener;
/// Only used for tests.
- (void)clear;
@end
enum SentryANRType : NSInteger;
/// The methods are called from a background thread.
SWIFT_PROTOCOL("_TtP6Sentry24SentryANRTrackerDelegate_")
@protocol SentryANRTrackerDelegate
- (void)anrDetectedWithType:(enum SentryANRType)type;
- (void)anrStopped;
@end
typedef SWIFT_ENUM(NSInteger, SentryANRType, closed) {
SentryANRTypeFullyBlocking = 0,
SentryANRTypeNonFullyBlocking = 1,
SentryANRTypeUnknown = 2,
};
SWIFT_CLASS("_TtC6Sentry23SentryAppHangTypeMapper")
@interface SentryAppHangTypeMapper : NSObject
+ (NSString * _Nonnull)getExceptionTypeWithAnrType:(enum SentryANRType)anrType SWIFT_WARN_UNUSED_RESULT;
+ (BOOL)isExceptionTypeAppHangWithExceptionType:(NSString * _Nonnull)exceptionType SWIFT_WARN_UNUSED_RESULT;
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
@end
SWIFT_CLASS("_TtC6Sentry26SentryBaggageSerialization")
@interface SentryBaggageSerialization : NSObject
+ (NSString * _Nonnull)encodeDictionary:(NSDictionary<NSString *, NSString *> * _Nonnull)dictionary SWIFT_WARN_UNUSED_RESULT;
+ (NSDictionary<NSString *, NSString *> * _Nonnull)decode:(NSString * _Nonnull)baggage SWIFT_WARN_UNUSED_RESULT;
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
@end
/// We need a protocol to expose SentryCurrentDateProvider to tests.
/// Mocking the previous private class from <code>SentryTestUtils</code> stopped working in Xcode 16.
SWIFT_PROTOCOL("_TtP6Sentry25SentryCurrentDateProvider_")
@protocol SentryCurrentDateProvider
- (NSDate * _Nonnull)date SWIFT_WARN_UNUSED_RESULT;
- (NSInteger)timezoneOffset SWIFT_WARN_UNUSED_RESULT;
- (uint64_t)systemTime SWIFT_WARN_UNUSED_RESULT;
- (NSTimeInterval)systemUptime SWIFT_WARN_UNUSED_RESULT;
@end
SWIFT_CLASS("_TtC6Sentry32SentryDefaultCurrentDateProvider")
@interface SentryDefaultCurrentDateProvider : NSObject <SentryCurrentDateProvider>
- (NSDate * _Nonnull)date SWIFT_WARN_UNUSED_RESULT;
- (NSInteger)timezoneOffset SWIFT_WARN_UNUSED_RESULT;
- (uint64_t)systemTime SWIFT_WARN_UNUSED_RESULT;
- (NSTimeInterval)systemUptime SWIFT_WARN_UNUSED_RESULT;
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
@end
@class SentryOptions;
SWIFT_CLASS("_TtC6Sentry28SentryEnabledFeaturesBuilder")
@interface SentryEnabledFeaturesBuilder : NSObject
+ (NSArray<NSString *> * _Nonnull)getEnabledFeaturesWithOptions:(SentryOptions * _Nonnull)options SWIFT_WARN_UNUSED_RESULT;
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
@end
SWIFT_CLASS("_TtC6Sentry25SentryExperimentalOptions")
@interface SentryExperimentalOptions : NSObject
- (void)validateOptions:(NSDictionary<NSString *, id> * _Nullable)options;
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
@end
@class NSData;
SWIFT_CLASS("_TtC6Sentry18SentryFileContents")
@interface SentryFileContents : NSObject
@property (nonatomic, readonly, copy) NSString * _Nonnull path;
@property (nonatomic, readonly, copy) NSData * _Nonnull contents;
- (nonnull instancetype)initWithPath:(NSString * _Nonnull)path contents:(NSData * _Nonnull)contents OBJC_DESIGNATED_INITIALIZER;
- (nonnull instancetype)init SWIFT_UNAVAILABLE;
+ (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
@end
SWIFT_CLASS("_TtC6Sentry23SentryFramesDelayResult")
@interface SentryFramesDelayResult : NSObject
/// The frames delay for the passed time period. If frame delay cant be calculated this is -1.
@property (nonatomic, readonly) CFTimeInterval delayDuration;
@property (nonatomic, readonly) NSUInteger framesContributingToDelayCount;
- (nonnull instancetype)initWithDelayDuration:(CFTimeInterval)delayDuration framesContributingToDelayCount:(NSUInteger)framesContributingToDelayCount OBJC_DESIGNATED_INITIALIZER;
- (nonnull instancetype)init SWIFT_UNAVAILABLE;
+ (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
@end
@class NSUUID;
SWIFT_CLASS("_TtC6Sentry8SentryId")
@interface SentryId : NSObject
/// A @c SentryId with an empty UUID “00000000000000000000000000000000”.
SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly, strong) SentryId * _Nonnull empty;)
+ (SentryId * _Nonnull)empty SWIFT_WARN_UNUSED_RESULT;
/// Returns a 32 lowercase character hexadecimal string description of the @c SentryId, such as
/// “12c2d058d58442709aa2eca08bf20986”.
@property (nonatomic, readonly, copy) NSString * _Nonnull sentryIdString;
/// Creates a @c SentryId with a random UUID.
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
/// Creates a SentryId with the given UUID.
- (nonnull instancetype)initWithUuid:(NSUUID * _Nonnull)uuid OBJC_DESIGNATED_INITIALIZER;
/// Creates a @c SentryId from a 32 character hexadecimal string without dashes such as
/// “12c2d058d58442709aa2eca08bf20986” or a 36 character hexadecimal string such as such as
/// “12c2d058-d584-4270-9aa2-eca08bf20986”.
/// @return SentryId.empty for invalid strings.
- (nonnull instancetype)initWithUUIDString:(NSString * _Nonnull)uuidString OBJC_DESIGNATED_INITIALIZER;
- (BOOL)isEqual:(id _Nullable)object SWIFT_WARN_UNUSED_RESULT;
@property (nonatomic, readonly, copy) NSString * _Nonnull description;
@property (nonatomic, readonly) NSUInteger hash;
@end
SWIFT_PROTOCOL("_TtP6Sentry25SentryIntegrationProtocol_")
@protocol SentryIntegrationProtocol <NSObject>
/// Installs the integration and returns YES if successful.
- (BOOL)installWithOptions:(SentryOptions * _Nonnull)options SWIFT_WARN_UNUSED_RESULT;
/// Uninstalls the integration.
- (void)uninstall;
@end
typedef SWIFT_ENUM(NSUInteger, SentryLevel, open) {
kSentryLevelNone SWIFT_COMPILE_NAME("none") = 0,
kSentryLevelDebug SWIFT_COMPILE_NAME("debug") = 1,
kSentryLevelInfo SWIFT_COMPILE_NAME("info") = 2,
kSentryLevelWarning SWIFT_COMPILE_NAME("warning") = 3,
kSentryLevelError SWIFT_COMPILE_NAME("error") = 4,
kSentryLevelFatal SWIFT_COMPILE_NAME("fatal") = 5,
};
SWIFT_CLASS("_TtC6Sentry17SentryLevelHelper")
@interface SentryLevelHelper : NSObject
+ (NSString * _Nonnull)nameForLevel:(enum SentryLevel)level SWIFT_WARN_UNUSED_RESULT;
+ (enum SentryLevel)levelForName:(NSString * _Nonnull)name SWIFT_WARN_UNUSED_RESULT;
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
@end
SWIFT_CLASS("_TtC6Sentry9SentryLog")
@interface SentryLog : NSObject
+ (void)configure:(BOOL)isDebug diagnosticLevel:(enum SentryLevel)diagnosticLevel;
+ (void)logWithMessage:(NSString * _Nonnull)message andLevel:(enum SentryLevel)level;
/// @return @c YES if the current logging configuration will log statements at the current level,
/// @c NO if not.
+ (BOOL)willLogAtLevel:(enum SentryLevel)level SWIFT_WARN_UNUSED_RESULT;
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
@end
@class SentryMXFrame;
SWIFT_CLASS("_TtC6Sentry17SentryMXCallStack")
@interface SentryMXCallStack : NSObject
@property (nonatomic, copy) NSArray<SentryMXFrame *> * _Nonnull callStackRootFrames;
@property (nonatomic, readonly, copy) NSArray<SentryMXFrame *> * _Nonnull flattenedRootFrames;
- (nonnull instancetype)initWithThreadAttributed:(BOOL)threadAttributed rootFrames:(NSArray<SentryMXFrame *> * _Nonnull)rootFrames OBJC_DESIGNATED_INITIALIZER;
- (nonnull instancetype)init SWIFT_UNAVAILABLE;
+ (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
@end
/// JSON specification of MXCallStackTree can be found here https://developer.apple.com/documentation/metrickit/mxcallstacktree/3552293-jsonrepresentation
SWIFT_CLASS("_TtC6Sentry21SentryMXCallStackTree")
@interface SentryMXCallStackTree : NSObject
@property (nonatomic, readonly, copy) NSArray<SentryMXCallStack *> * _Nonnull callStacks;
@property (nonatomic, readonly) BOOL callStackPerThread;
- (nonnull instancetype)initWithCallStacks:(NSArray<SentryMXCallStack *> * _Nonnull)callStacks callStackPerThread:(BOOL)callStackPerThread OBJC_DESIGNATED_INITIALIZER;
+ (SentryMXCallStackTree * _Nullable)fromData:(NSData * _Nonnull)data error:(NSError * _Nullable * _Nullable)error SWIFT_WARN_UNUSED_RESULT;
- (nonnull instancetype)init SWIFT_UNAVAILABLE;
+ (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
@end
SWIFT_CLASS("_TtC6Sentry13SentryMXFrame")
@interface SentryMXFrame : NSObject
@property (nonatomic, copy) NSUUID * _Nonnull binaryUUID;
@property (nonatomic) NSInteger offsetIntoBinaryTextSegment;
@property (nonatomic, copy) NSString * _Nullable binaryName;
@property (nonatomic) uint64_t address;
@property (nonatomic, copy) NSArray<SentryMXFrame *> * _Nullable subFrames;
@property (nonatomic, readonly, copy) NSArray<SentryMXFrame *> * _Nonnull frames;
@property (nonatomic, readonly, copy) NSArray<SentryMXFrame *> * _Nonnull framesIncludingSelf;
- (nonnull instancetype)init SWIFT_UNAVAILABLE;
+ (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
@end
@protocol SentryMXManagerDelegate;
@class MXDiagnosticPayload;
SWIFT_CLASS("_TtC6Sentry15SentryMXManager") SWIFT_AVAILABILITY(watchos,unavailable) SWIFT_AVAILABILITY(tvos,unavailable) SWIFT_AVAILABILITY(maccatalyst,introduced=15.0) SWIFT_AVAILABILITY(macos,introduced=12.0) SWIFT_AVAILABILITY(ios,introduced=15.0)
@interface SentryMXManager : NSObject <MXMetricManagerSubscriber>
@property (nonatomic, readonly) BOOL disableCrashDiagnostics;
- (nonnull instancetype)initWithDisableCrashDiagnostics:(BOOL)disableCrashDiagnostics OBJC_DESIGNATED_INITIALIZER;
@property (nonatomic, weak) id <SentryMXManagerDelegate> _Nullable delegate;
- (void)receiveReports;
- (void)pauseReports;
- (void)didReceiveDiagnosticPayloads:(NSArray<MXDiagnosticPayload *> * _Nonnull)payloads;
- (nonnull instancetype)init SWIFT_UNAVAILABLE;
+ (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
@end
@class MXCrashDiagnostic;
@class MXDiskWriteExceptionDiagnostic;
@class MXCPUExceptionDiagnostic;
@class MXHangDiagnostic;
SWIFT_PROTOCOL("_TtP6Sentry23SentryMXManagerDelegate_") SWIFT_AVAILABILITY(watchos,unavailable) SWIFT_AVAILABILITY(tvos,unavailable) SWIFT_AVAILABILITY(maccatalyst,introduced=15.0) SWIFT_AVAILABILITY(macos,introduced=12.0) SWIFT_AVAILABILITY(ios,introduced=15.0)
@protocol SentryMXManagerDelegate
- (void)didReceiveCrashDiagnostic:(MXCrashDiagnostic * _Nonnull)diagnostic callStackTree:(SentryMXCallStackTree * _Nonnull)callStackTree timeStampBegin:(NSDate * _Nonnull)timeStampBegin timeStampEnd:(NSDate * _Nonnull)timeStampEnd;
- (void)didReceiveDiskWriteExceptionDiagnostic:(MXDiskWriteExceptionDiagnostic * _Nonnull)diagnostic callStackTree:(SentryMXCallStackTree * _Nonnull)callStackTree timeStampBegin:(NSDate * _Nonnull)timeStampBegin timeStampEnd:(NSDate * _Nonnull)timeStampEnd;
- (void)didReceiveCpuExceptionDiagnostic:(MXCPUExceptionDiagnostic * _Nonnull)diagnostic callStackTree:(SentryMXCallStackTree * _Nonnull)callStackTree timeStampBegin:(NSDate * _Nonnull)timeStampBegin timeStampEnd:(NSDate * _Nonnull)timeStampEnd;
- (void)didReceiveHangDiagnostic:(MXHangDiagnostic * _Nonnull)diagnostic callStackTree:(SentryMXCallStackTree * _Nonnull)callStackTree timeStampBegin:(NSDate * _Nonnull)timeStampBegin timeStampEnd:(NSDate * _Nonnull)timeStampEnd;
@end
SWIFT_CLASS("_TtC6Sentry22SentryRRWebCustomEvent")
@interface SentryRRWebCustomEvent : SentryRRWebEvent
@property (nonatomic, readonly, copy) NSString * _Nonnull tag;
- (nonnull instancetype)initWithTimestamp:(NSDate * _Nonnull)timestamp tag:(NSString * _Nonnull)tag payload:(NSDictionary<NSString *, id> * _Nonnull)payload OBJC_DESIGNATED_INITIALIZER;
- (nonnull instancetype)initWithType:(enum SentryRRWebEventType)type timestamp:(NSDate * _Nonnull)timestamp data:(NSDictionary<NSString *, id> * _Nullable)data SWIFT_UNAVAILABLE;
@end
SWIFT_CLASS("_TtC6Sentry26SentryRRWebBreadcrumbEvent")
@interface SentryRRWebBreadcrumbEvent : SentryRRWebCustomEvent
- (nonnull instancetype)initWithTimestamp:(NSDate * _Nonnull)timestamp category:(NSString * _Nonnull)category message:(NSString * _Nullable)message level:(enum SentryLevel)level data:(NSDictionary<NSString *, id> * _Nullable)data OBJC_DESIGNATED_INITIALIZER;
- (nonnull instancetype)initWithTimestamp:(NSDate * _Nonnull)timestamp tag:(NSString * _Nonnull)tag payload:(NSDictionary<NSString *, id> * _Nonnull)payload SWIFT_UNAVAILABLE;
@end
typedef SWIFT_ENUM(NSInteger, SentryRRWebEventType, closed) {
SentryRRWebEventTypeNone = 0,
SentryRRWebEventTypeTouch = 3,
SentryRRWebEventTypeMeta = 4,
SentryRRWebEventTypeCustom = 5,
};
SWIFT_CLASS("_TtC6Sentry20SentryRRWebMetaEvent")
@interface SentryRRWebMetaEvent : SentryRRWebEvent
- (nonnull instancetype)initWithTimestamp:(NSDate * _Nonnull)timestamp height:(NSInteger)height width:(NSInteger)width OBJC_DESIGNATED_INITIALIZER;
- (nonnull instancetype)initWithType:(enum SentryRRWebEventType)type timestamp:(NSDate * _Nonnull)timestamp data:(NSDictionary<NSString *, id> * _Nullable)data SWIFT_UNAVAILABLE;
@end
SWIFT_CLASS("_TtC6Sentry20SentryRRWebSpanEvent")
@interface SentryRRWebSpanEvent : SentryRRWebCustomEvent
- (nonnull instancetype)initWithTimestamp:(NSDate * _Nonnull)timestamp endTimestamp:(NSDate * _Nonnull)endTimestamp operation:(NSString * _Nonnull)operation description:(NSString * _Nonnull)description data:(NSDictionary<NSString *, id> * _Nonnull)data OBJC_DESIGNATED_INITIALIZER;
- (nonnull instancetype)initWithTimestamp:(NSDate * _Nonnull)timestamp tag:(NSString * _Nonnull)tag payload:(NSDictionary<NSString *, id> * _Nonnull)payload SWIFT_UNAVAILABLE;
@end
SWIFT_CLASS("_TtC6Sentry21SentryRRWebVideoEvent")
@interface SentryRRWebVideoEvent : SentryRRWebCustomEvent
- (nonnull instancetype)initWithTimestamp:(NSDate * _Nonnull)timestamp segmentId:(NSInteger)segmentId size:(NSInteger)size duration:(NSTimeInterval)duration encoding:(NSString * _Nonnull)encoding container:(NSString * _Nonnull)container height:(NSInteger)height width:(NSInteger)width frameCount:(NSInteger)frameCount frameRateType:(NSString * _Nonnull)frameRateType frameRate:(NSInteger)frameRate left:(NSInteger)left top:(NSInteger)top OBJC_DESIGNATED_INITIALIZER;
- (nonnull instancetype)initWithTimestamp:(NSDate * _Nonnull)timestamp tag:(NSString * _Nonnull)tag payload:(NSDictionary<NSString *, id> * _Nonnull)payload SWIFT_UNAVAILABLE;
@end
SWIFT_PROTOCOL("_TtP6Sentry19SentryRedactOptions_")
@protocol SentryRedactOptions
@property (nonatomic, readonly) BOOL maskAllText;
@property (nonatomic, readonly) BOOL maskAllImages;
@property (nonatomic, readonly, copy) NSArray<Class> * _Nonnull maskedViewClasses;
@property (nonatomic, readonly, copy) NSArray<Class> * _Nonnull unmaskedViewClasses;
@end
@class SentryBreadcrumb;
SWIFT_PROTOCOL("_TtP6Sentry31SentryReplayBreadcrumbConverter_")
@protocol SentryReplayBreadcrumbConverter <NSObject>
- (id <SentryRRWebEvent> _Nullable)convertFrom:(SentryBreadcrumb * _Nonnull)breadcrumb SWIFT_WARN_UNUSED_RESULT;
@end
enum SentryReplayType : NSInteger;
SWIFT_CLASS("_TtC6Sentry17SentryReplayEvent")
@interface SentryReplayEvent : SentryEvent
@property (nonatomic, readonly, copy) NSDate * _Nonnull replayStartTimestamp;
@property (nonatomic, readonly) enum SentryReplayType replayType;
/// Number of the segment in the replay.
/// This is an incremental number
@property (nonatomic, readonly) NSInteger segmentId;
/// This will be used to store the name of the screens
/// that appear during the duration of the replay segment.
@property (nonatomic, copy) NSArray<NSString *> * _Nullable urls;
- (nonnull instancetype)initWithEventId:(SentryId * _Nonnull)eventId replayStartTimestamp:(NSDate * _Nonnull)replayStartTimestamp replayType:(enum SentryReplayType)replayType segmentId:(NSInteger)segmentId OBJC_DESIGNATED_INITIALIZER;
- (nonnull instancetype)init;
- (NSDictionary<NSString *, id> * _Nonnull)serialize SWIFT_WARN_UNUSED_RESULT;
@end
enum SentryReplayQuality : NSInteger;
SWIFT_CLASS("_TtC6Sentry19SentryReplayOptions")
@interface SentryReplayOptions : NSObject <SentryRedactOptions>
/// Indicates the percentage in which the replay for the session will be created.
/// note:
/// The value needs to be >= 0.0 and <= 1.0. When setting a value out of range the SDK sets it
/// to the default.
/// note:
/// The default is 0.
/// <ul>
/// <li>
/// Specifying @c 0 means never, @c 1.0 means always.
/// </li>
/// </ul>
@property (nonatomic) float sessionSampleRate;
/// Indicates the percentage in which a 30 seconds replay will be send with error events.
/// note:
/// The value needs to be >= 0.0 and <= 1.0. When setting a value out of range the SDK sets it
/// to the default.
/// note:
/// The default is 0.
/// <ul>
/// <li>
/// Specifying 0 means never, 1.0 means always.
/// </li>
/// </ul>
@property (nonatomic) float onErrorSampleRate;
/// Indicates whether session replay should redact all text in the app
/// by drawing a black rectangle over it.
/// note:
/// The default is true
@property (nonatomic) BOOL maskAllText;
/// Indicates whether session replay should redact all non-bundled image
/// in the app by drawing a black rectangle over it.
/// note:
/// The default is true
@property (nonatomic) BOOL maskAllImages;
/// Indicates the quality of the replay.
/// The higher the quality, the higher the CPU and bandwidth usage.
@property (nonatomic) enum SentryReplayQuality quality;
/// A list of custom UIView subclasses that need
/// to be masked during session replay.
/// By default Sentry already mask text and image elements from UIKit
/// Every child of a view that is redacted will also be redacted.
@property (nonatomic, copy) NSArray<Class> * _Nonnull maskedViewClasses;
/// A list of custom UIView subclasses to be ignored
/// during masking step of the session replay.
/// The views of given classes will not be redacted but their children may be.
/// This property has precedence over <code>redactViewTypes</code>.
@property (nonatomic, copy) NSArray<Class> * _Nonnull unmaskedViewClasses;
/// Defines the quality of the session replay.
/// Higher bit rates better quality, but also bigger files to transfer.
@property (nonatomic, readonly) NSInteger replayBitRate;
/// The scale related to the window size at which the replay will be created
@property (nonatomic, readonly) float sizeScale;
/// Number of frames per second of the replay.
/// The more the havier the process is.
/// The minimum is 1, if set to zero this will change to 1.
@property (nonatomic) NSUInteger frameRate;
/// The maximum duration of replays for error events.
@property (nonatomic, readonly) NSTimeInterval errorReplayDuration;
/// The maximum duration of the segment of a session replay.
@property (nonatomic, readonly) NSTimeInterval sessionSegmentDuration;
/// The maximum duration of a replay session.
@property (nonatomic, readonly) NSTimeInterval maximumDuration;
/// Inittialize session replay options disabled
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
/// Initialize session replay options
/// <ul>
/// <li>
/// parameters:
/// </li>
/// <li>
/// sessionSampleRate Indicates the percentage in which the replay for the session will be created.
/// </li>
/// <li>
/// errorSampleRate Indicates the percentage in which a 30 seconds replay will be send with
/// error events.
/// </li>
/// </ul>
- (nonnull instancetype)initWithSessionSampleRate:(float)sessionSampleRate onErrorSampleRate:(float)onErrorSampleRate maskAllText:(BOOL)maskAllText maskAllImages:(BOOL)maskAllImages OBJC_DESIGNATED_INITIALIZER;
- (nonnull instancetype)initWithDictionary:(NSDictionary<NSString *, id> * _Nonnull)dictionary;
@end
/// Enum to define the quality of the session replay.
typedef SWIFT_ENUM(NSInteger, SentryReplayQuality, open) {
/// Video Scale: 80%
/// Bit Rate: 20.000
SentryReplayQualityLow = 0,
/// Video Scale: 100%
/// Bit Rate: 40.000
SentryReplayQualityMedium = 1,
/// Video Scale: 100%
/// Bit Rate: 60.000
SentryReplayQualityHigh = 2,
};
@class SentryVideoInfo;
SWIFT_CLASS("_TtC6Sentry21SentryReplayRecording")
@interface SentryReplayRecording : NSObject
SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly, copy) NSString * _Nonnull SentryReplayEncoding;)
+ (NSString * _Nonnull)SentryReplayEncoding SWIFT_WARN_UNUSED_RESULT;
SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly, copy) NSString * _Nonnull SentryReplayContainer;)
+ (NSString * _Nonnull)SentryReplayContainer SWIFT_WARN_UNUSED_RESULT;
SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly, copy) NSString * _Nonnull SentryReplayFrameRateType;)
+ (NSString * _Nonnull)SentryReplayFrameRateType SWIFT_WARN_UNUSED_RESULT;
@property (nonatomic, readonly) NSInteger segmentId;
@property (nonatomic, readonly, copy) NSArray<id <SentryRRWebEvent>> * _Nonnull events;
@property (nonatomic, readonly) NSInteger height;
@property (nonatomic, readonly) NSInteger width;
- (nonnull instancetype)initWithSegmentId:(NSInteger)segmentId video:(SentryVideoInfo * _Nonnull)video extraEvents:(NSArray<id <SentryRRWebEvent>> * _Nonnull)extraEvents;
- (nonnull instancetype)initWithSegmentId:(NSInteger)segmentId size:(NSInteger)size start:(NSDate * _Nonnull)start duration:(NSTimeInterval)duration frameCount:(NSInteger)frameCount frameRate:(NSInteger)frameRate height:(NSInteger)height width:(NSInteger)width extraEvents:(NSArray<id <SentryRRWebEvent>> * _Nullable)extraEvents OBJC_DESIGNATED_INITIALIZER;
- (NSDictionary<NSString *, id> * _Nonnull)headerForReplayRecording SWIFT_WARN_UNUSED_RESULT;
- (NSArray<NSDictionary<NSString *, id> *> * _Nonnull)serialize SWIFT_WARN_UNUSED_RESULT;
- (nonnull instancetype)init SWIFT_UNAVAILABLE;
+ (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
@end
typedef SWIFT_ENUM(NSInteger, SentryReplayType, closed) {
SentryReplayTypeSession = 0,
SentryReplayTypeBuffer = 1,
};
SWIFT_CLASS("_TtC6Sentry34SentrySRDefaultBreadcrumbConverter")
@interface SentrySRDefaultBreadcrumbConverter : NSObject <SentryReplayBreadcrumbConverter>
/// This function will convert the SDK breadcrumbs to session replay breadcrumbs in a format that the front-end understands.
/// Any deviation in the information will cause the breadcrumb or the information itself to be discarded
/// in order to avoid unknown behavior in the front-end.
- (id <SentryRRWebEvent> _Nullable)convertFrom:(SentryBreadcrumb * _Nonnull)breadcrumb SWIFT_WARN_UNUSED_RESULT;
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
@end
@class SentrySession;
SWIFT_PROTOCOL("_TtP6Sentry21SentrySessionListener_")
@protocol SentrySessionListener <NSObject>
- (void)sentrySessionEnded:(SentrySession * _Nonnull)session;
- (void)sentrySessionStarted:(SentrySession * _Nonnull)session;
@end
SWIFT_CLASS("_TtC6Sentry29SentrySwizzleClassNameExclude")
@interface SentrySwizzleClassNameExclude : NSObject
+ (BOOL)shouldExcludeClassWithClassName:(NSString * _Nonnull)className swizzleClassNameExcludes:(NSSet<NSString *> * _Nonnull)swizzleClassNameExcludes SWIFT_WARN_UNUSED_RESULT;
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
@end
typedef SWIFT_ENUM(NSInteger, SentryTransactionNameSource, open) {
kSentryTransactionNameSourceCustom SWIFT_COMPILE_NAME("custom") = 0,
kSentryTransactionNameSourceUrl SWIFT_COMPILE_NAME("url") = 1,
kSentryTransactionNameSourceRoute SWIFT_COMPILE_NAME("route") = 2,
kSentryTransactionNameSourceView SWIFT_COMPILE_NAME("view") = 3,
kSentryTransactionNameSourceComponent SWIFT_COMPILE_NAME("component") = 4,
kSentryTransactionNameSourceTask SWIFT_COMPILE_NAME("sourceTask") = 5,
};
@class NSURL;
SWIFT_CLASS("_TtC6Sentry15SentryVideoInfo")
@interface SentryVideoInfo : NSObject
@property (nonatomic, readonly, copy) NSURL * _Nonnull path;
@property (nonatomic, readonly) NSInteger height;
@property (nonatomic, readonly) NSInteger width;
@property (nonatomic, readonly) NSTimeInterval duration;
@property (nonatomic, readonly) NSInteger frameCount;
@property (nonatomic, readonly) NSInteger frameRate;
@property (nonatomic, readonly, copy) NSDate * _Nonnull start;
@property (nonatomic, readonly, copy) NSDate * _Nonnull end;
@property (nonatomic, readonly) NSInteger fileSize;
@property (nonatomic, readonly, copy) NSArray<NSString *> * _Nonnull screens;
- (nonnull instancetype)initWithPath:(NSURL * _Nonnull)path height:(NSInteger)height width:(NSInteger)width duration:(NSTimeInterval)duration frameCount:(NSInteger)frameCount frameRate:(NSInteger)frameRate start:(NSDate * _Nonnull)start end:(NSDate * _Nonnull)end fileSize:(NSInteger)fileSize screens:(NSArray<NSString *> * _Nonnull)screens OBJC_DESIGNATED_INITIALIZER;
- (nonnull instancetype)init SWIFT_UNAVAILABLE;
+ (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
@end
SWIFT_CLASS("_TtC6Sentry15SwiftDescriptor")
@interface SwiftDescriptor : NSObject
+ (NSString * _Nonnull)getObjectClassName:(id _Nonnull)object SWIFT_WARN_UNUSED_RESULT;
+ (NSString * _Nullable)getSwiftErrorDescription:(NSError * _Nonnull)error SWIFT_WARN_UNUSED_RESULT;
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
@end
@class NSURLSessionTask;
SWIFT_CLASS("_TtC6Sentry20URLSessionTaskHelper")
@interface URLSessionTaskHelper : NSObject
+ (NSString * _Nullable)getGraphQLOperationNameFrom:(NSURLSessionTask * _Nullable)task SWIFT_WARN_UNUSED_RESULT;
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
@end
@class NSURLQueryItem;
SWIFT_CLASS("_TtC6Sentry12UrlSanitized")
@interface UrlSanitized : NSObject
SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly, copy) NSString * _Nonnull SENSITIVE_DATA_SUBSTITUTE;)
+ (NSString * _Nonnull)SENSITIVE_DATA_SUBSTITUTE SWIFT_WARN_UNUSED_RESULT;
@property (nonatomic, readonly, copy) NSString * _Nullable query;
@property (nonatomic, readonly, copy) NSArray<NSURLQueryItem *> * _Nullable queryItems;
@property (nonatomic, readonly, copy) NSString * _Nullable fragment;
- (nonnull instancetype)initWithURL:(NSURL * _Nonnull)url OBJC_DESIGNATED_INITIALIZER;
@property (nonatomic, readonly, copy) NSString * _Nullable sanitizedUrl;
- (nonnull instancetype)init SWIFT_UNAVAILABLE;
+ (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
@end
#endif
#if __has_attribute(external_source_symbol)
# pragma clang attribute pop
#endif
#if defined(__cplusplus)
#endif
#pragma clang diagnostic pop
#endif
#else
#error unsupported Swift architecture
#endif