| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057 | 
							- #if 0
 
- #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 FBSDKSHAREKIT_SWIFT_H
 
- #define FBSDKSHAREKIT_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 FBSDKCoreKit;
 
- @import Foundation;
 
- @import ObjectiveC;
 
- #endif
 
- #import <FBSDKShareKit/FBSDKShareKit.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="FBSDKShareKit",generated_declaration))), apply_to=any(function,enum,objc_interface,objc_category,objc_protocol))
 
- # pragma pop_macro("any")
 
- #endif
 
- #if defined(__OBJC__)
 
- @class NSURL;
 
- @class NSString;
 
- enum FBSDKAppInviteDestination : NSInteger;
 
- /// A model for app invite
 
- SWIFT_CLASS_NAMED("AppInviteContent")
 
- @interface FBSDKAppInviteContent : NSObject
 
- /// A URL to a preview image that will be displayed with the app invite
 
- /// This is optional.  If you don’t include it a fallback image will be used.
 
- @property (nonatomic, copy) NSURL * _Nullable appInvitePreviewImageURL;
 
- /// An app link target that will be used as a target when the user accept the invite.
 
- @property (nonatomic, copy) NSURL * _Nonnull appLinkURL;
 
- /// Promotional code to be displayed while sending and receiving the invite.
 
- /// This is optional. This can be between 0 and 10 characters long and can contain
 
- /// alphanumeric characters only. To set a promo code, you need to set promo text.
 
- @property (nonatomic, copy) NSString * _Nullable promotionCode;
 
- /// Promotional text to be displayed while sending and receiving the invite.
 
- /// This is optional. This can be between 0 and 80 characters long and can contain
 
- /// alphanumeric and spaces only.
 
- @property (nonatomic, copy) NSString * _Nullable promotionText;
 
- /// Destination for the app invite.  The default value is <code>.facebook</code>.
 
- @property (nonatomic) enum FBSDKAppInviteDestination destination;
 
- - (nonnull instancetype)initWithAppLinkURL:(NSURL * _Nonnull)appLinkURL OBJC_DESIGNATED_INITIALIZER;
 
- - (nonnull instancetype)init SWIFT_UNAVAILABLE;
 
- + (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
 
- @end
 
- /// Specifies the privacy of a group.
 
- typedef SWIFT_ENUM_NAMED(NSInteger, FBSDKAppInviteDestination, "Destination", open) {
 
- /// Deliver to Facebook
 
-   FBSDKAppInviteDestinationFacebook = 0,
 
-   FBSDKAppInviteDestinationMessenger = 1,
 
- };
 
- /// An interface for validatable content and media.
 
- SWIFT_PROTOCOL_NAMED("SharingValidatable")
 
- @protocol FBSDKSharingValidatable
 
- /// Validate that this content or media contains valid values.
 
- /// \param options The share bridge options to use for validation.
 
- ///
 
- ///
 
- /// throws:
 
- /// If the values are not valid.
 
- - (BOOL)validateWithOptions:(FBSDKShareBridgeOptions)options error:(NSError * _Nullable * _Nullable)error;
 
- @end
 
- @interface FBSDKAppInviteContent (SWIFT_EXTENSION(FBSDKShareKit)) <FBSDKSharingValidatable>
 
- - (BOOL)validateWithOptions:(FBSDKShareBridgeOptions)bridgeOptions error:(NSError * _Nullable * _Nullable)error;
 
- @end
 
- /// A container of arguments for a camera effect.
 
- /// An argument is a <code>String</code> or <code>[String]</code> identified by a <code>String</code> key.
 
- SWIFT_CLASS_NAMED("CameraEffectArguments")
 
- @interface FBSDKCameraEffectArguments : NSObject
 
- /// Sets a string argument in the container.
 
- /// @param string The argument
 
- /// @param key The key for the argument
 
- - (void)setString:(NSString * _Nullable)string forKey:(NSString * _Nonnull)key;
 
- /// Gets a string argument from the container.
 
- /// @param key The key for the argument
 
- /// @return The string value or nil
 
- - (NSString * _Nullable)stringForKey:(NSString * _Nonnull)key SWIFT_WARN_UNUSED_RESULT;
 
- /// Sets a string array argument in the container.
 
- /// @param array The array argument
 
- /// @param key The key for the argument
 
- - (void)setArray:(NSArray<NSString *> * _Nullable)array forKey:(NSString * _Nonnull)key;
 
- /// Gets an array argument from the container.
 
- /// @param key The key for the argument
 
- /// @return The array argument
 
- - (NSArray<NSString *> * _Nullable)arrayForKey:(NSString * _Nonnull)key SWIFT_WARN_UNUSED_RESULT;
 
- - (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
 
- @end
 
- @class UIImage;
 
- /// A container of textures for a camera effect.
 
- /// A texture for a camera effect is an UIImages identified by a NSString key.
 
- SWIFT_CLASS_NAMED("CameraEffectTextures")
 
- @interface FBSDKCameraEffectTextures : NSObject
 
- /// Sets the image for a texture key.
 
- /// @param image The <code>UIImage</code> for the texture
 
- /// @param key The key for the texture
 
- - (void)setImage:(UIImage * _Nullable)image forKey:(NSString * _Nonnull)key;
 
- /// Gets the image for a texture key.
 
- /// @param key The key for the texture
 
- /// @return The texture <code>UIImage</code> or nil
 
- - (UIImage * _Nullable)imageForKey:(NSString * _Nonnull)key SWIFT_WARN_UNUSED_RESULT;
 
- - (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
 
- @end
 
- @protocol FBSDKSharingContent;
 
- /// The common interface for sharing buttons.
 
- /// See FBSendButton and FBShareButton
 
- SWIFT_PROTOCOL_NAMED("SharingButton")
 
- @protocol FBSDKSharingButton
 
- /// The content to be shared.
 
- @property (nonatomic, strong) id <FBSDKSharingContent> _Nullable shareContent;
 
- @end
 
- @class FBSDKMessageDialog;
 
- @class NSCoder;
 
- /// A button to send content through Messenger.
 
- /// Tapping the receiver will invoke the FBSDKShareDialog with the attached shareContent.  If the dialog cannot
 
- /// be shown, the button will be disable.
 
- SWIFT_CLASS_NAMED("FBSendButton")
 
- @interface FBSDKSendButton : FBSDKButton <FBSDKButtonImpressionLogging, FBSDKSharingButton>
 
- @property (nonatomic, strong) FBSDKMessageDialog * _Nullable dialog;
 
- @property (nonatomic, strong) id <FBSDKSharingContent> _Nullable shareContent;
 
- @property (nonatomic, readonly, copy) NSDictionary<FBSDKAppEventParameterName, id> * _Nullable analyticsParameters;
 
- @property (nonatomic, readonly) FBSDKAppEventName _Nonnull impressionTrackingEventName;
 
- @property (nonatomic, readonly, copy) NSString * _Nonnull impressionTrackingIdentifier;
 
- @property (nonatomic, readonly, getter=isImplicitlyDisabled) BOOL implicitlyDisabled;
 
- - (void)configureButton;
 
- - (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER;
 
- - (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER;
 
- @end
 
- /// A button to share content.
 
- /// Tapping the receiver will invoke the FBSDKShareDialog with the attached shareContent.  If the dialog cannot
 
- /// be shown, the button will be disabled.
 
- SWIFT_CLASS_NAMED("FBShareButton")
 
- @interface FBSDKShareButton : FBSDKButton <FBSDKSharingButton>
 
- @property (nonatomic, strong) id <FBSDKSharingContent> _Nullable shareContent;
 
- @property (nonatomic, readonly, copy) NSDictionary<FBSDKAppEventParameterName, id> * _Nullable analyticsParameters;
 
- @property (nonatomic, readonly) FBSDKAppEventName _Nonnull impressionTrackingEventName;
 
- @property (nonatomic, readonly, copy) NSString * _Nonnull impressionTrackingIdentifier;
 
- @property (nonatomic, readonly, getter=isImplicitlyDisabled) BOOL implicitlyDisabled;
 
- - (void)configureButton;
 
- - (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER;
 
- - (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER;
 
- @end
 
- /// Represents a single hashtag that can be used with the share dialog.
 
- SWIFT_CLASS_NAMED("Hashtag")
 
- @interface FBSDKHashtag : NSObject
 
- /// The hashtag string.
 
- /// You are responsible for making sure that <code>stringRepresentation</code> is a valid hashtag (a single ‘#’ followed by one or more
 
- /// word characters). Invalid hashtags are ignored when sharing content. You can check validity with the<code>valid</code> property.
 
- /// @return The hashtag string
 
- @property (nonatomic, copy) NSString * _Nonnull stringRepresentation;
 
- - (nonnull instancetype)initWithString:(NSString * _Nonnull)string OBJC_DESIGNATED_INITIALIZER;
 
- @property (nonatomic, readonly, copy) NSString * _Nonnull description;
 
- /// Tests if a hashtag is valid.
 
- /// A valid hashtag matches the regular expression “#\w+”: A single ‘#’ followed by one or more word characters.
 
- /// @return true if the hashtag is valid, false otherwise.
 
- @property (nonatomic, readonly) BOOL isValid;
 
- @property (nonatomic, readonly) NSUInteger hash;
 
- - (BOOL)isEqual:(id _Nullable)object SWIFT_WARN_UNUSED_RESULT;
 
- - (nonnull instancetype)init SWIFT_UNAVAILABLE;
 
- + (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
 
- @end
 
- @protocol FBSDKSharingDelegate;
 
- /// The common interface for components that initiate sharing.
 
- /// See ShareDialog, MessageDialog
 
- SWIFT_PROTOCOL_NAMED("Sharing")
 
- @protocol FBSDKSharing
 
- /// The receiver’s delegate or nil if it doesn’t have a delegate.
 
- @property (nonatomic, weak) id <FBSDKSharingDelegate> _Nullable delegate;
 
- /// The content to be shared.
 
- @property (nonatomic, strong) id <FBSDKSharingContent> _Nullable shareContent;
 
- /// A boolean value that indicates whether the receiver should fail if it finds an error with the share content.
 
- /// If <code>false</code>, the sharer will still be displayed without the data that was misconfigured.  For example, an
 
- /// invalid <code>placeID</code> specified on the <code>shareContent</code> would produce a data error.
 
- @property (nonatomic) BOOL shouldFailOnDataError;
 
- /// Validates the content on the receiver.
 
- /// @throws An error if the content is invalid
 
- - (BOOL)validateWithError:(NSError * _Nullable * _Nullable)error;
 
- @end
 
- /// The common interface for dialogs that initiate sharing.
 
- SWIFT_PROTOCOL_NAMED("SharingDialog")
 
- @protocol FBSDKSharingDialog <FBSDKSharing>
 
- /// A boolean value that indicates whether the receiver can initiate a share.
 
- /// May return <code>false</code> if the appropriate Facebook app is not installed and is required or an access token is
 
- /// required but not available.  This method does not validate the content on the receiver, so this can be checked before
 
- /// building up the content.
 
- /// See <code>Sharing.validate(error:)</code>
 
- /// @return <code>true</code> if the receiver can share, otherwise <code>false</code>.
 
- @property (nonatomic, readonly) BOOL canShow;
 
- /// Shows the dialog.
 
- /// @return <code>true</code> if the receiver was able to begin sharing, otherwise <code>false</code>.
 
- - (BOOL)show;
 
- @end
 
- /// A dialog for sharing content through Messenger.
 
- /// SUPPORTED SHARE TYPES
 
- /// <ul>
 
- ///   <li>
 
- ///     FBSDKShareLinkContent
 
- ///   </li>
 
- /// </ul>
 
- /// UNSUPPORTED SHARE TYPES (DEPRECATED AUGUST 2018)
 
- /// <ul>
 
- ///   <li>
 
- ///     FBSDKShareOpenGraphContent
 
- ///   </li>
 
- ///   <li>
 
- ///     FBSDKSharePhotoContent
 
- ///   </li>
 
- ///   <li>
 
- ///     FBSDKShareVideoContent
 
- ///   </li>
 
- ///   <li>
 
- ///     FBSDKShareMessengerOpenGraphMusicTemplateContent
 
- ///   </li>
 
- ///   <li>
 
- ///     FBSDKShareMessengerMediaTemplateContent
 
- ///   </li>
 
- ///   <li>
 
- ///     FBSDKShareMessengerGenericTemplateContent
 
- ///   </li>
 
- ///   <li>
 
- ///     Any other types that are not one of the four supported types listed above
 
- ///   </li>
 
- /// </ul>
 
- SWIFT_CLASS_NAMED("MessageDialog")
 
- @interface FBSDKMessageDialog : NSObject <FBSDKSharingDialog>
 
- /// The receiver’s delegate or nil if it doesn’t have a delegate.
 
- @property (nonatomic, weak) id <FBSDKSharingDelegate> _Nullable delegate;
 
- /// The content to be shared.
 
- @property (nonatomic, strong) id <FBSDKSharingContent> _Nullable shareContent;
 
- /// A Boolean value that indicates whether the receiver should fail if it finds an error with the share content.
 
- /// If <code>false</code>, the sharer will still be displayed without the data that was mis-configured.  For example, an
 
- /// invalid placeID specified on the shareContent would produce a data error.
 
- @property (nonatomic) BOOL shouldFailOnDataError;
 
- - (nonnull instancetype)init SWIFT_UNAVAILABLE;
 
- + (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
 
- /// Convenience initializer to return a Message Share Dialog with content and a delegate.
 
- /// @param content The content to be shared.
 
- /// @param delegate The receiver’s delegate.
 
- - (nonnull instancetype)initWithContent:(id <FBSDKSharingContent> _Nullable)content delegate:(id <FBSDKSharingDelegate> _Nullable)delegate;
 
- /// Convenience method to return a Message Share Dialog with content and a delegate.
 
- /// @param content The content to be shared.
 
- /// @param delegate The receiver’s delegate.
 
- + (FBSDKMessageDialog * _Nonnull)dialogWithContent:(id <FBSDKSharingContent> _Nullable)content delegate:(id <FBSDKSharingDelegate> _Nullable)delegate SWIFT_WARN_UNUSED_RESULT;
 
- /// Convenience method to show a Message Share Dialog with content and a delegate.
 
- /// @param content The content to be shared.
 
- /// @param delegate The receiver’s delegate.
 
- + (FBSDKMessageDialog * _Nonnull)showWithContent:(id <FBSDKSharingContent> _Nullable)content delegate:(id <FBSDKSharingDelegate> _Nullable)delegate SWIFT_WARN_UNUSED_RESULT;
 
- /// A Boolean value that indicates whether the receiver can initiate a share.
 
- /// May return <code>false</code> if the appropriate Facebook app is not installed and is required or an access token is
 
- /// required but not available.  This method does not validate the content on the receiver, so this can be checked before
 
- /// building up the content.
 
- /// See <code>Sharing.validate()</code>
 
- /// @return <code>true</code> if the receiver can share, otherwise <code>false</code>.
 
- @property (nonatomic, readonly) BOOL canShow;
 
- /// Shows the dialog.
 
- /// @return <code>true</code> if the receiver was able to begin sharing, otherwise <code>false</code>.
 
- - (BOOL)show;
 
- /// Validates the content on the receiver.
 
- /// @return <code>true</code> if the content is valid, otherwise <code>false</code>.
 
- - (BOOL)validateWithError:(NSError * _Nullable * _Nullable)error;
 
- @end
 
- /// A model for content to share with a Facebook camera effect.
 
- SWIFT_CLASS_NAMED("ShareCameraEffectContent")
 
- @interface FBSDKShareCameraEffectContent : NSObject
 
- /// ID of the camera effect to use.
 
- @property (nonatomic, copy) NSString * _Nonnull effectID;
 
- /// Arguments for the effect.
 
- @property (nonatomic, strong) FBSDKCameraEffectArguments * _Nonnull effectArguments;
 
- /// Textures for the effect.
 
- @property (nonatomic, strong) FBSDKCameraEffectTextures * _Nonnull effectTextures;
 
- /// URL for the content being shared.
 
- /// This URL will be checked for all link meta tags for linking in platform specific ways.  See documentation
 
- /// for App Links (https://developers.facebook.com/docs/applinks/)
 
- @property (nonatomic, copy) NSURL * _Nullable contentURL;
 
- /// Hashtag for the content being shared.
 
- @property (nonatomic, strong) FBSDKHashtag * _Nullable hashtag;
 
- /// List of IDs for taggable people to tag with this content.
 
- /// See documentation for Taggable Friends
 
- /// (https://developers.facebook.com/docs/graph-api/reference/user/taggable_friends)
 
- @property (nonatomic, copy) NSArray<NSString *> * _Nonnull peopleIDs;
 
- /// The ID for a place to tag with this content.
 
- @property (nonatomic, copy) NSString * _Nullable placeID;
 
- /// A value to be added to the referrer URL when a person follows a link from this shared content on feed.
 
- @property (nonatomic, copy) NSString * _Nullable ref;
 
- /// For shares into Messenger, this pageID will be used to map the app to page and attach attribution to the share.
 
- @property (nonatomic, copy) NSString * _Nullable pageID;
 
- /// A unique identifier for a share involving this content, useful for tracking purposes.
 
- @property (nonatomic, readonly, copy) NSString * _Nullable shareUUID;
 
- - (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
 
- @end
 
- /// A base interface for content to be shared.
 
- SWIFT_PROTOCOL_NAMED("SharingContent")
 
- @protocol FBSDKSharingContent <FBSDKSharingValidatable, NSObject>
 
- /// URL for the content being shared.
 
- /// This URL will be checked for all link meta tags for linking in platform specific ways.
 
- /// See documentation for App Links (https://developers.facebook.com/docs/applinks/)
 
- @property (nonatomic, copy) NSURL * _Nullable contentURL;
 
- /// Hashtag for the content being shared.
 
- @property (nonatomic, strong) FBSDKHashtag * _Nullable hashtag;
 
- /// List of IDs for taggable people to tag with this content.
 
- /// See documentation for Taggable Friends
 
- /// (https://developers.facebook.com/docs/graph-api/reference/user/taggable_friends)
 
- @property (nonatomic, copy) NSArray<NSString *> * _Nonnull peopleIDs;
 
- /// The ID for a place to tag with this content.
 
- @property (nonatomic, copy) NSString * _Nullable placeID;
 
- /// A value to be added to the referrer URL when a person follows a link from this shared content on feed.
 
- @property (nonatomic, copy) NSString * _Nullable ref;
 
- /// For shares into Messenger, this pageID will be used to map the app to page and attach attribution to the share.
 
- @property (nonatomic, copy) NSString * _Nullable pageID;
 
- /// A unique identifier for a share involving this content, useful for tracking purposes.
 
- @property (nonatomic, readonly, copy) NSString * _Nullable shareUUID;
 
- /// Adds content to an existing dictionary as key/value pairs and returns the
 
- /// updated dictionary
 
- /// @param existingParameters An immutable dictionary of existing values
 
- /// @param bridgeOptions The options for bridging
 
- /// @return A new dictionary with the modified contents
 
- - (NSDictionary<NSString *, id> * _Nonnull)addParameters:(NSDictionary<NSString *, id> * _Nonnull)existingParameters bridgeOptions:(FBSDKShareBridgeOptions)bridgeOptions SWIFT_WARN_UNUSED_RESULT;
 
- @end
 
- @interface FBSDKShareCameraEffectContent (SWIFT_EXTENSION(FBSDKShareKit)) <FBSDKSharingContent>
 
- /// Adds content to an existing dictionary as key/value pairs and returns the
 
- /// updated dictionary
 
- /// @param existingParameters An immutable dictionary of existing values
 
- /// @param bridgeOptions The options for bridging
 
- /// @return A new dictionary with the modified contents
 
- - (NSDictionary<NSString *, id> * _Nonnull)addParameters:(NSDictionary<NSString *, id> * _Nonnull)existingParameters bridgeOptions:(FBSDKShareBridgeOptions)bridgeOptions SWIFT_WARN_UNUSED_RESULT;
 
- - (BOOL)validateWithOptions:(FBSDKShareBridgeOptions)bridgeOptions error:(NSError * _Nullable * _Nullable)error;
 
- @end
 
- @class UIViewController;
 
- enum FBSDKShareDialogMode : NSUInteger;
 
- /// A dialog for sharing content on Facebook.
 
- SWIFT_CLASS_NAMED("ShareDialog")
 
- @interface FBSDKShareDialog : NSObject <FBSDKSharingDialog>
 
- /// A UIViewController from which to present the dialog.
 
- /// If not specified, the topmost view controller will be automatically determined as best as possible.
 
- @property (nonatomic, weak) UIViewController * _Nullable fromViewController;
 
- /// The mode with which to display the dialog.
 
- /// Defaults to <code>.automatic</code>, which will automatically choose the best available mode.
 
- @property (nonatomic) enum FBSDKShareDialogMode mode;
 
- /// The receiver’s delegate or nil if it doesn’t have a delegate.
 
- @property (nonatomic, weak) id <FBSDKSharingDelegate> _Nullable delegate;
 
- /// The content to be shared.
 
- @property (nonatomic, strong) id <FBSDKSharingContent> _Nullable shareContent;
 
- /// A Boolean value that indicates whether the receiver should fail if it finds an error with the share content.
 
- /// If <code>false</code>, the sharer will still be displayed without the data that was misconfigured.  For example, an
 
- /// invalid <code>placeID</code> specified on the <code>shareContent</code> would produce a data error.
 
- @property (nonatomic) BOOL shouldFailOnDataError;
 
- /// Convenience initializer to initialize a <code>ShareDialog</code> with a view controller, content and delegate.
 
- /// @param viewController A view controller from which to present the dialog, if appropriate.
 
- /// @param content The content to be shared.
 
- /// @param delegate The dialog’s delegate.
 
- - (nonnull instancetype)initWithViewController:(UIViewController * _Nullable)viewController content:(id <FBSDKSharingContent> _Nullable)content delegate:(id <FBSDKSharingDelegate> _Nullable)delegate OBJC_DESIGNATED_INITIALIZER;
 
- /// Convenience method to create a <code>ShareDialog</code> with a view controller, content and delegate.
 
- /// @param viewController A view controller from which to present the dialog, if appropriate.
 
- /// @param content The content to be shared.
 
- /// @param delegate The dialog’s delegate.
 
- + (FBSDKShareDialog * _Nonnull)dialogWithViewController:(UIViewController * _Nullable)viewController withContent:(id <FBSDKSharingContent> _Nullable)content delegate:(id <FBSDKSharingDelegate> _Nullable)delegate SWIFT_WARN_UNUSED_RESULT;
 
- /// Convenience method to show a <code>ShareDialog</code> with a view controller, content and delegate.
 
- /// @param viewController A view controller from which to present the dialog, if appropriate.
 
- /// @param content The content to be shared.
 
- /// @param delegate The dialog’s delegate.
 
- + (FBSDKShareDialog * _Nonnull)showFromViewController:(UIViewController * _Nullable)viewController withContent:(id <FBSDKSharingContent> _Nullable)content delegate:(id <FBSDKSharingDelegate> _Nullable)delegate;
 
- - (nonnull instancetype)init SWIFT_UNAVAILABLE;
 
- + (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
 
- @end
 
- @interface FBSDKShareDialog (SWIFT_EXTENSION(FBSDKShareKit))
 
- @end
 
- /// Modes for the FBSDKShareDialog.
 
- /// The automatic mode will progressively check the availability of different modes and open the most
 
- /// appropriate mode for the dialog that is available.
 
- typedef SWIFT_ENUM_NAMED(NSUInteger, FBSDKShareDialogMode, "Mode", open) {
 
- /// Acts with the most appropriate mode that is available.
 
-   FBSDKShareDialogModeAutomatic = 0,
 
- /// Displays the dialog in the main native Facebook app.
 
-   FBSDKShareDialogModeNative = 1,
 
- /// Displays the dialog in the iOS integrated share sheet.
 
-   FBSDKShareDialogModeShareSheet = 2,
 
- /// Displays the dialog in Safari.
 
-   FBSDKShareDialogModeBrowser = 3,
 
- /// Displays the dialog in a WKWebView within the app.
 
-   FBSDKShareDialogModeWeb = 4,
 
- /// Displays the feed dialog in Safari.
 
-   FBSDKShareDialogModeFeedBrowser = 5,
 
- /// Displays the feed dialog in a WKWebView within the app.
 
-   FBSDKShareDialogModeFeedWeb = 6,
 
- };
 
- @class FBSDKWebDialog;
 
- @interface FBSDKShareDialog (SWIFT_EXTENSION(FBSDKShareKit)) <FBSDKWebDialogDelegate>
 
- - (void)webDialog:(FBSDKWebDialog * _Nonnull)webDialog didCompleteWithResults:(NSDictionary<NSString *, id> * _Nonnull)results;
 
- - (void)webDialog:(FBSDKWebDialog * _Nonnull)webDialog didFailWithError:(NSError * _Nonnull)error;
 
- - (void)webDialogDidCancel:(FBSDKWebDialog * _Nonnull)webDialog;
 
- @end
 
- @interface FBSDKShareDialog (SWIFT_EXTENSION(FBSDKShareKit))
 
- @property (nonatomic, readonly) BOOL canShow;
 
- - (BOOL)show;
 
- - (BOOL)validateWithError:(NSError * _Nullable * _Nullable)error;
 
- @end
 
- /// ShareError
 
- /// Error codes for ShareErrorDomain.
 
- typedef SWIFT_ENUM_NAMED(NSInteger, FBSDKShareError, "ShareError", open) {
 
- /// Reserved
 
-   FBSDKShareErrorReserved = 200,
 
- /// The error code for errors from uploading open graph objects.
 
-   FBSDKShareErrorOpenGraph = 201,
 
- /// The error code for when a sharing dialog is not available.
 
- /// Use the canShare methods to check for this case before calling show.
 
-   FBSDKShareErrorDialogNotAvailable = 202,
 
- /// The error code for unknown errors.
 
-   FBSDKShareErrorUnknown = 203,
 
- };
 
- /// A model for status and link content to be shared.
 
- SWIFT_CLASS_NAMED("ShareLinkContent")
 
- @interface FBSDKShareLinkContent : NSObject
 
- /// Some quote text of the link.
 
- /// If specified, the quote text will render with custom styling on top of the link.
 
- @property (nonatomic, copy) NSString * _Nullable quote;
 
- /// URL for the content being shared.
 
- /// This URL will be checked for all link meta tags for linking in platform specific ways.  See documentation
 
- /// for App Links (https://developers.facebook.com/docs/applinks/)
 
- @property (nonatomic, copy) NSURL * _Nullable contentURL;
 
- /// Hashtag for the content being shared.
 
- @property (nonatomic, strong) FBSDKHashtag * _Nullable hashtag;
 
- /// List of IDs for taggable people to tag with this content.
 
- /// See documentation for Taggable Friends
 
- /// (https://developers.facebook.com/docs/graph-api/reference/user/taggable_friends)
 
- @property (nonatomic, copy) NSArray<NSString *> * _Nonnull peopleIDs;
 
- /// The ID for a place to tag with this content.
 
- @property (nonatomic, copy) NSString * _Nullable placeID;
 
- /// A value to be added to the referrer URL when a person follows a link from this shared content on feed.
 
- @property (nonatomic, copy) NSString * _Nullable ref;
 
- /// For shares into Messenger, this pageID will be used to map the app to page and attach attribution to the share.
 
- @property (nonatomic, copy) NSString * _Nullable pageID;
 
- /// A unique identifier for a share involving this content, useful for tracking purposes.
 
- @property (nonatomic, readonly, copy) NSString * _Nullable shareUUID;
 
- - (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
 
- @end
 
- @interface FBSDKShareLinkContent (SWIFT_EXTENSION(FBSDKShareKit)) <FBSDKSharingContent>
 
- /// Adds content to an existing dictionary as key/value pairs and returns the
 
- /// updated dictionary
 
- /// @param existingParameters An immutable dictionary of existing values
 
- /// @param bridgeOptions The options for bridging
 
- /// @return A new dictionary with the modified contents
 
- - (NSDictionary<NSString *, id> * _Nonnull)addParameters:(NSDictionary<NSString *, id> * _Nonnull)existingParameters bridgeOptions:(FBSDKShareBridgeOptions)bridgeOptions SWIFT_WARN_UNUSED_RESULT;
 
- @end
 
- @interface FBSDKShareLinkContent (SWIFT_EXTENSION(FBSDKShareKit)) <FBSDKSharingValidatable>
 
- /// Asks the receiver to validate that its content or media values are valid.
 
- - (BOOL)validateWithOptions:(FBSDKShareBridgeOptions)bridgeOptions error:(NSError * _Nullable * _Nullable)error;
 
- @end
 
- /// A protocol for media content (photo or video) to be shared.
 
- SWIFT_PROTOCOL_NAMED("ShareMedia")
 
- @protocol FBSDKShareMedia
 
- @end
 
- /// A model for media content (photo or video) to be shared.
 
- SWIFT_CLASS_NAMED("ShareMediaContent")
 
- @interface FBSDKShareMediaContent : NSObject
 
- /// Media to be shared: an array of <code>SharePhoto</code> or <code>ShareVideo</code>
 
- @property (nonatomic, copy) NSArray<id <FBSDKShareMedia>> * _Nonnull media;
 
- /// URL for the content being shared.
 
- /// This URL will be checked for all link meta tags for linking in platform specific ways.  See documentation
 
- /// for App Links (https://developers.facebook.com/docs/applinks/)
 
- @property (nonatomic, copy) NSURL * _Nullable contentURL;
 
- /// Hashtag for the content being shared.
 
- @property (nonatomic, strong) FBSDKHashtag * _Nullable hashtag;
 
- /// List of IDs for taggable people to tag with this content.
 
- /// See documentation for Taggable Friends
 
- /// (https://developers.facebook.com/docs/graph-api/reference/user/taggable_friends)
 
- @property (nonatomic, copy) NSArray<NSString *> * _Nonnull peopleIDs;
 
- /// The ID for a place to tag with this content.
 
- @property (nonatomic, copy) NSString * _Nullable placeID;
 
- /// A value to be added to the referrer URL when a person follows a link from this shared content on feed.
 
- @property (nonatomic, copy) NSString * _Nullable ref;
 
- /// For shares into Messenger, this pageID will be used to map the app to page and attach attribution to the share.
 
- @property (nonatomic, copy) NSString * _Nullable pageID;
 
- /// A unique identifier for a share involving this content, useful for tracking purposes.
 
- @property (nonatomic, readonly, copy) NSString * _Nullable shareUUID;
 
- - (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
 
- @end
 
- @interface FBSDKShareMediaContent (SWIFT_EXTENSION(FBSDKShareKit)) <FBSDKSharingValidatable>
 
- /// Asks the receiver to validate that its content or media values are valid.
 
- - (BOOL)validateWithOptions:(FBSDKShareBridgeOptions)bridgeOptions error:(NSError * _Nullable * _Nullable)error;
 
- @end
 
- @interface FBSDKShareMediaContent (SWIFT_EXTENSION(FBSDKShareKit)) <FBSDKSharingContent>
 
- /// Adds content to an existing dictionary as key/value pairs and returns the
 
- /// updated dictionary
 
- /// @param existingParameters An immutable dictionary of existing values
 
- /// @param bridgeOptions The options for bridging
 
- /// @return A new dictionary with the modified contents
 
- - (NSDictionary<NSString *, id> * _Nonnull)addParameters:(NSDictionary<NSString *, id> * _Nonnull)existingParameters bridgeOptions:(FBSDKShareBridgeOptions)bridgeOptions SWIFT_WARN_UNUSED_RESULT;
 
- @end
 
- @class PHAsset;
 
- /// A photo for sharing.
 
- SWIFT_CLASS_NAMED("SharePhoto")
 
- @interface FBSDKSharePhoto : NSObject <FBSDKShareMedia>
 
- /// If the photo is resident in memory, this method supplies the data.
 
- @property (nonatomic, strong) UIImage * _Nullable image;
 
- /// URL that points to a network location or the location of the photo on disk
 
- @property (nonatomic, copy) NSURL * _Nullable imageURL;
 
- /// The representation of the photo in the Photos library.
 
- @property (nonatomic, strong) PHAsset * _Nullable photoAsset;
 
- /// Specifies whether the photo represented by the receiver was generated by the user (<code>true</code>)
 
- /// or by the application (<code>false</code>).
 
- @property (nonatomic) BOOL isUserGenerated;
 
- /// The user-generated caption for the photo. Note that the ‘caption’ must come from
 
- /// the user, as pre-filled content is forbidden by the Platform Policies (2.3).
 
- @property (nonatomic, copy) NSString * _Nullable caption;
 
- /// Convenience method to build a new photo object with an image.
 
- /// \param image If the photo is resident in memory, this method supplies the data 
 
- ///
 
- /// \param isUserGenerated Specifies whether the photo represented by the receiver was generated by the user or by the 
 
- /// application
 
- ///
 
- - (nonnull instancetype)initWithImage:(UIImage * _Nonnull)image isUserGenerated:(BOOL)isUserGenerated;
 
- /// Convenience method to build a new photo object with an imageURL.
 
- /// This method should only be used when adding photo content to open graph stories.
 
- /// For example, if you’re trying to share a photo from the web by itself, download the image and use
 
- /// <code>init(image:isUserGenerated:)</code> instead.
 
- /// \param imageURL The URL to the photo 
 
- ///
 
- /// \param isUserGenerated Specifies whether the photo represented by the receiver was generated by the user or by the 
 
- /// application
 
- ///
 
- - (nonnull instancetype)initWithImageURL:(NSURL * _Nonnull)imageURL isUserGenerated:(BOOL)isUserGenerated;
 
- /// Convenience method to build a new photo object with a PHAsset.
 
- /// \param photoAsset The PHAsset that represents the photo in the Photos library.
 
- ///
 
- /// \param isUserGenerated Specifies whether the photo represented by the receiver was generated by the user or by
 
- /// the application
 
- ///
 
- - (nonnull instancetype)initWithPhotoAsset:(PHAsset * _Nonnull)photoAsset isUserGenerated:(BOOL)isUserGenerated;
 
- - (nonnull instancetype)init SWIFT_UNAVAILABLE;
 
- + (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
 
- @end
 
- @interface FBSDKSharePhoto (SWIFT_EXTENSION(FBSDKShareKit)) <FBSDKSharingValidatable>
 
- /// Asks the receiver to validate that its content or media values are valid.
 
- - (BOOL)validateWithOptions:(FBSDKShareBridgeOptions)bridgeOptions error:(NSError * _Nullable * _Nullable)error;
 
- @end
 
- /// A model for photo content to be shared.
 
- SWIFT_CLASS_NAMED("SharePhotoContent")
 
- @interface FBSDKSharePhotoContent : NSObject
 
- /// Photos to be shared.
 
- @property (nonatomic, copy) NSArray<FBSDKSharePhoto *> * _Nonnull photos;
 
- /// URL for the content being shared.
 
- /// This URL will be checked for all link meta tags for linking in platform specific ways.  See documentation
 
- /// for App Links (https://developers.facebook.com/docs/applinks/)
 
- @property (nonatomic, copy) NSURL * _Nullable contentURL;
 
- /// Hashtag for the content being shared.
 
- @property (nonatomic, strong) FBSDKHashtag * _Nullable hashtag;
 
- /// List of IDs for taggable people to tag with this content.
 
- /// See documentation for Taggable Friends
 
- /// (https://developers.facebook.com/docs/graph-api/reference/user/taggable_friends)
 
- @property (nonatomic, copy) NSArray<NSString *> * _Nonnull peopleIDs;
 
- /// The ID for a place to tag with this content.
 
- @property (nonatomic, copy) NSString * _Nullable placeID;
 
- /// A value to be added to the referrer URL when a person follows a link from this shared content on feed.
 
- @property (nonatomic, copy) NSString * _Nullable ref;
 
- /// For shares into Messenger, this pageID will be used to map the app to page and attach attribution to the share.
 
- @property (nonatomic, copy) NSString * _Nullable pageID;
 
- /// A unique identifier for a share involving this content, useful for tracking purposes.
 
- @property (nonatomic, readonly, copy) NSString * _Nullable shareUUID;
 
- - (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
 
- @end
 
- @interface FBSDKSharePhotoContent (SWIFT_EXTENSION(FBSDKShareKit)) <FBSDKSharingContent>
 
- /// Adds content to an existing dictionary as key/value pairs and returns the
 
- /// updated dictionary
 
- /// @param existingParameters An immutable dictionary of existing values
 
- /// @param bridgeOptions The options for bridging
 
- /// @return A new dictionary with the modified contents
 
- - (NSDictionary<NSString *, id> * _Nonnull)addParameters:(NSDictionary<NSString *, id> * _Nonnull)existingParameters bridgeOptions:(FBSDKShareBridgeOptions)bridgeOptions SWIFT_WARN_UNUSED_RESULT;
 
- @end
 
- @interface FBSDKSharePhotoContent (SWIFT_EXTENSION(FBSDKShareKit)) <FBSDKSharingValidatable>
 
- /// Validate that this content contains valid values
 
- - (BOOL)validateWithOptions:(FBSDKShareBridgeOptions)bridgeOptions error:(NSError * _Nullable * _Nullable)error;
 
- @end
 
- @class NSData;
 
- /// A video for sharing.
 
- SWIFT_CLASS_NAMED("ShareVideo")
 
- @interface FBSDKShareVideo : NSObject <FBSDKShareMedia>
 
- /// The raw video data.
 
- @property (nonatomic, copy) NSData * _Nullable data;
 
- /// The representation of the video in the Photos library.
 
- @property (nonatomic, strong) PHAsset * _Nullable videoAsset;
 
- /// The file URL to the video.
 
- @property (nonatomic, copy) NSURL * _Nullable videoURL;
 
- /// The photo that represents the video.
 
- @property (nonatomic, strong) FBSDKSharePhoto * _Nullable previewPhoto;
 
- /// Convenience method to build a new video object from raw data and an optional preview photo.
 
- /// \param data The Data object that holds the raw video data.
 
- ///
 
- /// \param previewPhoto The photo that represents the video.
 
- ///
 
- - (nonnull instancetype)initWithData:(NSData * _Nonnull)data previewPhoto:(FBSDKSharePhoto * _Nullable)previewPhoto;
 
- /// Convenience method to build a new video object from a PHAsset and an optional preview photo.
 
- /// \param videoAsset The PHAsset that represents the video in the Photos library.
 
- ///
 
- /// \param previewPhoto The photo that represents the video.
 
- ///
 
- - (nonnull instancetype)initWithVideoAsset:(PHAsset * _Nonnull)videoAsset previewPhoto:(FBSDKSharePhoto * _Nullable)previewPhoto;
 
- /// Convenience method to build a new video object from a URL and an optional preview photo.
 
- /// \param videoURL The URL to the video.
 
- ///
 
- /// \param previewPhoto The photo that represents the video.
 
- ///
 
- - (nonnull instancetype)initWithVideoURL:(NSURL * _Nonnull)videoURL previewPhoto:(FBSDKSharePhoto * _Nullable)previewPhoto;
 
- - (nonnull instancetype)init SWIFT_UNAVAILABLE;
 
- + (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
 
- @end
 
- @interface FBSDKShareVideo (SWIFT_EXTENSION(FBSDKShareKit)) <FBSDKSharingValidatable>
 
- /// Asks the receiver to validate that its content or media values are valid.
 
- - (BOOL)validateWithOptions:(FBSDKShareBridgeOptions)bridgeOptions error:(NSError * _Nullable * _Nullable)error;
 
- @end
 
- /// A model for video content to be shared.
 
- SWIFT_CLASS_NAMED("ShareVideoContent")
 
- @interface FBSDKShareVideoContent : NSObject
 
- /// The video to be shared
 
- @property (nonatomic, strong) FBSDKShareVideo * _Nonnull video;
 
- /// URL for the content being shared.
 
- /// This URL will be checked for all link meta tags for linking in platform specific ways.  See documentation
 
- /// for App Links (https://developers.facebook.com/docs/applinks/)
 
- @property (nonatomic, copy) NSURL * _Nullable contentURL;
 
- /// Hashtag for the content being shared.
 
- @property (nonatomic, strong) FBSDKHashtag * _Nullable hashtag;
 
- /// List of IDs for taggable people to tag with this content.
 
- /// See documentation for Taggable Friends
 
- /// (https://developers.facebook.com/docs/graph-api/reference/user/taggable_friends)
 
- @property (nonatomic, copy) NSArray<NSString *> * _Nonnull peopleIDs;
 
- /// The ID for a place to tag with this content.
 
- @property (nonatomic, copy) NSString * _Nullable placeID;
 
- /// A value to be added to the referrer URL when a person follows a link from this shared content on feed.
 
- @property (nonatomic, copy) NSString * _Nullable ref;
 
- /// For shares into Messenger, this pageID will be used to map the app to page and attach attribution to the share.
 
- @property (nonatomic, copy) NSString * _Nullable pageID;
 
- /// A unique identifier for a share involving this content, useful for tracking purposes.
 
- @property (nonatomic, readonly, copy) NSString * _Nullable shareUUID;
 
- - (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
 
- @end
 
- @interface FBSDKShareVideoContent (SWIFT_EXTENSION(FBSDKShareKit)) <FBSDKSharingContent>
 
- /// Adds content to an existing dictionary as key/value pairs and returns the
 
- /// updated dictionary
 
- /// @param existingParameters An immutable dictionary of existing values
 
- /// @param bridgeOptions The options for bridging
 
- /// @return A new dictionary with the modified contents
 
- - (NSDictionary<NSString *, id> * _Nonnull)addParameters:(NSDictionary<NSString *, id> * _Nonnull)existingParameters bridgeOptions:(FBSDKShareBridgeOptions)bridgeOptions SWIFT_WARN_UNUSED_RESULT;
 
- @end
 
- @interface FBSDKShareVideoContent (SWIFT_EXTENSION(FBSDKShareKit)) <FBSDKSharingValidatable>
 
- - (BOOL)validateWithOptions:(FBSDKShareBridgeOptions)bridgeOptions error:(NSError * _Nullable * _Nullable)error;
 
- @end
 
- /// A delegate for types conforming to the <code>Sharing</code> protocol.
 
- /// The delegate is notified with the results of the sharer as long as the application has permissions to
 
- /// receive the information.  For example, if the person is not signed into the containing app, the sharer may not be able
 
- /// to distinguish between completion of a share and cancellation.
 
- SWIFT_PROTOCOL_NAMED("SharingDelegate")
 
- @protocol FBSDKSharingDelegate
 
- /// Sent to the delegate when sharing completes without error or cancellation.
 
- /// @param sharer The sharer that completed.
 
- /// @param results The results from the sharer.  This may be nil or empty.
 
- - (void)sharer:(id <FBSDKSharing> _Nonnull)sharer didCompleteWithResults:(NSDictionary<NSString *, id> * _Nonnull)results;
 
- /// Sent to the delegate when the sharer encounters an error.
 
- /// @param sharer The sharer that completed.
 
- /// @param error The error.
 
- - (void)sharer:(id <FBSDKSharing> _Nonnull)sharer didFailWithError:(NSError * _Nonnull)error;
 
- /// Sent to the delegate when the sharer is cancelled.
 
- /// @param sharer The sharer that completed.
 
- - (void)sharerDidCancel:(id <FBSDKSharing> _Nonnull)sharer;
 
- @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
 
 
  |