-
-/// Game achievement ID (NSString).
-///
-/// NSDictionary *params = @{
-/// kFIRParameterAchievementID : @"10_matches_won",
-/// // ...
-/// };
-///
-static NSString *const kFIRParameterAchievementID NS_SWIFT_NAME(AnalyticsParameterAchievementID) =
- @"achievement_id";
-
-/// Ad Network Click ID (NSString). Used for network-specific click IDs which vary in format.
-///
-/// NSDictionary *params = @{
-/// kFIRParameterAdNetworkClickID : @"1234567",
-/// // ...
-/// };
-///
-static NSString *const kFIRParameterAdNetworkClickID
- NS_SWIFT_NAME(AnalyticsParameterAdNetworkClickID) = @"aclid";
-
-/// The store or affiliation from which this transaction occurred (NSString).
-///
-/// NSDictionary *params = @{
-/// kFIRParameterAffiliation : @"Google Store",
-/// // ...
-/// };
-///
-static NSString *const kFIRParameterAffiliation NS_SWIFT_NAME(AnalyticsParameterAffiliation) =
- @"affiliation";
-
-/// The individual campaign name, slogan, promo code, etc. Some networks have pre-defined macro to
-/// capture campaign information, otherwise can be populated by developer. Highly Recommended
-/// (NSString).
-///
-/// NSDictionary *params = @{
-/// kFIRParameterCampaign : @"winter_promotion",
-/// // ...
-/// };
-///
-static NSString *const kFIRParameterCampaign NS_SWIFT_NAME(AnalyticsParameterCampaign) =
- @"campaign";
-
-/// Character used in game (NSString).
-///
-/// NSDictionary *params = @{
-/// kFIRParameterCharacter : @"beat_boss",
-/// // ...
-/// };
-///
-static NSString *const kFIRParameterCharacter NS_SWIFT_NAME(AnalyticsParameterCharacter) =
- @"character";
-
-/// The checkout step (1..N) (unsigned 64-bit integer as NSNumber).
-///
-/// NSDictionary *params = @{
-/// kFIRParameterCheckoutStep : @"1",
-/// // ...
-/// };
-///
-static NSString *const kFIRParameterCheckoutStep NS_SWIFT_NAME(AnalyticsParameterCheckoutStep) =
- @"checkout_step";
-
-/// Some option on a step in an ecommerce flow (NSString).
-///
-/// NSDictionary *params = @{
-/// kFIRParameterCheckoutOption : @"Visa",
-/// // ...
-/// };
-///
-static NSString *const kFIRParameterCheckoutOption
- NS_SWIFT_NAME(AnalyticsParameterCheckoutOption) = @"checkout_option";
-
-/// Campaign content (NSString).
-static NSString *const kFIRParameterContent NS_SWIFT_NAME(AnalyticsParameterContent) = @"content";
-
-/// Type of content selected (NSString).
-///
-/// NSDictionary *params = @{
-/// kFIRParameterContentType : @"news article",
-/// // ...
-/// };
-///
-static NSString *const kFIRParameterContentType NS_SWIFT_NAME(AnalyticsParameterContentType) =
- @"content_type";
-
-/// Coupon code for a purchasable item (NSString).
-///
-/// NSDictionary *params = @{
-/// kFIRParameterCoupon : @"zz123",
-/// // ...
-/// };
-///
-static NSString *const kFIRParameterCoupon NS_SWIFT_NAME(AnalyticsParameterCoupon) = @"coupon";
-
-/// Campaign custom parameter (NSString). Used as a method of capturing custom data in a campaign.
-/// Use varies by network.
-///
-/// NSDictionary *params = @{
-/// kFIRParameterCP1 : @"custom_data",
-/// // ...
-/// };
-///
-static NSString *const kFIRParameterCP1 NS_SWIFT_NAME(AnalyticsParameterCP1) = @"cp1";
-
-/// The name of a creative used in a promotional spot (NSString).
-///
-/// NSDictionary *params = @{
-/// kFIRParameterCreativeName : @"Summer Sale",
-/// // ...
-/// };
-///
-static NSString *const kFIRParameterCreativeName NS_SWIFT_NAME(AnalyticsParameterCreativeName) =
- @"creative_name";
-
-/// The name of a creative slot (NSString).
-///
-/// NSDictionary *params = @{
-/// kFIRParameterCreativeSlot : @"summer_banner2",
-/// // ...
-/// };
-///
-static NSString *const kFIRParameterCreativeSlot NS_SWIFT_NAME(AnalyticsParameterCreativeSlot) =
- @"creative_slot";
-
-/// Purchase currency in 3-letter
-/// ISO_4217 format (NSString).
-///
-/// NSDictionary *params = @{
-/// kFIRParameterCurrency : @"USD",
-/// // ...
-/// };
-///
-static NSString *const kFIRParameterCurrency NS_SWIFT_NAME(AnalyticsParameterCurrency) =
- @"currency";
-
-/// Flight or Travel destination (NSString).
-///
-/// NSDictionary *params = @{
-/// kFIRParameterDestination : @"Mountain View, CA",
-/// // ...
-/// };
-///
-static NSString *const kFIRParameterDestination NS_SWIFT_NAME(AnalyticsParameterDestination) =
- @"destination";
-
-/// The arrival date, check-out date or rental end date for the item. This should be in
-/// YYYY-MM-DD format (NSString).
-///
-/// NSDictionary *params = @{
-/// kFIRParameterEndDate : @"2015-09-14",
-/// // ...
-/// };
-///
-static NSString *const kFIRParameterEndDate NS_SWIFT_NAME(AnalyticsParameterEndDate) = @"end_date";
-
-/// Flight number for travel events (NSString).
-///
-/// NSDictionary *params = @{
-/// kFIRParameterFlightNumber : @"ZZ800",
-/// // ...
-/// };
-///
-static NSString *const kFIRParameterFlightNumber NS_SWIFT_NAME(AnalyticsParameterFlightNumber) =
- @"flight_number";
-
-/// Group/clan/guild ID (NSString).
-///
-/// NSDictionary *params = @{
-/// kFIRParameterGroupID : @"g1",
-/// // ...
-/// };
-///
-static NSString *const kFIRParameterGroupID NS_SWIFT_NAME(AnalyticsParameterGroupID) = @"group_id";
-
-/// Index of an item in a list (signed 64-bit integer as NSNumber).
-///
-/// NSDictionary *params = @{
-/// kFIRParameterIndex : @(1),
-/// // ...
-/// };
-///
-static NSString *const kFIRParameterIndex NS_SWIFT_NAME(AnalyticsParameterIndex) = @"index";
-
-/// Item brand (NSString).
-///
-/// NSDictionary *params = @{
-/// kFIRParameterItemBrand : @"Google",
-/// // ...
-/// };
-///
-static NSString *const kFIRParameterItemBrand NS_SWIFT_NAME(AnalyticsParameterItemBrand) =
- @"item_brand";
-
-/// Item category (NSString).
-///
-/// NSDictionary *params = @{
-/// kFIRParameterItemCategory : @"t-shirts",
-/// // ...
-/// };
-///
-static NSString *const kFIRParameterItemCategory NS_SWIFT_NAME(AnalyticsParameterItemCategory) =
- @"item_category";
-
-/// Item ID (NSString).
-///
-/// NSDictionary *params = @{
-/// kFIRParameterItemID : @"p7654",
-/// // ...
-/// };
-///
-static NSString *const kFIRParameterItemID NS_SWIFT_NAME(AnalyticsParameterItemID) = @"item_id";
-
-/// The Google Place ID (NSString) that
-/// corresponds to the associated item. Alternatively, you can supply your own custom Location ID.
-///
-/// NSDictionary *params = @{
-/// kFIRParameterItemLocationID : @"ChIJiyj437sx3YAR9kUWC8QkLzQ",
-/// // ...
-/// };
-///
-static NSString *const kFIRParameterItemLocationID
- NS_SWIFT_NAME(AnalyticsParameterItemLocationID) = @"item_location_id";
-
-/// Item name (NSString).
-///
-/// NSDictionary *params = @{
-/// kFIRParameterItemName : @"abc",
-/// // ...
-/// };
-///
-static NSString *const kFIRParameterItemName NS_SWIFT_NAME(AnalyticsParameterItemName) =
- @"item_name";
-
-/// The list in which the item was presented to the user (NSString).
-///
-/// NSDictionary *params = @{
-/// kFIRParameterItemList : @"Search Results",
-/// // ...
-/// };
-///
-static NSString *const kFIRParameterItemList NS_SWIFT_NAME(AnalyticsParameterItemList) =
- @"item_list";
-
-/// Item variant (NSString).
-///
-/// NSDictionary *params = @{
-/// kFIRParameterItemVariant : @"Red",
-/// // ...
-/// };
-///
-static NSString *const kFIRParameterItemVariant NS_SWIFT_NAME(AnalyticsParameterItemVariant) =
- @"item_variant";
-
-/// Level in game (signed 64-bit integer as NSNumber).
-///
-/// NSDictionary *params = @{
-/// kFIRParameterLevel : @(42),
-/// // ...
-/// };
-///
-static NSString *const kFIRParameterLevel NS_SWIFT_NAME(AnalyticsParameterLevel) = @"level";
-
-/// Location (NSString). The Google Place ID
-/// that corresponds to the associated event. Alternatively, you can supply your own custom
-/// Location ID.
-///
-/// NSDictionary *params = @{
-/// kFIRParameterLocation : @"ChIJiyj437sx3YAR9kUWC8QkLzQ",
-/// // ...
-/// };
-///
-static NSString *const kFIRParameterLocation NS_SWIFT_NAME(AnalyticsParameterLocation) =
- @"location";
-
-/// The advertising or marketing medium, for example: cpc, banner, email, push. Highly recommended
-/// (NSString).
-///
-/// NSDictionary *params = @{
-/// kFIRParameterMedium : @"email",
-/// // ...
-/// };
-///
-static NSString *const kFIRParameterMedium NS_SWIFT_NAME(AnalyticsParameterMedium) = @"medium";
-
-/// Number of nights staying at hotel (signed 64-bit integer as NSNumber).
-///
-/// NSDictionary *params = @{
-/// kFIRParameterNumberOfNights : @(3),
-/// // ...
-/// };
-///
-static NSString *const kFIRParameterNumberOfNights
- NS_SWIFT_NAME(AnalyticsParameterNumberOfNights) = @"number_of_nights";
-
-/// Number of passengers traveling (signed 64-bit integer as NSNumber).
-///
-/// NSDictionary *params = @{
-/// kFIRParameterNumberOfPassengers : @(11),
-/// // ...
-/// };
-///
-static NSString *const kFIRParameterNumberOfPassengers
- NS_SWIFT_NAME(AnalyticsParameterNumberOfPassengers) = @"number_of_passengers";
-
-/// Number of rooms for travel events (signed 64-bit integer as NSNumber).
-///
-/// NSDictionary *params = @{
-/// kFIRParameterNumberOfRooms : @(2),
-/// // ...
-/// };
-///
-static NSString *const kFIRParameterNumberOfRooms NS_SWIFT_NAME(AnalyticsParameterNumberOfRooms) =
- @"number_of_rooms";
-
-/// Flight or Travel origin (NSString).
-///
-/// NSDictionary *params = @{
-/// kFIRParameterOrigin : @"Mountain View, CA",
-/// // ...
-/// };
-///
-static NSString *const kFIRParameterOrigin NS_SWIFT_NAME(AnalyticsParameterOrigin) = @"origin";
-
-/// Purchase price (double as NSNumber).
-///
-/// NSDictionary *params = @{
-/// kFIRParameterPrice : @(1.0),
-/// kFIRParameterCurrency : @"USD", // e.g. $1.00 USD
-/// // ...
-/// };
-///
-static NSString *const kFIRParameterPrice NS_SWIFT_NAME(AnalyticsParameterPrice) = @"price";
-
-/// Purchase quantity (signed 64-bit integer as NSNumber).
-///
-/// NSDictionary *params = @{
-/// kFIRParameterQuantity : @(1),
-/// // ...
-/// };
-///
-static NSString *const kFIRParameterQuantity NS_SWIFT_NAME(AnalyticsParameterQuantity) =
- @"quantity";
-
-/// Score in game (signed 64-bit integer as NSNumber).
-///
-/// NSDictionary *params = @{
-/// kFIRParameterScore : @(4200),
-/// // ...
-/// };
-///
-static NSString *const kFIRParameterScore NS_SWIFT_NAME(AnalyticsParameterScore) = @"score";
-
-/// The search string/keywords used (NSString).
-///
-/// NSDictionary *params = @{
-/// kFIRParameterSearchTerm : @"periodic table",
-/// // ...
-/// };
-///
-static NSString *const kFIRParameterSearchTerm NS_SWIFT_NAME(AnalyticsParameterSearchTerm) =
- @"search_term";
-
-/// Shipping cost (double as NSNumber).
-///
-/// NSDictionary *params = @{
-/// kFIRParameterShipping : @(9.50),
-/// kFIRParameterCurrency : @"USD", // e.g. $9.50 USD
-/// // ...
-/// };
-///
-static NSString *const kFIRParameterShipping NS_SWIFT_NAME(AnalyticsParameterShipping) =
- @"shipping";
-
-/// Sign up method (NSString).
-///
-/// NSDictionary *params = @{
-/// kFIRParameterSignUpMethod : @"google",
-/// // ...
-/// };
-///
-static NSString *const kFIRParameterSignUpMethod NS_SWIFT_NAME(AnalyticsParameterSignUpMethod) =
- @"sign_up_method";
-
-/// The origin of your traffic, such as an Ad network (for example, google) or partner (urban
-/// airship). Identify the advertiser, site, publication, etc. that is sending traffic to your
-/// property. Highly recommended (NSString).
-///
-/// NSDictionary *params = @{
-/// kFIRParameterSource : @"InMobi",
-/// // ...
-/// };
-///
-static NSString *const kFIRParameterSource NS_SWIFT_NAME(AnalyticsParameterSource) = @"source";
-
-/// The departure date, check-in date or rental start date for the item. This should be in
-/// YYYY-MM-DD format (NSString).
-///
-/// NSDictionary *params = @{
-/// kFIRParameterStartDate : @"2015-09-14",
-/// // ...
-/// };
-///
-static NSString *const kFIRParameterStartDate NS_SWIFT_NAME(AnalyticsParameterStartDate) =
- @"start_date";
-
-/// Tax amount (double as NSNumber).
-///
-/// NSDictionary *params = @{
-/// kFIRParameterTax : @(1.0),
-/// kFIRParameterCurrency : @"USD", // e.g. $1.00 USD
-/// // ...
-/// };
-///
-static NSString *const kFIRParameterTax NS_SWIFT_NAME(AnalyticsParameterTax) = @"tax";
-
-/// If you're manually tagging keyword campaigns, you should use utm_term to specify the keyword
-/// (NSString).
-///
-/// NSDictionary *params = @{
-/// kFIRParameterTerm : @"game",
-/// // ...
-/// };
-///
-static NSString *const kFIRParameterTerm NS_SWIFT_NAME(AnalyticsParameterTerm) = @"term";
-
-/// A single ID for a ecommerce group transaction (NSString).
-///
-/// NSDictionary *params = @{
-/// kFIRParameterTransactionID : @"ab7236dd9823",
-/// // ...
-/// };
-///
-static NSString *const kFIRParameterTransactionID NS_SWIFT_NAME(AnalyticsParameterTransactionID) =
- @"transaction_id";
-
-/// Travel class (NSString).
-///
-/// NSDictionary *params = @{
-/// kFIRParameterTravelClass : @"business",
-/// // ...
-/// };
-///
-static NSString *const kFIRParameterTravelClass NS_SWIFT_NAME(AnalyticsParameterTravelClass) =
- @"travel_class";
-
-/// A context-specific numeric value which is accumulated automatically for each event type. This is
-/// a general purpose parameter that is useful for accumulating a key metric that pertains to an
-/// event. Examples include revenue, distance, time and points. Value should be specified as signed
-/// 64-bit integer or double as NSNumber. Notes: Values for pre-defined currency-related events
-/// (such as @c kFIREventAddToCart) should be supplied using double as NSNumber and must be
-/// accompanied by a @c kFIRParameterCurrency parameter. The valid range of accumulated values is
-/// [-9,223,372,036,854.77, 9,223,372,036,854.77]. Supplying a non-numeric value, omitting the
-/// corresponding @c kFIRParameterCurrency parameter, or supplying an invalid
-/// currency code for conversion events will cause that
-/// conversion to be omitted from reporting.
-///
-/// NSDictionary *params = @{
-/// kFIRParameterValue : @(3.99),
-/// kFIRParameterCurrency : @"USD", // e.g. $3.99 USD
-/// // ...
-/// };
-///
-static NSString *const kFIRParameterValue NS_SWIFT_NAME(AnalyticsParameterValue) = @"value";
-
-/// Name of virtual currency type (NSString).
-///
-/// NSDictionary *params = @{
-/// kFIRParameterVirtualCurrencyName : @"virtual_currency_name",
-/// // ...
-/// };
-///
-static NSString *const kFIRParameterVirtualCurrencyName
- NS_SWIFT_NAME(AnalyticsParameterVirtualCurrencyName) = @"virtual_currency_name";
-
-/// The name of a level in a game (NSString).
-///
-/// NSDictionary *params = @{
-/// kFIRParameterLevelName : @"room_1",
-/// // ...
-/// };
-///
-static NSString *const kFIRParameterLevelName NS_SWIFT_NAME(AnalyticsParameterLevelName) =
- @"level_name";
-
-/// The result of an operation. Specify 1 to indicate success and 0 to indicate failure (unsigned
-/// integer as NSNumber).
-///
-/// NSDictionary *params = @{
-/// kFIRParameterSuccess : @(1),
-/// // ...
-/// };
-///
-static NSString *const kFIRParameterSuccess NS_SWIFT_NAME(AnalyticsParameterSuccess) = @"success";
diff --git a/src/ios/Firebase/Analytics/FirebaseAnalytics.framework/Headers/FIRUserPropertyNames.h b/src/ios/Firebase/Analytics/FirebaseAnalytics.framework/Headers/FIRUserPropertyNames.h
deleted file mode 100755
index f50707fa1..000000000
--- a/src/ios/Firebase/Analytics/FirebaseAnalytics.framework/Headers/FIRUserPropertyNames.h
+++ /dev/null
@@ -1,17 +0,0 @@
-/// @file FIRUserPropertyNames.h
-///
-/// Predefined user property names.
-///
-/// A UserProperty is an attribute that describes the app-user. By supplying UserProperties, you can
-/// later analyze different behaviors of various segments of your userbase. You may supply up to 25
-/// unique UserProperties per app, and you can use the name and value of your choosing for each one.
-/// UserProperty names can be up to 24 characters long, may only contain alphanumeric characters and
-/// underscores ("_"), and must start with an alphabetic character. UserProperty values can be up to
-/// 36 characters long. The "firebase_", "google_", and "ga_" prefixes are reserved and should not
-/// be used.
-
-#import
-
-/// The method used to sign in. For example, "google", "facebook" or "twitter".
-static NSString *const kFIRUserPropertySignUpMethod
- NS_SWIFT_NAME(AnalyticsUserPropertySignUpMethod) = @"sign_up_method";
diff --git a/src/ios/Firebase/Analytics/FirebaseAnalytics.framework/Headers/FirebaseAnalytics.h b/src/ios/Firebase/Analytics/FirebaseAnalytics.framework/Headers/FirebaseAnalytics.h
deleted file mode 100755
index ed7588a6b..000000000
--- a/src/ios/Firebase/Analytics/FirebaseAnalytics.framework/Headers/FirebaseAnalytics.h
+++ /dev/null
@@ -1,5 +0,0 @@
-#import "FIRAnalytics+AppDelegate.h"
-#import "FIRAnalytics.h"
-#import "FIREventNames.h"
-#import "FIRParameterNames.h"
-#import "FIRUserPropertyNames.h"
diff --git a/src/ios/Firebase/Analytics/FirebaseAnalytics.framework/Modules/module.modulemap b/src/ios/Firebase/Analytics/FirebaseAnalytics.framework/Modules/module.modulemap
deleted file mode 100755
index ef80595cd..000000000
--- a/src/ios/Firebase/Analytics/FirebaseAnalytics.framework/Modules/module.modulemap
+++ /dev/null
@@ -1,10 +0,0 @@
-framework module FirebaseAnalytics {
- umbrella header "FirebaseAnalytics.h"
- export *
- module * { export *}
- link "sqlite3"
- link "z"
- link framework "Security"
- link framework "StoreKit"
- link framework "SystemConfiguration"
- link framework "UIKit"}
diff --git a/src/ios/Firebase/Analytics/FirebaseCore.framework/FirebaseCore b/src/ios/Firebase/Analytics/FirebaseCore.framework/FirebaseCore
deleted file mode 100644
index 3d2600382..000000000
Binary files a/src/ios/Firebase/Analytics/FirebaseCore.framework/FirebaseCore and /dev/null differ
diff --git a/src/ios/Firebase/Analytics/FirebaseCore.framework/Headers/FIRAnalyticsConfiguration.h b/src/ios/Firebase/Analytics/FirebaseCore.framework/Headers/FIRAnalyticsConfiguration.h
deleted file mode 100644
index ca1d32c6e..000000000
--- a/src/ios/Firebase/Analytics/FirebaseCore.framework/Headers/FIRAnalyticsConfiguration.h
+++ /dev/null
@@ -1,52 +0,0 @@
-/*
- * Copyright 2017 Google
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#import
-
-NS_ASSUME_NONNULL_BEGIN
-
-/**
- * This class provides configuration fields for Firebase Analytics.
- */
-NS_SWIFT_NAME(AnalyticsConfiguration)
-@interface FIRAnalyticsConfiguration : NSObject
-
-/**
- * Returns the shared instance of FIRAnalyticsConfiguration.
- */
-+ (FIRAnalyticsConfiguration *)sharedInstance NS_SWIFT_NAME(shared());
-
-/**
- * Sets the minimum engagement time in seconds required to start a new session. The default value
- * is 10 seconds.
- */
-- (void)setMinimumSessionInterval:(NSTimeInterval)minimumSessionInterval;
-
-/**
- * Sets the interval of inactivity in seconds that terminates the current session. The default
- * value is 1800 seconds (30 minutes).
- */
-- (void)setSessionTimeoutInterval:(NSTimeInterval)sessionTimeoutInterval;
-
-/**
- * Sets whether analytics collection is enabled for this app on this device. This setting is
- * persisted across app sessions. By default it is enabled.
- */
-- (void)setAnalyticsCollectionEnabled:(BOOL)analyticsCollectionEnabled;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/src/ios/Firebase/Analytics/FirebaseCore.framework/Headers/FIRApp.h b/src/ios/Firebase/Analytics/FirebaseCore.framework/Headers/FIRApp.h
deleted file mode 100644
index e0dd6d692..000000000
--- a/src/ios/Firebase/Analytics/FirebaseCore.framework/Headers/FIRApp.h
+++ /dev/null
@@ -1,127 +0,0 @@
-/*
- * Copyright 2017 Google
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#import
-
-@class FIROptions;
-
-NS_ASSUME_NONNULL_BEGIN
-
-/** A block that takes a BOOL and has no return value. */
-typedef void (^FIRAppVoidBoolCallback)(BOOL success) NS_SWIFT_NAME(FirebaseAppVoidBoolCallback);
-
-/**
- * The entry point of Firebase SDKs.
- *
- * Initialize and configure FIRApp using +[FIRApp configure]
- * or other customized ways as shown below.
- *
- * The logging system has two modes: default mode and debug mode. In default mode, only logs with
- * log level Notice, Warning and Error will be sent to device. In debug mode, all logs will be sent
- * to device. The log levels that Firebase uses are consistent with the ASL log levels.
- *
- * Enable debug mode by passing the -FIRDebugEnabled argument to the application. You can add this
- * argument in the application's Xcode scheme. When debug mode is enabled via -FIRDebugEnabled,
- * further executions of the application will also be in debug mode. In order to return to default
- * mode, you must explicitly disable the debug mode with the application argument -FIRDebugDisabled.
- *
- * It is also possible to change the default logging level in code by calling setLoggerLevel: on
- * the FIRConfiguration interface.
- */
-NS_SWIFT_NAME(FirebaseApp)
-@interface FIRApp : NSObject
-
-/**
- * Configures a default Firebase app. Raises an exception if any configuration step fails. The
- * default app is named "__FIRAPP_DEFAULT". This method should be called after the app is launched
- * and before using Firebase services. This method is thread safe and contains synchronous file I/O
- * (reading GoogleService-Info.plist from disk).
- */
-+ (void)configure;
-
-/**
- * Configures the default Firebase app with the provided options. The default app is named
- * "__FIRAPP_DEFAULT". Raises an exception if any configuration step fails. This method is thread
- * safe.
- *
- * @param options The Firebase application options used to configure the service.
- */
-+ (void)configureWithOptions:(FIROptions *)options NS_SWIFT_NAME(configure(options:));
-
-/**
- * Configures a Firebase app with the given name and options. Raises an exception if any
- * configuration step fails. This method is thread safe.
- *
- * @param name The application's name given by the developer. The name should should only contain
- Letters, Numbers and Underscore.
- * @param options The Firebase application options used to configure the services.
- */
-// clang-format off
-+ (void)configureWithName:(NSString *)name
- options:(FIROptions *)options NS_SWIFT_NAME(configure(name:options:));
-// clang-format on
-
-/**
- * Returns the default app, or nil if the default app does not exist.
- */
-+ (nullable FIRApp *)defaultApp NS_SWIFT_NAME(app());
-
-/**
- * Returns a previously created FIRApp instance with the given name, or nil if no such app exists.
- * This method is thread safe.
- */
-+ (nullable FIRApp *)appNamed:(NSString *)name NS_SWIFT_NAME(app(name:));
-
-/**
- * Returns the set of all extant FIRApp instances, or nil if there are no FIRApp instances. This
- * method is thread safe.
- */
-@property(class, readonly, nullable) NSDictionary *allApps;
-
-/**
- * Cleans up the current FIRApp, freeing associated data and returning its name to the pool for
- * future use. This method is thread safe.
- */
-- (void)deleteApp:(FIRAppVoidBoolCallback)completion;
-
-/**
- * FIRApp instances should not be initialized directly. Call +[FIRApp configure],
- * +[FIRApp configureWithOptions:], or +[FIRApp configureWithNames:options:] directly.
- */
-- (instancetype)init NS_UNAVAILABLE;
-
-/**
- * Gets the name of this app.
- */
-@property(nonatomic, copy, readonly) NSString *name;
-
-/**
- * Gets a copy of the options for this app. These are non-modifiable.
- */
-@property(nonatomic, copy, readonly) FIROptions *options;
-
-/**
- * Gets or sets whether automatic data collection is enabled for all products. Defaults to `YES`
- * unless `FirebaseDataCollectionDefaultEnabled` is set to `NO` in your app's Info.plist. This value
- * is persisted across runs of the app so that it can be set once when users have consented to
- * collection.
- */
-@property(nonatomic, readwrite, getter=isDataCollectionDefaultEnabled)
- BOOL dataCollectionDefaultEnabled;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/src/ios/Firebase/Analytics/FirebaseCore.framework/Headers/FIRConfiguration.h b/src/ios/Firebase/Analytics/FirebaseCore.framework/Headers/FIRConfiguration.h
deleted file mode 100644
index 95bba5e7b..000000000
--- a/src/ios/Firebase/Analytics/FirebaseCore.framework/Headers/FIRConfiguration.h
+++ /dev/null
@@ -1,50 +0,0 @@
-/*
- * Copyright 2017 Google
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#import
-
-#import "FIRAnalyticsConfiguration.h"
-#import "FIRLoggerLevel.h"
-
-NS_ASSUME_NONNULL_BEGIN
-
-/**
- * This interface provides global level properties that the developer can tweak, and the singleton
- * of the Firebase Analytics configuration class.
- */
-NS_SWIFT_NAME(FirebaseConfiguration)
-@interface FIRConfiguration : NSObject
-
-/** Returns the shared configuration object. */
-@property(class, nonatomic, readonly) FIRConfiguration *sharedInstance NS_SWIFT_NAME(shared);
-
-/** The configuration class for Firebase Analytics. */
-@property(nonatomic, readwrite) FIRAnalyticsConfiguration *analyticsConfiguration;
-
-/**
- * Sets the logging level for internal Firebase logging. Firebase will only log messages
- * that are logged at or below loggerLevel. The messages are logged both to the Xcode
- * console and to the device's log. Note that if an app is running from AppStore, it will
- * never log above FIRLoggerLevelNotice even if loggerLevel is set to a higher (more verbose)
- * setting.
- *
- * @param loggerLevel The maximum logging level. The default level is set to FIRLoggerLevelNotice.
- */
-- (void)setLoggerLevel:(FIRLoggerLevel)loggerLevel;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/src/ios/Firebase/Analytics/FirebaseCore.framework/Headers/FIRLoggerLevel.h b/src/ios/Firebase/Analytics/FirebaseCore.framework/Headers/FIRLoggerLevel.h
deleted file mode 100644
index dca3aa0b0..000000000
--- a/src/ios/Firebase/Analytics/FirebaseCore.framework/Headers/FIRLoggerLevel.h
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- * Copyright 2017 Google
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-// Note that importing GULLoggerLevel.h will lead to a non-modular header
-// import error.
-
-/**
- * The log levels used by internal logging.
- */
-typedef NS_ENUM(NSInteger, FIRLoggerLevel) {
- /** Error level, matches ASL_LEVEL_ERR. */
- FIRLoggerLevelError = 3,
- /** Warning level, matches ASL_LEVEL_WARNING. */
- FIRLoggerLevelWarning = 4,
- /** Notice level, matches ASL_LEVEL_NOTICE. */
- FIRLoggerLevelNotice = 5,
- /** Info level, matches ASL_LEVEL_INFO. */
- FIRLoggerLevelInfo = 6,
- /** Debug level, matches ASL_LEVEL_DEBUG. */
- FIRLoggerLevelDebug = 7,
- /** Minimum log level. */
- FIRLoggerLevelMin = FIRLoggerLevelError,
- /** Maximum log level. */
- FIRLoggerLevelMax = FIRLoggerLevelDebug
-} NS_SWIFT_NAME(FirebaseLoggerLevel);
diff --git a/src/ios/Firebase/Analytics/FirebaseCore.framework/Headers/FIROptions.h b/src/ios/Firebase/Analytics/FirebaseCore.framework/Headers/FIROptions.h
deleted file mode 100644
index 87a01ddc7..000000000
--- a/src/ios/Firebase/Analytics/FirebaseCore.framework/Headers/FIROptions.h
+++ /dev/null
@@ -1,116 +0,0 @@
-/*
- * Copyright 2017 Google
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#import
-
-NS_ASSUME_NONNULL_BEGIN
-
-/**
- * This class provides constant fields of Google APIs.
- */
-NS_SWIFT_NAME(FirebaseOptions)
-@interface FIROptions : NSObject
-
-/**
- * Returns the default options. The first time this is called it synchronously reads
- * GoogleService-Info.plist from disk.
- */
-+ (nullable FIROptions *)defaultOptions NS_SWIFT_NAME(defaultOptions());
-
-/**
- * An iOS API key used for authenticating requests from your app, e.g.
- * @"AIzaSyDdVgKwhZl0sTTTLZ7iTmt1r3N2cJLnaDk", used to identify your app to Google servers.
- */
-@property(nonatomic, copy, nullable) NSString *APIKey NS_SWIFT_NAME(apiKey);
-
-/**
- * The bundle ID for the application. Defaults to `[[NSBundle mainBundle] bundleID]` when not set
- * manually or in a plist.
- */
-@property(nonatomic, copy) NSString *bundleID;
-
-/**
- * The OAuth2 client ID for iOS application used to authenticate Google users, for example
- * @"12345.apps.googleusercontent.com", used for signing in with Google.
- */
-@property(nonatomic, copy, nullable) NSString *clientID;
-
-/**
- * The tracking ID for Google Analytics, e.g. @"UA-12345678-1", used to configure Google Analytics.
- */
-@property(nonatomic, copy, nullable) NSString *trackingID;
-
-/**
- * The Project Number from the Google Developer's console, for example @"012345678901", used to
- * configure Google Cloud Messaging.
- */
-@property(nonatomic, copy) NSString *GCMSenderID NS_SWIFT_NAME(gcmSenderID);
-
-/**
- * The Project ID from the Firebase console, for example @"abc-xyz-123".
- */
-@property(nonatomic, copy, nullable) NSString *projectID;
-
-/**
- * The Android client ID used in Google AppInvite when an iOS app has its Android version, for
- * example @"12345.apps.googleusercontent.com".
- */
-@property(nonatomic, copy, nullable) NSString *androidClientID;
-
-/**
- * The Google App ID that is used to uniquely identify an instance of an app.
- */
-@property(nonatomic, copy) NSString *googleAppID;
-
-/**
- * The database root URL, e.g. @"http://abc-xyz-123.firebaseio.com".
- */
-@property(nonatomic, copy, nullable) NSString *databaseURL;
-
-/**
- * The URL scheme used to set up Durable Deep Link service.
- */
-@property(nonatomic, copy, nullable) NSString *deepLinkURLScheme;
-
-/**
- * The Google Cloud Storage bucket name, e.g. @"abc-xyz-123.storage.firebase.com".
- */
-@property(nonatomic, copy, nullable) NSString *storageBucket;
-
-/**
- * Initializes a customized instance of FIROptions from the file at the given plist file path. This
- * will read the file synchronously from disk.
- * For example,
- * NSString *filePath =
- * [[NSBundle mainBundle] pathForResource:@"GoogleService-Info" ofType:@"plist"];
- * FIROptions *options = [[FIROptions alloc] initWithContentsOfFile:filePath];
- * Returns nil if the plist file does not exist or is invalid.
- */
-- (nullable instancetype)initWithContentsOfFile:(NSString *)plistPath;
-
-/**
- * Initializes a customized instance of FIROptions with required fields. Use the mutable properties
- * to modify fields for configuring specific services.
- */
-// clang-format off
-- (instancetype)initWithGoogleAppID:(NSString *)googleAppID
- GCMSenderID:(NSString *)GCMSenderID
- NS_SWIFT_NAME(init(googleAppID:gcmSenderID:));
-// clang-format on
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/src/ios/Firebase/Analytics/FirebaseCore.framework/Headers/FirebaseCore.h b/src/ios/Firebase/Analytics/FirebaseCore.framework/Headers/FirebaseCore.h
deleted file mode 100644
index fa26f694b..000000000
--- a/src/ios/Firebase/Analytics/FirebaseCore.framework/Headers/FirebaseCore.h
+++ /dev/null
@@ -1,21 +0,0 @@
-/*
- * Copyright 2017 Google
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#import "FIRAnalyticsConfiguration.h"
-#import "FIRApp.h"
-#import "FIRConfiguration.h"
-#import "FIRLoggerLevel.h"
-#import "FIROptions.h"
diff --git a/src/ios/Firebase/Analytics/FirebaseCore.framework/Modules/module.modulemap b/src/ios/Firebase/Analytics/FirebaseCore.framework/Modules/module.modulemap
deleted file mode 100644
index 62dba511b..000000000
--- a/src/ios/Firebase/Analytics/FirebaseCore.framework/Modules/module.modulemap
+++ /dev/null
@@ -1,6 +0,0 @@
-framework module FirebaseCore {
- umbrella header "FirebaseCore.h"
- export *
- module * { export *}
- link framework "Foundation"
-}
diff --git a/src/ios/Firebase/Analytics/FirebaseCoreDiagnostics.framework/FirebaseCoreDiagnostics b/src/ios/Firebase/Analytics/FirebaseCoreDiagnostics.framework/FirebaseCoreDiagnostics
deleted file mode 100755
index 87c0ade05..000000000
Binary files a/src/ios/Firebase/Analytics/FirebaseCoreDiagnostics.framework/FirebaseCoreDiagnostics and /dev/null differ
diff --git a/src/ios/Firebase/Analytics/FirebaseCoreDiagnostics.framework/Modules/module.modulemap b/src/ios/Firebase/Analytics/FirebaseCoreDiagnostics.framework/Modules/module.modulemap
deleted file mode 100755
index bbcb94e31..000000000
--- a/src/ios/Firebase/Analytics/FirebaseCoreDiagnostics.framework/Modules/module.modulemap
+++ /dev/null
@@ -1,6 +0,0 @@
-framework module FirebaseCoreDiagnostics {
- export *
- module * { export *}
- link "z"
- link framework "Security"
- link framework "SystemConfiguration"}
diff --git a/src/ios/Firebase/Analytics/FirebaseInstanceID.framework/FirebaseInstanceID b/src/ios/Firebase/Analytics/FirebaseInstanceID.framework/FirebaseInstanceID
deleted file mode 100755
index 733eccb16..000000000
Binary files a/src/ios/Firebase/Analytics/FirebaseInstanceID.framework/FirebaseInstanceID and /dev/null differ
diff --git a/src/ios/Firebase/Analytics/FirebaseInstanceID.framework/Headers/FIRInstanceID.h b/src/ios/Firebase/Analytics/FirebaseInstanceID.framework/Headers/FIRInstanceID.h
deleted file mode 100755
index 97777e1c3..000000000
--- a/src/ios/Firebase/Analytics/FirebaseInstanceID.framework/Headers/FIRInstanceID.h
+++ /dev/null
@@ -1,304 +0,0 @@
-#import
-
-NS_ASSUME_NONNULL_BEGIN
-
-@class FIRInstanceIDResult;
-/**
- * @memberof FIRInstanceID
- *
- * The scope to be used when fetching/deleting a token for Firebase Messaging.
- */
-FOUNDATION_EXPORT NSString *const kFIRInstanceIDScopeFirebaseMessaging
- NS_SWIFT_NAME(InstanceIDScopeFirebaseMessaging);
-
-#if defined(__IPHONE_10_0) && __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_10_0
-/**
- * Called when the system determines that tokens need to be refreshed.
- * This method is also called if Instance ID has been reset in which
- * case, tokens and FCM topic subscriptions also need to be refreshed.
- *
- * Instance ID service will throttle the refresh event across all devices
- * to control the rate of token updates on application servers.
- */
-FOUNDATION_EXPORT const NSNotificationName kFIRInstanceIDTokenRefreshNotification
- NS_SWIFT_NAME(InstanceIDTokenRefresh);
-#else
-/**
- * Called when the system determines that tokens need to be refreshed.
- * This method is also called if Instance ID has been reset in which
- * case, tokens and FCM topic subscriptions also need to be refreshed.
- *
- * Instance ID service will throttle the refresh event across all devices
- * to control the rate of token updates on application servers.
- */
-FOUNDATION_EXPORT NSString *const kFIRInstanceIDTokenRefreshNotification
- NS_SWIFT_NAME(InstanceIDTokenRefreshNotification);
-#endif // defined(__IPHONE_10_0) && __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_10_0
-
-/**
- * @related FIRInstanceID
- *
- * The completion handler invoked when the InstanceID token returns. If
- * the call fails we return the appropriate `error code` as described below.
- *
- * @param token The valid token as returned by InstanceID backend.
- *
- * @param error The error describing why generating a new token
- * failed. See the error codes below for a more detailed
- * description.
- */
-typedef void (^FIRInstanceIDTokenHandler)(NSString *__nullable token, NSError *__nullable error)
- NS_SWIFT_NAME(InstanceIDTokenHandler);
-
-/**
- * @related FIRInstanceID
- *
- * The completion handler invoked when the InstanceID `deleteToken` returns. If
- * the call fails we return the appropriate `error code` as described below
- *
- * @param error The error describing why deleting the token failed.
- * See the error codes below for a more detailed description.
- */
-typedef void (^FIRInstanceIDDeleteTokenHandler)(NSError *error)
- NS_SWIFT_NAME(InstanceIDDeleteTokenHandler);
-
-/**
- * @related FIRInstanceID
- *
- * The completion handler invoked when the app identity is created. If the
- * identity wasn't created for some reason we return the appropriate error code.
- *
- * @param identity A valid identity for the app instance, nil if there was an error
- * while creating an identity.
- * @param error The error if fetching the identity fails else nil.
- */
-typedef void (^FIRInstanceIDHandler)(NSString *__nullable identity, NSError *__nullable error)
- NS_SWIFT_NAME(InstanceIDHandler);
-
-/**
- * @related FIRInstanceID
- *
- * The completion handler invoked when the app identity and all the tokens associated
- * with it are deleted. Returns a valid error object in case of failure else nil.
- *
- * @param error The error if deleting the identity and all the tokens associated with
- * it fails else nil.
- */
-typedef void (^FIRInstanceIDDeleteHandler)(NSError *__nullable error)
- NS_SWIFT_NAME(InstanceIDDeleteHandler);
-
-/**
- * @related FIRInstanceID
- *
- * The completion handler invoked when the app identity and token are fetched. If the
- * identity wasn't created for some reason we return the appropriate error code.
- *
- * @param result The result containing an identity for the app instance and a valid token,
- * nil if there was an error while creating the result.
- * @param error The error if fetching the identity or token fails else nil.
- */
-typedef void (^FIRInstanceIDResultHandler)(FIRInstanceIDResult *__nullable result,
- NSError *__nullable error)
- NS_SWIFT_NAME(InstanceIDResultHandler);
-
-/**
- * Public errors produced by InstanceID.
- */
-typedef NS_ENUM(NSUInteger, FIRInstanceIDError) {
- // Http related errors.
-
- /// Unknown error.
- FIRInstanceIDErrorUnknown = 0,
-
- /// Auth Error -- GCM couldn't validate request from this client.
- FIRInstanceIDErrorAuthentication = 1,
-
- /// NoAccess -- InstanceID service cannot be accessed.
- FIRInstanceIDErrorNoAccess = 2,
-
- /// Timeout -- Request to InstanceID backend timed out.
- FIRInstanceIDErrorTimeout = 3,
-
- /// Network -- No network available to reach the servers.
- FIRInstanceIDErrorNetwork = 4,
-
- /// OperationInProgress -- Another similar operation in progress,
- /// bailing this one.
- FIRInstanceIDErrorOperationInProgress = 5,
-
- /// InvalidRequest -- Some parameters of the request were invalid.
- FIRInstanceIDErrorInvalidRequest = 7,
-} NS_SWIFT_NAME(InstanceIDError);
-
-/**
- * A class contains the results of InstanceID and token query.
- */
-NS_SWIFT_NAME(InstanceIDResult)
-@interface FIRInstanceIDResult : NSObject
-
-/**
- * An instanceID uniquely identifies the app instance.
- */
-@property(nonatomic, readonly, copy) NSString *instanceID;
-
-/*
- * Returns a Firebase Messaging scoped token for the firebase app.
- */
-@property(nonatomic, readonly, copy) NSString *token;
-
-@end
-
-/**
- * Instance ID provides a unique identifier for each app instance and a mechanism
- * to authenticate and authorize actions (for example, sending an FCM message).
- *
- * Once an InstanceID is generated, the library periodically sends information about the
- * application and the device where it's running to the Firebase backend. To stop this. see
- * `[FIRInstanceID deleteIDWithHandler:]`.
- *
- * Instance ID is long lived but, may be reset if the device is not used for
- * a long time or the Instance ID service detects a problem.
- * If Instance ID is reset, the app will be notified via
- * `kFIRInstanceIDTokenRefreshNotification`.
- *
- * If the Instance ID has become invalid, the app can request a new one and
- * send it to the app server.
- * To prove ownership of Instance ID and to allow servers to access data or
- * services associated with the app, call
- * `[FIRInstanceID tokenWithAuthorizedEntity:scope:options:handler]`.
- */
-NS_SWIFT_NAME(InstanceID)
-@interface FIRInstanceID : NSObject
-
-/**
- * FIRInstanceID.
- *
- * @return A shared instance of FIRInstanceID.
- */
-+ (instancetype)instanceID NS_SWIFT_NAME(instanceID());
-
-/**
- * Unavailable. Use +instanceID instead.
- */
-- (instancetype)init __attribute__((unavailable("Use +instanceID instead.")));
-
-#pragma mark - Tokens
-
-/**
- * Returns a result of app instance identifier InstanceID and a Firebase Messaging scoped token.
- * param handler The callback handler invoked when an app instanceID and a default token
- * are generated and returned. If instanceID and token fetching fail for some
- * reason the callback is invoked with nil `result` and the appropriate error.
- */
-- (void)instanceIDWithHandler:(FIRInstanceIDResultHandler)handler;
-
-/**
- * Returns a Firebase Messaging scoped token for the firebase app.
- *
- * @return Returns the stored token if the device has registered with Firebase Messaging, otherwise
- * returns nil.
- */
-- (nullable NSString *)token __deprecated_msg("Use instanceIDWithHandler: instead.");
-
-/**
- * Returns a token that authorizes an Entity (example: cloud service) to perform
- * an action on behalf of the application identified by Instance ID.
- *
- * This is similar to an OAuth2 token except, it applies to the
- * application instance instead of a user.
- *
- * This is an asynchronous call. If the token fetching fails for some reason
- * we invoke the completion callback with nil `token` and the appropriate
- * error.
- *
- * This generates an Instance ID if it does not exist yet, which starts periodically sending
- * information to the Firebase backend (see `[FIRInstanceID getIDWithHandler:]`).
- *
- * Note, you can only have one `token` or `deleteToken` call for a given
- * authorizedEntity and scope at any point of time. Making another such call with the
- * same authorizedEntity and scope before the last one finishes will result in an
- * error with code `OperationInProgress`.
- *
- * @see FIRInstanceID deleteTokenWithAuthorizedEntity:scope:handler:
- *
- * @param authorizedEntity Entity authorized by the token.
- * @param scope Action authorized for authorizedEntity.
- * @param options The extra options to be sent with your token request. The
- * value for the `apns_token` should be the NSData object
- * passed to the UIApplicationDelegate's
- * `didRegisterForRemoteNotificationsWithDeviceToken` method.
- * The value for `apns_sandbox` should be a boolean (or an
- * NSNumber representing a BOOL in Objective C) set to true if
- * your app is a debug build, which means that the APNs
- * device token is for the sandbox environment. It should be
- * set to false otherwise. If the `apns_sandbox` key is not
- * provided, an automatically-detected value shall be used.
- * @param handler The callback handler which is invoked when the token is
- * successfully fetched. In case of success a valid `token` and
- * `nil` error are returned. In case of any error the `token`
- * is nil and a valid `error` is returned. The valid error
- * codes have been documented above.
- */
-- (void)tokenWithAuthorizedEntity:(NSString *)authorizedEntity
- scope:(NSString *)scope
- options:(nullable NSDictionary *)options
- handler:(FIRInstanceIDTokenHandler)handler;
-
-/**
- * Revokes access to a scope (action) for an entity previously
- * authorized by `[FIRInstanceID tokenWithAuthorizedEntity:scope:options:handler]`.
- *
- * This is an asynchronous call. Call this on the main thread since InstanceID lib
- * is not thread safe. In case token deletion fails for some reason we invoke the
- * `handler` callback passed in with the appropriate error code.
- *
- * Note, you can only have one `token` or `deleteToken` call for a given
- * authorizedEntity and scope at a point of time. Making another such call with the
- * same authorizedEntity and scope before the last one finishes will result in an error
- * with code `OperationInProgress`.
- *
- * @param authorizedEntity Entity that must no longer have access.
- * @param scope Action that entity is no longer authorized to perform.
- * @param handler The handler that is invoked once the unsubscribe call ends.
- * In case of error an appropriate error object is returned
- * else error is nil.
- */
-- (void)deleteTokenWithAuthorizedEntity:(NSString *)authorizedEntity
- scope:(NSString *)scope
- handler:(FIRInstanceIDDeleteTokenHandler)handler;
-
-#pragma mark - Identity
-
-/**
- * Asynchronously fetch a stable identifier that uniquely identifies the app
- * instance. If the identifier has been revoked or has expired, this method will
- * return a new identifier.
- *
- * Once an InstanceID is generated, the library periodically sends information about the
- * application and the device where it's running to the Firebase backend. To stop this. see
- * `[FIRInstanceID deleteIDWithHandler:]`.
- *
- * @param handler The handler to invoke once the identifier has been fetched.
- * In case of error an appropriate error object is returned else
- * a valid identifier is returned and a valid identifier for the
- * application instance.
- */
-- (void)getIDWithHandler:(FIRInstanceIDHandler)handler NS_SWIFT_NAME(getID(handler:));
-
-/**
- * Resets Instance ID and revokes all tokens.
- *
- * This method also triggers a request to fetch a new Instance ID and Firebase Messaging scope
- * token. Please listen to kFIRInstanceIDTokenRefreshNotification when the new ID and token are
- * ready.
- *
- * This stops the periodic sending of data to the Firebase backend that began when the Instance ID
- * was generated. No more data is sent until another library calls Instance ID internally again
- * (like FCM, RemoteConfig or Analytics) or user explicitly calls Instance ID APIs to get an
- * Instance ID and token again.
- */
-- (void)deleteIDWithHandler:(FIRInstanceIDDeleteHandler)handler NS_SWIFT_NAME(deleteID(handler:));
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/src/ios/Firebase/Analytics/FirebaseInstanceID.framework/Headers/FirebaseInstanceID.h b/src/ios/Firebase/Analytics/FirebaseInstanceID.framework/Headers/FirebaseInstanceID.h
deleted file mode 100755
index 053ec2b1c..000000000
--- a/src/ios/Firebase/Analytics/FirebaseInstanceID.framework/Headers/FirebaseInstanceID.h
+++ /dev/null
@@ -1 +0,0 @@
-#import "FIRInstanceID.h"
diff --git a/src/ios/Firebase/Analytics/FirebaseInstanceID.framework/Modules/module.modulemap b/src/ios/Firebase/Analytics/FirebaseInstanceID.framework/Modules/module.modulemap
deleted file mode 100755
index 2058956c1..000000000
--- a/src/ios/Firebase/Analytics/FirebaseInstanceID.framework/Modules/module.modulemap
+++ /dev/null
@@ -1,6 +0,0 @@
-framework module FirebaseInstanceID {
- umbrella header "FirebaseInstanceID.h"
- export *
- module * { export *}
- link framework "Security"
- link framework "SystemConfiguration"}
diff --git a/src/ios/Firebase/Analytics/GoogleAppMeasurement.framework/GoogleAppMeasurement b/src/ios/Firebase/Analytics/GoogleAppMeasurement.framework/GoogleAppMeasurement
deleted file mode 100755
index f744bef24..000000000
Binary files a/src/ios/Firebase/Analytics/GoogleAppMeasurement.framework/GoogleAppMeasurement and /dev/null differ
diff --git a/src/ios/Firebase/Analytics/GoogleAppMeasurement.framework/Modules/module.modulemap b/src/ios/Firebase/Analytics/GoogleAppMeasurement.framework/Modules/module.modulemap
deleted file mode 100755
index ea1e687dd..000000000
--- a/src/ios/Firebase/Analytics/GoogleAppMeasurement.framework/Modules/module.modulemap
+++ /dev/null
@@ -1,9 +0,0 @@
-framework module GoogleAppMeasurement {
- export *
- module * { export *}
- link "sqlite3"
- link "z"
- link framework "Security"
- link framework "StoreKit"
- link framework "SystemConfiguration"
- link framework "UIKit"}
diff --git a/src/ios/Firebase/Analytics/GoogleUtilities.framework/GoogleUtilities b/src/ios/Firebase/Analytics/GoogleUtilities.framework/GoogleUtilities
deleted file mode 100644
index 44e59ad98..000000000
Binary files a/src/ios/Firebase/Analytics/GoogleUtilities.framework/GoogleUtilities and /dev/null differ
diff --git a/src/ios/Firebase/Analytics/GoogleUtilities.framework/Headers/GULLoggerCodes.h b/src/ios/Firebase/Analytics/GoogleUtilities.framework/Headers/GULLoggerCodes.h
deleted file mode 100644
index b71c03797..000000000
--- a/src/ios/Firebase/Analytics/GoogleUtilities.framework/Headers/GULLoggerCodes.h
+++ /dev/null
@@ -1,36 +0,0 @@
-/*
- * Copyright 2018 Google LLC
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-typedef NS_ENUM(NSInteger, GULSwizzlerMessageCode) {
- // App Delegate Swizzling.
- kGULSwizzlerMessageCodeAppDelegateSwizzling000 = 1000, // I-SWZ001000
- kGULSwizzlerMessageCodeAppDelegateSwizzling001 = 1001, // I-SWZ001001
- kGULSwizzlerMessageCodeAppDelegateSwizzling002 = 1002, // I-SWZ001002
- kGULSwizzlerMessageCodeAppDelegateSwizzling003 = 1003, // I-SWZ001003
- kGULSwizzlerMessageCodeAppDelegateSwizzling004 = 1004, // I-SWZ001004
- kGULSwizzlerMessageCodeAppDelegateSwizzling005 = 1005, // I-SWZ001005
- kGULSwizzlerMessageCodeAppDelegateSwizzling006 = 1006, // I-SWZ001006
- kGULSwizzlerMessageCodeAppDelegateSwizzling007 = 1007, // I-SWZ001007
- kGULSwizzlerMessageCodeAppDelegateSwizzling008 = 1008, // I-SWZ001008
- kGULSwizzlerMessageCodeAppDelegateSwizzling009 = 1009, // I-SWZ001009
- kGULSwizzlerMessageCodeAppDelegateSwizzling010 = 1010, // I-SWZ001010
- kGULSwizzlerMessageCodeAppDelegateSwizzling011 = 1011, // I-SWZ001011
- kGULSwizzlerMessageCodeAppDelegateSwizzling012 = 1012, // I-SWZ001012
- kGULSwizzlerMessageCodeAppDelegateSwizzling013 = 1013, // I-SWZ001013
-
- // Method Swizzling.
- kGULSwizzlerMessageCodeMethodSwizzling000 = 2000, // I-SWZ002000
-};
diff --git a/src/ios/Firebase/Analytics/GoogleUtilities.framework/Headers/GULLoggerLevel.h b/src/ios/Firebase/Analytics/GoogleUtilities.framework/Headers/GULLoggerLevel.h
deleted file mode 100644
index 81ff212d7..000000000
--- a/src/ios/Firebase/Analytics/GoogleUtilities.framework/Headers/GULLoggerLevel.h
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- * Copyright 2018 Google
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-/**
- * The log levels used by internal logging.
- */
-typedef NS_ENUM(NSInteger, GULLoggerLevel) {
- /** Error level, matches ASL_LEVEL_ERR. */
- GULLoggerLevelError = 3,
- /** Warning level, matches ASL_LEVEL_WARNING. */
- GULLoggerLevelWarning = 4,
- /** Notice level, matches ASL_LEVEL_NOTICE. */
- GULLoggerLevelNotice = 5,
- /** Info level, matches ASL_LEVEL_INFO. */
- GULLoggerLevelInfo = 6,
- /** Debug level, matches ASL_LEVEL_DEBUG. */
- GULLoggerLevelDebug = 7,
- /** Minimum log level. */
- GULLoggerLevelMin = GULLoggerLevelError,
- /** Maximum log level. */
- GULLoggerLevelMax = GULLoggerLevelDebug
-} NS_SWIFT_NAME(GoogleLoggerLevel);
diff --git a/src/ios/Firebase/Analytics/GoogleUtilities.framework/Headers/GULNSData+zlib.h b/src/ios/Firebase/Analytics/GoogleUtilities.framework/Headers/GULNSData+zlib.h
deleted file mode 100644
index 36f94a709..000000000
--- a/src/ios/Firebase/Analytics/GoogleUtilities.framework/Headers/GULNSData+zlib.h
+++ /dev/null
@@ -1,49 +0,0 @@
-// Copyright 2018 Google
-//
-// Licensed under the Apache License, Version 2.0 (the "License");
-// you may not use this file except in compliance with the License.
-// You may obtain a copy of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-
-#import
-
-/// This is a copy of Google Toolbox for Mac library to avoid creating an extra framework.
-
-// NOTE: For 64bit, none of these apis handle input sizes >32bits, they will return nil when given
-// such data. To handle data of that size you really should be streaming it rather then doing it all
-// in memory.
-
-@interface NSData (GULGzip)
-
-/// Returns an data as the result of decompressing the payload of |data|.The data to decompress must
-/// be a gzipped payloads.
-+ (NSData *)gul_dataByInflatingGzippedData:(NSData *)data error:(NSError **)error;
-
-/// Returns an compressed data with the result of gzipping the payload of |data|. Uses the default
-/// compression level.
-+ (NSData *)gul_dataByGzippingData:(NSData *)data error:(NSError **)error;
-
-FOUNDATION_EXPORT NSString *const GULNSDataZlibErrorDomain;
-FOUNDATION_EXPORT NSString *const GULNSDataZlibErrorKey; // NSNumber
-FOUNDATION_EXPORT NSString *const GULNSDataZlibRemainingBytesKey; // NSNumber
-
-typedef NS_ENUM(NSInteger, GULNSDataZlibError) {
- GULNSDataZlibErrorGreaterThan32BitsToCompress = 1024,
- // An internal zlib error.
- // GULNSDataZlibErrorKey will contain the error value.
- // NSLocalizedDescriptionKey may contain an error string from zlib.
- // Look in zlib.h for list of errors.
- GULNSDataZlibErrorInternal,
- // There was left over data in the buffer that was not used.
- // GULNSDataZlibRemainingBytesKey will contain number of remaining bytes.
- GULNSDataZlibErrorDataRemaining
-};
-
-@end
diff --git a/src/ios/Firebase/Analytics/GoogleUtilities.framework/Modules/module.modulemap b/src/ios/Firebase/Analytics/GoogleUtilities.framework/Modules/module.modulemap
deleted file mode 100644
index c92676541..000000000
--- a/src/ios/Firebase/Analytics/GoogleUtilities.framework/Modules/module.modulemap
+++ /dev/null
@@ -1,8 +0,0 @@
-framework module GoogleUtilities {
- umbrella header "GoogleUtilities.h"
- export *
- module * { export *}
- link framework "Security"
- link framework "SystemConfiguration"
- link "z"
-}
diff --git a/src/ios/Firebase/Analytics/MeasurementNanoPB.framework/MeasurementNanoPB b/src/ios/Firebase/Analytics/MeasurementNanoPB.framework/MeasurementNanoPB
deleted file mode 100755
index 65ef51df7..000000000
Binary files a/src/ios/Firebase/Analytics/MeasurementNanoPB.framework/MeasurementNanoPB and /dev/null differ
diff --git a/src/ios/Firebase/Analytics/nanopb.framework/Headers/pb.h b/src/ios/Firebase/Analytics/nanopb.framework/Headers/pb.h
deleted file mode 100644
index bf05a63c7..000000000
--- a/src/ios/Firebase/Analytics/nanopb.framework/Headers/pb.h
+++ /dev/null
@@ -1,583 +0,0 @@
-/* Common parts of the nanopb library. Most of these are quite low-level
- * stuff. For the high-level interface, see pb_encode.h and pb_decode.h.
- */
-
-#ifndef PB_H_INCLUDED
-#define PB_H_INCLUDED
-
-/*****************************************************************
- * Nanopb compilation time options. You can change these here by *
- * uncommenting the lines, or on the compiler command line. *
- *****************************************************************/
-
-/* Enable support for dynamically allocated fields */
-/* #define PB_ENABLE_MALLOC 1 */
-
-/* Define this if your CPU / compiler combination does not support
- * unaligned memory access to packed structures. */
-/* #define PB_NO_PACKED_STRUCTS 1 */
-
-/* Increase the number of required fields that are tracked.
- * A compiler warning will tell if you need this. */
-/* #define PB_MAX_REQUIRED_FIELDS 256 */
-
-/* Add support for tag numbers > 255 and fields larger than 255 bytes. */
-/* #define PB_FIELD_16BIT 1 */
-
-/* Add support for tag numbers > 65536 and fields larger than 65536 bytes. */
-/* #define PB_FIELD_32BIT 1 */
-
-/* Disable support for error messages in order to save some code space. */
-/* #define PB_NO_ERRMSG 1 */
-
-/* Disable support for custom streams (support only memory buffers). */
-/* #define PB_BUFFER_ONLY 1 */
-
-/* Switch back to the old-style callback function signature.
- * This was the default until nanopb-0.2.1. */
-/* #define PB_OLD_CALLBACK_STYLE */
-
-
-/******************************************************************
- * You usually don't need to change anything below this line. *
- * Feel free to look around and use the defined macros, though. *
- ******************************************************************/
-
-
-/* Version of the nanopb library. Just in case you want to check it in
- * your own program. */
-#define NANOPB_VERSION nanopb-0.3.8
-
-/* Include all the system headers needed by nanopb. You will need the
- * definitions of the following:
- * - strlen, memcpy, memset functions
- * - [u]int_least8_t, uint_fast8_t, [u]int_least16_t, [u]int32_t, [u]int64_t
- * - size_t
- * - bool
- *
- * If you don't have the standard header files, you can instead provide
- * a custom header that defines or includes all this. In that case,
- * define PB_SYSTEM_HEADER to the path of this file.
- */
-#ifdef PB_SYSTEM_HEADER
-#include PB_SYSTEM_HEADER
-#else
-#include
-#include
-#include
-#include
-
-#ifdef PB_ENABLE_MALLOC
-#include
-#endif
-#endif
-
-/* Macro for defining packed structures (compiler dependent).
- * This just reduces memory requirements, but is not required.
- */
-#if defined(PB_NO_PACKED_STRUCTS)
- /* Disable struct packing */
-# define PB_PACKED_STRUCT_START
-# define PB_PACKED_STRUCT_END
-# define pb_packed
-#elif defined(__GNUC__) || defined(__clang__)
- /* For GCC and clang */
-# define PB_PACKED_STRUCT_START
-# define PB_PACKED_STRUCT_END
-# define pb_packed __attribute__((packed))
-#elif defined(__ICCARM__) || defined(__CC_ARM)
- /* For IAR ARM and Keil MDK-ARM compilers */
-# define PB_PACKED_STRUCT_START _Pragma("pack(push, 1)")
-# define PB_PACKED_STRUCT_END _Pragma("pack(pop)")
-# define pb_packed
-#elif defined(_MSC_VER) && (_MSC_VER >= 1500)
- /* For Microsoft Visual C++ */
-# define PB_PACKED_STRUCT_START __pragma(pack(push, 1))
-# define PB_PACKED_STRUCT_END __pragma(pack(pop))
-# define pb_packed
-#else
- /* Unknown compiler */
-# define PB_PACKED_STRUCT_START
-# define PB_PACKED_STRUCT_END
-# define pb_packed
-#endif
-
-/* Handly macro for suppressing unreferenced-parameter compiler warnings. */
-#ifndef PB_UNUSED
-#define PB_UNUSED(x) (void)(x)
-#endif
-
-/* Compile-time assertion, used for checking compatible compilation options.
- * If this does not work properly on your compiler, use
- * #define PB_NO_STATIC_ASSERT to disable it.
- *
- * But before doing that, check carefully the error message / place where it
- * comes from to see if the error has a real cause. Unfortunately the error
- * message is not always very clear to read, but you can see the reason better
- * in the place where the PB_STATIC_ASSERT macro was called.
- */
-#ifndef PB_NO_STATIC_ASSERT
-#ifndef PB_STATIC_ASSERT
-#define PB_STATIC_ASSERT(COND,MSG) typedef char PB_STATIC_ASSERT_MSG(MSG, __LINE__, __COUNTER__)[(COND)?1:-1];
-#define PB_STATIC_ASSERT_MSG(MSG, LINE, COUNTER) PB_STATIC_ASSERT_MSG_(MSG, LINE, COUNTER)
-#define PB_STATIC_ASSERT_MSG_(MSG, LINE, COUNTER) pb_static_assertion_##MSG##LINE##COUNTER
-#endif
-#else
-#define PB_STATIC_ASSERT(COND,MSG)
-#endif
-
-/* Number of required fields to keep track of. */
-#ifndef PB_MAX_REQUIRED_FIELDS
-#define PB_MAX_REQUIRED_FIELDS 64
-#endif
-
-#if PB_MAX_REQUIRED_FIELDS < 64
-#error You should not lower PB_MAX_REQUIRED_FIELDS from the default value (64).
-#endif
-
-/* List of possible field types. These are used in the autogenerated code.
- * Least-significant 4 bits tell the scalar type
- * Most-significant 4 bits specify repeated/required/packed etc.
- */
-
-typedef uint_least8_t pb_type_t;
-
-/**** Field data types ****/
-
-/* Numeric types */
-#define PB_LTYPE_VARINT 0x00 /* int32, int64, enum, bool */
-#define PB_LTYPE_UVARINT 0x01 /* uint32, uint64 */
-#define PB_LTYPE_SVARINT 0x02 /* sint32, sint64 */
-#define PB_LTYPE_FIXED32 0x03 /* fixed32, sfixed32, float */
-#define PB_LTYPE_FIXED64 0x04 /* fixed64, sfixed64, double */
-
-/* Marker for last packable field type. */
-#define PB_LTYPE_LAST_PACKABLE 0x04
-
-/* Byte array with pre-allocated buffer.
- * data_size is the length of the allocated PB_BYTES_ARRAY structure. */
-#define PB_LTYPE_BYTES 0x05
-
-/* String with pre-allocated buffer.
- * data_size is the maximum length. */
-#define PB_LTYPE_STRING 0x06
-
-/* Submessage
- * submsg_fields is pointer to field descriptions */
-#define PB_LTYPE_SUBMESSAGE 0x07
-
-/* Extension pseudo-field
- * The field contains a pointer to pb_extension_t */
-#define PB_LTYPE_EXTENSION 0x08
-
-/* Byte array with inline, pre-allocated byffer.
- * data_size is the length of the inline, allocated buffer.
- * This differs from PB_LTYPE_BYTES by defining the element as
- * pb_byte_t[data_size] rather than pb_bytes_array_t. */
-#define PB_LTYPE_FIXED_LENGTH_BYTES 0x09
-
-/* Number of declared LTYPES */
-#define PB_LTYPES_COUNT 0x0A
-#define PB_LTYPE_MASK 0x0F
-
-/**** Field repetition rules ****/
-
-#define PB_HTYPE_REQUIRED 0x00
-#define PB_HTYPE_OPTIONAL 0x10
-#define PB_HTYPE_REPEATED 0x20
-#define PB_HTYPE_ONEOF 0x30
-#define PB_HTYPE_MASK 0x30
-
-/**** Field allocation types ****/
-
-#define PB_ATYPE_STATIC 0x00
-#define PB_ATYPE_POINTER 0x80
-#define PB_ATYPE_CALLBACK 0x40
-#define PB_ATYPE_MASK 0xC0
-
-#define PB_ATYPE(x) ((x) & PB_ATYPE_MASK)
-#define PB_HTYPE(x) ((x) & PB_HTYPE_MASK)
-#define PB_LTYPE(x) ((x) & PB_LTYPE_MASK)
-
-/* Data type used for storing sizes of struct fields
- * and array counts.
- */
-#if defined(PB_FIELD_32BIT)
- typedef uint32_t pb_size_t;
- typedef int32_t pb_ssize_t;
-#elif defined(PB_FIELD_16BIT)
- typedef uint_least16_t pb_size_t;
- typedef int_least16_t pb_ssize_t;
-#else
- typedef uint_least8_t pb_size_t;
- typedef int_least8_t pb_ssize_t;
-#endif
-#define PB_SIZE_MAX ((pb_size_t)-1)
-
-/* Data type for storing encoded data and other byte streams.
- * This typedef exists to support platforms where uint8_t does not exist.
- * You can regard it as equivalent on uint8_t on other platforms.
- */
-typedef uint_least8_t pb_byte_t;
-
-/* This structure is used in auto-generated constants
- * to specify struct fields.
- * You can change field sizes if you need structures
- * larger than 256 bytes or field tags larger than 256.
- * The compiler should complain if your .proto has such
- * structures. Fix that by defining PB_FIELD_16BIT or
- * PB_FIELD_32BIT.
- */
-PB_PACKED_STRUCT_START
-typedef struct pb_field_s pb_field_t;
-struct pb_field_s {
- pb_size_t tag;
- pb_type_t type;
- pb_size_t data_offset; /* Offset of field data, relative to previous field. */
- pb_ssize_t size_offset; /* Offset of array size or has-boolean, relative to data */
- pb_size_t data_size; /* Data size in bytes for a single item */
- pb_size_t array_size; /* Maximum number of entries in array */
-
- /* Field definitions for submessage
- * OR default value for all other non-array, non-callback types
- * If null, then field will zeroed. */
- const void *ptr;
-} pb_packed;
-PB_PACKED_STRUCT_END
-
-/* Make sure that the standard integer types are of the expected sizes.
- * Otherwise fixed32/fixed64 fields can break.
- *
- * If you get errors here, it probably means that your stdint.h is not
- * correct for your platform.
- */
-PB_STATIC_ASSERT(sizeof(int64_t) == 2 * sizeof(int32_t), INT64_T_WRONG_SIZE)
-PB_STATIC_ASSERT(sizeof(uint64_t) == 2 * sizeof(uint32_t), UINT64_T_WRONG_SIZE)
-
-/* This structure is used for 'bytes' arrays.
- * It has the number of bytes in the beginning, and after that an array.
- * Note that actual structs used will have a different length of bytes array.
- */
-#define PB_BYTES_ARRAY_T(n) struct { pb_size_t size; pb_byte_t bytes[n]; }
-#define PB_BYTES_ARRAY_T_ALLOCSIZE(n) ((size_t)n + offsetof(pb_bytes_array_t, bytes))
-
-struct pb_bytes_array_s {
- pb_size_t size;
- pb_byte_t bytes[1];
-};
-typedef struct pb_bytes_array_s pb_bytes_array_t;
-
-/* This structure is used for giving the callback function.
- * It is stored in the message structure and filled in by the method that
- * calls pb_decode.
- *
- * The decoding callback will be given a limited-length stream
- * If the wire type was string, the length is the length of the string.
- * If the wire type was a varint/fixed32/fixed64, the length is the length
- * of the actual value.
- * The function may be called multiple times (especially for repeated types,
- * but also otherwise if the message happens to contain the field multiple
- * times.)
- *
- * The encoding callback will receive the actual output stream.
- * It should write all the data in one call, including the field tag and
- * wire type. It can write multiple fields.
- *
- * The callback can be null if you want to skip a field.
- */
-typedef struct pb_istream_s pb_istream_t;
-typedef struct pb_ostream_s pb_ostream_t;
-typedef struct pb_callback_s pb_callback_t;
-struct pb_callback_s {
-#ifdef PB_OLD_CALLBACK_STYLE
- /* Deprecated since nanopb-0.2.1 */
- union {
- bool (*decode)(pb_istream_t *stream, const pb_field_t *field, void *arg);
- bool (*encode)(pb_ostream_t *stream, const pb_field_t *field, const void *arg);
- } funcs;
-#else
- /* New function signature, which allows modifying arg contents in callback. */
- union {
- bool (*decode)(pb_istream_t *stream, const pb_field_t *field, void **arg);
- bool (*encode)(pb_ostream_t *stream, const pb_field_t *field, void * const *arg);
- } funcs;
-#endif
-
- /* Free arg for use by callback */
- void *arg;
-};
-
-/* Wire types. Library user needs these only in encoder callbacks. */
-typedef enum {
- PB_WT_VARINT = 0,
- PB_WT_64BIT = 1,
- PB_WT_STRING = 2,
- PB_WT_32BIT = 5
-} pb_wire_type_t;
-
-/* Structure for defining the handling of unknown/extension fields.
- * Usually the pb_extension_type_t structure is automatically generated,
- * while the pb_extension_t structure is created by the user. However,
- * if you want to catch all unknown fields, you can also create a custom
- * pb_extension_type_t with your own callback.
- */
-typedef struct pb_extension_type_s pb_extension_type_t;
-typedef struct pb_extension_s pb_extension_t;
-struct pb_extension_type_s {
- /* Called for each unknown field in the message.
- * If you handle the field, read off all of its data and return true.
- * If you do not handle the field, do not read anything and return true.
- * If you run into an error, return false.
- * Set to NULL for default handler.
- */
- bool (*decode)(pb_istream_t *stream, pb_extension_t *extension,
- uint32_t tag, pb_wire_type_t wire_type);
-
- /* Called once after all regular fields have been encoded.
- * If you have something to write, do so and return true.
- * If you do not have anything to write, just return true.
- * If you run into an error, return false.
- * Set to NULL for default handler.
- */
- bool (*encode)(pb_ostream_t *stream, const pb_extension_t *extension);
-
- /* Free field for use by the callback. */
- const void *arg;
-};
-
-struct pb_extension_s {
- /* Type describing the extension field. Usually you'll initialize
- * this to a pointer to the automatically generated structure. */
- const pb_extension_type_t *type;
-
- /* Destination for the decoded data. This must match the datatype
- * of the extension field. */
- void *dest;
-
- /* Pointer to the next extension handler, or NULL.
- * If this extension does not match a field, the next handler is
- * automatically called. */
- pb_extension_t *next;
-
- /* The decoder sets this to true if the extension was found.
- * Ignored for encoding. */
- bool found;
-};
-
-/* Memory allocation functions to use. You can define pb_realloc and
- * pb_free to custom functions if you want. */
-#ifdef PB_ENABLE_MALLOC
-# ifndef pb_realloc
-# define pb_realloc(ptr, size) realloc(ptr, size)
-# endif
-# ifndef pb_free
-# define pb_free(ptr) free(ptr)
-# endif
-#endif
-
-/* This is used to inform about need to regenerate .pb.h/.pb.c files. */
-#define PB_PROTO_HEADER_VERSION 30
-
-/* These macros are used to declare pb_field_t's in the constant array. */
-/* Size of a structure member, in bytes. */
-#define pb_membersize(st, m) (sizeof ((st*)0)->m)
-/* Number of entries in an array. */
-#define pb_arraysize(st, m) (pb_membersize(st, m) / pb_membersize(st, m[0]))
-/* Delta from start of one member to the start of another member. */
-#define pb_delta(st, m1, m2) ((int)offsetof(st, m1) - (int)offsetof(st, m2))
-/* Marks the end of the field list */
-#define PB_LAST_FIELD {0,(pb_type_t) 0,0,0,0,0,0}
-
-/* Macros for filling in the data_offset field */
-/* data_offset for first field in a message */
-#define PB_DATAOFFSET_FIRST(st, m1, m2) (offsetof(st, m1))
-/* data_offset for subsequent fields */
-#define PB_DATAOFFSET_OTHER(st, m1, m2) (offsetof(st, m1) - offsetof(st, m2) - pb_membersize(st, m2))
-/* data offset for subsequent fields inside an union (oneof) */
-#define PB_DATAOFFSET_UNION(st, m1, m2) (PB_SIZE_MAX)
-/* Choose first/other based on m1 == m2 (deprecated, remains for backwards compatibility) */
-#define PB_DATAOFFSET_CHOOSE(st, m1, m2) (int)(offsetof(st, m1) == offsetof(st, m2) \
- ? PB_DATAOFFSET_FIRST(st, m1, m2) \
- : PB_DATAOFFSET_OTHER(st, m1, m2))
-
-/* Required fields are the simplest. They just have delta (padding) from
- * previous field end, and the size of the field. Pointer is used for
- * submessages and default values.
- */
-#define PB_REQUIRED_STATIC(tag, st, m, fd, ltype, ptr) \
- {tag, PB_ATYPE_STATIC | PB_HTYPE_REQUIRED | ltype, \
- fd, 0, pb_membersize(st, m), 0, ptr}
-
-/* Optional fields add the delta to the has_ variable. */
-#define PB_OPTIONAL_STATIC(tag, st, m, fd, ltype, ptr) \
- {tag, PB_ATYPE_STATIC | PB_HTYPE_OPTIONAL | ltype, \
- fd, \
- pb_delta(st, has_ ## m, m), \
- pb_membersize(st, m), 0, ptr}
-
-#define PB_SINGULAR_STATIC(tag, st, m, fd, ltype, ptr) \
- {tag, PB_ATYPE_STATIC | PB_HTYPE_OPTIONAL | ltype, \
- fd, 0, pb_membersize(st, m), 0, ptr}
-
-/* Repeated fields have a _count field and also the maximum number of entries. */
-#define PB_REPEATED_STATIC(tag, st, m, fd, ltype, ptr) \
- {tag, PB_ATYPE_STATIC | PB_HTYPE_REPEATED | ltype, \
- fd, \
- pb_delta(st, m ## _count, m), \
- pb_membersize(st, m[0]), \
- pb_arraysize(st, m), ptr}
-
-/* Allocated fields carry the size of the actual data, not the pointer */
-#define PB_REQUIRED_POINTER(tag, st, m, fd, ltype, ptr) \
- {tag, PB_ATYPE_POINTER | PB_HTYPE_REQUIRED | ltype, \
- fd, 0, pb_membersize(st, m[0]), 0, ptr}
-
-/* Optional fields don't need a has_ variable, as information would be redundant */
-#define PB_OPTIONAL_POINTER(tag, st, m, fd, ltype, ptr) \
- {tag, PB_ATYPE_POINTER | PB_HTYPE_OPTIONAL | ltype, \
- fd, 0, pb_membersize(st, m[0]), 0, ptr}
-
-/* Same as optional fields*/
-#define PB_SINGULAR_POINTER(tag, st, m, fd, ltype, ptr) \
- {tag, PB_ATYPE_POINTER | PB_HTYPE_OPTIONAL | ltype, \
- fd, 0, pb_membersize(st, m[0]), 0, ptr}
-
-/* Repeated fields have a _count field and a pointer to array of pointers */
-#define PB_REPEATED_POINTER(tag, st, m, fd, ltype, ptr) \
- {tag, PB_ATYPE_POINTER | PB_HTYPE_REPEATED | ltype, \
- fd, pb_delta(st, m ## _count, m), \
- pb_membersize(st, m[0]), 0, ptr}
-
-/* Callbacks are much like required fields except with special datatype. */
-#define PB_REQUIRED_CALLBACK(tag, st, m, fd, ltype, ptr) \
- {tag, PB_ATYPE_CALLBACK | PB_HTYPE_REQUIRED | ltype, \
- fd, 0, pb_membersize(st, m), 0, ptr}
-
-#define PB_OPTIONAL_CALLBACK(tag, st, m, fd, ltype, ptr) \
- {tag, PB_ATYPE_CALLBACK | PB_HTYPE_OPTIONAL | ltype, \
- fd, 0, pb_membersize(st, m), 0, ptr}
-
-#define PB_SINGULAR_CALLBACK(tag, st, m, fd, ltype, ptr) \
- {tag, PB_ATYPE_CALLBACK | PB_HTYPE_OPTIONAL | ltype, \
- fd, 0, pb_membersize(st, m), 0, ptr}
-
-#define PB_REPEATED_CALLBACK(tag, st, m, fd, ltype, ptr) \
- {tag, PB_ATYPE_CALLBACK | PB_HTYPE_REPEATED | ltype, \
- fd, 0, pb_membersize(st, m), 0, ptr}
-
-/* Optional extensions don't have the has_ field, as that would be redundant.
- * Furthermore, the combination of OPTIONAL without has_ field is used
- * for indicating proto3 style fields. Extensions exist in proto2 mode only,
- * so they should be encoded according to proto2 rules. To avoid the conflict,
- * extensions are marked as REQUIRED instead.
- */
-#define PB_OPTEXT_STATIC(tag, st, m, fd, ltype, ptr) \
- {tag, PB_ATYPE_STATIC | PB_HTYPE_REQUIRED | ltype, \
- 0, \
- 0, \
- pb_membersize(st, m), 0, ptr}
-
-#define PB_OPTEXT_POINTER(tag, st, m, fd, ltype, ptr) \
- PB_OPTIONAL_POINTER(tag, st, m, fd, ltype, ptr)
-
-#define PB_OPTEXT_CALLBACK(tag, st, m, fd, ltype, ptr) \
- PB_OPTIONAL_CALLBACK(tag, st, m, fd, ltype, ptr)
-
-/* The mapping from protobuf types to LTYPEs is done using these macros. */
-#define PB_LTYPE_MAP_BOOL PB_LTYPE_VARINT
-#define PB_LTYPE_MAP_BYTES PB_LTYPE_BYTES
-#define PB_LTYPE_MAP_DOUBLE PB_LTYPE_FIXED64
-#define PB_LTYPE_MAP_ENUM PB_LTYPE_VARINT
-#define PB_LTYPE_MAP_UENUM PB_LTYPE_UVARINT
-#define PB_LTYPE_MAP_FIXED32 PB_LTYPE_FIXED32
-#define PB_LTYPE_MAP_FIXED64 PB_LTYPE_FIXED64
-#define PB_LTYPE_MAP_FLOAT PB_LTYPE_FIXED32
-#define PB_LTYPE_MAP_INT32 PB_LTYPE_VARINT
-#define PB_LTYPE_MAP_INT64 PB_LTYPE_VARINT
-#define PB_LTYPE_MAP_MESSAGE PB_LTYPE_SUBMESSAGE
-#define PB_LTYPE_MAP_SFIXED32 PB_LTYPE_FIXED32
-#define PB_LTYPE_MAP_SFIXED64 PB_LTYPE_FIXED64
-#define PB_LTYPE_MAP_SINT32 PB_LTYPE_SVARINT
-#define PB_LTYPE_MAP_SINT64 PB_LTYPE_SVARINT
-#define PB_LTYPE_MAP_STRING PB_LTYPE_STRING
-#define PB_LTYPE_MAP_UINT32 PB_LTYPE_UVARINT
-#define PB_LTYPE_MAP_UINT64 PB_LTYPE_UVARINT
-#define PB_LTYPE_MAP_EXTENSION PB_LTYPE_EXTENSION
-#define PB_LTYPE_MAP_FIXED_LENGTH_BYTES PB_LTYPE_FIXED_LENGTH_BYTES
-
-/* This is the actual macro used in field descriptions.
- * It takes these arguments:
- * - Field tag number
- * - Field type: BOOL, BYTES, DOUBLE, ENUM, UENUM, FIXED32, FIXED64,
- * FLOAT, INT32, INT64, MESSAGE, SFIXED32, SFIXED64
- * SINT32, SINT64, STRING, UINT32, UINT64 or EXTENSION
- * - Field rules: REQUIRED, OPTIONAL or REPEATED
- * - Allocation: STATIC, CALLBACK or POINTER
- * - Placement: FIRST or OTHER, depending on if this is the first field in structure.
- * - Message name
- * - Field name
- * - Previous field name (or field name again for first field)
- * - Pointer to default value or submsg fields.
- */
-
-#define PB_FIELD(tag, type, rules, allocation, placement, message, field, prevfield, ptr) \
- PB_ ## rules ## _ ## allocation(tag, message, field, \
- PB_DATAOFFSET_ ## placement(message, field, prevfield), \
- PB_LTYPE_MAP_ ## type, ptr)
-
-/* Field description for oneof fields. This requires taking into account the
- * union name also, that's why a separate set of macros is needed.
- */
-#define PB_ONEOF_STATIC(u, tag, st, m, fd, ltype, ptr) \
- {tag, PB_ATYPE_STATIC | PB_HTYPE_ONEOF | ltype, \
- fd, pb_delta(st, which_ ## u, u.m), \
- pb_membersize(st, u.m), 0, ptr}
-
-#define PB_ONEOF_POINTER(u, tag, st, m, fd, ltype, ptr) \
- {tag, PB_ATYPE_POINTER | PB_HTYPE_ONEOF | ltype, \
- fd, pb_delta(st, which_ ## u, u.m), \
- pb_membersize(st, u.m[0]), 0, ptr}
-
-#define PB_ONEOF_FIELD(union_name, tag, type, rules, allocation, placement, message, field, prevfield, ptr) \
- PB_ONEOF_ ## allocation(union_name, tag, message, field, \
- PB_DATAOFFSET_ ## placement(message, union_name.field, prevfield), \
- PB_LTYPE_MAP_ ## type, ptr)
-
-#define PB_ANONYMOUS_ONEOF_STATIC(u, tag, st, m, fd, ltype, ptr) \
- {tag, PB_ATYPE_STATIC | PB_HTYPE_ONEOF | ltype, \
- fd, pb_delta(st, which_ ## u, m), \
- pb_membersize(st, m), 0, ptr}
-
-#define PB_ANONYMOUS_ONEOF_POINTER(u, tag, st, m, fd, ltype, ptr) \
- {tag, PB_ATYPE_POINTER | PB_HTYPE_ONEOF | ltype, \
- fd, pb_delta(st, which_ ## u, m), \
- pb_membersize(st, m[0]), 0, ptr}
-
-#define PB_ANONYMOUS_ONEOF_FIELD(union_name, tag, type, rules, allocation, placement, message, field, prevfield, ptr) \
- PB_ANONYMOUS_ONEOF_ ## allocation(union_name, tag, message, field, \
- PB_DATAOFFSET_ ## placement(message, field, prevfield), \
- PB_LTYPE_MAP_ ## type, ptr)
-
-/* These macros are used for giving out error messages.
- * They are mostly a debugging aid; the main error information
- * is the true/false return value from functions.
- * Some code space can be saved by disabling the error
- * messages if not used.
- *
- * PB_SET_ERROR() sets the error message if none has been set yet.
- * msg must be a constant string literal.
- * PB_GET_ERROR() always returns a pointer to a string.
- * PB_RETURN_ERROR() sets the error and returns false from current
- * function.
- */
-#ifdef PB_NO_ERRMSG
-#define PB_SET_ERROR(stream, msg) PB_UNUSED(stream)
-#define PB_GET_ERROR(stream) "(errmsg disabled)"
-#else
-#define PB_SET_ERROR(stream, msg) (stream->errmsg = (stream)->errmsg ? (stream)->errmsg : (msg))
-#define PB_GET_ERROR(stream) ((stream)->errmsg ? (stream)->errmsg : "(none)")
-#endif
-
-#define PB_RETURN_ERROR(stream, msg) return PB_SET_ERROR(stream, msg), false
-
-#endif
diff --git a/src/ios/Firebase/Analytics/nanopb.framework/Headers/pb_common.h b/src/ios/Firebase/Analytics/nanopb.framework/Headers/pb_common.h
deleted file mode 100644
index 60b3d3749..000000000
--- a/src/ios/Firebase/Analytics/nanopb.framework/Headers/pb_common.h
+++ /dev/null
@@ -1,42 +0,0 @@
-/* pb_common.h: Common support functions for pb_encode.c and pb_decode.c.
- * These functions are rarely needed by applications directly.
- */
-
-#ifndef PB_COMMON_H_INCLUDED
-#define PB_COMMON_H_INCLUDED
-
-#include "pb.h"
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/* Iterator for pb_field_t list */
-struct pb_field_iter_s {
- const pb_field_t *start; /* Start of the pb_field_t array */
- const pb_field_t *pos; /* Current position of the iterator */
- unsigned required_field_index; /* Zero-based index that counts only the required fields */
- void *dest_struct; /* Pointer to start of the structure */
- void *pData; /* Pointer to current field value */
- void *pSize; /* Pointer to count/has field */
-};
-typedef struct pb_field_iter_s pb_field_iter_t;
-
-/* Initialize the field iterator structure to beginning.
- * Returns false if the message type is empty. */
-bool pb_field_iter_begin(pb_field_iter_t *iter, const pb_field_t *fields, void *dest_struct);
-
-/* Advance the iterator to the next field.
- * Returns false when the iterator wraps back to the first field. */
-bool pb_field_iter_next(pb_field_iter_t *iter);
-
-/* Advance the iterator until it points at a field with the given tag.
- * Returns false if no such field exists. */
-bool pb_field_iter_find(pb_field_iter_t *iter, uint32_t tag);
-
-#ifdef __cplusplus
-} /* extern "C" */
-#endif
-
-#endif
-
diff --git a/src/ios/Firebase/Analytics/nanopb.framework/Headers/pb_decode.h b/src/ios/Firebase/Analytics/nanopb.framework/Headers/pb_decode.h
deleted file mode 100644
index a426bdd70..000000000
--- a/src/ios/Firebase/Analytics/nanopb.framework/Headers/pb_decode.h
+++ /dev/null
@@ -1,153 +0,0 @@
-/* pb_decode.h: Functions to decode protocol buffers. Depends on pb_decode.c.
- * The main function is pb_decode. You also need an input stream, and the
- * field descriptions created by nanopb_generator.py.
- */
-
-#ifndef PB_DECODE_H_INCLUDED
-#define PB_DECODE_H_INCLUDED
-
-#include "pb.h"
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/* Structure for defining custom input streams. You will need to provide
- * a callback function to read the bytes from your storage, which can be
- * for example a file or a network socket.
- *
- * The callback must conform to these rules:
- *
- * 1) Return false on IO errors. This will cause decoding to abort.
- * 2) You can use state to store your own data (e.g. buffer pointer),
- * and rely on pb_read to verify that no-body reads past bytes_left.
- * 3) Your callback may be used with substreams, in which case bytes_left
- * is different than from the main stream. Don't use bytes_left to compute
- * any pointers.
- */
-struct pb_istream_s
-{
-#ifdef PB_BUFFER_ONLY
- /* Callback pointer is not used in buffer-only configuration.
- * Having an int pointer here allows binary compatibility but
- * gives an error if someone tries to assign callback function.
- */
- int *callback;
-#else
- bool (*callback)(pb_istream_t *stream, pb_byte_t *buf, size_t count);
-#endif
-
- void *state; /* Free field for use by callback implementation */
- size_t bytes_left;
-
-#ifndef PB_NO_ERRMSG
- const char *errmsg;
-#endif
-};
-
-/***************************
- * Main decoding functions *
- ***************************/
-
-/* Decode a single protocol buffers message from input stream into a C structure.
- * Returns true on success, false on any failure.
- * The actual struct pointed to by dest must match the description in fields.
- * Callback fields of the destination structure must be initialized by caller.
- * All other fields will be initialized by this function.
- *
- * Example usage:
- * MyMessage msg = {};
- * uint8_t buffer[64];
- * pb_istream_t stream;
- *
- * // ... read some data into buffer ...
- *
- * stream = pb_istream_from_buffer(buffer, count);
- * pb_decode(&stream, MyMessage_fields, &msg);
- */
-bool pb_decode(pb_istream_t *stream, const pb_field_t fields[], void *dest_struct);
-
-/* Same as pb_decode, except does not initialize the destination structure
- * to default values. This is slightly faster if you need no default values
- * and just do memset(struct, 0, sizeof(struct)) yourself.
- *
- * This can also be used for 'merging' two messages, i.e. update only the
- * fields that exist in the new message.
- *
- * Note: If this function returns with an error, it will not release any
- * dynamically allocated fields. You will need to call pb_release() yourself.
- */
-bool pb_decode_noinit(pb_istream_t *stream, const pb_field_t fields[], void *dest_struct);
-
-/* Same as pb_decode, except expects the stream to start with the message size
- * encoded as varint. Corresponds to parseDelimitedFrom() in Google's
- * protobuf API.
- */
-bool pb_decode_delimited(pb_istream_t *stream, const pb_field_t fields[], void *dest_struct);
-
-#ifdef PB_ENABLE_MALLOC
-/* Release any allocated pointer fields. If you use dynamic allocation, you should
- * call this for any successfully decoded message when you are done with it. If
- * pb_decode() returns with an error, the message is already released.
- */
-void pb_release(const pb_field_t fields[], void *dest_struct);
-#endif
-
-
-/**************************************
- * Functions for manipulating streams *
- **************************************/
-
-/* Create an input stream for reading from a memory buffer.
- *
- * Alternatively, you can use a custom stream that reads directly from e.g.
- * a file or a network socket.
- */
-pb_istream_t pb_istream_from_buffer(const pb_byte_t *buf, size_t bufsize);
-
-/* Function to read from a pb_istream_t. You can use this if you need to
- * read some custom header data, or to read data in field callbacks.
- */
-bool pb_read(pb_istream_t *stream, pb_byte_t *buf, size_t count);
-
-
-/************************************************
- * Helper functions for writing field callbacks *
- ************************************************/
-
-/* Decode the tag for the next field in the stream. Gives the wire type and
- * field tag. At end of the message, returns false and sets eof to true. */
-bool pb_decode_tag(pb_istream_t *stream, pb_wire_type_t *wire_type, uint32_t *tag, bool *eof);
-
-/* Skip the field payload data, given the wire type. */
-bool pb_skip_field(pb_istream_t *stream, pb_wire_type_t wire_type);
-
-/* Decode an integer in the varint format. This works for bool, enum, int32,
- * int64, uint32 and uint64 field types. */
-bool pb_decode_varint(pb_istream_t *stream, uint64_t *dest);
-
-/* Decode an integer in the varint format. This works for bool, enum, int32,
- * and uint32 field types. */
-bool pb_decode_varint32(pb_istream_t *stream, uint32_t *dest);
-
-/* Decode an integer in the zig-zagged svarint format. This works for sint32
- * and sint64. */
-bool pb_decode_svarint(pb_istream_t *stream, int64_t *dest);
-
-/* Decode a fixed32, sfixed32 or float value. You need to pass a pointer to
- * a 4-byte wide C variable. */
-bool pb_decode_fixed32(pb_istream_t *stream, void *dest);
-
-/* Decode a fixed64, sfixed64 or double value. You need to pass a pointer to
- * a 8-byte wide C variable. */
-bool pb_decode_fixed64(pb_istream_t *stream, void *dest);
-
-/* Make a limited-length substream for reading a PB_WT_STRING field. */
-bool pb_make_string_substream(pb_istream_t *stream, pb_istream_t *substream);
-bool pb_close_string_substream(pb_istream_t *stream, pb_istream_t *substream);
-
-#ifdef __cplusplus
-} /* extern "C" */
-#endif
-
-#endif
diff --git a/src/ios/Firebase/Analytics/nanopb.framework/Headers/pb_encode.h b/src/ios/Firebase/Analytics/nanopb.framework/Headers/pb_encode.h
deleted file mode 100644
index d9909fb01..000000000
--- a/src/ios/Firebase/Analytics/nanopb.framework/Headers/pb_encode.h
+++ /dev/null
@@ -1,154 +0,0 @@
-/* pb_encode.h: Functions to encode protocol buffers. Depends on pb_encode.c.
- * The main function is pb_encode. You also need an output stream, and the
- * field descriptions created by nanopb_generator.py.
- */
-
-#ifndef PB_ENCODE_H_INCLUDED
-#define PB_ENCODE_H_INCLUDED
-
-#include "pb.h"
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/* Structure for defining custom output streams. You will need to provide
- * a callback function to write the bytes to your storage, which can be
- * for example a file or a network socket.
- *
- * The callback must conform to these rules:
- *
- * 1) Return false on IO errors. This will cause encoding to abort.
- * 2) You can use state to store your own data (e.g. buffer pointer).
- * 3) pb_write will update bytes_written after your callback runs.
- * 4) Substreams will modify max_size and bytes_written. Don't use them
- * to calculate any pointers.
- */
-struct pb_ostream_s
-{
-#ifdef PB_BUFFER_ONLY
- /* Callback pointer is not used in buffer-only configuration.
- * Having an int pointer here allows binary compatibility but
- * gives an error if someone tries to assign callback function.
- * Also, NULL pointer marks a 'sizing stream' that does not
- * write anything.
- */
- int *callback;
-#else
- bool (*callback)(pb_ostream_t *stream, const pb_byte_t *buf, size_t count);
-#endif
- void *state; /* Free field for use by callback implementation. */
- size_t max_size; /* Limit number of output bytes written (or use SIZE_MAX). */
- size_t bytes_written; /* Number of bytes written so far. */
-
-#ifndef PB_NO_ERRMSG
- const char *errmsg;
-#endif
-};
-
-/***************************
- * Main encoding functions *
- ***************************/
-
-/* Encode a single protocol buffers message from C structure into a stream.
- * Returns true on success, false on any failure.
- * The actual struct pointed to by src_struct must match the description in fields.
- * All required fields in the struct are assumed to have been filled in.
- *
- * Example usage:
- * MyMessage msg = {};
- * uint8_t buffer[64];
- * pb_ostream_t stream;
- *
- * msg.field1 = 42;
- * stream = pb_ostream_from_buffer(buffer, sizeof(buffer));
- * pb_encode(&stream, MyMessage_fields, &msg);
- */
-bool pb_encode(pb_ostream_t *stream, const pb_field_t fields[], const void *src_struct);
-
-/* Same as pb_encode, but prepends the length of the message as a varint.
- * Corresponds to writeDelimitedTo() in Google's protobuf API.
- */
-bool pb_encode_delimited(pb_ostream_t *stream, const pb_field_t fields[], const void *src_struct);
-
-/* Encode the message to get the size of the encoded data, but do not store
- * the data. */
-bool pb_get_encoded_size(size_t *size, const pb_field_t fields[], const void *src_struct);
-
-/**************************************
- * Functions for manipulating streams *
- **************************************/
-
-/* Create an output stream for writing into a memory buffer.
- * The number of bytes written can be found in stream.bytes_written after
- * encoding the message.
- *
- * Alternatively, you can use a custom stream that writes directly to e.g.
- * a file or a network socket.
- */
-pb_ostream_t pb_ostream_from_buffer(pb_byte_t *buf, size_t bufsize);
-
-/* Pseudo-stream for measuring the size of a message without actually storing
- * the encoded data.
- *
- * Example usage:
- * MyMessage msg = {};
- * pb_ostream_t stream = PB_OSTREAM_SIZING;
- * pb_encode(&stream, MyMessage_fields, &msg);
- * printf("Message size is %d\n", stream.bytes_written);
- */
-#ifndef PB_NO_ERRMSG
-#define PB_OSTREAM_SIZING {0,0,0,0,0}
-#else
-#define PB_OSTREAM_SIZING {0,0,0,0}
-#endif
-
-/* Function to write into a pb_ostream_t stream. You can use this if you need
- * to append or prepend some custom headers to the message.
- */
-bool pb_write(pb_ostream_t *stream, const pb_byte_t *buf, size_t count);
-
-
-/************************************************
- * Helper functions for writing field callbacks *
- ************************************************/
-
-/* Encode field header based on type and field number defined in the field
- * structure. Call this from the callback before writing out field contents. */
-bool pb_encode_tag_for_field(pb_ostream_t *stream, const pb_field_t *field);
-
-/* Encode field header by manually specifing wire type. You need to use this
- * if you want to write out packed arrays from a callback field. */
-bool pb_encode_tag(pb_ostream_t *stream, pb_wire_type_t wiretype, uint32_t field_number);
-
-/* Encode an integer in the varint format.
- * This works for bool, enum, int32, int64, uint32 and uint64 field types. */
-bool pb_encode_varint(pb_ostream_t *stream, uint64_t value);
-
-/* Encode an integer in the zig-zagged svarint format.
- * This works for sint32 and sint64. */
-bool pb_encode_svarint(pb_ostream_t *stream, int64_t value);
-
-/* Encode a string or bytes type field. For strings, pass strlen(s) as size. */
-bool pb_encode_string(pb_ostream_t *stream, const pb_byte_t *buffer, size_t size);
-
-/* Encode a fixed32, sfixed32 or float value.
- * You need to pass a pointer to a 4-byte wide C variable. */
-bool pb_encode_fixed32(pb_ostream_t *stream, const void *value);
-
-/* Encode a fixed64, sfixed64 or double value.
- * You need to pass a pointer to a 8-byte wide C variable. */
-bool pb_encode_fixed64(pb_ostream_t *stream, const void *value);
-
-/* Encode a submessage field.
- * You need to pass the pb_field_t array and pointer to struct, just like
- * with pb_encode(). This internally encodes the submessage twice, first to
- * calculate message size and then to actually write it out.
- */
-bool pb_encode_submessage(pb_ostream_t *stream, const pb_field_t fields[], const void *src_struct);
-
-#ifdef __cplusplus
-} /* extern "C" */
-#endif
-
-#endif
diff --git a/src/ios/Firebase/Analytics/nanopb.framework/Modules/module.modulemap b/src/ios/Firebase/Analytics/nanopb.framework/Modules/module.modulemap
deleted file mode 100644
index 91c3a63de..000000000
--- a/src/ios/Firebase/Analytics/nanopb.framework/Modules/module.modulemap
+++ /dev/null
@@ -1,5 +0,0 @@
-framework module nanopb {
- umbrella header "nanopb.h"
- export *
- module * { export *}
-}
diff --git a/src/ios/Firebase/Analytics/nanopb.framework/nanopb b/src/ios/Firebase/Analytics/nanopb.framework/nanopb
deleted file mode 100644
index 5d7ba43dc..000000000
Binary files a/src/ios/Firebase/Analytics/nanopb.framework/nanopb and /dev/null differ
diff --git a/src/ios/Firebase/Auth/FirebaseAuth.framework/FirebaseAuth b/src/ios/Firebase/Auth/FirebaseAuth.framework/FirebaseAuth
deleted file mode 100644
index 2cb4f8acf..000000000
Binary files a/src/ios/Firebase/Auth/FirebaseAuth.framework/FirebaseAuth and /dev/null differ
diff --git a/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIRActionCodeSettings.h b/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIRActionCodeSettings.h
deleted file mode 100644
index 6eb4c89d9..000000000
--- a/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIRActionCodeSettings.h
+++ /dev/null
@@ -1,84 +0,0 @@
-/*
- * Copyright 2017 Google
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
- #import
-
- NS_ASSUME_NONNULL_BEGIN
-
- /** @class FIRActionCodeSettings
- @brief Used to set and retrieve settings related to handling action codes.
- */
- NS_SWIFT_NAME(ActionCodeSettings)
- @interface FIRActionCodeSettings : NSObject
-
- /** @property URL
- @brief This URL represents the state/Continue URL in the form of a universal link.
- @remarks This URL can should be contructed as a universal link that would either directly open
- the app where the action code would be handled or continue to the app after the action code
- is handled by Firebase.
- */
- @property(nonatomic, copy, nullable) NSURL *URL;
-
- /** @property handleCodeInApp
- @brief Indicates whether the action code link will open the app directly or after being
- redirected from a Firebase owned web widget.
- */
- @property(assign, nonatomic) BOOL handleCodeInApp;
-
- /** @property iOSBundleID
- @brief The iOS bundle ID, if available. The default value is the current app's bundle ID.
- */
- @property(copy, nonatomic, readonly, nullable) NSString *iOSBundleID;
-
- /** @property androidPackageName
- @brief The Android package name, if available.
- */
- @property(nonatomic, copy, readonly, nullable) NSString *androidPackageName;
-
- /** @property androidMinimumVersion
- @brief The minimum Android version supported, if available.
- */
- @property(nonatomic, copy, readonly, nullable) NSString *androidMinimumVersion;
-
- /** @property androidInstallIfNotAvailable
- @brief Indicates whether the Android app should be installed on a device where it is not
- available.
- */
- @property(nonatomic, assign, readonly) BOOL androidInstallIfNotAvailable;
-
- /** @fn setIOSBundleID
- @brief Sets the iOS bundle Id.
- @param iOSBundleID The iOS bundle ID.
- */
- - (void)setIOSBundleID:(NSString *)iOSBundleID;
-
- /** @fn setAndroidPackageName:installIfNotAvailable:minimumVersion:
- @brief Sets the Android package name, the flag to indicate whether or not to install the app and
- the minimum Android version supported.
- @param androidPackageName The Android package name.
- @param installIfNotAvailable Indicates whether or not the app should be installed if not
- available.
- @param minimumVersion The minimum version of Android supported.
- @remarks If installIfNotAvailable is set to YES and the link is opened on an android device, it
- will try to install the app if not already available. Otherwise the web URL is used.
- */
- - (void)setAndroidPackageName:(NSString *)androidPackageName
- installIfNotAvailable:(BOOL)installIfNotAvailable
- minimumVersion:(nullable NSString *)minimumVersion;
-
- @end
-
- NS_ASSUME_NONNULL_END
diff --git a/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIRAdditionalUserInfo.h b/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIRAdditionalUserInfo.h
deleted file mode 100644
index 4f6947ac8..000000000
--- a/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIRAdditionalUserInfo.h
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- * Copyright 2017 Google
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#import
-
-@class FIRVerifyAssertionResponse;
-
-NS_ASSUME_NONNULL_BEGIN
-
-/** @class FIRAdditionalUserInfo
- @brief Represents additional user data returned from an identity provider.
- */
-NS_SWIFT_NAME(AdditionalUserInfo)
-@interface FIRAdditionalUserInfo : NSObject
-
-/** @fn init
- @brief This class should not be initialized manually. `FIRAdditionalUserInfo` can be retrieved
- from from an instance of `FIRAuthDataResult`.
- */
-- (instancetype)init NS_UNAVAILABLE;
-
-/** @property providerID
- @brief The provider identifier.
- */
-@property(nonatomic, readonly) NSString *providerID;
-
-/** @property profile
- @brief Dictionary containing the additional IdP specific information.
- */
-@property(nonatomic, readonly, nullable) NSDictionary *profile;
-
-/** @property username
- @brief username The name of the user.
- */
-@property(nonatomic, readonly, nullable) NSString *username;
-
-/** @property newUser
- @brief Indicates whether or not the current user was signed in for the first time.
- */
-@property(nonatomic, readonly, getter=isNewUser) BOOL newUser;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIRAuth.h b/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIRAuth.h
deleted file mode 100644
index cfc59b1f3..000000000
--- a/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIRAuth.h
+++ /dev/null
@@ -1,864 +0,0 @@
-/*
- * Copyright 2017 Google
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#import
-#import
-
-#import "FIRAuthErrors.h"
-
-#if TARGET_OS_IOS
-#import "FIRAuthAPNSTokenType.h"
-#endif
-
-@class FIRActionCodeSettings;
-@class FIRApp;
-@class FIRAuth;
-@class FIRAuthCredential;
-@class FIRAuthDataResult;
-@class FIRAuthSettings;
-@class FIRUser;
-@protocol FIRAuthStateListener;
-
-NS_ASSUME_NONNULL_BEGIN
-
-/** @typedef FIRUserUpdateCallback
- @brief The type of block invoked when a request to update the current user is completed.
- */
-typedef void (^FIRUserUpdateCallback)(NSError *_Nullable error) NS_SWIFT_NAME(UserUpdateCallback);
-
-/** @typedef FIRAuthStateDidChangeListenerHandle
- @brief The type of handle returned by `FIRAuth.addAuthStateDidChangeListener:`.
- */
-typedef id FIRAuthStateDidChangeListenerHandle
- NS_SWIFT_NAME(AuthStateDidChangeListenerHandle);
-
-/** @typedef FIRAuthStateDidChangeListenerBlock
- @brief The type of block which can be registered as a listener for auth state did change events.
-
- @param auth The FIRAuth object on which state changes occurred.
- @param user Optionally; the current signed in user, if any.
- */
-typedef void(^FIRAuthStateDidChangeListenerBlock)(FIRAuth *auth, FIRUser *_Nullable user)
- NS_SWIFT_NAME(AuthStateDidChangeListenerBlock);
-
-/** @typedef FIRIDTokenDidChangeListenerHandle
- @brief The type of handle returned by `FIRAuth.addIDTokenDidChangeListener:`.
- */
-typedef id FIRIDTokenDidChangeListenerHandle
- NS_SWIFT_NAME(IDTokenDidChangeListenerHandle);
-
-/** @typedef FIRIDTokenDidChangeListenerBlock
- @brief The type of block which can be registered as a listener for ID token did change events.
-
- @param auth The FIRAuth object on which ID token changes occurred.
- @param user Optionally; the current signed in user, if any.
- */
-typedef void(^FIRIDTokenDidChangeListenerBlock)(FIRAuth *auth, FIRUser *_Nullable user)
- NS_SWIFT_NAME(IDTokenDidChangeListenerBlock);
-
-/** @typedef FIRAuthDataResultCallback
- @brief The type of block invoked when sign-in related events complete.
-
- @param authResult Optionally; Result of sign-in request containing both the user and
- the additional user info associated with the user.
- @param error Optionally; the error which occurred - or nil if the request was successful.
- */
-typedef void (^FIRAuthDataResultCallback)(FIRAuthDataResult *_Nullable authResult,
- NSError *_Nullable error)
- NS_SWIFT_NAME(AuthDataResultCallback);
-
-#if defined(__IPHONE_10_0) && __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_10_0
-/**
- @brief The name of the `NSNotificationCenter` notification which is posted when the auth state
- changes (for example, a new token has been produced, a user signs in or signs out). The
- object parameter of the notification is the sender `FIRAuth` instance.
- */
-extern const NSNotificationName FIRAuthStateDidChangeNotification
- NS_SWIFT_NAME(AuthStateDidChange);
-#else
-/**
- @brief The name of the `NSNotificationCenter` notification which is posted when the auth state
- changes (for example, a new token has been produced, a user signs in or signs out). The
- object parameter of the notification is the sender `FIRAuth` instance.
- */
-extern NSString *const FIRAuthStateDidChangeNotification
- NS_SWIFT_NAME(AuthStateDidChangeNotification);
-#endif // defined(__IPHONE_10_0) && __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_10_0
-
-/** @typedef FIRAuthResultCallback
- @brief The type of block invoked when sign-in related events complete.
-
- @param user Optionally; the signed in user, if any.
- @param error Optionally; if an error occurs, this is the NSError object that describes the
- problem. Set to nil otherwise.
- */
-typedef void (^FIRAuthResultCallback)(FIRUser *_Nullable user, NSError *_Nullable error)
- NS_SWIFT_NAME(AuthResultCallback);
-
-/** @typedef FIRProviderQueryCallback
- @brief The type of block invoked when a list of identity providers for a given email address is
- requested.
-
- @param providers Optionally; a list of provider identifiers, if any.
- @see FIRGoogleAuthProviderID etc.
- @param error Optionally; if an error occurs, this is the NSError object that describes the
- problem. Set to nil otherwise.
- */
-typedef void (^FIRProviderQueryCallback)(NSArray *_Nullable providers,
- NSError *_Nullable error)
- NS_SWIFT_NAME(ProviderQueryCallback);
-
-/** @typedef FIRSignInMethodQueryCallback
- @brief The type of block invoked when a list of sign-in methods for a given email address is
- requested.
- */
-typedef void (^FIRSignInMethodQueryCallback)(NSArray *_Nullable,
- NSError *_Nullable)
- NS_SWIFT_NAME(SignInMethodQueryCallback);
-
-/** @typedef FIRSendPasswordResetCallback
- @brief The type of block invoked when sending a password reset email.
-
- @param error Optionally; if an error occurs, this is the NSError object that describes the
- problem. Set to nil otherwise.
- */
-typedef void (^FIRSendPasswordResetCallback)(NSError *_Nullable error)
- NS_SWIFT_NAME(SendPasswordResetCallback);
-
-/** @typedef FIRSendSignInLinkToEmailCallback
- @brief The type of block invoked when sending an email sign-in link email.
- */
-typedef void (^FIRSendSignInLinkToEmailCallback)(NSError *_Nullable error)
- NS_SWIFT_NAME(SendSignInLinkToEmailCallback);
-
-/** @typedef FIRConfirmPasswordResetCallback
- @brief The type of block invoked when performing a password reset.
-
- @param error Optionally; if an error occurs, this is the NSError object that describes the
- problem. Set to nil otherwise.
- */
-typedef void (^FIRConfirmPasswordResetCallback)(NSError *_Nullable error)
- NS_SWIFT_NAME(ConfirmPasswordResetCallback);
-
-/** @typedef FIRVerifyPasswordResetCodeCallback
- @brief The type of block invoked when verifying that an out of band code should be used to
- perform password reset.
-
- @param email Optionally; the email address of the user for which the out of band code applies.
- @param error Optionally; if an error occurs, this is the NSError object that describes the
- problem. Set to nil otherwise.
- */
-typedef void (^FIRVerifyPasswordResetCodeCallback)(NSString *_Nullable email,
- NSError *_Nullable error)
- NS_SWIFT_NAME(VerifyPasswordResetCodeCallback);
-
-/** @typedef FIRApplyActionCodeCallback
- @brief The type of block invoked when applying an action code.
-
- @param error Optionally; if an error occurs, this is the NSError object that describes the
- problem. Set to nil otherwise.
- */
-typedef void (^FIRApplyActionCodeCallback)(NSError *_Nullable error)
- NS_SWIFT_NAME(ApplyActionCodeCallback);
-
-/**
- @brief Keys used to retrieve operation data from a `FIRActionCodeInfo` object by the
- `dataForKey` method.
- */
-typedef NS_ENUM(NSInteger, FIRActionDataKey) {
- /**
- * The email address to which the code was sent.
- * For FIRActionCodeOperationRecoverEmail, the new email address for the account.
- */
- FIRActionCodeEmailKey = 0,
-
- /** For FIRActionCodeOperationRecoverEmail, the current email address for the account. */
- FIRActionCodeFromEmailKey = 1
-} NS_SWIFT_NAME(ActionDataKey);
-
-/** @class FIRActionCodeInfo
- @brief Manages information regarding action codes.
- */
-NS_SWIFT_NAME(ActionCodeInfo)
-@interface FIRActionCodeInfo : NSObject
-
-/**
- @brief Operations which can be performed with action codes.
- */
-typedef NS_ENUM(NSInteger, FIRActionCodeOperation) {
- /** Action code for unknown operation. */
- FIRActionCodeOperationUnknown = 0,
-
- /** Action code for password reset operation. */
- FIRActionCodeOperationPasswordReset = 1,
-
- /** Action code for verify email operation. */
- FIRActionCodeOperationVerifyEmail = 2,
-
- /** Action code for recover email operation. */
- FIRActionCodeOperationRecoverEmail = 3,
-
- /** Action code for email link operation. */
- FIRActionCodeOperationEmailLink = 4,
-
-
-} NS_SWIFT_NAME(ActionCodeOperation);
-
-/**
- @brief The operation being performed.
- */
-@property(nonatomic, readonly) FIRActionCodeOperation operation;
-
-/** @fn dataForKey:
- @brief The operation being performed.
-
- @param key The FIRActionDataKey value used to retrieve the operation data.
-
- @return The operation data pertaining to the provided action code key.
- */
-- (NSString *)dataForKey:(FIRActionDataKey)key;
-
-/** @fn init
- @brief please use initWithOperation: instead.
- */
-- (instancetype)init NS_UNAVAILABLE;
-
-@end
-
-/** @typedef FIRCheckActionCodeCallBack
- @brief The type of block invoked when performing a check action code operation.
-
- @param info Metadata corresponding to the action code.
- @param error Optionally; if an error occurs, this is the NSError object that describes the
- problem. Set to nil otherwise.
- */
-typedef void (^FIRCheckActionCodeCallBack)(FIRActionCodeInfo *_Nullable info,
- NSError *_Nullable error)
- NS_SWIFT_NAME(CheckActionCodeCallback);
-
-/** @class FIRAuth
- @brief Manages authentication for Firebase apps.
- @remarks This class is thread-safe.
- */
-NS_SWIFT_NAME(Auth)
-@interface FIRAuth : NSObject
-
-/** @fn auth
- @brief Gets the auth object for the default Firebase app.
- @remarks The default Firebase app must have already been configured or an exception will be
- raised.
- */
-+ (FIRAuth *)auth NS_SWIFT_NAME(auth());
-
-/** @fn authWithApp:
- @brief Gets the auth object for a `FIRApp`.
-
- @param app The FIRApp for which to retrieve the associated FIRAuth instance.
- @return The FIRAuth instance associated with the given FIRApp.
- */
-+ (FIRAuth *)authWithApp:(FIRApp *)app NS_SWIFT_NAME(auth(app:));
-
-/** @property app
- @brief Gets the `FIRApp` object that this auth object is connected to.
- */
-@property(nonatomic, weak, readonly, nullable) FIRApp *app;
-
-/** @property currentUser
- @brief Synchronously gets the cached current user, or null if there is none.
- */
-@property(nonatomic, strong, readonly, nullable) FIRUser *currentUser;
-
-/** @property languageCode
- @brief The current user language code. This property can be set to the app's current language by
- calling `useAppLanguage`.
-
- @remarks The string used to set this property must be a language code that follows BCP 47.
- */
-@property (nonatomic, copy, nullable) NSString *languageCode;
-
-/** @property settings
- @brief Contains settings related to the auth object.
- */
-@property (nonatomic, copy, nullable) FIRAuthSettings *settings;
-
-#if TARGET_OS_IOS
-/** @property APNSToken
- @brief The APNs token used for phone number authentication. The type of the token (production
- or sandbox) will be attempted to be automatcially detected.
- @remarks If swizzling is disabled, the APNs Token must be set for phone number auth to work,
- by either setting this property or by calling `setAPNSToken:type:`
- */
-@property(nonatomic, strong, nullable) NSData *APNSToken;
-#endif
-
-/** @fn init
- @brief Please access auth instances using `FIRAuth.auth` and `FIRAuth.authForApp:`.
- */
-- (instancetype)init NS_UNAVAILABLE;
-
-/** @fn updateCurrentUser:completion:
- @brief Sets the currentUser on the calling Auth instance to the provided user object.
- @param user The user object to be set as the current user of the calling Auth instance.
- @param completion Optionally; a block invoked after the user of the calling Auth instance has
- been updated or an error was encountered.
- */
-- (void)updateCurrentUser:(FIRUser *)user completion:(nullable FIRUserUpdateCallback)completion;
-
-/** @fn fetchProvidersForEmail:completion:
- @brief Fetches the list of IdPs that can be used for signing in with the provided email address.
- Useful for an "identifier-first" sign-in flow.
-
- @param email The email address for which to obtain a list of identity providers.
- @param completion Optionally; a block which is invoked when the list of providers for the
- specified email address is ready or an error was encountered. Invoked asynchronously on the
- main thread in the future.
-
- @remarks Possible error codes:
-
- + `FIRAuthErrorCodeInvalidEmail` - Indicates the email address is malformed.
-
- @remarks See `FIRAuthErrors` for a list of error codes that are common to all API methods.
- */
-- (void)fetchProvidersForEmail:(NSString *)email
- completion:(nullable FIRProviderQueryCallback)completion;
-
-/** @fn fetchSignInMethodsForEmail:completion:
- @brief Fetches the list of all sign-in methods previously used for the provided email address.
-
- @param email The email address for which to obtain a list of sign-in methods.
- @param completion Optionally; a block which is invoked when the list of sign in methods for the
- specified email address is ready or an error was encountered. Invoked asynchronously on the
- main thread in the future.
-
- @remarks Possible error codes:
-
- + `FIRAuthErrorCodeInvalidEmail` - Indicates the email address is malformed.
-
- @remarks See @c FIRAuthErrors for a list of error codes that are common to all API methods.
- */
-
-- (void)fetchSignInMethodsForEmail:(NSString *)email
- completion:(nullable FIRSignInMethodQueryCallback)completion;
-
-/** @fn signInWithEmail:password:completion:
- @brief Signs in using an email address and password.
-
- @param email The user's email address.
- @param password The user's password.
- @param completion Optionally; a block which is invoked when the sign in flow finishes, or is
- canceled. Invoked asynchronously on the main thread in the future.
-
- @remarks Possible error codes:
-
- + `FIRAuthErrorCodeOperationNotAllowed` - Indicates that email and password
- accounts are not enabled. Enable them in the Auth section of the
- Firebase console.
- + `FIRAuthErrorCodeUserDisabled` - Indicates the user's account is disabled.
- + `FIRAuthErrorCodeWrongPassword` - Indicates the user attempted
- sign in with an incorrect password.
- + `FIRAuthErrorCodeInvalidEmail` - Indicates the email address is malformed.
-
-
- @remarks See `FIRAuthErrors` for a list of error codes that are common to all API methods.
- */
-- (void)signInWithEmail:(NSString *)email
- password:(NSString *)password
- completion:(nullable FIRAuthDataResultCallback)completion;
-
-/** @fn signInWithEmail:link:completion:
- @brief Signs in using an email address and email sign-in link.
-
- @param email The user's email address.
- @param link The email sign-in link.
- @param completion Optionally; a block which is invoked when the sign in flow finishes, or is
- canceled. Invoked asynchronously on the main thread in the future.
-
- @remarks Possible error codes:
-
- + `FIRAuthErrorCodeOperationNotAllowed` - Indicates that email and email sign-in link
- accounts are not enabled. Enable them in the Auth section of the
- Firebase console.
- + `FIRAuthErrorCodeUserDisabled` - Indicates the user's account is disabled.
- + `FIRAuthErrorCodeInvalidEmail` - Indicates the email address is invalid.
-
-
- @remarks See `FIRAuthErrors` for a list of error codes that are common to all API methods.
- */
-
-- (void)signInWithEmail:(NSString *)email
- link:(NSString *)link
- completion:(nullable FIRAuthDataResultCallback)completion;
-
-/** @fn signInAndRetrieveDataWithEmail:password:completion:
- @brief Please use `signInWithEmail:password:completion:` for Objective-C or
- `signIn(withEmail:password:completion:)` for Swift instead.
-
- @param email The user's email address.
- @param password The user's password.
- @param completion Optionally; a block which is invoked when the sign in flow finishes, or is
- canceled. Invoked asynchronously on the main thread in the future.
- */
-- (void)signInAndRetrieveDataWithEmail:(NSString *)email
- password:(NSString *)password
- completion:(nullable FIRAuthDataResultCallback)completion
- DEPRECATED_MSG_ATTRIBUTE(
- "Please use signInWithEmail:password:completion: for"
- " Objective-C or signIn(withEmail:password:completion:) for"
- " Swift instead.");
-
-/** @fn signInWithCredential:completion:
- @brief Please use `signInAndRetrieveDataWithCredential:completion:` for Objective-C or
- `signInAndRetrieveData(with:completion:)` for swift instead
-
- @param credential The credential supplied by the IdP.
- @param completion Optionally; a block which is invoked when the sign in flow finishes, or is
- canceled. Invoked asynchronously on the main thread in the future.
-
- @remarks Possible error codes:
-
- + `FIRAuthErrorCodeInvalidCredential` - Indicates the supplied credential is invalid.
- This could happen if it has expired or it is malformed.
- + `FIRAuthErrorCodeOperationNotAllowed` - Indicates that accounts
- with the identity provider represented by the credential are not enabled.
- Enable them in the Auth section of the Firebase console.
- + `FIRAuthErrorCodeAccountExistsWithDifferentCredential` - Indicates the email asserted
- by the credential (e.g. the email in a Facebook access token) is already in use by an
- existing account, that cannot be authenticated with this sign-in method. Call
- fetchProvidersForEmail for this user’s email and then prompt them to sign in with any of
- the sign-in providers returned. This error will only be thrown if the "One account per
- email address" setting is enabled in the Firebase console, under Auth settings.
- + `FIRAuthErrorCodeUserDisabled` - Indicates the user's account is disabled.
- + `FIRAuthErrorCodeWrongPassword` - Indicates the user attempted sign in with an
- incorrect password, if credential is of the type EmailPasswordAuthCredential.
- + `FIRAuthErrorCodeInvalidEmail` - Indicates the email address is malformed.
- + `FIRAuthErrorCodeMissingVerificationID` - Indicates that the phone auth credential was
- created with an empty verification ID.
- + `FIRAuthErrorCodeMissingVerificationCode` - Indicates that the phone auth credential
- was created with an empty verification code.
- + `FIRAuthErrorCodeInvalidVerificationCode` - Indicates that the phone auth credential
- was created with an invalid verification Code.
- + `FIRAuthErrorCodeInvalidVerificationID` - Indicates that the phone auth credential was
- created with an invalid verification ID.
- + `FIRAuthErrorCodeSessionExpired` - Indicates that the SMS code has expired.
-
-
-
- @remarks See `FIRAuthErrors` for a list of error codes that are common to all API methods
- */
-- (void)signInWithCredential:(FIRAuthCredential *)credential
- completion:(nullable FIRAuthResultCallback)completion DEPRECATED_MSG_ATTRIBUTE(
- "Please use signInAndRetrieveDataWithCredential:completion:"
- " for Objective-C or signInAndRetrieveData(with:completion:)"
- " for Swift instead.");
-
-/** @fn signInAndRetrieveDataWithCredential:completion:
- @brief Asynchronously signs in to Firebase with the given 3rd-party credentials (e.g. a Facebook
- login Access Token, a Google ID Token/Access Token pair, etc.) and returns additional
- identity provider data.
-
- @param credential The credential supplied by the IdP.
- @param completion Optionally; a block which is invoked when the sign in flow finishes, or is
- canceled. Invoked asynchronously on the main thread in the future.
-
- @remarks Possible error codes:
-
- + `FIRAuthErrorCodeInvalidCredential` - Indicates the supplied credential is invalid.
- This could happen if it has expired or it is malformed.
- + `FIRAuthErrorCodeOperationNotAllowed` - Indicates that accounts
- with the identity provider represented by the credential are not enabled.
- Enable them in the Auth section of the Firebase console.
- + `FIRAuthErrorCodeAccountExistsWithDifferentCredential` - Indicates the email asserted
- by the credential (e.g. the email in a Facebook access token) is already in use by an
- existing account, that cannot be authenticated with this sign-in method. Call
- fetchProvidersForEmail for this user’s email and then prompt them to sign in with any of
- the sign-in providers returned. This error will only be thrown if the "One account per
- email address" setting is enabled in the Firebase console, under Auth settings.
- + `FIRAuthErrorCodeUserDisabled` - Indicates the user's account is disabled.
- + `FIRAuthErrorCodeWrongPassword` - Indicates the user attempted sign in with an
- incorrect password, if credential is of the type EmailPasswordAuthCredential.
- + `FIRAuthErrorCodeInvalidEmail` - Indicates the email address is malformed.
- + `FIRAuthErrorCodeMissingVerificationID` - Indicates that the phone auth credential was
- created with an empty verification ID.
- + `FIRAuthErrorCodeMissingVerificationCode` - Indicates that the phone auth credential
- was created with an empty verification code.
- + `FIRAuthErrorCodeInvalidVerificationCode` - Indicates that the phone auth credential
- was created with an invalid verification Code.
- + `FIRAuthErrorCodeInvalidVerificationID` - Indicates that the phone auth credential was
- created with an invalid verification ID.
- + `FIRAuthErrorCodeSessionExpired` - Indicates that the SMS code has expired.
-
-
-
- @remarks See `FIRAuthErrors` for a list of error codes that are common to all API methods
- */
-- (void)signInAndRetrieveDataWithCredential:(FIRAuthCredential *)credential
- completion:(nullable FIRAuthDataResultCallback)completion;
-
-/** @fn signInAnonymouslyWithCompletion:
- @brief Asynchronously creates and becomes an anonymous user.
- @param completion Optionally; a block which is invoked when the sign in finishes, or is
- canceled. Invoked asynchronously on the main thread in the future.
-
- @remarks If there is already an anonymous user signed in, that user will be returned instead.
- If there is any other existing user signed in, that user will be signed out.
-
- @remarks Possible error codes:
-
- + `FIRAuthErrorCodeOperationNotAllowed` - Indicates that anonymous accounts are
- not enabled. Enable them in the Auth section of the Firebase console.
-
- @remarks See `FIRAuthErrors` for a list of error codes that are common to all API methods.
- */
-- (void)signInAnonymouslyWithCompletion:(nullable FIRAuthDataResultCallback)completion;
-
-/** @fn signInAnonymouslyAndRetrieveDataWithCompletion:
- @brief `Please use sign `signInAnonymouslyWithCompletion:` for Objective-C or
- `signInAnonymously(Completion:)` for Swift instead.
- @param completion Optionally; a block which is invoked when the sign in finishes, or is
- canceled. Invoked asynchronously on the main thread in the future.
- */
-- (void)signInAnonymouslyAndRetrieveDataWithCompletion:
- (nullable FIRAuthDataResultCallback)completion
- DEPRECATED_MSG_ATTRIBUTE("Please use signInAnonymouslyWithCompletion: for Objective-C or"
- " signInAnonymously(Completion:) for swift instead.");
-
-/** @fn signInWithCustomToken:completion:
- @brief Asynchronously signs in to Firebase with the given Auth token.
-
- @param token A self-signed custom auth token.
- @param completion Optionally; a block which is invoked when the sign in finishes, or is
- canceled. Invoked asynchronously on the main thread in the future.
-
- @remarks Possible error codes:
-
- + `FIRAuthErrorCodeInvalidCustomToken` - Indicates a validation error with
- the custom token.
- + `FIRAuthErrorCodeCustomTokenMismatch` - Indicates the service account and the API key
- belong to different projects.
-
-
-
- @remarks See `FIRAuthErrors` for a list of error codes that are common to all API methods.
- */
-- (void)signInWithCustomToken:(NSString *)token
- completion:(nullable FIRAuthDataResultCallback)completion;
-
-/** @fn signInAndRetrieveDataWithCustomToken:completion:
- @brief Please use `signInWithCustomToken:completion:` or `signIn(withCustomToken:completion:)`
- for Swift instead.
-
- @param token A self-signed custom auth token.
- @param completion Optionally; a block which is invoked when the sign in finishes, or is
- canceled. Invoked asynchronously on the main thread in the future.
- */
-- (void)signInAndRetrieveDataWithCustomToken:(NSString *)token
- completion:(nullable FIRAuthDataResultCallback)completion
- DEPRECATED_MSG_ATTRIBUTE(
- "Please use signInWithCustomToken:completion:"
- "for Objective-C or signIn(withCustomToken:completion:) for"
- " Swift instead.");
-
-/** @fn createUserWithEmail:password:completion:
- @brief Creates and, on success, signs in a user with the given email address and password.
-
- @param email The user's email address.
- @param password The user's desired password.
- @param completion Optionally; a block which is invoked when the sign up flow finishes, or is
- canceled. Invoked asynchronously on the main thread in the future.
-
- @remarks Possible error codes:
-
- + `FIRAuthErrorCodeInvalidEmail` - Indicates the email address is malformed.
- + `FIRAuthErrorCodeEmailAlreadyInUse` - Indicates the email used to attempt sign up
- already exists. Call fetchProvidersForEmail to check which sign-in mechanisms the user
- used, and prompt the user to sign in with one of those.
- + `FIRAuthErrorCodeOperationNotAllowed` - Indicates that email and password accounts
- are not enabled. Enable them in the Auth section of the Firebase console.
- + `FIRAuthErrorCodeWeakPassword` - Indicates an attempt to set a password that is
- considered too weak. The NSLocalizedFailureReasonErrorKey field in the NSError.userInfo
- dictionary object will contain more detailed explanation that can be shown to the user.
-
- @remarks See `FIRAuthErrors` for a list of error codes that are common to all API methods.
- */
-- (void)createUserWithEmail:(NSString *)email
- password:(NSString *)password
- completion:(nullable FIRAuthDataResultCallback)completion;
-
-/** @fn createUserAndRetrieveDataWithEmail:password:completion:
- @brief Please use `createUserAndRetrieveDataWithEmail:password:completion:` or
- `createUser(withEmail:password:completion:)` for Swift instead.
-
- @param email The user's email address.
- @param password The user's desired password.
- @param completion Optionally; a block which is invoked when the sign up flow finishes, or is
- canceled. Invoked asynchronously on the main thread in the future.
- */
-- (void)createUserAndRetrieveDataWithEmail:(NSString *)email
- password:(NSString *)password
- completion:(nullable FIRAuthDataResultCallback)completion
- DEPRECATED_MSG_ATTRIBUTE(
- "Please use createUserWithEmail:password:completion: for"
- " Objective-C or createUser(withEmail:password:completion:)"
- " for Swift instead.");
-
-/** @fn confirmPasswordResetWithCode:newPassword:completion:
- @brief Resets the password given a code sent to the user outside of the app and a new password
- for the user.
-
- @param newPassword The new password.
- @param completion Optionally; a block which is invoked when the request finishes. Invoked
- asynchronously on the main thread in the future.
-
- @remarks Possible error codes:
-
- + `FIRAuthErrorCodeWeakPassword` - Indicates an attempt to set a password that is
- considered too weak.
- + `FIRAuthErrorCodeOperationNotAllowed` - Indicates the administrator disabled sign
- in with the specified identity provider.
- + `FIRAuthErrorCodeExpiredActionCode` - Indicates the OOB code is expired.
- + `FIRAuthErrorCodeInvalidActionCode` - Indicates the OOB code is invalid.
-
- @remarks See `FIRAuthErrors` for a list of error codes that are common to all API methods.
- */
-- (void)confirmPasswordResetWithCode:(NSString *)code
- newPassword:(NSString *)newPassword
- completion:(FIRConfirmPasswordResetCallback)completion;
-
-/** @fn checkActionCode:completion:
- @brief Checks the validity of an out of band code.
-
- @param code The out of band code to check validity.
- @param completion Optionally; a block which is invoked when the request finishes. Invoked
- asynchronously on the main thread in the future.
- */
-- (void)checkActionCode:(NSString *)code completion:(FIRCheckActionCodeCallBack)completion;
-
-/** @fn verifyPasswordResetCode:completion:
- @brief Checks the validity of a verify password reset code.
-
- @param code The password reset code to be verified.
- @param completion Optionally; a block which is invoked when the request finishes. Invoked
- asynchronously on the main thread in the future.
- */
-- (void)verifyPasswordResetCode:(NSString *)code
- completion:(FIRVerifyPasswordResetCodeCallback)completion;
-
-/** @fn applyActionCode:completion:
- @brief Applies out of band code.
-
- @param code The out of band code to be applied.
- @param completion Optionally; a block which is invoked when the request finishes. Invoked
- asynchronously on the main thread in the future.
-
- @remarks This method will not work for out of band codes which require an additional parameter,
- such as password reset code.
- */
-- (void)applyActionCode:(NSString *)code
- completion:(FIRApplyActionCodeCallback)completion;
-
-/** @fn sendPasswordResetWithEmail:completion:
- @brief Initiates a password reset for the given email address.
-
- @param email The email address of the user.
- @param completion Optionally; a block which is invoked when the request finishes. Invoked
- asynchronously on the main thread in the future.
-
- @remarks Possible error codes:
-
- + `FIRAuthErrorCodeInvalidRecipientEmail` - Indicates an invalid recipient email was
- sent in the request.
- + `FIRAuthErrorCodeInvalidSender` - Indicates an invalid sender email is set in
- the console for this action.
- + `FIRAuthErrorCodeInvalidMessagePayload` - Indicates an invalid email template for
- sending update email.
-
-
- */
-- (void)sendPasswordResetWithEmail:(NSString *)email
- completion:(nullable FIRSendPasswordResetCallback)completion;
-
-/** @fn sendPasswordResetWithEmail:actionCodeSetting:completion:
- @brief Initiates a password reset for the given email address and @FIRActionCodeSettings object.
-
- @param email The email address of the user.
- @param actionCodeSettings An `FIRActionCodeSettings` object containing settings related to
- handling action codes.
- @param completion Optionally; a block which is invoked when the request finishes. Invoked
- asynchronously on the main thread in the future.
-
- @remarks Possible error codes:
-
- + `FIRAuthErrorCodeInvalidRecipientEmail` - Indicates an invalid recipient email was
- sent in the request.
- + `FIRAuthErrorCodeInvalidSender` - Indicates an invalid sender email is set in
- the console for this action.
- + `FIRAuthErrorCodeInvalidMessagePayload` - Indicates an invalid email template for
- sending update email.
- + `FIRAuthErrorCodeMissingIosBundleID` - Indicates that the iOS bundle ID is missing when
- `handleCodeInApp` is set to YES.
- + `FIRAuthErrorCodeMissingAndroidPackageName` - Indicates that the android package name
- is missing when the `androidInstallApp` flag is set to true.
- + `FIRAuthErrorCodeUnauthorizedDomain` - Indicates that the domain specified in the
- continue URL is not whitelisted in the Firebase console.
- + `FIRAuthErrorCodeInvalidContinueURI` - Indicates that the domain specified in the
- continue URI is not valid.
-
-
- */
- - (void)sendPasswordResetWithEmail:(NSString *)email
- actionCodeSettings:(FIRActionCodeSettings *)actionCodeSettings
- completion:(nullable FIRSendPasswordResetCallback)completion;
-
-/** @fn sendSignInLinkToEmail:actionCodeSettings:completion:
- @brief Sends a sign in with email link to provided email address.
-
- @param email The email address of the user.
- @param actionCodeSettings An `FIRActionCodeSettings` object containing settings related to
- handling action codes.
- @param completion Optionally; a block which is invoked when the request finishes. Invoked
- asynchronously on the main thread in the future.
- */
-- (void)sendSignInLinkToEmail:(NSString *)email
- actionCodeSettings:(FIRActionCodeSettings *)actionCodeSettings
- completion:(nullable FIRSendSignInLinkToEmailCallback)completion;
-
-/** @fn signOut:
- @brief Signs out the current user.
-
- @param error Optionally; if an error occurs, upon return contains an NSError object that
- describes the problem; is nil otherwise.
- @return @YES when the sign out request was successful. @NO otherwise.
-
- @remarks Possible error codes:
-
- + `FIRAuthErrorCodeKeychainError` - Indicates an error occurred when accessing the
- keychain. The `NSLocalizedFailureReasonErrorKey` field in the `NSError.userInfo`
- dictionary will contain more information about the error encountered.
-
-
-
- */
-- (BOOL)signOut:(NSError *_Nullable *_Nullable)error;
-
-/** @fn isSignInWithEmailLink
- @brief Checks if link is an email sign-in link.
-
- @param link The email sign-in link.
- @return @YES when the link passed matches the expected format of an email sign-in link.
- */
-- (BOOL)isSignInWithEmailLink:(NSString *)link;
-
-/** @fn addAuthStateDidChangeListener:
- @brief Registers a block as an "auth state did change" listener. To be invoked when:
-
- + The block is registered as a listener,
- + A user with a different UID from the current user has signed in, or
- + The current user has signed out.
-
- @param listener The block to be invoked. The block is always invoked asynchronously on the main
- thread, even for it's initial invocation after having been added as a listener.
-
- @remarks The block is invoked immediately after adding it according to it's standard invocation
- semantics, asynchronously on the main thread. Users should pay special attention to
- making sure the block does not inadvertently retain objects which should not be retained by
- the long-lived block. The block itself will be retained by `FIRAuth` until it is
- unregistered or until the `FIRAuth` instance is otherwise deallocated.
-
- @return A handle useful for manually unregistering the block as a listener.
- */
-- (FIRAuthStateDidChangeListenerHandle)addAuthStateDidChangeListener:
- (FIRAuthStateDidChangeListenerBlock)listener;
-
-/** @fn removeAuthStateDidChangeListener:
- @brief Unregisters a block as an "auth state did change" listener.
-
- @param listenerHandle The handle for the listener.
- */
-- (void)removeAuthStateDidChangeListener:(FIRAuthStateDidChangeListenerHandle)listenerHandle;
-
-/** @fn addIDTokenDidChangeListener:
- @brief Registers a block as an "ID token did change" listener. To be invoked when:
-
- + The block is registered as a listener,
- + A user with a different UID from the current user has signed in,
- + The ID token of the current user has been refreshed, or
- + The current user has signed out.
-
- @param listener The block to be invoked. The block is always invoked asynchronously on the main
- thread, even for it's initial invocation after having been added as a listener.
-
- @remarks The block is invoked immediately after adding it according to it's standard invocation
- semantics, asynchronously on the main thread. Users should pay special attention to
- making sure the block does not inadvertently retain objects which should not be retained by
- the long-lived block. The block itself will be retained by `FIRAuth` until it is
- unregistered or until the `FIRAuth` instance is otherwise deallocated.
-
- @return A handle useful for manually unregistering the block as a listener.
- */
-- (FIRIDTokenDidChangeListenerHandle)addIDTokenDidChangeListener:
- (FIRIDTokenDidChangeListenerBlock)listener;
-
-/** @fn removeIDTokenDidChangeListener:
- @brief Unregisters a block as an "ID token did change" listener.
-
- @param listenerHandle The handle for the listener.
- */
-- (void)removeIDTokenDidChangeListener:(FIRIDTokenDidChangeListenerHandle)listenerHandle;
-
-/** @fn useAppLanguage
- @brief Sets `languageCode` to the app's current language.
- */
-- (void)useAppLanguage;
-
-#if TARGET_OS_IOS
-
-/** @fn canHandleURL:
- @brief Whether the specific URL is handled by `FIRAuth` .
- @param URL The URL received by the application delegate from any of the openURL method.
- @return Whether or the URL is handled. YES means the URL is for Firebase Auth
- so the caller should ignore the URL from further processing, and NO means the
- the URL is for the app (or another libaray) so the caller should continue handling
- this URL as usual.
- @remarks If swizzling is disabled, URLs received by the application delegate must be forwarded
- to this method for phone number auth to work.
- */
-- (BOOL)canHandleURL:(nonnull NSURL *)URL;
-
-/** @fn setAPNSToken:type:
- @brief Sets the APNs token along with its type.
- @remarks If swizzling is disabled, the APNs Token must be set for phone number auth to work,
- by either setting calling this method or by setting the `APNSToken` property.
- */
-- (void)setAPNSToken:(NSData *)token type:(FIRAuthAPNSTokenType)type;
-
-/** @fn canHandleNotification:
- @brief Whether the specific remote notification is handled by `FIRAuth` .
- @param userInfo A dictionary that contains information related to the
- notification in question.
- @return Whether or the notification is handled. YES means the notification is for Firebase Auth
- so the caller should ignore the notification from further processing, and NO means the
- the notification is for the app (or another libaray) so the caller should continue handling
- this notification as usual.
- @remarks If swizzling is disabled, related remote notifications must be forwarded to this method
- for phone number auth to work.
- */
-- (BOOL)canHandleNotification:(NSDictionary *)userInfo;
-
-#endif // TARGET_OS_IOS
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIRAuthAPNSTokenType.h b/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIRAuthAPNSTokenType.h
deleted file mode 100644
index 4f3c9f6a8..000000000
--- a/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIRAuthAPNSTokenType.h
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
- * Copyright 2017 Google
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#import
-
-NS_ASSUME_NONNULL_BEGIN
-
-/**
- * @brief The APNs token type for the app.
- */
-typedef NS_ENUM(NSInteger, FIRAuthAPNSTokenType) {
-
- /** Unknown token type.
- The actual token type will be detected from the provisioning profile in the app's bundle.
- */
- FIRAuthAPNSTokenTypeUnknown,
-
- /** Sandbox token type.
- */
- FIRAuthAPNSTokenTypeSandbox,
-
- /** Production token type.
- */
- FIRAuthAPNSTokenTypeProd,
-} NS_SWIFT_NAME(AuthAPNSTokenType);
-
-NS_ASSUME_NONNULL_END
diff --git a/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIRAuthCredential.h b/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIRAuthCredential.h
deleted file mode 100644
index 106d844f7..000000000
--- a/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIRAuthCredential.h
+++ /dev/null
@@ -1,41 +0,0 @@
-/*
- * Copyright 2017 Google
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#import
-
-NS_ASSUME_NONNULL_BEGIN
-
-/** @class FIRAuthCredential
- @brief Represents a credential.
- */
-NS_SWIFT_NAME(AuthCredential)
-@interface FIRAuthCredential : NSObject
-
-/** @property provider
- @brief Gets the name of the identity provider for the credential.
- */
-@property(nonatomic, copy, readonly) NSString *provider;
-
-/** @fn init
- @brief This is an abstract base class. Concrete instances should be created via factory
- methods available in the various authentication provider libraries (like the Facebook
- provider or the Google provider libraries.)
- */
-- (instancetype)init NS_UNAVAILABLE;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIRAuthDataResult.h b/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIRAuthDataResult.h
deleted file mode 100644
index bc4fa4a2a..000000000
--- a/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIRAuthDataResult.h
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
- * Copyright 2017 Google
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#import
-
-@class FIRAdditionalUserInfo;
-@class FIRUser;
-
-NS_ASSUME_NONNULL_BEGIN
-
-/** @class FIRAuthDataResult
- @brief Helper object that contains the result of a successful sign-in, link and reauthenticate
- action. It contains references to a FIRUser instance and a FIRAdditionalUserInfo instance.
- */
-NS_SWIFT_NAME(AuthDataResult)
-@interface FIRAuthDataResult : NSObject
-
-/** @fn init
- @brief This class should not be initialized manually. `FIRAuthDataResult` instance is
- returned as part of `FIRAuthDataResultCallback`.
- */
-- (instancetype)init NS_UNAVAILABLE;
-
-/** @property user
- @brief The signed in user.
- */
-@property(nonatomic, readonly) FIRUser *user;
-
-/** @property additionalUserInfo
- @brief If available contains the additional IdP specific information about signed in user.
- */
-@property(nonatomic, readonly, nullable) FIRAdditionalUserInfo *additionalUserInfo;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIRAuthErrors.h b/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIRAuthErrors.h
deleted file mode 100644
index a3fbe26a3..000000000
--- a/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIRAuthErrors.h
+++ /dev/null
@@ -1,321 +0,0 @@
-/*
- * Copyright 2017 Google
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#import
-
-/** @class FIRAuthErrors
- @remarks Error Codes common to all API Methods:
-
- + `FIRAuthErrorCodeNetworkError`
- + `FIRAuthErrorCodeUserNotFound`
- + `FIRAuthErrorCodeUserTokenExpired`
- + `FIRAuthErrorCodeTooManyRequests`
- + `FIRAuthErrorCodeInvalidAPIKey`
- + `FIRAuthErrorCodeAppNotAuthorized`
- + `FIRAuthErrorCodeKeychainError`
- + `FIRAuthErrorCodeInternalError`
-
- @remarks Common error codes for `FIRUser` operations:
-
- + `FIRAuthErrorCodeInvalidUserToken`
- + `FIRAuthErrorCodeUserDisabled`
-
- */
-NS_SWIFT_NAME(AuthErrors)
-@interface FIRAuthErrors
-
-/**
- @brief The Firebase Auth error domain.
- */
-extern NSString *const FIRAuthErrorDomain NS_SWIFT_NAME(AuthErrorDomain);
-
-/**
- @brief The key used to read the updated credential from the userinfo dictionary of the NSError
- object returned in the case that the credential being linked in already in use.
- */
-extern NSString *const FIRAuthUpdatedCredentialKey NS_SWIFT_NAME(AuthUpdatedCredentialKey);
-
-/**
- @brief The name of the key for the "error_name" string in the NSError userinfo dictionary.
- */
-extern NSString *const FIRAuthErrorNameKey NS_SWIFT_NAME(AuthErrorNameKey);
-
-/**
- @brief Errors with the code `FIRAuthErrorCodeAccountExistsWithDifferentCredential` may contain
- an `NSError.userInfo` dictinary object which contains this key. The value associated with
- this key is an NSString of the email address of the account that already exists.
- */
-extern NSString *const FIRAuthErrorUserInfoEmailKey NS_SWIFT_NAME(AuthErrorUserInfoEmailKey);
-
-/**
- @brief Error codes used by Firebase Auth.
- */
-typedef NS_ENUM(NSInteger, FIRAuthErrorCode) {
- /** Indicates a validation error with the custom token.
- */
- FIRAuthErrorCodeInvalidCustomToken = 17000,
-
- /** Indicates the service account and the API key belong to different projects.
- */
- FIRAuthErrorCodeCustomTokenMismatch = 17002,
-
- /** Indicates the IDP token or requestUri is invalid.
- */
- FIRAuthErrorCodeInvalidCredential = 17004,
-
- /** Indicates the user's account is disabled on the server.
- */
- FIRAuthErrorCodeUserDisabled = 17005,
-
- /** Indicates the administrator disabled sign in with the specified identity provider.
- */
- FIRAuthErrorCodeOperationNotAllowed = 17006,
-
- /** Indicates the email used to attempt a sign up is already in use.
- */
- FIRAuthErrorCodeEmailAlreadyInUse = 17007,
-
- /** Indicates the email is invalid.
- */
- FIRAuthErrorCodeInvalidEmail = 17008,
-
- /** Indicates the user attempted sign in with a wrong password.
- */
- FIRAuthErrorCodeWrongPassword = 17009,
-
- /** Indicates that too many requests were made to a server method.
- */
- FIRAuthErrorCodeTooManyRequests = 17010,
-
- /** Indicates the user account was not found.
- */
- FIRAuthErrorCodeUserNotFound = 17011,
-
- /** Indicates account linking is required.
- */
- FIRAuthErrorCodeAccountExistsWithDifferentCredential = 17012,
-
- /** Indicates the user has attemped to change email or password more than 5 minutes after
- signing in.
- */
- FIRAuthErrorCodeRequiresRecentLogin = 17014,
-
- /** Indicates an attempt to link a provider to which the account is already linked.
- */
- FIRAuthErrorCodeProviderAlreadyLinked = 17015,
-
- /** Indicates an attempt to unlink a provider that is not linked.
- */
- FIRAuthErrorCodeNoSuchProvider = 17016,
-
- /** Indicates user's saved auth credential is invalid, the user needs to sign in again.
- */
- FIRAuthErrorCodeInvalidUserToken = 17017,
-
- /** Indicates a network error occurred (such as a timeout, interrupted connection, or
- unreachable host). These types of errors are often recoverable with a retry. The
- `NSUnderlyingError` field in the `NSError.userInfo` dictionary will contain the error
- encountered.
- */
- FIRAuthErrorCodeNetworkError = 17020,
-
- /** Indicates the saved token has expired, for example, the user may have changed account
- password on another device. The user needs to sign in again on the device that made this
- request.
- */
- FIRAuthErrorCodeUserTokenExpired = 17021,
-
- /** Indicates an invalid API key was supplied in the request.
- */
- FIRAuthErrorCodeInvalidAPIKey = 17023,
-
- /** Indicates that an attempt was made to reauthenticate with a user which is not the current
- user.
- */
- FIRAuthErrorCodeUserMismatch = 17024,
-
- /** Indicates an attempt to link with a credential that has already been linked with a
- different Firebase account
- */
- FIRAuthErrorCodeCredentialAlreadyInUse = 17025,
-
- /** Indicates an attempt to set a password that is considered too weak.
- */
- FIRAuthErrorCodeWeakPassword = 17026,
-
- /** Indicates the App is not authorized to use Firebase Authentication with the
- provided API Key.
- */
- FIRAuthErrorCodeAppNotAuthorized = 17028,
-
- /** Indicates the OOB code is expired.
- */
- FIRAuthErrorCodeExpiredActionCode = 17029,
-
- /** Indicates the OOB code is invalid.
- */
- FIRAuthErrorCodeInvalidActionCode = 17030,
-
- /** Indicates that there are invalid parameters in the payload during a "send password reset
- * email" attempt.
- */
- FIRAuthErrorCodeInvalidMessagePayload = 17031,
-
- /** Indicates that the sender email is invalid during a "send password reset email" attempt.
- */
- FIRAuthErrorCodeInvalidSender = 17032,
-
- /** Indicates that the recipient email is invalid.
- */
- FIRAuthErrorCodeInvalidRecipientEmail = 17033,
-
- /** Indicates that an email address was expected but one was not provided.
- */
- FIRAuthErrorCodeMissingEmail = 17034,
-
- // The enum values 17035 is reserved and should NOT be used for new error codes.
-
- /** Indicates that the iOS bundle ID is missing when a iOS App Store ID is provided.
- */
- FIRAuthErrorCodeMissingIosBundleID = 17036,
-
- /** Indicates that the android package name is missing when the `androidInstallApp` flag is set
- to true.
- */
- FIRAuthErrorCodeMissingAndroidPackageName = 17037,
-
- /** Indicates that the domain specified in the continue URL is not whitelisted in the Firebase
- console.
- */
- FIRAuthErrorCodeUnauthorizedDomain = 17038,
-
- /** Indicates that the domain specified in the continue URI is not valid.
- */
- FIRAuthErrorCodeInvalidContinueURI = 17039,
-
- /** Indicates that a continue URI was not provided in a request to the backend which requires
- one.
- */
- FIRAuthErrorCodeMissingContinueURI = 17040,
-
- /** Indicates that a phone number was not provided in a call to
- `verifyPhoneNumber:completion:`.
- */
- FIRAuthErrorCodeMissingPhoneNumber = 17041,
-
- /** Indicates that an invalid phone number was provided in a call to
- `verifyPhoneNumber:completion:`.
- */
- FIRAuthErrorCodeInvalidPhoneNumber = 17042,
-
- /** Indicates that the phone auth credential was created with an empty verification code.
- */
- FIRAuthErrorCodeMissingVerificationCode = 17043,
-
- /** Indicates that an invalid verification code was used in the verifyPhoneNumber request.
- */
- FIRAuthErrorCodeInvalidVerificationCode = 17044,
-
- /** Indicates that the phone auth credential was created with an empty verification ID.
- */
- FIRAuthErrorCodeMissingVerificationID = 17045,
-
- /** Indicates that an invalid verification ID was used in the verifyPhoneNumber request.
- */
- FIRAuthErrorCodeInvalidVerificationID = 17046,
-
- /** Indicates that the APNS device token is missing in the verifyClient request.
- */
- FIRAuthErrorCodeMissingAppCredential = 17047,
-
- /** Indicates that an invalid APNS device token was used in the verifyClient request.
- */
- FIRAuthErrorCodeInvalidAppCredential = 17048,
-
- // The enum values between 17048 and 17051 are reserved and should NOT be used for new error
- // codes.
-
- /** Indicates that the SMS code has expired.
- */
- FIRAuthErrorCodeSessionExpired = 17051,
-
- /** Indicates that the quota of SMS messages for a given project has been exceeded.
- */
- FIRAuthErrorCodeQuotaExceeded = 17052,
-
- /** Indicates that the APNs device token could not be obtained. The app may not have set up
- remote notification correctly, or may fail to forward the APNs device token to FIRAuth
- if app delegate swizzling is disabled.
- */
- FIRAuthErrorCodeMissingAppToken = 17053,
-
- /** Indicates that the app fails to forward remote notification to FIRAuth.
- */
- FIRAuthErrorCodeNotificationNotForwarded = 17054,
-
- /** Indicates that the app could not be verified by Firebase during phone number authentication.
- */
- FIRAuthErrorCodeAppNotVerified = 17055,
-
- /** Indicates that the reCAPTCHA token is not valid.
- */
- FIRAuthErrorCodeCaptchaCheckFailed = 17056,
-
- /** Indicates that an attempt was made to present a new web context while one was already being
- presented.
- */
- FIRAuthErrorCodeWebContextAlreadyPresented = 17057,
-
- /** Indicates that the URL presentation was cancelled prematurely by the user.
- */
- FIRAuthErrorCodeWebContextCancelled = 17058,
-
- /** Indicates a general failure during the app verification flow.
- */
- FIRAuthErrorCodeAppVerificationUserInteractionFailure = 17059,
-
- /** Indicates that the clientID used to invoke a web flow is invalid.
- */
- FIRAuthErrorCodeInvalidClientID = 17060,
-
- /** Indicates that a network request within a SFSafariViewController or UIWebview failed.
- */
- FIRAuthErrorCodeWebNetworkRequestFailed = 17061,
-
- /** Indicates that an internal error occurred within a SFSafariViewController or UIWebview.
- */
- FIRAuthErrorCodeWebInternalError = 17062,
-
- /** Indicates that a non-null user was expected as an argmument to the operation but a null
- user was provided.
- */
- FIRAuthErrorCodeNullUser = 17067,
-
- /** Indicates an error occurred while attempting to access the keychain.
- */
- FIRAuthErrorCodeKeychainError = 17995,
-
- /** Indicates an internal error occurred.
- */
- FIRAuthErrorCodeInternalError = 17999,
-
- /** Raised when a JWT fails to parse correctly. May be accompanied by an underlying error
- describing which step of the JWT parsing process failed.
- */
- FIRAuthErrorCodeMalformedJWT = 18000,
-} NS_SWIFT_NAME(AuthErrorCode);
-
-@end
diff --git a/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIRAuthSettings.h b/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIRAuthSettings.h
deleted file mode 100644
index d3fee3ea9..000000000
--- a/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIRAuthSettings.h
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
- * Copyright 2018 Google
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#import
-
-/** @class FIRAuthSettings
- @brief Determines settings related to an auth object.
- */
-@interface FIRAuthSettings : NSObject
-
-/** @property appVerificationDisabledForTesting
- @brief Flag to determine whether app verification should be disabled for testing or not.
- */
-@property (nonatomic, assign, getter=isAppVerificationDisabledForTesting) BOOL
- appVerificationDisabledForTesting;
-
-@end
diff --git a/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIRAuthTokenResult.h b/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIRAuthTokenResult.h
deleted file mode 100644
index 82a5f1e0b..000000000
--- a/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIRAuthTokenResult.h
+++ /dev/null
@@ -1,66 +0,0 @@
-/*
- * Copyright 2018 Google
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#import
-
-NS_ASSUME_NONNULL_BEGIN
-
-/** @class FIRAuthTokenResult
- @brief A data class containing the ID token JWT string and other properties associated with the
- token including the decoded payload claims.
- */
-NS_SWIFT_NAME(AuthTokenResult)
-@interface FIRAuthTokenResult : NSObject
-
-/** @property token
- @brief Stores the JWT string of the ID token.
- */
-@property (nonatomic, readonly) NSString *token;
-
-/** @property expirationDate
- @brief Stores the ID token's expiration date.
- */
-@property (nonatomic, readonly) NSDate *expirationDate;
-
-/** @property authDate
- @brief Stores the ID token's authentication date.
- @remarks This is the date the user was signed in and NOT the date the token was refreshed.
- */
-@property (nonatomic, readonly) NSDate *authDate;
-
-/** @property issuedAtDate
- @brief Stores the date that the ID token was issued.
- @remarks This is the date last refreshed and NOT the last authentication date.
- */
-@property (nonatomic, readonly) NSDate *issuedAtDate;
-
-/** @property signInProvider
- @brief Stores sign-in provider through which the token was obtained.
- @remarks This does not necesssarily map to provider IDs.
- */
-@property (nonatomic, readonly) NSString *signInProvider;
-
-/** @property claims
- @brief Stores the entire payload of claims found on the ID token. This includes the standard
- reserved claims as well as custom claims set by the developer via the Admin SDK.
- */
-@property (nonatomic, readonly) NSDictionary *claims;
-
-
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIRAuthUIDelegate.h b/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIRAuthUIDelegate.h
deleted file mode 100644
index 9b3296826..000000000
--- a/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIRAuthUIDelegate.h
+++ /dev/null
@@ -1,52 +0,0 @@
-/*
- * Copyright 2017 Google
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#import
-#import
-
-NS_ASSUME_NONNULL_BEGIN
-
-/** @protocol FIRAuthUIDelegate
- @brief A protocol to handle user interface interactions for Firebase Auth.
- */
-NS_SWIFT_NAME(AuthUIDelegate)
-@protocol FIRAuthUIDelegate
-
-/** @fn presentViewController:animated:completion:
- @brief If implemented, this method will be invoked when Firebase Auth needs to display a view
- controller.
- @param viewControllerToPresent The view controller to be presented.
- @param flag Decides whether the view controller presentation should be animated or not.
- @param completion The block to execute after the presentation finishes. This block has no return
- value and takes no parameters.
-*/
-- (void)presentViewController:(UIViewController *)viewControllerToPresent
- animated:(BOOL)flag
- completion:(void (^ _Nullable)(void))completion;
-
-/** @fn dismissViewControllerAnimated:completion:
- @brief If implemented, this method will be invoked when Firebase Auth needs to display a view
- controller.
- @param flag Decides whether removing the view controller should be animated or not.
- @param completion The block to execute after the presentation finishes. This block has no return
- value and takes no parameters.
-*/
-- (void)dismissViewControllerAnimated:(BOOL)flag completion:(void (^ _Nullable)(void))completion
- NS_SWIFT_NAME(dismiss(animated:completion:));
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIREmailAuthProvider.h b/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIREmailAuthProvider.h
deleted file mode 100644
index b6375bd2a..000000000
--- a/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIREmailAuthProvider.h
+++ /dev/null
@@ -1,81 +0,0 @@
-/*
- * Copyright 2017 Google
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#import
-
-@class FIRAuthCredential;
-
-NS_ASSUME_NONNULL_BEGIN
-
-/**
- @brief A string constant identifying the email & password identity provider.
- */
-extern NSString *const FIREmailAuthProviderID NS_SWIFT_NAME(EmailAuthProviderID);
-
-/**
- @brief A string constant identifying the email-link sign-in method.
- */
-extern NSString *const FIREmailLinkAuthSignInMethod NS_SWIFT_NAME(EmailLinkAuthSignInMethod);
-
-/**
- @brief A string constant identifying the email & password sign-in method.
- */
-extern NSString *const FIREmailPasswordAuthSignInMethod
- NS_SWIFT_NAME(EmailPasswordAuthSignInMethod);
-
-/**
- @brief Please use `FIREmailAuthProviderID` for Objective-C or `EmailAuthProviderID` for Swift instead.
- */
-extern NSString *const FIREmailPasswordAuthProviderID __attribute__((deprecated));
-
-/** @class FIREmailAuthProvider
- @brief A concrete implementation of `FIRAuthProvider` for Email & Password Sign In.
- */
-NS_SWIFT_NAME(EmailAuthProvider)
-@interface FIREmailAuthProvider : NSObject
-
-/** @typedef FIREmailPasswordAuthProvider
- @brief Please use `FIREmailAuthProvider` instead.
- */
-typedef FIREmailAuthProvider FIREmailPasswordAuthProvider __attribute__((deprecated));
-
-
-/** @fn credentialWithEmail:password:
- @brief Creates an `FIRAuthCredential` for an email & password sign in.
-
- @param email The user's email address.
- @param password The user's password.
- @return A FIRAuthCredential containing the email & password credential.
- */
-+ (FIRAuthCredential *)credentialWithEmail:(NSString *)email password:(NSString *)password;
-
-/** @fn credentialWithEmail:Link:
- @brief Creates an `FIRAuthCredential` for an email & link sign in.
-
- @param email The user's email address.
- @param link The email sign-in link.
- @return A FIRAuthCredential containing the email & link credential.
- */
-+ (FIRAuthCredential *)credentialWithEmail:(NSString *)email link:(NSString *)link;
-
-/** @fn init
- @brief This class is not meant to be initialized.
- */
-- (instancetype)init NS_UNAVAILABLE;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIRFacebookAuthProvider.h b/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIRFacebookAuthProvider.h
deleted file mode 100644
index 75efe13f4..000000000
--- a/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIRFacebookAuthProvider.h
+++ /dev/null
@@ -1,54 +0,0 @@
-/*
- * Copyright 2017 Google
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#import
-
-@class FIRAuthCredential;
-
-NS_ASSUME_NONNULL_BEGIN
-
-/**
- @brief A string constant identifying the Facebook identity provider.
- */
-extern NSString *const FIRFacebookAuthProviderID NS_SWIFT_NAME(FacebookAuthProviderID);
-
-/**
- @brief A string constant identifying the Facebook sign-in method.
- */
-extern NSString *const _Nonnull FIRFacebookAuthSignInMethod NS_SWIFT_NAME(FacebookAuthSignInMethod);
-
-/** @class FIRFacebookAuthProvider
- @brief Utility class for constructing Facebook credentials.
- */
-NS_SWIFT_NAME(FacebookAuthProvider)
-@interface FIRFacebookAuthProvider : NSObject
-
-/** @fn credentialWithAccessToken:
- @brief Creates an `FIRAuthCredential` for a Facebook sign in.
-
- @param accessToken The Access Token from Facebook.
- @return A FIRAuthCredential containing the Facebook credentials.
- */
-+ (FIRAuthCredential *)credentialWithAccessToken:(NSString *)accessToken;
-
-/** @fn init
- @brief This class should not be initialized.
- */
-- (instancetype)init NS_UNAVAILABLE;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIRGitHubAuthProvider.h b/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIRGitHubAuthProvider.h
deleted file mode 100644
index 0610427a4..000000000
--- a/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIRGitHubAuthProvider.h
+++ /dev/null
@@ -1,55 +0,0 @@
-/*
- * Copyright 2017 Google
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#import
-
-@class FIRAuthCredential;
-
-NS_ASSUME_NONNULL_BEGIN
-
-/**
- @brief A string constant identifying the GitHub identity provider.
- */
-extern NSString *const FIRGitHubAuthProviderID NS_SWIFT_NAME(GitHubAuthProviderID);
-
-/**
- @brief A string constant identifying the GitHub sign-in method.
- */
-extern NSString *const _Nonnull FIRGitHubAuthSignInMethod NS_SWIFT_NAME(GitHubAuthSignInMethod);
-
-
-/** @class FIRGitHubAuthProvider
- @brief Utility class for constructing GitHub credentials.
- */
-NS_SWIFT_NAME(GitHubAuthProvider)
-@interface FIRGitHubAuthProvider : NSObject
-
-/** @fn credentialWithToken:
- @brief Creates an `FIRAuthCredential` for a GitHub sign in.
-
- @param token The GitHub OAuth access token.
- @return A FIRAuthCredential containing the GitHub credential.
- */
-+ (FIRAuthCredential *)credentialWithToken:(NSString *)token;
-
-/** @fn init
- @brief This class is not meant to be initialized.
- */
-- (instancetype)init NS_UNAVAILABLE;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIRGoogleAuthProvider.h b/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIRGoogleAuthProvider.h
deleted file mode 100644
index 7d6fa226e..000000000
--- a/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIRGoogleAuthProvider.h
+++ /dev/null
@@ -1,56 +0,0 @@
-/*
- * Copyright 2017 Google
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#import
-
-@class FIRAuthCredential;
-
-NS_ASSUME_NONNULL_BEGIN
-
-/**
- @brief A string constant identifying the Google identity provider.
- */
-extern NSString *const FIRGoogleAuthProviderID NS_SWIFT_NAME(GoogleAuthProviderID);
-
-/**
- @brief A string constant identifying the Google sign-in method.
- */
-extern NSString *const _Nonnull FIRGoogleAuthSignInMethod NS_SWIFT_NAME(GoogleAuthSignInMethod);
-
-/** @class FIRGoogleAuthProvider
- @brief Utility class for constructing Google Sign In credentials.
- */
-NS_SWIFT_NAME(GoogleAuthProvider)
-@interface FIRGoogleAuthProvider : NSObject
-
-/** @fn credentialWithIDToken:accessToken:
- @brief Creates an `FIRAuthCredential` for a Google sign in.
-
- @param IDToken The ID Token from Google.
- @param accessToken The Access Token from Google.
- @return A FIRAuthCredential containing the Google credentials.
- */
-+ (FIRAuthCredential *)credentialWithIDToken:(NSString *)IDToken
- accessToken:(NSString *)accessToken;
-
-/** @fn init
- @brief This class should not be initialized.
- */
-- (instancetype)init NS_UNAVAILABLE;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIROAuthProvider.h b/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIROAuthProvider.h
deleted file mode 100644
index cc628f8c6..000000000
--- a/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIROAuthProvider.h
+++ /dev/null
@@ -1,62 +0,0 @@
-/*
- * Copyright 2017 Google
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#import
-
-@class FIRAuthCredential;
-
-NS_ASSUME_NONNULL_BEGIN
-
-/** @class FIROAuthProvider
- @brief A concrete implementation of `FIRAuthProvider` for generic OAuth Providers.
- */
-NS_SWIFT_NAME(OAuthProvider)
-@interface FIROAuthProvider : NSObject
-
-/** @fn credentialWithProviderID:IDToken:accessToken:
- @brief Creates an `FIRAuthCredential` for that OAuth 2 provider identified by providerID, ID
- token and access token.
-
- @param providerID The provider ID associated with the Auth credential being created.
- @param IDToken The IDToken associated with the Auth credential being created.
- @param accessToken The accessstoken associated with the Auth credential be created, if
- available.
- @return A FIRAuthCredential for the specified provider ID, ID token and access token.
- */
-+ (FIRAuthCredential *)credentialWithProviderID:(NSString *)providerID
- IDToken:(NSString *)IDToken
- accessToken:(nullable NSString *)accessToken;
-
-
-/** @fn credentialWithProviderID:accessToken:
- @brief Creates an `FIRAuthCredential` for that OAuth 2 provider identified by providerID using
- an ID token.
-
- @param providerID The provider ID associated with the Auth credential being created.
- @param accessToken The accessstoken associated with the Auth credential be created
- @return A FIRAuthCredential.
- */
-+ (FIRAuthCredential *)credentialWithProviderID:(NSString *)providerID
- accessToken:(NSString *)accessToken;
-
-/** @fn init
- @brief This class is not meant to be initialized.
- */
-- (instancetype)init NS_UNAVAILABLE;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIRPhoneAuthCredential.h b/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIRPhoneAuthCredential.h
deleted file mode 100644
index 26dfca85a..000000000
--- a/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIRPhoneAuthCredential.h
+++ /dev/null
@@ -1,36 +0,0 @@
-/*
- * Copyright 2017 Google
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#import
-
-#import "FIRAuthCredential.h"
-
-NS_ASSUME_NONNULL_BEGIN
-
-/** @class FIRPhoneAuthCredential
- @brief Implementation of FIRAuthCredential for Phone Auth credentials.
- */
-NS_SWIFT_NAME(PhoneAuthCredential)
-@interface FIRPhoneAuthCredential : FIRAuthCredential
-
-/** @fn init
- @brief This class is not supposed to be instantiated directly.
- */
-- (instancetype)init NS_UNAVAILABLE;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIRPhoneAuthProvider.h b/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIRPhoneAuthProvider.h
deleted file mode 100644
index 28757f5e7..000000000
--- a/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIRPhoneAuthProvider.h
+++ /dev/null
@@ -1,106 +0,0 @@
-/*
- * Copyright 2017 Google
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#import
-
-@class FIRAuth;
-@class FIRPhoneAuthCredential;
-@protocol FIRAuthUIDelegate;
-
-NS_ASSUME_NONNULL_BEGIN
-
-/** @var FIRPhoneAuthProviderID
- @brief A string constant identifying the phone identity provider.
- */
-extern NSString *const FIRPhoneAuthProviderID NS_SWIFT_NAME(PhoneAuthProviderID);
-
-/** @var FIRPhoneAuthProviderID
- @brief A string constant identifying the phone sign-in method.
- */
-extern NSString *const _Nonnull FIRPhoneAuthSignInMethod NS_SWIFT_NAME(PhoneAuthSignInMethod);
-
-
-/** @typedef FIRVerificationResultCallback
- @brief The type of block invoked when a request to send a verification code has finished.
-
- @param verificationID On success, the verification ID provided, nil otherwise.
- @param error On error, the error that occured, nil otherwise.
- */
-typedef void (^FIRVerificationResultCallback)(NSString *_Nullable verificationID,
- NSError *_Nullable error)
- NS_SWIFT_NAME(VerificationResultCallback);
-
-/** @class FIRPhoneAuthProvider
- @brief A concrete implementation of `FIRAuthProvider` for phone auth providers.
- */
-NS_SWIFT_NAME(PhoneAuthProvider)
-@interface FIRPhoneAuthProvider : NSObject
-
-/** @fn provider
- @brief Returns an instance of `FIRPhoneAuthProvider` for the default `FIRAuth` object.
- */
-+ (instancetype)provider NS_SWIFT_NAME(provider());
-
-/** @fn providerWithAuth:
- @brief Returns an instance of `FIRPhoneAuthProvider` for the provided `FIRAuth` object.
-
- @param auth The auth object to associate with the phone auth provider instance.
- */
-+ (instancetype)providerWithAuth:(FIRAuth *)auth NS_SWIFT_NAME(provider(auth:));
-
-/** @fn verifyPhoneNumber:UIDelegate:completion:
- @brief Starts the phone number authentication flow by sending a verifcation code to the
- specified phone number.
- @param phoneNumber The phone number to be verified.
- @param UIDelegate An object used to present the SFSafariViewController. The object is retained
- by this method until the completion block is executed.
- @param completion The callback to be invoked when the verification flow is finished.
- @remarks Possible error codes:
-
- + `FIRAuthErrorCodeCaptchaCheckFailed` - Indicates that the reCAPTCHA token obtained by
- the Firebase Auth is invalid or has expired.
- + `FIRAuthErrorCodeQuotaExceeded` - Indicates that the phone verification quota for this
- project has been exceeded.
- + `FIRAuthErrorCodeInvalidPhoneNumber` - Indicates that the phone number provided is
- invalid.
- + `FIRAuthErrorCodeMissingPhoneNumber` - Indicates that a phone number was not provided.
- */
-- (void)verifyPhoneNumber:(NSString *)phoneNumber
- UIDelegate:(nullable id)UIDelegate
- completion:(nullable FIRVerificationResultCallback)completion;
-
-/** @fn credentialWithVerificationID:verificationCode:
- @brief Creates an `FIRAuthCredential` for the phone number provider identified by the
- verification ID and verification code.
-
- @param verificationID The verification ID obtained from invoking
- verifyPhoneNumber:completion:
- @param verificationCode The verification code obtained from the user.
- @return The corresponding phone auth credential for the verification ID and verification code
- provided.
- */
-- (FIRPhoneAuthCredential *)credentialWithVerificationID:(NSString *)verificationID
- verificationCode:(NSString *)verificationCode;
-
-/** @fn init
- @brief Please use the `provider` or `providerWithAuth:` methods to obtain an instance of
- `FIRPhoneAuthProvider`.
- */
-- (instancetype)init NS_UNAVAILABLE;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIRTwitterAuthProvider.h b/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIRTwitterAuthProvider.h
deleted file mode 100644
index a0d1166f1..000000000
--- a/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIRTwitterAuthProvider.h
+++ /dev/null
@@ -1,56 +0,0 @@
-/*
- * Copyright 2017 Google
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#import
-
-@class FIRAuthCredential;
-
-NS_ASSUME_NONNULL_BEGIN
-
-/**
- @brief A string constant identifying the Twitter identity provider.
- */
-extern NSString *const FIRTwitterAuthProviderID NS_SWIFT_NAME(TwitterAuthProviderID);
-
-/**
- @brief A string constant identifying the Twitter sign-in method.
- */
-extern NSString *const _Nonnull FIRTwitterAuthSignInMethod NS_SWIFT_NAME(TwitterAuthSignInMethod);
-
-
-/** @class FIRTwitterAuthProvider
- @brief Utility class for constructing Twitter credentials.
- */
-NS_SWIFT_NAME(TwitterAuthProvider)
-@interface FIRTwitterAuthProvider : NSObject
-
-/** @fn credentialWithToken:secret:
- @brief Creates an `FIRAuthCredential` for a Twitter sign in.
-
- @param token The Twitter OAuth token.
- @param secret The Twitter OAuth secret.
- @return A FIRAuthCredential containing the Twitter credential.
- */
-+ (FIRAuthCredential *)credentialWithToken:(NSString *)token secret:(NSString *)secret;
-
-/** @fn init
- @brief This class is not meant to be initialized.
- */
-- (instancetype)init NS_UNAVAILABLE;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIRUser.h b/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIRUser.h
deleted file mode 100644
index cc5d0a001..000000000
--- a/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIRUser.h
+++ /dev/null
@@ -1,495 +0,0 @@
-/*
- * Copyright 2017 Google
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#import
-
-#import "FIRAuth.h"
-#import "FIRAuthDataResult.h"
-#import "FIRUserInfo.h"
-
-@class FIRAuthTokenResult;
-@class FIRPhoneAuthCredential;
-@class FIRUserProfileChangeRequest;
-@class FIRUserMetadata;
-
-NS_ASSUME_NONNULL_BEGIN
-
-/** @typedef FIRAuthTokenCallback
- @brief The type of block called when a token is ready for use.
- @see FIRUser.getIDTokenWithCompletion:
- @see FIRUser.getIDTokenForcingRefresh:withCompletion:
-
- @param token Optionally; an access token if the request was successful.
- @param error Optionally; the error which occurred - or nil if the request was successful.
-
- @remarks One of: `token` or `error` will always be non-nil.
- */
-typedef void (^FIRAuthTokenCallback)(NSString *_Nullable token, NSError *_Nullable error)
- NS_SWIFT_NAME(AuthTokenCallback);
-
-/** @typedef FIRAuthTokenResultCallback
- @brief The type of block called when a token is ready for use.
- @see FIRUser.getIDTokenResultWithCompletion:
- @see FIRUser.getIDTokenResultForcingRefresh:withCompletion:
-
- @param tokenResult Optionally; an object containing the raw access token string as well as other
- useful data pertaining to the token.
- @param error Optionally; the error which occurred - or nil if the request was successful.
-
- @remarks One of: `token` or `error` will always be non-nil.
- */
-typedef void (^FIRAuthTokenResultCallback)(FIRAuthTokenResult *_Nullable tokenResult,
- NSError *_Nullable error)
- NS_SWIFT_NAME(AuthTokenResultCallback);
-
-/** @typedef FIRUserProfileChangeCallback
- @brief The type of block called when a user profile change has finished.
-
- @param error Optionally; the error which occurred - or nil if the request was successful.
- */
-typedef void (^FIRUserProfileChangeCallback)(NSError *_Nullable error)
- NS_SWIFT_NAME(UserProfileChangeCallback);
-
-/** @typedef FIRSendEmailVerificationCallback
- @brief The type of block called when a request to send an email verification has finished.
-
- @param error Optionally; the error which occurred - or nil if the request was successful.
- */
-typedef void (^FIRSendEmailVerificationCallback)(NSError *_Nullable error)
- NS_SWIFT_NAME(SendEmailVerificationCallback);
-
-/** @class FIRUser
- @brief Represents a user. Firebase Auth does not attempt to validate users
- when loading them from the keychain. Invalidated users (such as those
- whose passwords have been changed on another client) are automatically
- logged out when an auth-dependent operation is attempted or when the
- ID token is automatically refreshed.
- @remarks This class is thread-safe.
- */
-NS_SWIFT_NAME(User)
-@interface FIRUser : NSObject
-
-/** @property anonymous
- @brief Indicates the user represents an anonymous user.
- */
-@property(nonatomic, readonly, getter=isAnonymous) BOOL anonymous;
-
-/** @property emailVerified
- @brief Indicates the email address associated with this user has been verified.
- */
-@property(nonatomic, readonly, getter=isEmailVerified) BOOL emailVerified;
-
-/** @property refreshToken
- @brief A refresh token; useful for obtaining new access tokens independently.
- @remarks This property should only be used for advanced scenarios, and is not typically needed.
- */
-@property(nonatomic, readonly, nullable) NSString *refreshToken;
-
-/** @property providerData
- @brief Profile data for each identity provider, if any.
- @remarks This data is cached on sign-in and updated when linking or unlinking.
- */
-@property(nonatomic, readonly, nonnull) NSArray> *providerData;
-
-/** @property metadata
- @brief Metadata associated with the Firebase user in question.
- */
-@property(nonatomic, readonly, nonnull) FIRUserMetadata *metadata;
-
-/** @fn init
- @brief This class should not be instantiated.
- @remarks To retrieve the current user, use `FIRAuth.currentUser`. To sign a user
- in or out, use the methods on `FIRAuth`.
- */
-- (instancetype)init NS_UNAVAILABLE;
-
-/** @fn updateEmail:completion:
- @brief Updates the email address for the user. On success, the cached user profile data is
- updated.
- @remarks May fail if there is already an account with this email address that was created using
- email and password authentication.
-
- @param email The email address for the user.
- @param completion Optionally; the block invoked when the user profile change has finished.
- Invoked asynchronously on the main thread in the future.
-
- @remarks Possible error codes:
-
- + `FIRAuthErrorCodeInvalidRecipientEmail` - Indicates an invalid recipient email was
- sent in the request.
- + `FIRAuthErrorCodeInvalidSender` - Indicates an invalid sender email is set in
- the console for this action.
- + `FIRAuthErrorCodeInvalidMessagePayload` - Indicates an invalid email template for
- sending update email.
- + `FIRAuthErrorCodeEmailAlreadyInUse` - Indicates the email is already in use by another
- account.
- + `FIRAuthErrorCodeInvalidEmail` - Indicates the email address is malformed.
- + `FIRAuthErrorCodeRequiresRecentLogin` - Updating a user’s email is a security
- sensitive operation that requires a recent login from the user. This error indicates
- the user has not signed in recently enough. To resolve, reauthenticate the user by
- invoking reauthenticateWithCredential:completion: on FIRUser.
-
- @remarks See `FIRAuthErrors` for a list of error codes that are common to all FIRUser methods.
- */
-- (void)updateEmail:(NSString *)email completion:(nullable FIRUserProfileChangeCallback)completion
- NS_SWIFT_NAME(updateEmail(to:completion:));
-
-/** @fn updatePassword:completion:
- @brief Updates the password for the user. On success, the cached user profile data is updated.
-
- @param password The new password for the user.
- @param completion Optionally; the block invoked when the user profile change has finished.
- Invoked asynchronously on the main thread in the future.
-
- @remarks Possible error codes:
-
- + `FIRAuthErrorCodeOperationNotAllowed` - Indicates the administrator disabled
- sign in with the specified identity provider.
- + `FIRAuthErrorCodeRequiresRecentLogin` - Updating a user’s password is a security
- sensitive operation that requires a recent login from the user. This error indicates
- the user has not signed in recently enough. To resolve, reauthenticate the user by
- invoking reauthenticateWithCredential:completion: on FIRUser.
- + `FIRAuthErrorCodeWeakPassword` - Indicates an attempt to set a password that is
- considered too weak. The NSLocalizedFailureReasonErrorKey field in the NSError.userInfo
- dictionary object will contain more detailed explanation that can be shown to the user.
-
- @remarks See `FIRAuthErrors` for a list of error codes that are common to all FIRUser methods.
- */
-- (void)updatePassword:(NSString *)password
- completion:(nullable FIRUserProfileChangeCallback)completion
- NS_SWIFT_NAME(updatePassword(to:completion:));
-
-#if TARGET_OS_IOS
-/** @fn updatePhoneNumberCredential:completion:
- @brief Updates the phone number for the user. On success, the cached user profile data is
- updated.
-
- @param phoneNumberCredential The new phone number credential corresponding to the phone number
- to be added to the Firebase account, if a phone number is already linked to the account this
- new phone number will replace it.
- @param completion Optionally; the block invoked when the user profile change has finished.
- Invoked asynchronously on the main thread in the future.
-
- @remarks Possible error codes:
-
- + `FIRAuthErrorCodeRequiresRecentLogin` - Updating a user’s phone number is a security
- sensitive operation that requires a recent login from the user. This error indicates
- the user has not signed in recently enough. To resolve, reauthenticate the user by
- invoking reauthenticateWithCredential:completion: on FIRUser.
-
- @remarks See `FIRAuthErrors` for a list of error codes that are common to all FIRUser methods.
- */
-- (void)updatePhoneNumberCredential:(FIRPhoneAuthCredential *)phoneNumberCredential
- completion:(nullable FIRUserProfileChangeCallback)completion;
-#endif
-
-/** @fn profileChangeRequest
- @brief Creates an object which may be used to change the user's profile data.
-
- @remarks Set the properties of the returned object, then call
- `FIRUserProfileChangeRequest.commitChangesWithCallback:` to perform the updates atomically.
-
- @return An object which may be used to change the user's profile data atomically.
- */
-- (FIRUserProfileChangeRequest *)profileChangeRequest NS_SWIFT_NAME(createProfileChangeRequest());
-
-/** @fn reloadWithCompletion:
- @brief Reloads the user's profile data from the server.
-
- @param completion Optionally; the block invoked when the reload has finished. Invoked
- asynchronously on the main thread in the future.
-
- @remarks May fail with a `FIRAuthErrorCodeRequiresRecentLogin` error code. In this case
- you should call `FIRUser.reauthenticateWithCredential:completion:` before re-invoking
- `FIRUser.updateEmail:completion:`.
-
- @remarks See `FIRAuthErrors` for a list of error codes that are common to all API methods.
- */
-- (void)reloadWithCompletion:(nullable FIRUserProfileChangeCallback)completion;
-
-/** @fn reauthenticateWithCredential:completion:
- @brief Please use reauthenticateAndRetrieveDataWithCredential:completion: for Objective-C or
- reauthenticateAndRetrieveData(WithCredential:completion:) for Swift instead.
- */
-- (void)reauthenticateWithCredential:(FIRAuthCredential *)credential
- completion:(nullable FIRUserProfileChangeCallback)completion
- DEPRECATED_MSG_ATTRIBUTE( "Please use"
- " reauthenticateAndRetrieveDataWithCredential:completion: for"
- " Objective-C or"
- " reauthenticateAndRetrieveData(WithCredential:completion:)"
- " for Swift instead.");
-
-/** @fn reauthenticateAndRetrieveDataWithCredential:completion:
- @brief Renews the user's authentication tokens by validating a fresh set of credentials supplied
- by the user and returns additional identity provider data.
-
- @param credential A user-supplied credential, which will be validated by the server. This can be
- a successful third-party identity provider sign-in, or an email address and password.
- @param completion Optionally; the block invoked when the re-authentication operation has
- finished. Invoked asynchronously on the main thread in the future.
-
- @remarks If the user associated with the supplied credential is different from the current user,
- or if the validation of the supplied credentials fails; an error is returned and the current
- user remains signed in.
-
- @remarks Possible error codes:
-
- + `FIRAuthErrorCodeInvalidCredential` - Indicates the supplied credential is invalid.
- This could happen if it has expired or it is malformed.
- + `FIRAuthErrorCodeOperationNotAllowed` - Indicates that accounts with the
- identity provider represented by the credential are not enabled. Enable them in the
- Auth section of the Firebase console.
- + `FIRAuthErrorCodeEmailAlreadyInUse` - Indicates the email asserted by the credential
- (e.g. the email in a Facebook access token) is already in use by an existing account,
- that cannot be authenticated with this method. Call fetchProvidersForEmail for
- this user’s email and then prompt them to sign in with any of the sign-in providers
- returned. This error will only be thrown if the "One account per email address"
- setting is enabled in the Firebase console, under Auth settings. Please note that the
- error code raised in this specific situation may not be the same on Web and Android.
- + `FIRAuthErrorCodeUserDisabled` - Indicates the user's account is disabled.
- + `FIRAuthErrorCodeWrongPassword` - Indicates the user attempted reauthentication with
- an incorrect password, if credential is of the type EmailPasswordAuthCredential.
- + `FIRAuthErrorCodeUserMismatch` - Indicates that an attempt was made to
- reauthenticate with a user which is not the current user.
- + `FIRAuthErrorCodeInvalidEmail` - Indicates the email address is malformed.
-
- @remarks See `FIRAuthErrors` for a list of error codes that are common to all API methods.
- */
-- (void)reauthenticateAndRetrieveDataWithCredential:(FIRAuthCredential *) credential
- completion:(nullable FIRAuthDataResultCallback) completion;
-
-/** @fn getIDTokenResultWithCompletion:
- @brief Retrieves the Firebase authentication token, possibly refreshing it if it has expired.
-
- @param completion Optionally; the block invoked when the token is available. Invoked
- asynchronously on the main thread in the future.
-
- @remarks See `FIRAuthErrors` for a list of error codes that are common to all API methods.
- */
-- (void)getIDTokenResultWithCompletion:(nullable FIRAuthTokenResultCallback)completion
- NS_SWIFT_NAME(getIDTokenResult(completion:));
-
-/** @fn getIDTokenResultForcingRefresh:completion:
- @brief Retrieves the Firebase authentication token, possibly refreshing it if it has expired.
-
- @param forceRefresh Forces a token refresh. Useful if the token becomes invalid for some reason
- other than an expiration.
- @param completion Optionally; the block invoked when the token is available. Invoked
- asynchronously on the main thread in the future.
-
- @remarks The authentication token will be refreshed (by making a network request) if it has
- expired, or if `forceRefresh` is YES.
-
- @remarks See `FIRAuthErrors` for a list of error codes that are common to all API methods.
- */
-- (void)getIDTokenResultForcingRefresh:(BOOL)forceRefresh
- completion:(nullable FIRAuthTokenResultCallback)completion
- NS_SWIFT_NAME(getIDTokenResult(forcingRefresh:completion:));
-
-/** @fn getIDTokenWithCompletion:
- @brief Retrieves the Firebase authentication token, possibly refreshing it if it has expired.
-
- @param completion Optionally; the block invoked when the token is available. Invoked
- asynchronously on the main thread in the future.
-
- @remarks See `FIRAuthErrors` for a list of error codes that are common to all API methods.
- */
-- (void)getIDTokenWithCompletion:(nullable FIRAuthTokenCallback)completion
- NS_SWIFT_NAME(getIDToken(completion:));
-
-/** @fn getIDTokenForcingRefresh:completion:
- @brief Retrieves the Firebase authentication token, possibly refreshing it if it has expired.
-
- @param forceRefresh Forces a token refresh. Useful if the token becomes invalid for some reason
- other than an expiration.
- @param completion Optionally; the block invoked when the token is available. Invoked
- asynchronously on the main thread in the future.
-
- @remarks The authentication token will be refreshed (by making a network request) if it has
- expired, or if `forceRefresh` is YES.
-
- @remarks See `FIRAuthErrors` for a list of error codes that are common to all API methods.
- */
-- (void)getIDTokenForcingRefresh:(BOOL)forceRefresh
- completion:(nullable FIRAuthTokenCallback)completion;
-
-/** @fn linkWithCredential:completion:
- @brief Please use linkAndRetrieveDataWithCredential:completion: for Objective-C or
- linkAndRetrieveData(WithCredential:completion:) for Swift instead.
- */
-- (void)linkWithCredential:(FIRAuthCredential *)credential
- completion:(nullable FIRAuthResultCallback)completion DEPRECATED_MSG_ATTRIBUTE(
- "Please use linkAndRetrieveDataWithCredential:completion: for"
- " Objective-C or"
- " linkAndRetrieveData(WithCredential:completion:) for"
- " Swift instead.");
-
-/** @fn linkAndRetrieveDataWithCredential:completion:
- @brief Associates a user account from a third-party identity provider with this user and
- returns additional identity provider data.
-
- @param credential The credential for the identity provider.
- @param completion Optionally; the block invoked when the unlinking is complete, or fails.
- Invoked asynchronously on the main thread in the future.
-
- @remarks Possible error codes:
-
- + `FIRAuthErrorCodeProviderAlreadyLinked` - Indicates an attempt to link a provider of a
- type already linked to this account.
- + `FIRAuthErrorCodeCredentialAlreadyInUse` - Indicates an attempt to link with a
- credential
- that has already been linked with a different Firebase account.
- + `FIRAuthErrorCodeOperationNotAllowed` - Indicates that accounts with the identity
- provider represented by the credential are not enabled. Enable them in the Auth section
- of the Firebase console.
-
- @remarks This method may also return error codes associated with updateEmail:completion: and
- updatePassword:completion: on FIRUser.
-
- @remarks See `FIRAuthErrors` for a list of error codes that are common to all FIRUser methods.
- */
-- (void)linkAndRetrieveDataWithCredential:(FIRAuthCredential *) credential
- completion:(nullable FIRAuthDataResultCallback) completion;
-
-/** @fn unlinkFromProvider:completion:
- @brief Disassociates a user account from a third-party identity provider with this user.
-
- @param provider The provider ID of the provider to unlink.
- @param completion Optionally; the block invoked when the unlinking is complete, or fails.
- Invoked asynchronously on the main thread in the future.
-
- @remarks Possible error codes:
-
- + `FIRAuthErrorCodeNoSuchProvider` - Indicates an attempt to unlink a provider
- that is not linked to the account.
- + `FIRAuthErrorCodeRequiresRecentLogin` - Updating email is a security sensitive
- operation that requires a recent login from the user. This error indicates the user
- has not signed in recently enough. To resolve, reauthenticate the user by invoking
- reauthenticateWithCredential:completion: on FIRUser.
-
- @remarks See `FIRAuthErrors` for a list of error codes that are common to all FIRUser methods.
- */
-- (void)unlinkFromProvider:(NSString *)provider
- completion:(nullable FIRAuthResultCallback)completion;
-
-/** @fn sendEmailVerificationWithCompletion:
- @brief Initiates email verification for the user.
-
- @param completion Optionally; the block invoked when the request to send an email verification
- is complete, or fails. Invoked asynchronously on the main thread in the future.
-
- @remarks Possible error codes:
-
- + `FIRAuthErrorCodeInvalidRecipientEmail` - Indicates an invalid recipient email was
- sent in the request.
- + `FIRAuthErrorCodeInvalidSender` - Indicates an invalid sender email is set in
- the console for this action.
- + `FIRAuthErrorCodeInvalidMessagePayload` - Indicates an invalid email template for
- sending update email.
- + `FIRAuthErrorCodeUserNotFound` - Indicates the user account was not found.
-
- @remarks See `FIRAuthErrors` for a list of error codes that are common to all FIRUser methods.
- */
-- (void)sendEmailVerificationWithCompletion:(nullable FIRSendEmailVerificationCallback)completion;
-
-/** @fn sendEmailVerificationWithActionCodeSettings:completion:
- @brief Initiates email verification for the user.
-
- @param actionCodeSettings An `FIRActionCodeSettings` object containing settings related to
- handling action codes.
-
- @remarks Possible error codes:
-
- + `FIRAuthErrorCodeInvalidRecipientEmail` - Indicates an invalid recipient email was
- sent in the request.
- + `FIRAuthErrorCodeInvalidSender` - Indicates an invalid sender email is set in
- the console for this action.
- + `FIRAuthErrorCodeInvalidMessagePayload` - Indicates an invalid email template for
- sending update email.
- + `FIRAuthErrorCodeUserNotFound` - Indicates the user account was not found.
- + `FIRAuthErrorCodeMissingIosBundleID` - Indicates that the iOS bundle ID is missing when
- a iOS App Store ID is provided.
- + `FIRAuthErrorCodeMissingAndroidPackageName` - Indicates that the android package name
- is missing when the `androidInstallApp` flag is set to true.
- + `FIRAuthErrorCodeUnauthorizedDomain` - Indicates that the domain specified in the
- continue URL is not whitelisted in the Firebase console.
- + `FIRAuthErrorCodeInvalidContinueURI` - Indicates that the domain specified in the
- continue URI is not valid.
- */
-- (void)sendEmailVerificationWithActionCodeSettings:(FIRActionCodeSettings *)actionCodeSettings
- completion:(nullable FIRSendEmailVerificationCallback)
- completion;
-
-/** @fn deleteWithCompletion:
- @brief Deletes the user account (also signs out the user, if this was the current user).
-
- @param completion Optionally; the block invoked when the request to delete the account is
- complete, or fails. Invoked asynchronously on the main thread in the future.
-
- @remarks Possible error codes:
-
- + `FIRAuthErrorCodeRequiresRecentLogin` - Updating email is a security sensitive
- operation that requires a recent login from the user. This error indicates the user
- has not signed in recently enough. To resolve, reauthenticate the user by invoking
- reauthenticateWithCredential:completion: on FIRUser.
-
- @remarks See `FIRAuthErrors` for a list of error codes that are common to all FIRUser methods.
-
- */
-- (void)deleteWithCompletion:(nullable FIRUserProfileChangeCallback)completion;
-
-@end
-
-/** @class FIRUserProfileChangeRequest
- @brief Represents an object capable of updating a user's profile data.
- @remarks Properties are marked as being part of a profile update when they are set. Setting a
- property value to nil is not the same as leaving the property unassigned.
- */
-NS_SWIFT_NAME(UserProfileChangeRequest)
-@interface FIRUserProfileChangeRequest : NSObject
-
-/** @fn init
- @brief Please use `FIRUser.profileChangeRequest`
- */
-- (instancetype)init NS_UNAVAILABLE;
-
-/** @property displayName
- @brief The user's display name.
- @remarks It is an error to set this property after calling
- `FIRUserProfileChangeRequest.commitChangesWithCallback:`
- */
-@property(nonatomic, copy, nullable) NSString *displayName;
-
-/** @property photoURL
- @brief The user's photo URL.
- @remarks It is an error to set this property after calling
- `FIRUserProfileChangeRequest.commitChangesWithCallback:`
- */
-@property(nonatomic, copy, nullable) NSURL *photoURL;
-
-/** @fn commitChangesWithCompletion:
- @brief Commits any pending changes.
- @remarks This method should only be called once. Once called, property values should not be
- changed.
-
- @param completion Optionally; the block invoked when the user profile change has been applied.
- Invoked asynchronously on the main thread in the future.
- */
-- (void)commitChangesWithCompletion:(nullable FIRUserProfileChangeCallback)completion;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIRUserInfo.h b/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIRUserInfo.h
deleted file mode 100644
index 04eca495d..000000000
--- a/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIRUserInfo.h
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
- * Copyright 2017 Google
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#import
-
-NS_ASSUME_NONNULL_BEGIN
-
-/**
- @brief Represents user data returned from an identity provider.
- */
-NS_SWIFT_NAME(UserInfo)
-@protocol FIRUserInfo
-
-/** @property providerID
- @brief The provider identifier.
- */
-@property(nonatomic, copy, readonly) NSString *providerID;
-
-/** @property uid
- @brief The provider's user ID for the user.
- */
-@property(nonatomic, copy, readonly) NSString *uid;
-
-/** @property displayName
- @brief The name of the user.
- */
-@property(nonatomic, copy, readonly, nullable) NSString *displayName;
-
-/** @property photoURL
- @brief The URL of the user's profile photo.
- */
-@property(nonatomic, copy, readonly, nullable) NSURL *photoURL;
-
-/** @property email
- @brief The user's email address.
- */
-@property(nonatomic, copy, readonly, nullable) NSString *email;
-
-/** @property phoneNumber
- @brief A phone number associated with the user.
- @remarks This property is only available for users authenticated via phone number auth.
- */
-@property(nonatomic, readonly, nullable) NSString *phoneNumber;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIRUserMetadata.h b/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIRUserMetadata.h
deleted file mode 100644
index 25331718d..000000000
--- a/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FIRUserMetadata.h
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * Copyright 2017 Google
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#import
-
-NS_ASSUME_NONNULL_BEGIN
-
-/** @class FIRUserMetdata
- @brief A data class representing the metadata corresponding to a Firebase user.
- */
-NS_SWIFT_NAME(UserMetadata)
-@interface FIRUserMetadata : NSObject
-
-/** @property lastSignInDate
- @brief Stores the last sign in date for the corresponding Firebase user.
- */
-@property (copy, nonatomic, readonly, nullable) NSDate *lastSignInDate;
-
-/** @property creationDate
- @brief Stores the creation date for the corresponding Firebase user.
- */
-@property (copy, nonatomic, readonly, nullable) NSDate *creationDate;
-
-/** @fn init
- @brief This class should not be initialized manually, an instance of this class can be obtained
- from a Firebase user object.
- */
-- (instancetype)init NS_UNAVAILABLE;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FirebaseAuth.h b/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FirebaseAuth.h
deleted file mode 100644
index c8837f83d..000000000
--- a/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FirebaseAuth.h
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
- * Copyright 2017 Google
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#import
-
-#import "FIRActionCodeSettings.h"
-#import "FIRAdditionalUserInfo.h"
-#import "FIRAuth.h"
-#import "FIRAuthCredential.h"
-#import "FIRAuthDataResult.h"
-#import "FIRAuthErrors.h"
-#import "FIRAuthTokenResult.h"
-#import "FirebaseAuthVersion.h"
-#import "FIREmailAuthProvider.h"
-#import "FIRFacebookAuthProvider.h"
-#import "FIRGitHubAuthProvider.h"
-#import "FIRGoogleAuthProvider.h"
-#import "FIROAuthProvider.h"
-#import "FIRTwitterAuthProvider.h"
-#import "FIRUser.h"
-#import "FIRUserInfo.h"
-#import "FIRUserMetadata.h"
-
-#if TARGET_OS_IOS
-#import "FIRAuthUIDelegate.h"
-#import "FIRPhoneAuthCredential.h"
-#import "FIRPhoneAuthProvider.h"
-#import "FIRAuthAPNSTokenType.h"
-#import "FIRAuthSettings.h"
-#endif
diff --git a/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FirebaseAuthVersion.h b/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FirebaseAuthVersion.h
deleted file mode 100644
index 2999384d1..000000000
--- a/src/ios/Firebase/Auth/FirebaseAuth.framework/Headers/FirebaseAuthVersion.h
+++ /dev/null
@@ -1,27 +0,0 @@
-/*
- * Copyright 2017 Google
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#import
-
-/**
- Version number for FirebaseAuth.
- */
-extern const double FirebaseAuthVersionNum;
-
-/**
- Version string for FirebaseAuth.
- */
-extern const unsigned char *const FirebaseAuthVersionStr;
diff --git a/src/ios/Firebase/Auth/FirebaseAuth.framework/Modules/module.modulemap b/src/ios/Firebase/Auth/FirebaseAuth.framework/Modules/module.modulemap
deleted file mode 100644
index 8311bcce3..000000000
--- a/src/ios/Firebase/Auth/FirebaseAuth.framework/Modules/module.modulemap
+++ /dev/null
@@ -1,6 +0,0 @@
-framework module FirebaseAuth {
- umbrella header "FirebaseAuth.h"
- export *
- module * { export *}
- link framework "Security"
-}
diff --git a/src/ios/Firebase/Auth/GTMSessionFetcher.framework/GTMSessionFetcher b/src/ios/Firebase/Auth/GTMSessionFetcher.framework/GTMSessionFetcher
deleted file mode 100644
index bab7d8646..000000000
Binary files a/src/ios/Firebase/Auth/GTMSessionFetcher.framework/GTMSessionFetcher and /dev/null differ
diff --git a/src/ios/Firebase/Auth/GTMSessionFetcher.framework/Headers/GTMGatherInputStream.h b/src/ios/Firebase/Auth/GTMSessionFetcher.framework/Headers/GTMGatherInputStream.h
deleted file mode 100644
index ec3c0125d..000000000
--- a/src/ios/Firebase/Auth/GTMSessionFetcher.framework/Headers/GTMGatherInputStream.h
+++ /dev/null
@@ -1,52 +0,0 @@
-/* Copyright 2014 Google Inc. All rights reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-// The GTMGatherInput stream is an input stream implementation that is to be
-// instantiated with an NSArray of NSData objects. It works in the traditional
-// scatter/gather vector I/O model. Rather than allocating a big NSData object
-// to hold all of the data and performing a copy into that object, the
-// GTMGatherInputStream will maintain a reference to the NSArray and read from
-// each NSData in turn as the read method is called. You should not alter the
-// underlying set of NSData objects until all read operations on this input
-// stream have completed.
-
-#import
-
-#ifndef GTM_NONNULL
- #if defined(__has_attribute)
- #if __has_attribute(nonnull)
- #define GTM_NONNULL(x) __attribute__((nonnull x))
- #else
- #define GTM_NONNULL(x)
- #endif
- #else
- #define GTM_NONNULL(x)
- #endif
-#endif
-
-// Avoid multiple declaration of this class.
-//
-// Note: This should match the declaration of GTMGatherInputStream in GTMMIMEDocument.m
-
-#ifndef GTM_GATHERINPUTSTREAM_DECLARED
-#define GTM_GATHERINPUTSTREAM_DECLARED
-
-@interface GTMGatherInputStream : NSInputStream
-
-+ (NSInputStream *)streamWithArray:(NSArray *)dataArray GTM_NONNULL((1));
-
-@end
-
-#endif // GTM_GATHERINPUTSTREAM_DECLARED
diff --git a/src/ios/Firebase/Auth/GTMSessionFetcher.framework/Headers/GTMMIMEDocument.h b/src/ios/Firebase/Auth/GTMSessionFetcher.framework/Headers/GTMMIMEDocument.h
deleted file mode 100644
index 451e13239..000000000
--- a/src/ios/Firebase/Auth/GTMSessionFetcher.framework/Headers/GTMMIMEDocument.h
+++ /dev/null
@@ -1,148 +0,0 @@
-/* Copyright 2014 Google Inc. All rights reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-// This is a simple class to create or parse a MIME document.
-
-// To create a MIME document, allocate a new GTMMIMEDocument and start adding parts.
-// When you are done adding parts, call generateInputStream or generateDispatchData.
-//
-// A good reference for MIME is http://en.wikipedia.org/wiki/MIME
-
-#import
-
-#ifndef GTM_NONNULL
- #if defined(__has_attribute)
- #if __has_attribute(nonnull)
- #define GTM_NONNULL(x) __attribute__((nonnull x))
- #else
- #define GTM_NONNULL(x)
- #endif
- #else
- #define GTM_NONNULL(x)
- #endif
-#endif
-
-#ifndef GTM_DECLARE_GENERICS
- #if __has_feature(objc_generics)
- #define GTM_DECLARE_GENERICS 1
- #else
- #define GTM_DECLARE_GENERICS 0
- #endif
-#endif
-
-#ifndef GTM_NSArrayOf
- #if GTM_DECLARE_GENERICS
- #define GTM_NSArrayOf(value) NSArray
- #define GTM_NSDictionaryOf(key, value) NSDictionary
- #else
- #define GTM_NSArrayOf(value) NSArray
- #define GTM_NSDictionaryOf(key, value) NSDictionary
- #endif // GTM_DECLARE_GENERICS
-#endif // GTM_NSArrayOf
-
-
-// GTMMIMEDocumentPart represents a part of a MIME document.
-//
-// +[GTMMIMEDocument MIMEPartsWithBoundary:data:] returns an array of these.
-@interface GTMMIMEDocumentPart : NSObject
-
-@property(nonatomic, readonly) GTM_NSDictionaryOf(NSString *, NSString *) *headers;
-@property(nonatomic, readonly) NSData *headerData;
-@property(nonatomic, readonly) NSData *body;
-@property(nonatomic, readonly) NSUInteger length;
-
-+ (instancetype)partWithHeaders:(NSDictionary *)headers body:(NSData *)body;
-
-@end
-
-@interface GTMMIMEDocument : NSObject
-
-// Get or set the unique boundary for the parts that have been added.
-//
-// When creating a MIME document from parts, this is typically calculated
-// automatically after all parts have been added.
-@property(nonatomic, copy) NSString *boundary;
-
-#pragma mark - Methods for Creating a MIME Document
-
-+ (instancetype)MIMEDocument;
-
-// Adds a new part to this mime document with the given headers and body.
-// The headers keys and values should be NSStrings.
-// Adding a part may cause the boundary string to change.
-- (void)addPartWithHeaders:(GTM_NSDictionaryOf(NSString *, NSString *) *)headers
- body:(NSData *)body GTM_NONNULL((1,2));
-
-// An inputstream that can be used to efficiently read the contents of the MIME document.
-//
-// Any parameter may be null if the result is not wanted.
-- (void)generateInputStream:(NSInputStream **)outStream
- length:(unsigned long long *)outLength
- boundary:(NSString **)outBoundary;
-
-// A dispatch_data_t with the contents of the MIME document.
-//
-// Note: dispatch_data_t is one-way toll-free bridged so the result
-// may be cast directly to NSData *.
-//
-// Any parameter may be null if the result is not wanted.
-- (void)generateDispatchData:(dispatch_data_t *)outDispatchData
- length:(unsigned long long *)outLength
- boundary:(NSString **)outBoundary;
-
-// Utility method for making a header section, including trailing newlines.
-+ (NSData *)dataWithHeaders:(GTM_NSDictionaryOf(NSString *, NSString *) *)headers;
-
-#pragma mark - Methods for Parsing a MIME Document
-
-// Method for parsing out an array of MIME parts from a MIME document.
-//
-// Returns an array of GTMMIMEDocumentParts. Returns nil if no part can
-// be found.
-+ (GTM_NSArrayOf(GTMMIMEDocumentPart *) *)MIMEPartsWithBoundary:(NSString *)boundary
- data:(NSData *)fullDocumentData;
-
-// Utility method for efficiently searching possibly discontiguous NSData
-// for occurrences of target byte. This method does not "flatten" an NSData
-// that is composed of discontiguous blocks.
-//
-// The byte offsets of non-overlapping occurrences of the target are returned as
-// NSNumbers in the array.
-+ (void)searchData:(NSData *)data
- targetBytes:(const void *)targetBytes
- targetLength:(NSUInteger)targetLength
- foundOffsets:(GTM_NSArrayOf(NSNumber *) **)outFoundOffsets;
-
-// Utility method to parse header bytes into an NSDictionary.
-+ (GTM_NSDictionaryOf(NSString *, NSString *) *)headersWithData:(NSData *)data;
-
-// ------ UNIT TESTING ONLY BELOW ------
-
-// Internal methods, exposed for unit testing only.
-- (void)seedRandomWith:(u_int32_t)seed;
-
-+ (NSUInteger)findBytesWithNeedle:(const unsigned char *)needle
- needleLength:(NSUInteger)needleLength
- haystack:(const unsigned char *)haystack
- haystackLength:(NSUInteger)haystackLength
- foundOffset:(NSUInteger *)foundOffset;
-
-+ (void)searchData:(NSData *)data
- targetBytes:(const void *)targetBytes
- targetLength:(NSUInteger)targetLength
- foundOffsets:(GTM_NSArrayOf(NSNumber *) **)outFoundOffsets
- foundBlockNumbers:(GTM_NSArrayOf(NSNumber *) **)outFoundBlockNumbers;
-
-@end
diff --git a/src/ios/Firebase/Auth/GTMSessionFetcher.framework/Headers/GTMReadMonitorInputStream.h b/src/ios/Firebase/Auth/GTMSessionFetcher.framework/Headers/GTMReadMonitorInputStream.h
deleted file mode 100644
index 4e306428a..000000000
--- a/src/ios/Firebase/Auth/GTMSessionFetcher.framework/Headers/GTMReadMonitorInputStream.h
+++ /dev/null
@@ -1,49 +0,0 @@
-/* Copyright 2014 Google Inc. All rights reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#import
-
-#ifndef GTM_NONNULL
- #if defined(__has_attribute)
- #if __has_attribute(nonnull)
- #define GTM_NONNULL(x) __attribute__((nonnull x))
- #else
- #define GTM_NONNULL(x)
- #endif
- #else
- #define GTM_NONNULL(x)
- #endif
-#endif
-
-
-@interface GTMReadMonitorInputStream : NSInputStream
-
-+ (instancetype)inputStreamWithStream:(NSInputStream *)input GTM_NONNULL((1));
-
-- (instancetype)initWithStream:(NSInputStream *)input GTM_NONNULL((1));
-
-// The read monitor selector is called when bytes have been read. It should have this signature:
-//
-// - (void)inputStream:(GTMReadMonitorInputStream *)stream
-// readIntoBuffer:(uint8_t *)buffer
-// length:(int64_t)length;
-
-@property(atomic, weak) id readDelegate;
-@property(atomic, assign) SEL readSelector;
-
-// Modes for invoking callbacks, when necessary.
-@property(atomic, strong) NSArray *runLoopModes;
-
-@end
diff --git a/src/ios/Firebase/Auth/GTMSessionFetcher.framework/Headers/GTMSessionFetcher.h b/src/ios/Firebase/Auth/GTMSessionFetcher.framework/Headers/GTMSessionFetcher.h
deleted file mode 100644
index 56eb1ca99..000000000
--- a/src/ios/Firebase/Auth/GTMSessionFetcher.framework/Headers/GTMSessionFetcher.h
+++ /dev/null
@@ -1,1309 +0,0 @@
-/* Copyright 2014 Google Inc. All rights reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-// GTMSessionFetcher is a wrapper around NSURLSession for http operations.
-//
-// What does this offer on top of of NSURLSession?
-//
-// - Block-style callbacks for useful functionality like progress rather
-// than delegate methods.
-// - Out-of-process uploads and downloads using NSURLSession, including
-// management of fetches after relaunch.
-// - Integration with GTMAppAuth for invisible management and refresh of
-// authorization tokens.
-// - Pretty-printed http logging.
-// - Cookies handling that does not interfere with or get interfered with
-// by WebKit cookies or on Mac by Safari and other apps.
-// - Credentials handling for the http operation.
-// - Rate-limiting and cookie grouping when fetchers are created with
-// GTMSessionFetcherService.
-//
-// If the bodyData or bodyFileURL property is set, then a POST request is assumed.
-//
-// Each fetcher is assumed to be for a one-shot fetch request; don't reuse the object
-// for a second fetch.
-//
-// The fetcher will be self-retained as long as a connection is pending.
-//
-// To keep user activity private, URLs must have an https scheme (unless the property
-// allowedInsecureSchemes is set to permit the scheme.)
-//
-// Callbacks will be released when the fetch completes or is stopped, so there is no need
-// to use weak self references in the callback blocks.
-//
-// Sample usage:
-//
-// _fetcherService = [[GTMSessionFetcherService alloc] init];
-//
-// GTMSessionFetcher *myFetcher = [_fetcherService fetcherWithURLString:myURLString];
-// myFetcher.retryEnabled = YES;
-// myFetcher.comment = @"First profile image";
-//
-// // Optionally specify a file URL or NSData for the request body to upload.
-// myFetcher.bodyData = [postString dataUsingEncoding:NSUTF8StringEncoding];
-//
-// [myFetcher beginFetchWithCompletionHandler:^(NSData *data, NSError *error) {
-// if (error != nil) {
-// // Server status code or network error.
-// //
-// // If the domain is kGTMSessionFetcherStatusDomain then the error code
-// // is a failure status from the server.
-// } else {
-// // Fetch succeeded.
-// }
-// }];
-//
-// There is also a beginFetch call that takes a pointer and selector for the completion handler;
-// a pointer and selector is a better style when the callback is a substantial, separate method.
-//
-// NOTE: Fetches may retrieve data from the server even though the server
-// returned an error, so the criteria for success is a non-nil error.
-// The completion handler is called when the server status is >= 300 with an NSError
-// having domain kGTMSessionFetcherStatusDomain and code set to the server status.
-//
-// Status codes are at
-//
-//
-// Background session support:
-//
-// Out-of-process uploads and downloads may be created by setting the fetcher's
-// useBackgroundSession property. Data to be uploaded should be provided via
-// the uploadFileURL property; the download destination should be specified with
-// the destinationFileURL. NOTE: Background upload files should be in a location
-// that will be valid even after the device is restarted, so the file should not
-// be uploaded from a system temporary or cache directory.
-//
-// Background session transfers are slower, and should typically be used only
-// for very large downloads or uploads (hundreds of megabytes).
-//
-// When background sessions are used in iOS apps, the application delegate must
-// pass through the parameters from UIApplicationDelegate's
-// application:handleEventsForBackgroundURLSession:completionHandler: to the
-// fetcher class.
-//
-// When the application has been relaunched, it may also create a new fetcher
-// instance to handle completion of the transfers.
-//
-// - (void)application:(UIApplication *)application
-// handleEventsForBackgroundURLSession:(NSString *)identifier
-// completionHandler:(void (^)())completionHandler {
-// // Application was re-launched on completing an out-of-process download.
-//
-// // Pass the URLSession info related to this re-launch to the fetcher class.
-// [GTMSessionFetcher application:application
-// handleEventsForBackgroundURLSession:identifier
-// completionHandler:completionHandler];
-//
-// // Get a fetcher related to this re-launch and re-hook up a completionHandler to it.
-// GTMSessionFetcher *fetcher = [GTMSessionFetcher fetcherWithSessionIdentifier:identifier];
-// NSURL *destinationFileURL = fetcher.destinationFileURL;
-// fetcher.completionHandler = ^(NSData *data, NSError *error) {
-// [self downloadCompletedToFile:destinationFileURL error:error];
-// };
-// }
-//
-//
-// Threading and queue support:
-//
-// Networking always happens on a background thread; there is no advantage to
-// changing thread or queue to create or start a fetcher.
-//
-// Callbacks are run on the main thread; alternatively, the app may set the
-// fetcher's callbackQueue to a dispatch queue.
-//
-// Once the fetcher's beginFetch method has been called, the fetcher's methods and
-// properties may be accessed from any thread.
-//
-// Downloading to disk:
-//
-// To have downloaded data saved directly to disk, specify a file URL for the
-// destinationFileURL property.
-//
-// HTTP methods and headers:
-//
-// Alternative HTTP methods, like PUT, and custom headers can be specified by
-// creating the fetcher with an appropriate NSMutableURLRequest.
-//
-//
-// Caching:
-//
-// The fetcher avoids caching. That is best for API requests, but may hurt
-// repeat fetches of static data. Apps may enable a persistent disk cache by
-// customizing the config:
-//
-// fetcher.configurationBlock = ^(GTMSessionFetcher *configFetcher,
-// NSURLSessionConfiguration *config) {
-// config.URLCache = [NSURLCache sharedURLCache];
-// };
-//
-// Or use the standard system config to share cookie storage with web views
-// and to enable disk caching:
-//
-// fetcher.configuration = [NSURLSessionConfiguration defaultSessionConfiguration];
-//
-//
-// Cookies:
-//
-// There are three supported mechanisms for remembering cookies between fetches.
-//
-// By default, a standalone GTMSessionFetcher uses a mutable array held
-// statically to track cookies for all instantiated fetchers. This avoids
-// cookies being set by servers for the application from interfering with
-// Safari and WebKit cookie settings, and vice versa.
-// The fetcher cookies are lost when the application quits.
-//
-// To rely instead on WebKit's global NSHTTPCookieStorage, set the fetcher's
-// cookieStorage property:
-// myFetcher.cookieStorage = [NSHTTPCookieStorage sharedHTTPCookieStorage];
-//
-// To share cookies with other apps, use the method introduced in iOS 9/OS X 10.11:
-// myFetcher.cookieStorage =
-// [NSHTTPCookieStorage sharedCookieStorageForGroupContainerIdentifier:kMyCompanyContainedID];
-//
-// To ignore existing cookies and only have cookies related to the single fetch
-// be applied, make a temporary cookie storage object:
-// myFetcher.cookieStorage = [[GTMSessionCookieStorage alloc] init];
-//
-// Note: cookies set while following redirects will be sent to the server, as
-// the redirects are followed by the fetcher.
-//
-// To completely disable cookies, similar to setting cookieStorageMethod to
-// kGTMHTTPFetcherCookieStorageMethodNone, adjust the session configuration
-// appropriately in the fetcher or fetcher service:
-// fetcher.configurationBlock = ^(GTMSessionFetcher *configFetcher,
-// NSURLSessionConfiguration *config) {
-// config.HTTPCookieAcceptPolicy = NSHTTPCookieAcceptPolicyNever;
-// config.HTTPShouldSetCookies = NO;
-// };
-//
-// If the fetcher is created from a GTMSessionFetcherService object
-// then the cookie storage mechanism is set to use the cookie storage in the
-// service object rather than the static storage. Disabling cookies in the
-// session configuration set on a service object will disable cookies for all
-// fetchers created from that GTMSessionFetcherService object, since the session
-// configuration is propagated to the fetcher.
-//
-//
-// Monitoring data transfers.
-//
-// The fetcher supports a variety of properties for progress monitoring
-// progress with callback blocks.
-// GTMSessionFetcherSendProgressBlock sendProgressBlock
-// GTMSessionFetcherReceivedProgressBlock receivedProgressBlock
-// GTMSessionFetcherDownloadProgressBlock downloadProgressBlock
-//
-// If supplied by the server, the anticipated total download size is available
-// as [[myFetcher response] expectedContentLength] (and may be -1 for unknown
-// download sizes.)
-//
-//
-// Automatic retrying of fetches
-//
-// The fetcher can optionally create a timer and reattempt certain kinds of
-// fetch failures (status codes 408, request timeout; 502, gateway failure;
-// 503, service unavailable; 504, gateway timeout; networking errors
-// NSURLErrorTimedOut and NSURLErrorNetworkConnectionLost.) The user may
-// set a retry selector to customize the type of errors which will be retried.
-//
-// Retries are done in an exponential-backoff fashion (that is, after 1 second,
-// 2, 4, 8, and so on.)
-//
-// Enabling automatic retries looks like this:
-// myFetcher.retryEnabled = YES;
-//
-// With retries enabled, the completion callbacks are called only
-// when no more retries will be attempted. Calling the fetcher's stopFetching
-// method will terminate the retry timer, without the finished or failure
-// selectors being invoked.
-//
-// Optionally, the client may set the maximum retry interval:
-// myFetcher.maxRetryInterval = 60.0; // in seconds; default is 60 seconds
-// // for downloads, 600 for uploads
-//
-// Servers should never send a 400 or 500 status for errors that are retryable
-// by clients, as those values indicate permanent failures. In nearly all
-// cases, the default standard retry behavior is correct for clients, and no
-// custom client retry behavior is needed or appropriate. Servers that send
-// non-retryable status codes and expect the client to retry the request are
-// faulty.
-//
-// Still, the client may provide a block to determine if a status code or other
-// error should be retried. The block returns YES to set the retry timer or NO
-// to fail without additional fetch attempts.
-//
-// The retry method may return the |suggestedWillRetry| argument to get the
-// default retry behavior. Server status codes are present in the
-// error argument, and have the domain kGTMSessionFetcherStatusDomain. The
-// user's method may look something like this:
-//
-// myFetcher.retryBlock = ^(BOOL suggestedWillRetry, NSError *error,
-// GTMSessionFetcherRetryResponse response) {
-// // Perhaps examine error.domain and error.code, or fetcher.retryCount
-// //
-// // Respond with YES to start the retry timer, NO to proceed to the failure
-// // callback, or suggestedWillRetry to get default behavior for the
-// // current error domain and code values.
-// response(suggestedWillRetry);
-// };
-
-
-#import
-
-#if TARGET_OS_IPHONE
-#import
-#endif
-#if TARGET_OS_WATCH
-#import
-#endif
-
-// By default it is stripped from non DEBUG builds. Developers can override
-// this in their project settings.
-#ifndef STRIP_GTM_FETCH_LOGGING
- #if !DEBUG
- #define STRIP_GTM_FETCH_LOGGING 1
- #else
- #define STRIP_GTM_FETCH_LOGGING 0
- #endif
-#endif
-
-// Logs in debug builds.
-#ifndef GTMSESSION_LOG_DEBUG
- #if DEBUG
- #define GTMSESSION_LOG_DEBUG(...) NSLog(__VA_ARGS__)
- #else
- #define GTMSESSION_LOG_DEBUG(...) do { } while (0)
- #endif
-#endif
-
-// Asserts in debug builds (or logs in debug builds if GTMSESSION_ASSERT_AS_LOG
-// or NS_BLOCK_ASSERTIONS are defined.)
-#ifndef GTMSESSION_ASSERT_DEBUG
- #if DEBUG && !defined(NS_BLOCK_ASSERTIONS) && !GTMSESSION_ASSERT_AS_LOG
- #undef GTMSESSION_ASSERT_AS_LOG
- #define GTMSESSION_ASSERT_AS_LOG 1
- #endif
-
- #if DEBUG && !GTMSESSION_ASSERT_AS_LOG
- #define GTMSESSION_ASSERT_DEBUG(...) NSAssert(__VA_ARGS__)
- #elif DEBUG
- #define GTMSESSION_ASSERT_DEBUG(pred, ...) if (!(pred)) { NSLog(__VA_ARGS__); }
- #else
- #define GTMSESSION_ASSERT_DEBUG(pred, ...) do { } while (0)
- #endif
-#endif
-
-// Asserts in debug builds, logs in release builds (or logs in debug builds if
-// GTMSESSION_ASSERT_AS_LOG is defined.)
-#ifndef GTMSESSION_ASSERT_DEBUG_OR_LOG
- #if DEBUG && !GTMSESSION_ASSERT_AS_LOG
- #define GTMSESSION_ASSERT_DEBUG_OR_LOG(...) NSAssert(__VA_ARGS__)
- #else
- #define GTMSESSION_ASSERT_DEBUG_OR_LOG(pred, ...) if (!(pred)) { NSLog(__VA_ARGS__); }
- #endif
-#endif
-
-// Macro useful for examining messages from NSURLSession during debugging.
-#if 0
-#define GTM_LOG_SESSION_DELEGATE(...) GTMSESSION_LOG_DEBUG(__VA_ARGS__)
-#else
-#define GTM_LOG_SESSION_DELEGATE(...)
-#endif
-
-#ifndef GTM_NULLABLE
- #if __has_feature(nullability) // Available starting in Xcode 6.3
- #define GTM_NULLABLE_TYPE __nullable
- #define GTM_NONNULL_TYPE __nonnull
- #define GTM_NULLABLE nullable
- #define GTM_NONNULL_DECL nonnull // GTM_NONNULL is used by GTMDefines.h
- #define GTM_NULL_RESETTABLE null_resettable
-
- #define GTM_ASSUME_NONNULL_BEGIN NS_ASSUME_NONNULL_BEGIN
- #define GTM_ASSUME_NONNULL_END NS_ASSUME_NONNULL_END
- #else
- #define GTM_NULLABLE_TYPE
- #define GTM_NONNULL_TYPE
- #define GTM_NULLABLE
- #define GTM_NONNULL_DECL
- #define GTM_NULL_RESETTABLE
- #define GTM_ASSUME_NONNULL_BEGIN
- #define GTM_ASSUME_NONNULL_END
- #endif // __has_feature(nullability)
-#endif // GTM_NULLABLE
-
-#if (TARGET_OS_TV \
- || TARGET_OS_WATCH \
- || (!TARGET_OS_IPHONE && defined(MAC_OS_X_VERSION_10_12) && MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_12) \
- || (TARGET_OS_IPHONE && defined(__IPHONE_10_0) && __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_10_0))
-#define GTMSESSION_DEPRECATE_ON_2016_SDKS(_MSG) __attribute__((deprecated("" _MSG)))
-#else
-#define GTMSESSION_DEPRECATE_ON_2016_SDKS(_MSG)
-#endif
-
-#ifndef GTM_DECLARE_GENERICS
- #if __has_feature(objc_generics)
- #define GTM_DECLARE_GENERICS 1
- #else
- #define GTM_DECLARE_GENERICS 0
- #endif
-#endif
-
-#ifndef GTM_NSArrayOf
- #if GTM_DECLARE_GENERICS
- #define GTM_NSArrayOf(value) NSArray
- #define GTM_NSDictionaryOf(key, value) NSDictionary
- #else
- #define GTM_NSArrayOf(value) NSArray
- #define GTM_NSDictionaryOf(key, value) NSDictionary
- #endif // __has_feature(objc_generics)
-#endif // GTM_NSArrayOf
-
-// For iOS, the fetcher can declare itself a background task to allow fetches
-// to finish when the app leaves the foreground.
-//
-// (This is unrelated to providing a background configuration, which allows
-// out-of-process uploads and downloads.)
-//
-// To disallow use of background tasks during fetches, the target should define
-// GTM_BACKGROUND_TASK_FETCHING to 0, or alternatively may set the
-// skipBackgroundTask property to YES.
-#if TARGET_OS_IPHONE && !TARGET_OS_WATCH && !defined(GTM_BACKGROUND_TASK_FETCHING)
- #define GTM_BACKGROUND_TASK_FETCHING 1
-#endif
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#if (TARGET_OS_TV \
- || TARGET_OS_WATCH \
- || (!TARGET_OS_IPHONE && defined(MAC_OS_X_VERSION_10_11) && MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_11) \
- || (TARGET_OS_IPHONE && defined(__IPHONE_9_0) && __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_9_0))
- #ifndef GTM_USE_SESSION_FETCHER
- #define GTM_USE_SESSION_FETCHER 1
- #endif
-#endif
-
-#if !defined(GTMBridgeFetcher)
- // These bridge macros should be identical in GTMHTTPFetcher.h and GTMSessionFetcher.h
- #if GTM_USE_SESSION_FETCHER
- // Macros to new fetcher class.
- #define GTMBridgeFetcher GTMSessionFetcher
- #define GTMBridgeFetcherService GTMSessionFetcherService
- #define GTMBridgeFetcherServiceProtocol GTMSessionFetcherServiceProtocol
- #define GTMBridgeAssertValidSelector GTMSessionFetcherAssertValidSelector
- #define GTMBridgeCookieStorage GTMSessionCookieStorage
- #define GTMBridgeCleanedUserAgentString GTMFetcherCleanedUserAgentString
- #define GTMBridgeSystemVersionString GTMFetcherSystemVersionString
- #define GTMBridgeApplicationIdentifier GTMFetcherApplicationIdentifier
- #define kGTMBridgeFetcherStatusDomain kGTMSessionFetcherStatusDomain
- #define kGTMBridgeFetcherStatusBadRequest GTMSessionFetcherStatusBadRequest
- #else
- // Macros to old fetcher class.
- #define GTMBridgeFetcher GTMHTTPFetcher
- #define GTMBridgeFetcherService GTMHTTPFetcherService
- #define GTMBridgeFetcherServiceProtocol GTMHTTPFetcherServiceProtocol
- #define GTMBridgeAssertValidSelector GTMAssertSelectorNilOrImplementedWithArgs
- #define GTMBridgeCookieStorage GTMCookieStorage
- #define GTMBridgeCleanedUserAgentString GTMCleanedUserAgentString
- #define GTMBridgeSystemVersionString GTMSystemVersionString
- #define GTMBridgeApplicationIdentifier GTMApplicationIdentifier
- #define kGTMBridgeFetcherStatusDomain kGTMHTTPFetcherStatusDomain
- #define kGTMBridgeFetcherStatusBadRequest kGTMHTTPFetcherStatusBadRequest
- #endif // GTM_USE_SESSION_FETCHER
-#endif
-
-GTM_ASSUME_NONNULL_BEGIN
-
-// Notifications
-//
-// Fetch started and stopped, and fetch retry delay started and stopped.
-extern NSString *const kGTMSessionFetcherStartedNotification;
-extern NSString *const kGTMSessionFetcherStoppedNotification;
-extern NSString *const kGTMSessionFetcherRetryDelayStartedNotification;
-extern NSString *const kGTMSessionFetcherRetryDelayStoppedNotification;
-
-// Completion handler notification. This is intended for use by code capturing
-// and replaying fetch requests and results for testing. For fetches where
-// destinationFileURL or accumulateDataBlock is set for the fetcher, the data
-// will be nil for successful fetches.
-//
-// This notification is posted on the main thread.
-extern NSString *const kGTMSessionFetcherCompletionInvokedNotification;
-extern NSString *const kGTMSessionFetcherCompletionDataKey;
-extern NSString *const kGTMSessionFetcherCompletionErrorKey;
-
-// Constants for NSErrors created by the fetcher (excluding server status errors,
-// and error objects originating in the OS.)
-extern NSString *const kGTMSessionFetcherErrorDomain;
-
-// The fetcher turns server error status values (3XX, 4XX, 5XX) into NSErrors
-// with domain kGTMSessionFetcherStatusDomain.
-//
-// Any server response body data accompanying the status error is added to the
-// userInfo dictionary with key kGTMSessionFetcherStatusDataKey.
-extern NSString *const kGTMSessionFetcherStatusDomain;
-extern NSString *const kGTMSessionFetcherStatusDataKey;
-extern NSString *const kGTMSessionFetcherStatusDataContentTypeKey;
-
-// When a fetch fails with an error, these keys are included in the error userInfo
-// dictionary if retries were attempted.
-extern NSString *const kGTMSessionFetcherNumberOfRetriesDoneKey;
-extern NSString *const kGTMSessionFetcherElapsedIntervalWithRetriesKey;
-
-// Background session support requires access to NSUserDefaults.
-// If [NSUserDefaults standardUserDefaults] doesn't yield the correct NSUserDefaults for your usage,
-// ie for an App Extension, then implement this class/method to return the correct NSUserDefaults.
-// https://developer.apple.com/library/ios/documentation/General/Conceptual/ExtensibilityPG/ExtensionScenarios.html#//apple_ref/doc/uid/TP40014214-CH21-SW6
-@interface GTMSessionFetcherUserDefaultsFactory : NSObject
-
-+ (NSUserDefaults *)fetcherUserDefaults;
-
-@end
-
-#ifdef __cplusplus
-}
-#endif
-
-typedef NS_ENUM(NSInteger, GTMSessionFetcherError) {
- GTMSessionFetcherErrorDownloadFailed = -1,
- GTMSessionFetcherErrorUploadChunkUnavailable = -2,
- GTMSessionFetcherErrorBackgroundExpiration = -3,
- GTMSessionFetcherErrorBackgroundFetchFailed = -4,
- GTMSessionFetcherErrorInsecureRequest = -5,
- GTMSessionFetcherErrorTaskCreationFailed = -6,
-};
-
-typedef NS_ENUM(NSInteger, GTMSessionFetcherStatus) {
- // Standard http status codes.
- GTMSessionFetcherStatusNotModified = 304,
- GTMSessionFetcherStatusBadRequest = 400,
- GTMSessionFetcherStatusUnauthorized = 401,
- GTMSessionFetcherStatusForbidden = 403,
- GTMSessionFetcherStatusPreconditionFailed = 412
-};
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-@class GTMSessionCookieStorage;
-@class GTMSessionFetcher;
-
-// The configuration block is for modifying the NSURLSessionConfiguration only.
-// DO NOT change any fetcher properties in the configuration block.
-typedef void (^GTMSessionFetcherConfigurationBlock)(GTMSessionFetcher *fetcher,
- NSURLSessionConfiguration *configuration);
-typedef void (^GTMSessionFetcherSystemCompletionHandler)(void);
-typedef void (^GTMSessionFetcherCompletionHandler)(NSData * GTM_NULLABLE_TYPE data,
- NSError * GTM_NULLABLE_TYPE error);
-typedef void (^GTMSessionFetcherBodyStreamProviderResponse)(NSInputStream *bodyStream);
-typedef void (^GTMSessionFetcherBodyStreamProvider)(GTMSessionFetcherBodyStreamProviderResponse response);
-typedef void (^GTMSessionFetcherDidReceiveResponseDispositionBlock)(NSURLSessionResponseDisposition disposition);
-typedef void (^GTMSessionFetcherDidReceiveResponseBlock)(NSURLResponse *response,
- GTMSessionFetcherDidReceiveResponseDispositionBlock dispositionBlock);
-typedef void (^GTMSessionFetcherChallengeDispositionBlock)(NSURLSessionAuthChallengeDisposition disposition,
- NSURLCredential * GTM_NULLABLE_TYPE credential);
-typedef void (^GTMSessionFetcherChallengeBlock)(GTMSessionFetcher *fetcher,
- NSURLAuthenticationChallenge *challenge,
- GTMSessionFetcherChallengeDispositionBlock dispositionBlock);
-typedef void (^GTMSessionFetcherWillRedirectResponse)(NSURLRequest * GTM_NULLABLE_TYPE redirectedRequest);
-typedef void (^GTMSessionFetcherWillRedirectBlock)(NSHTTPURLResponse *redirectResponse,
- NSURLRequest *redirectRequest,
- GTMSessionFetcherWillRedirectResponse response);
-typedef void (^GTMSessionFetcherAccumulateDataBlock)(NSData * GTM_NULLABLE_TYPE buffer);
-typedef void (^GTMSessionFetcherSimulateByteTransferBlock)(NSData * GTM_NULLABLE_TYPE buffer,
- int64_t bytesWritten,
- int64_t totalBytesWritten,
- int64_t totalBytesExpectedToWrite);
-typedef void (^GTMSessionFetcherReceivedProgressBlock)(int64_t bytesWritten,
- int64_t totalBytesWritten);
-typedef void (^GTMSessionFetcherDownloadProgressBlock)(int64_t bytesWritten,
- int64_t totalBytesWritten,
- int64_t totalBytesExpectedToWrite);
-typedef void (^GTMSessionFetcherSendProgressBlock)(int64_t bytesSent,
- int64_t totalBytesSent,
- int64_t totalBytesExpectedToSend);
-typedef void (^GTMSessionFetcherWillCacheURLResponseResponse)(NSCachedURLResponse * GTM_NULLABLE_TYPE cachedResponse);
-typedef void (^GTMSessionFetcherWillCacheURLResponseBlock)(NSCachedURLResponse *proposedResponse,
- GTMSessionFetcherWillCacheURLResponseResponse responseBlock);
-typedef void (^GTMSessionFetcherRetryResponse)(BOOL shouldRetry);
-typedef void (^GTMSessionFetcherRetryBlock)(BOOL suggestedWillRetry,
- NSError * GTM_NULLABLE_TYPE error,
- GTMSessionFetcherRetryResponse response);
-
-typedef void (^GTMSessionFetcherTestResponse)(NSHTTPURLResponse * GTM_NULLABLE_TYPE response,
- NSData * GTM_NULLABLE_TYPE data,
- NSError * GTM_NULLABLE_TYPE error);
-typedef void (^GTMSessionFetcherTestBlock)(GTMSessionFetcher *fetcherToTest,
- GTMSessionFetcherTestResponse testResponse);
-
-void GTMSessionFetcherAssertValidSelector(id GTM_NULLABLE_TYPE obj, SEL GTM_NULLABLE_TYPE sel, ...);
-
-// Utility functions for applications self-identifying to servers via a
-// user-agent header
-
-// The "standard" user agent includes the application identifier, taken from the bundle,
-// followed by a space and the system version string. Pass nil to use +mainBundle as the source
-// of the bundle identifier.
-//
-// Applications may use this as a starting point for their own user agent strings, perhaps
-// with additional sections appended. Use GTMFetcherCleanedUserAgentString() below to
-// clean up any string being added to the user agent.
-NSString *GTMFetcherStandardUserAgentString(NSBundle * GTM_NULLABLE_TYPE bundle);
-
-// Make a generic name and version for the current application, like
-// com.example.MyApp/1.2.3 relying on the bundle identifier and the
-// CFBundleShortVersionString or CFBundleVersion.
-//
-// The bundle ID may be overridden as the base identifier string by
-// adding to the bundle's Info.plist a "GTMUserAgentID" key.
-//
-// If no bundle ID or override is available, the process name preceded
-// by "proc_" is used.
-NSString *GTMFetcherApplicationIdentifier(NSBundle * GTM_NULLABLE_TYPE bundle);
-
-// Make an identifier like "MacOSX/10.7.1" or "iPod_Touch/4.1 hw/iPod1_1"
-NSString *GTMFetcherSystemVersionString(void);
-
-// Make a parseable user-agent identifier from the given string, replacing whitespace
-// and commas with underscores, and removing other characters that may interfere
-// with parsing of the full user-agent string.
-//
-// For example, @"[My App]" would become @"My_App"
-NSString *GTMFetcherCleanedUserAgentString(NSString *str);
-
-// Grab the data from an input stream. Since streams cannot be assumed to be rewindable,
-// this may be destructive; the caller can try to rewind the stream (by setting the
-// NSStreamFileCurrentOffsetKey property) or can just use the NSData to make a new
-// NSInputStream. This function is intended to facilitate testing rather than be used in
-// production.
-//
-// This function operates synchronously on the current thread. Depending on how the
-// input stream is implemented, it may be appropriate to dispatch to a different
-// queue before calling this function.
-//
-// Failure is indicated by a returned data value of nil.
-NSData * GTM_NULLABLE_TYPE GTMDataFromInputStream(NSInputStream *inputStream, NSError **outError);
-
-#ifdef __cplusplus
-} // extern "C"
-#endif
-
-
-#if !GTM_USE_SESSION_FETCHER
-@protocol GTMHTTPFetcherServiceProtocol;
-#endif
-
-// This protocol allows abstract references to the fetcher service, primarily for
-// fetchers (which may be compiled without the fetcher service class present.)
-//
-// Apps should not need to use this protocol.
-@protocol GTMSessionFetcherServiceProtocol
-// This protocol allows us to call into the service without requiring
-// GTMSessionFetcherService sources in this project
-
-@property(atomic, strong) dispatch_queue_t callbackQueue;
-
-- (BOOL)fetcherShouldBeginFetching:(GTMSessionFetcher *)fetcher;
-- (void)fetcherDidCreateSession:(GTMSessionFetcher *)fetcher;
-- (void)fetcherDidBeginFetching:(GTMSessionFetcher *)fetcher;
-- (void)fetcherDidStop:(GTMSessionFetcher *)fetcher;
-
-- (GTMSessionFetcher *)fetcherWithRequest:(NSURLRequest *)request;
-- (BOOL)isDelayingFetcher:(GTMSessionFetcher *)fetcher;
-
-@property(atomic, assign) BOOL reuseSession;
-- (GTM_NULLABLE NSURLSession *)session;
-- (GTM_NULLABLE NSURLSession *)sessionForFetcherCreation;
-- (GTM_NULLABLE id)sessionDelegate;
-- (GTM_NULLABLE NSDate *)stoppedAllFetchersDate;
-
-// Methods for compatibility with the old GTMHTTPFetcher.
-@property(readonly, strong, GTM_NULLABLE) NSOperationQueue *delegateQueue;
-
-@end // @protocol GTMSessionFetcherServiceProtocol
-
-#ifndef GTM_FETCHER_AUTHORIZATION_PROTOCOL
-#define GTM_FETCHER_AUTHORIZATION_PROTOCOL 1
-@protocol GTMFetcherAuthorizationProtocol
-@required
-// This protocol allows us to call the authorizer without requiring its sources
-// in this project.
-- (void)authorizeRequest:(GTM_NULLABLE NSMutableURLRequest *)request
- delegate:(id)delegate
- didFinishSelector:(SEL)sel;
-
-- (void)stopAuthorization;
-
-- (void)stopAuthorizationForRequest:(NSURLRequest *)request;
-
-- (BOOL)isAuthorizingRequest:(NSURLRequest *)request;
-
-- (BOOL)isAuthorizedRequest:(NSURLRequest *)request;
-
-@property(strong, readonly, GTM_NULLABLE) NSString *userEmail;
-
-@optional
-
-// Indicate if authorization may be attempted. Even if this succeeds,
-// authorization may fail if the user's permissions have been revoked.
-@property(readonly) BOOL canAuthorize;
-
-// For development only, allow authorization of non-SSL requests, allowing
-// transmission of the bearer token unencrypted.
-@property(assign) BOOL shouldAuthorizeAllRequests;
-
-- (void)authorizeRequest:(GTM_NULLABLE NSMutableURLRequest *)request
- completionHandler:(void (^)(NSError * GTM_NULLABLE_TYPE error))handler;
-
-#if GTM_USE_SESSION_FETCHER
-@property (weak, GTM_NULLABLE) id fetcherService;
-#else
-@property (weak, GTM_NULLABLE) id fetcherService;
-#endif
-
-- (BOOL)primeForRefresh;
-
-@end
-#endif // GTM_FETCHER_AUTHORIZATION_PROTOCOL
-
-#if GTM_BACKGROUND_TASK_FETCHING
-// A protocol for an alternative target for messages from GTMSessionFetcher to UIApplication.
-// Set the target using +[GTMSessionFetcher setSubstituteUIApplication:]
-@protocol GTMUIApplicationProtocol
-- (UIBackgroundTaskIdentifier)beginBackgroundTaskWithName:(nullable NSString *)taskName
- expirationHandler:(void(^ __nullable)(void))handler;
-- (void)endBackgroundTask:(UIBackgroundTaskIdentifier)identifier;
-@end
-#endif
-
-#pragma mark -
-
-// GTMSessionFetcher objects are used for async retrieval of an http get or post
-//
-// See additional comments at the beginning of this file
-@interface GTMSessionFetcher : NSObject
-
-// Create a fetcher
-//
-// fetcherWithRequest will return an autoreleased fetcher, but if
-// the connection is successfully created, the connection should retain the
-// fetcher for the life of the connection as well. So the caller doesn't have
-// to retain the fetcher explicitly unless they want to be able to cancel it.
-+ (instancetype)fetcherWithRequest:(GTM_NULLABLE NSURLRequest *)request;
-
-// Convenience methods that make a request, like +fetcherWithRequest
-+ (instancetype)fetcherWithURL:(NSURL *)requestURL;
-+ (instancetype)fetcherWithURLString:(NSString *)requestURLString;
-
-// Methods for creating fetchers to continue previous fetches.
-+ (instancetype)fetcherWithDownloadResumeData:(NSData *)resumeData;
-+ (GTM_NULLABLE instancetype)fetcherWithSessionIdentifier:(NSString *)sessionIdentifier;
-
-// Returns an array of currently active fetchers for background sessions,
-// both restarted and newly created ones.
-+ (GTM_NSArrayOf(GTMSessionFetcher *) *)fetchersForBackgroundSessions;
-
-// Designated initializer.
-//
-// Applications should create fetchers with a "fetcherWith..." method on a fetcher
-// service or a class method, not with this initializer.
-//
-// The configuration should typically be nil. Applications needing to customize
-// the configuration may do so by setting the configurationBlock property.
-- (instancetype)initWithRequest:(GTM_NULLABLE NSURLRequest *)request
- configuration:(GTM_NULLABLE NSURLSessionConfiguration *)configuration;
-
-// The fetcher's request. This may not be set after beginFetch has been invoked. The request
-// may change due to redirects.
-@property(strong, GTM_NULLABLE) NSURLRequest *request;
-
-// Set a header field value on the request. Header field value changes will not
-// affect a fetch after the fetch has begun.
-- (void)setRequestValue:(GTM_NULLABLE NSString *)value forHTTPHeaderField:(NSString *)field;
-
-// The fetcher's request (deprecated.)
-//
-// Exposing a mutable object in the interface was convenient but a bad design decision due
-// to thread-safety requirements. Clients should use the request property and
-// setRequestValue:forHTTPHeaderField: instead.
-@property(atomic, readonly, GTM_NULLABLE) NSMutableURLRequest *mutableRequest
- GTMSESSION_DEPRECATE_ON_2016_SDKS("use 'request' or '-setRequestValue:forHTTPHeaderField:'");
-
-// Data used for resuming a download task.
-@property(atomic, readonly, GTM_NULLABLE) NSData *downloadResumeData;
-
-// The configuration; this must be set before the fetch begins. If no configuration is
-// set or inherited from the fetcher service, then the fetcher uses an ephemeral config.
-//
-// NOTE: This property should typically be nil. Applications needing to customize
-// the configuration should do so by setting the configurationBlock property.
-// That allows the fetcher to pick an appropriate base configuration, with the
-// application setting only the configuration properties it needs to customize.
-@property(atomic, strong, GTM_NULLABLE) NSURLSessionConfiguration *configuration;
-
-// A block the client may use to customize the configuration used to create the session.
-//
-// This is called synchronously, either on the thread that begins the fetch or, during a retry,
-// on the main thread. The configuration block may be called repeatedly if multiple fetchers are
-// created.
-//
-// The configuration block is for modifying the NSURLSessionConfiguration only.
-// DO NOT change any fetcher properties in the configuration block. Fetcher properties
-// may be set in the fetcher service prior to fetcher creation, or on the fetcher prior
-// to invoking beginFetch.
-@property(atomic, copy, GTM_NULLABLE) GTMSessionFetcherConfigurationBlock configurationBlock;
-
-// A session is created as needed by the fetcher. A fetcher service object
-// may maintain sessions for multiple fetches to the same host.
-@property(atomic, strong, GTM_NULLABLE) NSURLSession *session;
-
-// The task in flight.
-@property(atomic, readonly, GTM_NULLABLE) NSURLSessionTask *sessionTask;
-
-// The background session identifier.
-@property(atomic, readonly, GTM_NULLABLE) NSString *sessionIdentifier;
-
-// Indicates a fetcher created to finish a background session task.
-@property(atomic, readonly) BOOL wasCreatedFromBackgroundSession;
-
-// Additional user-supplied data to encode into the session identifier. Since session identifier
-// length limits are unspecified, this should be kept small. Key names beginning with an underscore
-// are reserved for use by the fetcher.
-@property(atomic, strong, GTM_NULLABLE) GTM_NSDictionaryOf(NSString *, NSString *) *sessionUserInfo;
-
-// The human-readable description to be assigned to the task.
-@property(atomic, copy, GTM_NULLABLE) NSString *taskDescription;
-
-// The priority assigned to the task, if any. Use NSURLSessionTaskPriorityLow,
-// NSURLSessionTaskPriorityDefault, or NSURLSessionTaskPriorityHigh.
-@property(atomic, assign) float taskPriority;
-
-// The fetcher encodes information used to resume a session in the session identifier.
-// This method, intended for internal use returns the encoded information. The sessionUserInfo
-// dictionary is stored as identifier metadata.
-- (GTM_NULLABLE GTM_NSDictionaryOf(NSString *, NSString *) *)sessionIdentifierMetadata;
-
-#if TARGET_OS_IPHONE && !TARGET_OS_WATCH
-// The app should pass to this method the completion handler passed in the app delegate method
-// application:handleEventsForBackgroundURLSession:completionHandler:
-+ (void)application:(UIApplication *)application
- handleEventsForBackgroundURLSession:(NSString *)identifier
- completionHandler:(GTMSessionFetcherSystemCompletionHandler)completionHandler;
-#endif
-
-// Indicate that a newly created session should be a background session.
-// A new session identifier will be created by the fetcher.
-//
-// Warning: The only thing background sessions are for is rare download
-// of huge, batched files of data. And even just for those, there's a lot
-// of pain and hackery needed to get transfers to actually happen reliably
-// with background sessions.
-//
-// Don't try to upload or download in many background sessions, since the system
-// will impose an exponentially increasing time penalty to prevent the app from
-// getting too much background execution time.
-//
-// References:
-//
-// "Moving to Fewer, Larger Transfers"
-// https://forums.developer.apple.com/thread/14853
-//
-// "NSURLSession’s Resume Rate Limiter"
-// https://forums.developer.apple.com/thread/14854
-//
-// "Background Session Task state persistence"
-// https://forums.developer.apple.com/thread/11554
-//
-@property(assign) BOOL useBackgroundSession;
-
-// Indicates if the fetcher was started using a background session.
-@property(atomic, readonly, getter=isUsingBackgroundSession) BOOL usingBackgroundSession;
-
-// Indicates if uploads should use an upload task. This is always set for file or stream-provider
-// bodies, but may be set explicitly for NSData bodies.
-@property(atomic, assign) BOOL useUploadTask;
-
-// Indicates that the fetcher is using a session that may be shared with other fetchers.
-@property(atomic, readonly) BOOL canShareSession;
-
-// By default, the fetcher allows only secure (https) schemes unless this
-// property is set, or the GTM_ALLOW_INSECURE_REQUESTS build flag is set.
-//
-// For example, during debugging when fetching from a development server that lacks SSL support,
-// this may be set to @[ @"http" ], or when the fetcher is used to retrieve local files,
-// this may be set to @[ @"file" ].
-//
-// This should be left as nil for release builds to avoid creating the opportunity for
-// leaking private user behavior and data. If a server is providing insecure URLs
-// for fetching by the client app, report the problem as server security & privacy bug.
-//
-// For builds with the iOS 9/OS X 10.11 and later SDKs, this property is required only when
-// the app specifies NSAppTransportSecurity/NSAllowsArbitraryLoads in the main bundle's Info.plist.
-@property(atomic, copy, GTM_NULLABLE) GTM_NSArrayOf(NSString *) *allowedInsecureSchemes;
-
-// By default, the fetcher prohibits localhost requests unless this property is set,
-// or the GTM_ALLOW_INSECURE_REQUESTS build flag is set.
-//
-// For localhost requests, the URL scheme is not checked when this property is set.
-//
-// For builds with the iOS 9/OS X 10.11 and later SDKs, this property is required only when
-// the app specifies NSAppTransportSecurity/NSAllowsArbitraryLoads in the main bundle's Info.plist.
-@property(atomic, assign) BOOL allowLocalhostRequest;
-
-// By default, the fetcher requires valid server certs. This may be bypassed
-// temporarily for development against a test server with an invalid cert.
-@property(atomic, assign) BOOL allowInvalidServerCertificates;
-
-// Cookie storage object for this fetcher. If nil, the fetcher will use a static cookie
-// storage instance shared among fetchers. If this fetcher was created by a fetcher service
-// object, it will be set to use the service object's cookie storage. See Cookies section above for
-// the full discussion.
-//
-// Because as of Jan 2014 standalone instances of NSHTTPCookieStorage do not actually
-// store any cookies (Radar 15735276) we use our own subclass, GTMSessionCookieStorage,
-// to hold cookies in memory.
-@property(atomic, strong, GTM_NULLABLE) NSHTTPCookieStorage *cookieStorage;
-
-// Setting the credential is optional; it is used if the connection receives
-// an authentication challenge.
-@property(atomic, strong, GTM_NULLABLE) NSURLCredential *credential;
-
-// Setting the proxy credential is optional; it is used if the connection
-// receives an authentication challenge from a proxy.
-@property(atomic, strong, GTM_NULLABLE) NSURLCredential *proxyCredential;
-
-// If body data, body file URL, or body stream provider is not set, then a GET request
-// method is assumed.
-@property(atomic, strong, GTM_NULLABLE) NSData *bodyData;
-
-// File to use as the request body. This forces use of an upload task.
-@property(atomic, strong, GTM_NULLABLE) NSURL *bodyFileURL;
-
-// Length of body to send, expected or actual.
-@property(atomic, readonly) int64_t bodyLength;
-
-// The body stream provider may be called repeatedly to provide a body.
-// Setting a body stream provider forces use of an upload task.
-@property(atomic, copy, GTM_NULLABLE) GTMSessionFetcherBodyStreamProvider bodyStreamProvider;
-
-// Object to add authorization to the request, if needed.
-//
-// This may not be changed once beginFetch has been invoked.
-@property(atomic, strong, GTM_NULLABLE) id authorizer;
-
-// The service object that created and monitors this fetcher, if any.
-@property(atomic, strong) id service;
-
-// The host, if any, used to classify this fetcher in the fetcher service.
-@property(atomic, copy, GTM_NULLABLE) NSString *serviceHost;
-
-// The priority, if any, used for starting fetchers in the fetcher service.
-//
-// Lower values are higher priority; the default is 0, and values may
-// be negative or positive. This priority affects only the start order of
-// fetchers that are being delayed by a fetcher service when the running fetchers
-// exceeds the service's maxRunningFetchersPerHost. A priority of NSIntegerMin will
-// exempt this fetcher from delay.
-@property(atomic, assign) NSInteger servicePriority;
-
-// The delegate's optional didReceiveResponse block may be used to inspect or alter
-// the session task response.
-//
-// This is called on the callback queue.
-@property(atomic, copy, GTM_NULLABLE) GTMSessionFetcherDidReceiveResponseBlock didReceiveResponseBlock;
-
-// The delegate's optional challenge block may be used to inspect or alter
-// the session task challenge.
-//
-// If this block is not set, the fetcher's default behavior for the NSURLSessionTask
-// didReceiveChallenge: delegate method is to use the fetcher's respondToChallenge: method
-// which relies on the fetcher's credential and proxyCredential properties.
-//
-// Warning: This may be called repeatedly if the challenge fails. Check
-// challenge.previousFailureCount to identify repeated invocations.
-//
-// This is called on the callback queue.
-@property(atomic, copy, GTM_NULLABLE) GTMSessionFetcherChallengeBlock challengeBlock;
-
-// The delegate's optional willRedirect block may be used to inspect or alter
-// the redirection.
-//
-// This is called on the callback queue.
-@property(atomic, copy, GTM_NULLABLE) GTMSessionFetcherWillRedirectBlock willRedirectBlock;
-
-// The optional send progress block reports body bytes uploaded.
-//
-// This is called on the callback queue.
-@property(atomic, copy, GTM_NULLABLE) GTMSessionFetcherSendProgressBlock sendProgressBlock;
-
-// The optional accumulate block may be set by clients wishing to accumulate data
-// themselves rather than let the fetcher append each buffer to an NSData.
-//
-// When this is called with nil data (such as on redirect) the client
-// should empty its accumulation buffer.
-//
-// This is called on the callback queue.
-@property(atomic, copy, GTM_NULLABLE) GTMSessionFetcherAccumulateDataBlock accumulateDataBlock;
-
-// The optional received progress block may be used to monitor data
-// received from a data task.
-//
-// This is called on the callback queue.
-@property(atomic, copy, GTM_NULLABLE) GTMSessionFetcherReceivedProgressBlock receivedProgressBlock;
-
-// The delegate's optional downloadProgress block may be used to monitor download
-// progress in writing to disk.
-//
-// This is called on the callback queue.
-@property(atomic, copy, GTM_NULLABLE) GTMSessionFetcherDownloadProgressBlock downloadProgressBlock;
-
-// The delegate's optional willCacheURLResponse block may be used to alter the cached
-// NSURLResponse. The user may prevent caching by passing nil to the block's response.
-//
-// This is called on the callback queue.
-@property(atomic, copy, GTM_NULLABLE) GTMSessionFetcherWillCacheURLResponseBlock willCacheURLResponseBlock;
-
-// Enable retrying; see comments at the top of this file. Setting
-// retryEnabled=YES resets the min and max retry intervals.
-@property(atomic, assign, getter=isRetryEnabled) BOOL retryEnabled;
-
-// Retry block is optional for retries.
-//
-// If present, this block should call the response block with YES to cause a retry or NO to end the
-// fetch.
-// See comments at the top of this file.
-@property(atomic, copy, GTM_NULLABLE) GTMSessionFetcherRetryBlock retryBlock;
-
-// Retry intervals must be strictly less than maxRetryInterval, else
-// they will be limited to maxRetryInterval and no further retries will
-// be attempted. Setting maxRetryInterval to 0.0 will reset it to the
-// default value, 60 seconds for downloads and 600 seconds for uploads.
-@property(atomic, assign) NSTimeInterval maxRetryInterval;
-
-// Starting retry interval. Setting minRetryInterval to 0.0 will reset it
-// to a random value between 1.0 and 2.0 seconds. Clients should normally not
-// set this except for unit testing.
-@property(atomic, assign) NSTimeInterval minRetryInterval;
-
-// Multiplier used to increase the interval between retries, typically 2.0.
-// Clients should not need to set this.
-@property(atomic, assign) double retryFactor;
-
-// Number of retries attempted.
-@property(atomic, readonly) NSUInteger retryCount;
-
-// Interval delay to precede next retry.
-@property(atomic, readonly) NSTimeInterval nextRetryInterval;
-
-#if GTM_BACKGROUND_TASK_FETCHING
-// Skip use of a UIBackgroundTask, thus requiring fetches to complete when the app is in the
-// foreground.
-//
-// Targets should define GTM_BACKGROUND_TASK_FETCHING to 0 to avoid use of a UIBackgroundTask
-// on iOS to allow fetches to complete in the background. This property is available when
-// it's not practical to set the preprocessor define.
-@property(atomic, assign) BOOL skipBackgroundTask;
-#endif // GTM_BACKGROUND_TASK_FETCHING
-
-// Begin fetching the request
-//
-// The delegate may optionally implement the callback or pass nil for the selector or handler.
-//
-// The delegate and all callback blocks are retained between the beginFetch call until after the
-// finish callback, or until the fetch is stopped.
-//
-// An error is passed to the callback for server statuses 300 or
-// higher, with the status stored as the error object's code.
-//
-// finishedSEL has a signature like:
-// - (void)fetcher:(GTMSessionFetcher *)fetcher
-// finishedWithData:(NSData *)data
-// error:(NSError *)error;
-//
-// If the application has specified a destinationFileURL or an accumulateDataBlock
-// for the fetcher, the data parameter passed to the callback will be nil.
-
-- (void)beginFetchWithDelegate:(GTM_NULLABLE id)delegate
- didFinishSelector:(GTM_NULLABLE SEL)finishedSEL;
-
-- (void)beginFetchWithCompletionHandler:(GTM_NULLABLE GTMSessionFetcherCompletionHandler)handler;
-
-// Returns YES if this fetcher is in the process of fetching a URL.
-@property(atomic, readonly, getter=isFetching) BOOL fetching;
-
-// Cancel the fetch of the request that's currently in progress. The completion handler
-// will not be called.
-- (void)stopFetching;
-
-// A block to be called when the fetch completes.
-@property(atomic, copy, GTM_NULLABLE) GTMSessionFetcherCompletionHandler completionHandler;
-
-// A block to be called if download resume data becomes available.
-@property(atomic, strong, GTM_NULLABLE) void (^resumeDataBlock)(NSData *);
-
-// Return the status code from the server response.
-@property(atomic, readonly) NSInteger statusCode;
-
-// Return the http headers from the response.
-@property(atomic, strong, readonly, GTM_NULLABLE) GTM_NSDictionaryOf(NSString *, NSString *) *responseHeaders;
-
-// The response, once it's been received.
-@property(atomic, strong, readonly, GTM_NULLABLE) NSURLResponse *response;
-
-// Bytes downloaded so far.
-@property(atomic, readonly) int64_t downloadedLength;
-
-// Buffer of currently-downloaded data, if available.
-@property(atomic, readonly, strong, GTM_NULLABLE) NSData *downloadedData;
-
-// Local path to which the downloaded file will be moved.
-//
-// If a file already exists at the path, it will be overwritten.
-// Will create the enclosing folders if they are not present.
-@property(atomic, strong, GTM_NULLABLE) NSURL *destinationFileURL;
-
-// The time this fetcher originally began fetching. This is useful as a time
-// barrier for ignoring irrelevant fetch notifications or callbacks.
-@property(atomic, strong, readonly, GTM_NULLABLE) NSDate *initialBeginFetchDate;
-
-// userData is retained solely for the convenience of the client.
-@property(atomic, strong, GTM_NULLABLE) id userData;
-
-// Stored property values are retained solely for the convenience of the client.
-@property(atomic, copy, GTM_NULLABLE) GTM_NSDictionaryOf(NSString *, id) *properties;
-
-- (void)setProperty:(GTM_NULLABLE id)obj forKey:(NSString *)key; // Pass nil for obj to remove the property.
-- (GTM_NULLABLE id)propertyForKey:(NSString *)key;
-
-- (void)addPropertiesFromDictionary:(GTM_NSDictionaryOf(NSString *, id) *)dict;
-
-// Comments are useful for logging, so are strongly recommended for each fetcher.
-@property(atomic, copy, GTM_NULLABLE) NSString *comment;
-
-- (void)setCommentWithFormat:(NSString *)format, ... NS_FORMAT_FUNCTION(1, 2);
-
-// Log of request and response, if logging is enabled
-@property(atomic, copy, GTM_NULLABLE) NSString *log;
-
-// Callbacks are run on this queue. If none is supplied, the main queue is used.
-@property(atomic, strong, GTM_NULL_RESETTABLE) dispatch_queue_t callbackQueue;
-
-// The queue used internally by the session to invoke its delegate methods in the fetcher.
-//
-// Application callbacks are always called by the fetcher on the callbackQueue above,
-// not on this queue. Apps should generally not change this queue.
-//
-// The default delegate queue is the main queue.
-//
-// This value is ignored after the session has been created, so this
-// property should be set in the fetcher service rather in the fetcher as it applies
-// to a shared session.
-@property(atomic, strong, GTM_NULL_RESETTABLE) NSOperationQueue *sessionDelegateQueue;
-
-// Spin the run loop or sleep the thread, discarding events, until the fetch has completed.
-//
-// This is only for use in testing or in tools without a user interface.
-//
-// Note: Synchronous fetches should never be used by shipping apps; they are
-// sufficient reason for rejection from the app store.
-//
-// Returns NO if timed out.
-- (BOOL)waitForCompletionWithTimeout:(NSTimeInterval)timeoutInSeconds;
-
-// Test block is optional for testing.
-//
-// If present, this block will cause the fetcher to skip starting the session, and instead
-// use the test block response values when calling the completion handler and delegate code.
-//
-// Test code can set this on the fetcher or on the fetcher service. For testing libraries
-// that use a fetcher without exposing either the fetcher or the fetcher service, the global
-// method setGlobalTestBlock: will set the block for all fetchers that do not have a test
-// block set.
-//
-// The test code can pass nil for all response parameters to indicate that the fetch
-// should proceed.
-//
-// Applications can exclude test block support by setting GTM_DISABLE_FETCHER_TEST_BLOCK.
-@property(atomic, copy, GTM_NULLABLE) GTMSessionFetcherTestBlock testBlock;
-
-+ (void)setGlobalTestBlock:(GTM_NULLABLE GTMSessionFetcherTestBlock)block;
-
-// When using the testBlock, |testBlockAccumulateDataChunkCount| is the desired number of chunks to
-// divide the response data into if the client has streaming enabled. The data will be divided up to
-// |testBlockAccumulateDataChunkCount| chunks; however, the exact amount may vary depending on the
-// size of the response data (e.g. a 1-byte response can only be divided into one chunk).
-@property(atomic, readwrite) NSUInteger testBlockAccumulateDataChunkCount;
-
-#if GTM_BACKGROUND_TASK_FETCHING
-// For testing or to override UIApplication invocations, apps may specify an alternative
-// target for messages to UIApplication.
-+ (void)setSubstituteUIApplication:(nullable id)substituteUIApplication;
-+ (nullable id)substituteUIApplication;
-#endif // GTM_BACKGROUND_TASK_FETCHING
-
-// Exposed for testing.
-+ (GTMSessionCookieStorage *)staticCookieStorage;
-+ (BOOL)appAllowsInsecureRequests;
-
-#if STRIP_GTM_FETCH_LOGGING
-// If logging is stripped, provide a stub for the main method
-// for controlling logging.
-+ (void)setLoggingEnabled:(BOOL)flag;
-+ (BOOL)isLoggingEnabled;
-
-#else
-
-// These methods let an application log specific body text, such as the text description of a binary
-// request or response. The application should set the fetcher to defer response body logging until
-// the response has been received and the log response body has been set by the app. For example:
-//
-// fetcher.logRequestBody = [binaryObject stringDescription];
-// fetcher.deferResponseBodyLogging = YES;
-// [fetcher beginFetchWithCompletionHandler:^(NSData *data, NSError *error) {
-// if (error == nil) {
-// fetcher.logResponseBody = [[[MyThing alloc] initWithData:data] stringDescription];
-// }
-// fetcher.deferResponseBodyLogging = NO;
-// }];
-
-@property(atomic, copy, GTM_NULLABLE) NSString *logRequestBody;
-@property(atomic, assign) BOOL deferResponseBodyLogging;
-@property(atomic, copy, GTM_NULLABLE) NSString *logResponseBody;
-
-// Internal logging support.
-@property(atomic, readonly) NSData *loggedStreamData;
-@property(atomic, assign) BOOL hasLoggedError;
-@property(atomic, strong, GTM_NULLABLE) NSURL *redirectedFromURL;
-- (void)appendLoggedStreamData:(NSData *)dataToAdd;
-- (void)clearLoggedStreamData;
-
-#endif // STRIP_GTM_FETCH_LOGGING
-
-@end
-
-@interface GTMSessionFetcher (BackwardsCompatibilityOnly)
-// Clients using GTMSessionFetcher should set the cookie storage explicitly themselves.
-// This method is just for compatibility with the old GTMHTTPFetcher class.
-- (void)setCookieStorageMethod:(NSInteger)method;
-@end
-
-// Until we can just instantiate NSHTTPCookieStorage for local use, we'll
-// implement all the public methods ourselves. This stores cookies only in
-// memory. Additional methods are provided for testing.
-//
-// iOS 9/OS X 10.11 added +[NSHTTPCookieStorage sharedCookieStorageForGroupContainerIdentifier:]
-// which may also be used to create cookie storage.
-@interface GTMSessionCookieStorage : NSHTTPCookieStorage
-
-// Add the array off cookies to the storage, replacing duplicates.
-// Also removes expired cookies from the storage.
-- (void)setCookies:(GTM_NULLABLE GTM_NSArrayOf(NSHTTPCookie *) *)cookies;
-
-- (void)removeAllCookies;
-
-@end
-
-// Macros to monitor synchronization blocks in debug builds.
-// These report problems using GTMSessionCheckDebug.
-//
-// GTMSessionMonitorSynchronized Start monitoring a top-level-only
-// @sync scope.
-// GTMSessionMonitorRecursiveSynchronized Start monitoring a top-level or
-// recursive @sync scope.
-// GTMSessionCheckSynchronized Verify that the current execution
-// is inside a @sync scope.
-// GTMSessionCheckNotSynchronized Verify that the current execution
-// is not inside a @sync scope.
-//
-// Example usage:
-//
-// - (void)myExternalMethod {
-// @synchronized(self) {
-// GTMSessionMonitorSynchronized(self)
-//
-// - (void)myInternalMethod {
-// GTMSessionCheckSynchronized(self);
-//
-// - (void)callMyCallbacks {
-// GTMSessionCheckNotSynchronized(self);
-//
-// GTMSessionCheckNotSynchronized is available for verifying the code isn't
-// in a deadlockable @sync state when posting notifications and invoking
-// callbacks. Don't use GTMSessionCheckNotSynchronized immediately before a
-// @sync scope; the normal recursiveness check of GTMSessionMonitorSynchronized
-// can catch those.
-
-#ifdef __OBJC__
-#if DEBUG
- #define __GTMSessionMonitorSynchronizedVariableInner(varname, counter) \
- varname ## counter
- #define __GTMSessionMonitorSynchronizedVariable(varname, counter) \
- __GTMSessionMonitorSynchronizedVariableInner(varname, counter)
-
- #define GTMSessionMonitorSynchronized(obj) \
- NS_VALID_UNTIL_END_OF_SCOPE id \
- __GTMSessionMonitorSynchronizedVariable(__monitor, __COUNTER__) = \
- [[GTMSessionSyncMonitorInternal alloc] initWithSynchronizationObject:obj \
- allowRecursive:NO \
- functionName:__func__]
-
- #define GTMSessionMonitorRecursiveSynchronized(obj) \
- NS_VALID_UNTIL_END_OF_SCOPE id \
- __GTMSessionMonitorSynchronizedVariable(__monitor, __COUNTER__) = \
- [[GTMSessionSyncMonitorInternal alloc] initWithSynchronizationObject:obj \
- allowRecursive:YES \
- functionName:__func__]
-
- #define GTMSessionCheckSynchronized(obj) { \
- GTMSESSION_ASSERT_DEBUG( \
- [GTMSessionSyncMonitorInternal functionsHoldingSynchronizationOnObject:obj], \
- @"GTMSessionCheckSynchronized(" #obj ") failed: not sync'd" \
- @" on " #obj " in %s. Call stack:\n%@", \
- __func__, [NSThread callStackSymbols]); \
- }
-
- #define GTMSessionCheckNotSynchronized(obj) { \
- GTMSESSION_ASSERT_DEBUG( \
- ![GTMSessionSyncMonitorInternal functionsHoldingSynchronizationOnObject:obj], \
- @"GTMSessionCheckNotSynchronized(" #obj ") failed: was sync'd" \
- @" on " #obj " in %s by %@. Call stack:\n%@", __func__, \
- [GTMSessionSyncMonitorInternal functionsHoldingSynchronizationOnObject:obj], \
- [NSThread callStackSymbols]); \
- }
-
-// GTMSessionSyncMonitorInternal is a private class that keeps track of the
-// beginning and end of synchronized scopes.
-//
-// This class should not be used directly, but only via the
-// GTMSessionMonitorSynchronized macro.
-@interface GTMSessionSyncMonitorInternal : NSObject
-- (instancetype)initWithSynchronizationObject:(id)object
- allowRecursive:(BOOL)allowRecursive
- functionName:(const char *)functionName;
-// Return the names of the functions that hold sync on the object, or nil if none.
-+ (NSArray *)functionsHoldingSynchronizationOnObject:(id)object;
-@end
-
-#else
- #define GTMSessionMonitorSynchronized(obj) do { } while (0)
- #define GTMSessionMonitorRecursiveSynchronized(obj) do { } while (0)
- #define GTMSessionCheckSynchronized(obj) do { } while (0)
- #define GTMSessionCheckNotSynchronized(obj) do { } while (0)
-#endif // !DEBUG
-#endif // __OBJC__
-
-
-GTM_ASSUME_NONNULL_END
diff --git a/src/ios/Firebase/Auth/GTMSessionFetcher.framework/Headers/GTMSessionFetcherLogging.h b/src/ios/Firebase/Auth/GTMSessionFetcher.framework/Headers/GTMSessionFetcherLogging.h
deleted file mode 100644
index 5ccea78e5..000000000
--- a/src/ios/Firebase/Auth/GTMSessionFetcher.framework/Headers/GTMSessionFetcherLogging.h
+++ /dev/null
@@ -1,112 +0,0 @@
-/* Copyright 2014 Google Inc. All rights reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#import "GTMSessionFetcher.h"
-
-// GTM HTTP Logging
-//
-// All traffic using GTMSessionFetcher can be easily logged. Call
-//
-// [GTMSessionFetcher setLoggingEnabled:YES];
-//
-// to begin generating log files.
-//
-// Unless explicitly set by the application using +setLoggingDirectory:,
-// logs are put into a default directory, located at:
-// * macOS: ~/Desktop/GTMHTTPDebugLogs
-// * iOS simulator: ~/GTMHTTPDebugLogs (in application sandbox)
-// * iOS device: ~/Documents/GTMHTTPDebugLogs (in application sandbox)
-//
-// Tip: use the Finder's "Sort By Date" to find the most recent logs.
-//
-// Each run of an application gets a separate set of log files. An html
-// file is generated to simplify browsing the run's http transactions.
-// The html file includes javascript links for inline viewing of uploaded
-// and downloaded data.
-//
-// A symlink is created in the logs folder to simplify finding the html file
-// for the latest run of the application; the symlink is called
-//
-// AppName_http_log_newest.html
-//
-// For better viewing of XML logs, use Camino or Firefox rather than Safari.
-//
-// Each fetcher may be given a comment to be inserted as a label in the logs,
-// such as
-// [fetcher setCommentWithFormat:@"retrieve item %@", itemName];
-//
-// Projects may define STRIP_GTM_FETCH_LOGGING to remove logging code.
-
-#if !STRIP_GTM_FETCH_LOGGING
-
-@interface GTMSessionFetcher (GTMSessionFetcherLogging)
-
-// Note: on macOS the default logs directory is ~/Desktop/GTMHTTPDebugLogs; on
-// iOS simulators it will be the ~/GTMHTTPDebugLogs (in the app sandbox); on
-// iOS devices it will be in ~/Documents/GTMHTTPDebugLogs (in the app sandbox).
-// These directories will be created as needed, and are excluded from backups
-// to iCloud and iTunes.
-//
-// If a custom directory is set, the directory should already exist. It is
-// the application's responsibility to exclude any custom directory from
-// backups, if desired.
-+ (void)setLoggingDirectory:(NSString *)path;
-+ (NSString *)loggingDirectory;
-
-// client apps can turn logging on and off
-+ (void)setLoggingEnabled:(BOOL)isLoggingEnabled;
-+ (BOOL)isLoggingEnabled;
-
-// client apps can turn off logging to a file if they want to only check
-// the fetcher's log property
-+ (void)setLoggingToFileEnabled:(BOOL)isLoggingToFileEnabled;
-+ (BOOL)isLoggingToFileEnabled;
-
-// client apps can optionally specify process name and date string used in
-// log file names
-+ (void)setLoggingProcessName:(NSString *)processName;
-+ (NSString *)loggingProcessName;
-
-+ (void)setLoggingDateStamp:(NSString *)dateStamp;
-+ (NSString *)loggingDateStamp;
-
-// client apps can specify the directory for the log for this specific run,
-// typically to match the directory used by another fetcher class, like:
-//
-// [GTMSessionFetcher setLogDirectoryForCurrentRun:[GTMHTTPFetcher logDirectoryForCurrentRun]];
-//
-// Setting this overrides the logging directory, process name, and date stamp when writing
-// the log file.
-+ (void)setLogDirectoryForCurrentRun:(NSString *)logDirectoryForCurrentRun;
-+ (NSString *)logDirectoryForCurrentRun;
-
-// Prunes old log directories that have not been modified since the provided date.
-// This will not delete the current run's log directory.
-+ (void)deleteLogDirectoriesOlderThanDate:(NSDate *)date;
-
-// internal; called by fetcher
-- (void)logFetchWithError:(NSError *)error;
-- (NSInputStream *)loggedInputStreamForInputStream:(NSInputStream *)inputStream;
-- (GTMSessionFetcherBodyStreamProvider)loggedStreamProviderForStreamProvider:
- (GTMSessionFetcherBodyStreamProvider)streamProvider;
-
-// internal; accessors useful for viewing logs
-+ (NSString *)processNameLogPrefix;
-+ (NSString *)symlinkNameSuffix;
-+ (NSString *)htmlFileName;
-
-@end
-
-#endif // !STRIP_GTM_FETCH_LOGGING
diff --git a/src/ios/Firebase/Auth/GTMSessionFetcher.framework/Headers/GTMSessionFetcherService.h b/src/ios/Firebase/Auth/GTMSessionFetcher.framework/Headers/GTMSessionFetcherService.h
deleted file mode 100644
index a696ac7e4..000000000
--- a/src/ios/Firebase/Auth/GTMSessionFetcher.framework/Headers/GTMSessionFetcherService.h
+++ /dev/null
@@ -1,190 +0,0 @@
-/* Copyright 2014 Google Inc. All rights reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-// For best performance and convenient usage, fetchers should be generated by a common
-// GTMSessionFetcherService instance, like
-//
-// _fetcherService = [[GTMSessionFetcherService alloc] init];
-// GTMSessionFetcher* myFirstFetcher = [_fetcherService fetcherWithRequest:request1];
-// GTMSessionFetcher* mySecondFetcher = [_fetcherService fetcherWithRequest:request2];
-
-#import "GTMSessionFetcher.h"
-
-GTM_ASSUME_NONNULL_BEGIN
-
-// Notifications.
-
-// This notification indicates a reusable session has become invalid. It is intended mainly for the
-// service's unit tests.
-//
-// The notification object is the fetcher service.
-// The invalid session is provided via the userInfo kGTMSessionFetcherServiceSessionKey key.
-extern NSString *const kGTMSessionFetcherServiceSessionBecameInvalidNotification;
-extern NSString *const kGTMSessionFetcherServiceSessionKey;
-
-@interface GTMSessionFetcherService : NSObject
-
-// Queues of delayed and running fetchers. Each dictionary contains arrays
-// of GTMSessionFetcher *fetchers, keyed by NSString *host
-@property(atomic, strong, readonly, GTM_NULLABLE) GTM_NSDictionaryOf(NSString *, NSArray *) *delayedFetchersByHost;
-@property(atomic, strong, readonly, GTM_NULLABLE) GTM_NSDictionaryOf(NSString *, NSArray *) *runningFetchersByHost;
-
-// A max value of 0 means no fetchers should be delayed.
-// The default limit is 10 simultaneous fetchers targeting each host.
-// This does not apply to fetchers whose useBackgroundSession property is YES. Since services are
-// not resurrected on an app relaunch, delayed fetchers would effectively be abandoned.
-@property(atomic, assign) NSUInteger maxRunningFetchersPerHost;
-
-// Properties to be applied to each fetcher; see GTMSessionFetcher.h for descriptions
-@property(atomic, strong, GTM_NULLABLE) NSURLSessionConfiguration *configuration;
-@property(atomic, copy, GTM_NULLABLE) GTMSessionFetcherConfigurationBlock configurationBlock;
-@property(atomic, strong, GTM_NULLABLE) NSHTTPCookieStorage *cookieStorage;
-@property(atomic, strong, GTM_NULL_RESETTABLE) dispatch_queue_t callbackQueue;
-@property(atomic, copy, GTM_NULLABLE) GTMSessionFetcherChallengeBlock challengeBlock;
-@property(atomic, strong, GTM_NULLABLE) NSURLCredential *credential;
-@property(atomic, strong) NSURLCredential *proxyCredential;
-@property(atomic, copy, GTM_NULLABLE) GTM_NSArrayOf(NSString *) *allowedInsecureSchemes;
-@property(atomic, assign) BOOL allowLocalhostRequest;
-@property(atomic, assign) BOOL allowInvalidServerCertificates;
-@property(atomic, assign, getter=isRetryEnabled) BOOL retryEnabled;
-@property(atomic, copy, GTM_NULLABLE) GTMSessionFetcherRetryBlock retryBlock;
-@property(atomic, assign) NSTimeInterval maxRetryInterval;
-@property(atomic, assign) NSTimeInterval minRetryInterval;
-@property(atomic, copy, GTM_NULLABLE) GTM_NSDictionaryOf(NSString *, id) *properties;
-
-#if GTM_BACKGROUND_TASK_FETCHING
-@property(atomic, assign) BOOL skipBackgroundTask;
-#endif
-
-// A default useragent of GTMFetcherStandardUserAgentString(nil) will be given to each fetcher
-// created by this service unless the request already has a user-agent header set.
-// This default will be added starting with builds with the SDKs for OS X 10.11 and iOS 9.
-//
-// To use the configuration's default user agent, set this property to nil.
-@property(atomic, copy, GTM_NULLABLE) NSString *userAgent;
-
-// The authorizer to attach to the created fetchers. If a specific fetcher should
-// not authorize its requests, the fetcher's authorizer property may be set to nil
-// before the fetch begins.
-@property(atomic, strong, GTM_NULLABLE) id authorizer;
-
-// Delegate queue used by the session when calling back to the fetcher. The default
-// is the main queue. Changing this does not affect the queue used to call back to the
-// application; that is specified by the callbackQueue property above.
-@property(atomic, strong, GTM_NULL_RESETTABLE) NSOperationQueue *sessionDelegateQueue;
-
-// When enabled, indicates the same session should be used by subsequent fetchers.
-//
-// This is enabled by default.
-@property(atomic, assign) BOOL reuseSession;
-
-// Sets the delay until an unused session is invalidated.
-// The default interval is 60 seconds.
-//
-// If the interval is set to 0, then any reused session is not invalidated except by
-// explicitly invoking -resetSession. Be aware that setting the interval to 0 thus
-// causes the session's delegate to be retained until the session is explicitly reset.
-@property(atomic, assign) NSTimeInterval unusedSessionTimeout;
-
-// If shouldReuseSession is enabled, this will force creation of a new session when future
-// fetchers begin.
-- (void)resetSession;
-
-// Create a fetcher
-//
-// These methods will return a fetcher. If successfully created, the connection
-// will hold a strong reference to it for the life of the connection as well.
-// So the caller doesn't have to hold onto the fetcher explicitly unless they
-// want to be able to monitor or cancel it.
-- (GTMSessionFetcher *)fetcherWithRequest:(NSURLRequest *)request;
-- (GTMSessionFetcher *)fetcherWithURL:(NSURL *)requestURL;
-- (GTMSessionFetcher *)fetcherWithURLString:(NSString *)requestURLString;
-
-// Common method for fetcher creation.
-//
-// -fetcherWithRequest:fetcherClass: may be overridden to customize creation of
-// fetchers. This is the ONLY method in the GTMSessionFetcher library intended to
-// be overridden.
-- (id)fetcherWithRequest:(NSURLRequest *)request
- fetcherClass:(Class)fetcherClass;
-
-- (BOOL)isDelayingFetcher:(GTMSessionFetcher *)fetcher;
-
-- (NSUInteger)numberOfFetchers; // running + delayed fetchers
-- (NSUInteger)numberOfRunningFetchers;
-- (NSUInteger)numberOfDelayedFetchers;
-
-// Return a list of all running or delayed fetchers. This includes fetchers created
-// by the service which have been started and have not yet stopped.
-//
-// Returns an array of fetcher objects, or nil if none.
-- (GTM_NULLABLE GTM_NSArrayOf(GTMSessionFetcher *) *)issuedFetchers;
-
-// Search for running or delayed fetchers with the specified URL.
-//
-// Returns an array of fetcher objects found, or nil if none found.
-- (GTM_NULLABLE GTM_NSArrayOf(GTMSessionFetcher *) *)issuedFetchersWithRequestURL:(NSURL *)requestURL;
-
-- (void)stopAllFetchers;
-
-// Methods for use by the fetcher class only.
-- (GTM_NULLABLE NSURLSession *)session;
-- (GTM_NULLABLE NSURLSession *)sessionForFetcherCreation;
-- (GTM_NULLABLE id)sessionDelegate;
-- (GTM_NULLABLE NSDate *)stoppedAllFetchersDate;
-
-// The testBlock can inspect its fetcher parameter's request property to
-// determine which fetcher is being faked.
-@property(atomic, copy, GTM_NULLABLE) GTMSessionFetcherTestBlock testBlock;
-
-@end
-
-@interface GTMSessionFetcherService (TestingSupport)
-
-// Convenience method to create a fetcher service for testing.
-//
-// Fetchers generated by this mock fetcher service will not perform any
-// network operation, but will invoke callbacks and provide the supplied data
-// or error to the completion handler.
-//
-// You can make more customized mocks by setting the test block property of the service
-// or fetcher; the test block can inspect the fetcher's request or other properties.
-//
-// See the description of the testBlock property below.
-+ (instancetype)mockFetcherServiceWithFakedData:(GTM_NULLABLE NSData *)fakedDataOrNil
- fakedError:(GTM_NULLABLE NSError *)fakedErrorOrNil;
-
-// Spin the run loop and discard events (or, if not on the main thread, just sleep the thread)
-// until all running and delayed fetchers have completed.
-//
-// This is only for use in testing or in tools without a user interface.
-//
-// Synchronous fetches should never be done by shipping apps; they are
-// sufficient reason for rejection from the app store.
-//
-// Returns NO if timed out.
-- (BOOL)waitForCompletionOfAllFetchersWithTimeout:(NSTimeInterval)timeoutInSeconds;
-
-@end
-
-@interface GTMSessionFetcherService (BackwardsCompatibilityOnly)
-
-// Clients using GTMSessionFetcher should set the cookie storage explicitly themselves.
-// This method is just for compatibility with the old fetcher.
-@property(atomic, assign) NSInteger cookieStorageMethod;
-
-@end
-
-GTM_ASSUME_NONNULL_END
diff --git a/src/ios/Firebase/Auth/GTMSessionFetcher.framework/Headers/GTMSessionUploadFetcher.h b/src/ios/Firebase/Auth/GTMSessionFetcher.framework/Headers/GTMSessionUploadFetcher.h
deleted file mode 100644
index a098ce9bf..000000000
--- a/src/ios/Firebase/Auth/GTMSessionFetcher.framework/Headers/GTMSessionUploadFetcher.h
+++ /dev/null
@@ -1,166 +0,0 @@
-/* Copyright 2014 Google Inc. All rights reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-// GTMSessionUploadFetcher implements Google's resumable upload protocol.
-
-//
-// This subclass of GTMSessionFetcher simulates the series of fetches
-// needed for chunked upload as a single fetch operation.
-//
-// Protocol document: TBD
-//
-// To the client, the only fetcher that exists is this class; the subsidiary
-// fetchers needed for uploading chunks are not visible (though the most recent
-// chunk fetcher may be accessed via the -activeFetcher or -chunkFetcher methods, and
-// -responseHeaders and -statusCode reflect results from the most recent chunk
-// fetcher.)
-//
-// Chunk fetchers are discarded as soon as they have completed.
-//
-// The protocol also allows for a cancellation notification request to be sent to the
-// server to allow discarding of the currently uploaded data and this will be sent
-// automatically upon calling stopFetching if the upload has already started.
-//
-// Note: Unlike the fetcher superclass, the methods of GTMSessionUploadFetcher should
-// only be used from the main thread until further work is done to make this subclass
-// thread-safe.
-
-#import "GTMSessionFetcher.h"
-#import "GTMSessionFetcherService.h"
-
-GTM_ASSUME_NONNULL_BEGIN
-
-// The value to use for file size parameters when the file size is not yet known.
-extern int64_t const kGTMSessionUploadFetcherUnknownFileSize;
-
-// Unless an application knows it needs a smaller chunk size, it should use the standard
-// chunk size, which sends the entire file as a single chunk to minimize upload overhead.
-// Setting an explicit chunk size that comfortably fits in memory is advisable for large
-// uploads.
-extern int64_t const kGTMSessionUploadFetcherStandardChunkSize;
-
-// When uploading requires data buffer allocations (such as uploading from an NSData or
-// an NSFileHandle) this is the maximum buffer size that will be created by the fetcher.
-extern int64_t const kGTMSessionUploadFetcherMaximumDemandBufferSize;
-
-// Notification that the upload location URL was provided by the server.
-extern NSString *const kGTMSessionFetcherUploadLocationObtainedNotification;
-
-// Block to provide data during uploads.
-//
-// Response data may be allocated with dataWithBytesNoCopy:length:freeWhenDone: for efficiency,
-// and released after the response block returns.
-//
-// If the length of the file being uploaded is unknown or already set, send
-// kGTMSessionUploadFetcherUnknownFileSize for |fullUploadLength|. Otherwise, set |fullUploadLength|
-// to its proper value.
-//
-// Pass nil as the data (and optionally an NSError) for a failure.
-typedef void (^GTMSessionUploadFetcherDataProviderResponse)(NSData * GTM_NULLABLE_TYPE data,
- int64_t fullUploadLength,
- NSError * GTM_NULLABLE_TYPE error);
-// Do not call the response with an NSData object with less data than the requested length unless
-// you are passing the fullUploadLength to the fetcher for the first time and it is the last chunk
-// of data in the file being uploaded.
-typedef void (^GTMSessionUploadFetcherDataProvider)(int64_t offset, int64_t length,
- GTMSessionUploadFetcherDataProviderResponse response);
-
-// Block to be notified about the final status of the cancellation request started in stopFetching.
-//
-// |fetcher| will be the cancel request that was sent to the server, or nil if stopFetching is not
-// going to send a cancel request. If |fetcher| is provided, the other parameters correspond to the
-// completion handler of the cancellation request fetcher.
-typedef void (^GTMSessionUploadFetcherCancellationHandler)(
- GTMSessionFetcher * GTM_NULLABLE_TYPE fetcher,
- NSData * GTM_NULLABLE_TYPE data,
- NSError * GTM_NULLABLE_TYPE error);
-
-@interface GTMSessionUploadFetcher : GTMSessionFetcher
-
-// Create an upload fetcher specifying either the request or the resume location URL,
-// then set an upload data source using one of these:
-//
-// setUploadFileURL:
-// setUploadDataLength:provider:
-// setUploadFileHandle:
-// setUploadData:
-
-+ (instancetype)uploadFetcherWithRequest:(NSURLRequest *)request
- uploadMIMEType:(NSString *)uploadMIMEType
- chunkSize:(int64_t)chunkSize
- fetcherService:(GTM_NULLABLE GTMSessionFetcherService *)fetcherServiceOrNil;
-
-+ (instancetype)uploadFetcherWithLocation:(NSURL * GTM_NULLABLE_TYPE)uploadLocationURL
- uploadMIMEType:(NSString *)uploadMIMEType
- chunkSize:(int64_t)chunkSize
- fetcherService:(GTM_NULLABLE GTMSessionFetcherService *)fetcherServiceOrNil;
-
-// Allows dataProviders for files of unknown length. Pass kGTMSessionUploadFetcherUnknownFileSize as
-// |fullLength| if the length is unknown.
-- (void)setUploadDataLength:(int64_t)fullLength
- provider:(GTM_NULLABLE GTMSessionUploadFetcherDataProvider)block;
-
-+ (NSArray *)uploadFetchersForBackgroundSessions;
-+ (GTM_NULLABLE instancetype)uploadFetcherForSessionIdentifier:(NSString *)sessionIdentifier;
-
-- (void)pauseFetching;
-- (void)resumeFetching;
-- (BOOL)isPaused;
-
-@property(atomic, strong, GTM_NULLABLE) NSURL *uploadLocationURL;
-@property(atomic, strong, GTM_NULLABLE) NSData *uploadData;
-@property(atomic, strong, GTM_NULLABLE) NSURL *uploadFileURL;
-@property(atomic, strong, GTM_NULLABLE) NSFileHandle *uploadFileHandle;
-@property(atomic, copy, readonly, GTM_NULLABLE) GTMSessionUploadFetcherDataProvider uploadDataProvider;
-@property(atomic, copy) NSString *uploadMIMEType;
-@property(atomic, assign) int64_t chunkSize;
-@property(atomic, readonly, assign) int64_t currentOffset;
-
-// The fetcher for the current data chunk, if any
-@property(atomic, strong, GTM_NULLABLE) GTMSessionFetcher *chunkFetcher;
-
-// The active fetcher is the current chunk fetcher, or the upload fetcher itself
-// if no chunk fetcher has yet been created.
-@property(atomic, readonly) GTMSessionFetcher *activeFetcher;
-
-// The last request made by an active fetcher. Useful for testing.
-@property(atomic, readonly, GTM_NULLABLE) NSURLRequest *lastChunkRequest;
-
-// The status code from the most recently-completed fetch.
-@property(atomic, assign) NSInteger statusCode;
-
-// Invoked as part of the stop fetching process. Invoked immediately if there is no upload in
-// progress, otherwise invoked with the results of the attempt to notify the server that the
-// upload will not continue.
-//
-// Unlike other callbacks, since this is related specifically to the stopFetching flow it is not
-// cleared by stopFetching. It will instead clear itself after it is invoked or if the completion
-// has occured before stopFetching is called.
-@property(atomic, copy, GTM_NULLABLE) GTMSessionUploadFetcherCancellationHandler
- cancellationHandler;
-
-// Exposed for testing only.
-@property(atomic, readonly, GTM_NULLABLE) dispatch_queue_t delegateCallbackQueue;
-@property(atomic, readonly, GTM_NULLABLE) GTMSessionFetcherCompletionHandler delegateCompletionHandler;
-
-@end
-
-@interface GTMSessionFetcher (GTMSessionUploadFetcherMethods)
-
-@property(readonly, GTM_NULLABLE) GTMSessionUploadFetcher *parentUploadFetcher;
-
-@end
-
-GTM_ASSUME_NONNULL_END
diff --git a/src/ios/Firebase/Auth/GTMSessionFetcher.framework/Modules/module.modulemap b/src/ios/Firebase/Auth/GTMSessionFetcher.framework/Modules/module.modulemap
deleted file mode 100644
index a0449c56d..000000000
--- a/src/ios/Firebase/Auth/GTMSessionFetcher.framework/Modules/module.modulemap
+++ /dev/null
@@ -1,6 +0,0 @@
-framework module GTMSessionFetcher {
- umbrella header "GTMSessionFetcher.h"
- export *
- module * { export *}
- link framework "Security"
-}
diff --git a/src/ios/Firebase/Firebase.h b/src/ios/Firebase/Firebase.h
deleted file mode 100644
index 6461547d8..000000000
--- a/src/ios/Firebase/Firebase.h
+++ /dev/null
@@ -1,105 +0,0 @@
-#import
-
-#if !defined(__has_include)
- #error "Firebase.h won't import anything if your compiler doesn't support __has_include. Please \
- import the headers individually."
-#else
- #if __has_include()
- #import
- #else
- #ifndef FIREBASE_ANALYTICS_SUPPRESS_WARNING
- #warning "FirebaseAnalytics.framework is not included in your target. Please add \
-`Firebase/Core` to your Podfile or add FirebaseAnalytics.framework to your project to ensure \
-Firebase services work as intended."
- #endif // #ifndef FIREBASE_ANALYTICS_SUPPRESS_WARNING
- #endif
-
- #if __has_include()
- #import
- #endif
-
- #if __has_include()
- #import
- #endif
-
- #if __has_include()
- #import
- #endif
-
- #if __has_include()
- #import
- #endif
-
- #if __has_include()
- #import
- #endif
-
- #if __has_include()
- #import
- #endif
-
- #if __has_include()
- #import
- #endif
-
- #if __has_include()
- #import
- #endif
-
- #if __has_include()
- #import
- #endif
-
- #if __has_include()
- #import
- #endif
-
- #if __has_include()
- #import
- #endif
-
- #if __has_include()
- #import
- #endif
-
- #if __has_include()
- #import
- #endif
-
- #if __has_include()
- #import
- #endif
-
- #if __has_include()
- #import
- #endif
-
- #if __has_include()
- #import
- #endif
-
- #if __has_include()
- #import
- #endif
-
- #if __has_include()
- #import
- #endif
-
- #if __has_include()
- #import
- #endif
-
- #if __has_include()
- #import
- #endif
-
- #if __has_include()
- #import
- #endif
-
- #if __has_include()
- #import
- #endif
-
-#endif // defined(__has_include)
diff --git a/src/ios/Firebase/Messaging/FirebaseMessaging.framework/FirebaseMessaging b/src/ios/Firebase/Messaging/FirebaseMessaging.framework/FirebaseMessaging
deleted file mode 100644
index fb7ee7636..000000000
Binary files a/src/ios/Firebase/Messaging/FirebaseMessaging.framework/FirebaseMessaging and /dev/null differ
diff --git a/src/ios/Firebase/Messaging/FirebaseMessaging.framework/Headers/FIRMessaging.h b/src/ios/Firebase/Messaging/FirebaseMessaging.framework/Headers/FIRMessaging.h
deleted file mode 100644
index e58a216c2..000000000
--- a/src/ios/Firebase/Messaging/FirebaseMessaging.framework/Headers/FIRMessaging.h
+++ /dev/null
@@ -1,527 +0,0 @@
-/*
- * Copyright 2017 Google
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#import
-
-NS_ASSUME_NONNULL_BEGIN
-
-/**
- * @related FIRMessaging
- *
- * The completion handler invoked when the registration token returns.
- * If the call fails we return the appropriate `error code`, described by
- * `FIRMessagingError`.
- *
- * @param FCMToken The valid registration token returned by FCM.
- * @param error The error describing why a token request failed. The error code
- * will match a value from the FIRMessagingError enumeration.
- */
-typedef void(^FIRMessagingFCMTokenFetchCompletion)(NSString * _Nullable FCMToken,
- NSError * _Nullable error)
- NS_SWIFT_NAME(MessagingFCMTokenFetchCompletion);
-
-
-/**
- * @related FIRMessaging
- *
- * The completion handler invoked when the registration token deletion request is
- * completed. If the call fails we return the appropriate `error code`, described
- * by `FIRMessagingError`.
- *
- * @param error The error describing why a token deletion failed. The error code
- * will match a value from the FIRMessagingError enumeration.
- */
-typedef void(^FIRMessagingDeleteFCMTokenCompletion)(NSError * _Nullable error)
- NS_SWIFT_NAME(MessagingDeleteFCMTokenCompletion);
-
-/**
- * Callback to invoke once the HTTP call to FIRMessaging backend for updating
- * subscription finishes.
- *
- * @param error The error which occurred while updating the subscription topic
- * on the FIRMessaging server. This will be nil in case the operation
- * was successful, or if the operation was cancelled.
- */
-typedef void (^FIRMessagingTopicOperationCompletion)(NSError *_Nullable error);
-
-/**
- * The completion handler invoked once the data connection with FIRMessaging is
- * established. The data connection is used to send a continous stream of
- * data and all the FIRMessaging data notifications arrive through this connection.
- * Once the connection is established we invoke the callback with `nil` error.
- * Correspondingly if we get an error while trying to establish a connection
- * we invoke the handler with an appropriate error object and do an
- * exponential backoff to try and connect again unless successful.
- *
- * @param error The error object if any describing why the data connection
- * to FIRMessaging failed.
- */
-typedef void(^FIRMessagingConnectCompletion)(NSError * __nullable error)
- NS_SWIFT_NAME(MessagingConnectCompletion)
- __deprecated_msg("Please listen for the FIRMessagingConnectionStateChangedNotification "
- "NSNotification instead.");
-
-#if defined(__IPHONE_10_0) && __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_10_0
-/**
- * Notification sent when the upstream message has been delivered
- * successfully to the server. The notification object will be the messageID
- * of the successfully delivered message.
- */
-FOUNDATION_EXPORT const NSNotificationName FIRMessagingSendSuccessNotification
- NS_SWIFT_NAME(MessagingSendSuccess);
-
-/**
- * Notification sent when the upstream message was failed to be sent to the
- * server. The notification object will be the messageID of the failed
- * message. The userInfo dictionary will contain the relevant error
- * information for the failure.
- */
-FOUNDATION_EXPORT const NSNotificationName FIRMessagingSendErrorNotification
- NS_SWIFT_NAME(MessagingSendError);
-
-/**
- * Notification sent when the Firebase messaging server deletes pending
- * messages due to exceeded storage limits. This may occur, for example, when
- * the device cannot be reached for an extended period of time.
- *
- * It is recommended to retrieve any missing messages directly from the
- * server.
- */
-FOUNDATION_EXPORT const NSNotificationName FIRMessagingMessagesDeletedNotification
- NS_SWIFT_NAME(MessagingMessagesDeleted);
-
-/**
- * Notification sent when Firebase Messaging establishes or disconnects from
- * an FCM socket connection. You can query the connection state in this
- * notification by checking the `isDirectChannelEstablished` property of FIRMessaging.
- */
-FOUNDATION_EXPORT const NSNotificationName FIRMessagingConnectionStateChangedNotification
- NS_SWIFT_NAME(MessagingConnectionStateChanged);
-
-/**
- * Notification sent when the FCM registration token has been refreshed. Please use the
- * FIRMessaging delegate method `messaging:didReceiveRegistrationToken:` to receive current and
- * updated tokens.
- */
-FOUNDATION_EXPORT const NSNotificationName
- FIRMessagingRegistrationTokenRefreshedNotification
- NS_SWIFT_NAME(MessagingRegistrationTokenRefreshed);
-#else
-/**
- * Notification sent when the upstream message has been delivered
- * successfully to the server. The notification object will be the messageID
- * of the successfully delivered message.
- */
-FOUNDATION_EXPORT NSString *const FIRMessagingSendSuccessNotification
- NS_SWIFT_NAME(MessagingSendSuccessNotification);
-
-/**
- * Notification sent when the upstream message was failed to be sent to the
- * server. The notification object will be the messageID of the failed
- * message. The userInfo dictionary will contain the relevant error
- * information for the failure.
- */
-FOUNDATION_EXPORT NSString *const FIRMessagingSendErrorNotification
- NS_SWIFT_NAME(MessagingSendErrorNotification);
-
-/**
- * Notification sent when the Firebase messaging server deletes pending
- * messages due to exceeded storage limits. This may occur, for example, when
- * the device cannot be reached for an extended period of time.
- *
- * It is recommended to retrieve any missing messages directly from the
- * server.
- */
-FOUNDATION_EXPORT NSString *const FIRMessagingMessagesDeletedNotification
- NS_SWIFT_NAME(MessagingMessagesDeletedNotification);
-
-/**
- * Notification sent when Firebase Messaging establishes or disconnects from
- * an FCM socket connection. You can query the connection state in this
- * notification by checking the `isDirectChannelEstablished` property of FIRMessaging.
- */
-FOUNDATION_EXPORT NSString *const FIRMessagingConnectionStateChangedNotification
- NS_SWIFT_NAME(MessagingConnectionStateChangedNotification);
-
-/**
- * Notification sent when the FCM registration token has been refreshed. Please use the
- * FIRMessaging delegate method `messaging:didReceiveRegistrationToken:` to receive current and
- * updated tokens.
- */
-FOUNDATION_EXPORT NSString *const FIRMessagingRegistrationTokenRefreshedNotification
- NS_SWIFT_NAME(MessagingRegistrationTokenRefreshedNotification);
-#endif // defined(__IPHONE_10_0) && __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_10_0
-
-/**
- * @enum FIRMessagingError
- */
-typedef NS_ENUM(NSUInteger, FIRMessagingError) {
- /// Unknown error.
- FIRMessagingErrorUnknown = 0,
-
- /// FIRMessaging couldn't validate request from this client.
- FIRMessagingErrorAuthentication = 1,
-
- /// InstanceID service cannot be accessed.
- FIRMessagingErrorNoAccess = 2,
-
- /// Request to InstanceID backend timed out.
- FIRMessagingErrorTimeout = 3,
-
- /// No network available to reach the servers.
- FIRMessagingErrorNetwork = 4,
-
- /// Another similar operation in progress, bailing this one.
- FIRMessagingErrorOperationInProgress = 5,
-
- /// Some parameters of the request were invalid.
- FIRMessagingErrorInvalidRequest = 7,
-} NS_SWIFT_NAME(MessagingError);
-
-/// Status for the downstream message received by the app.
-typedef NS_ENUM(NSInteger, FIRMessagingMessageStatus) {
- /// Unknown status.
- FIRMessagingMessageStatusUnknown,
- /// New downstream message received by the app.
- FIRMessagingMessageStatusNew,
-} NS_SWIFT_NAME(MessagingMessageStatus);
-
-/**
- * The APNS token type for the app. If the token type is set to `UNKNOWN`
- * Firebase Messaging will implicitly try to figure out what the actual token type
- * is from the provisioning profile.
- * Unless you really need to specify the type, you should use the `APNSToken`
- * property instead.
- */
-typedef NS_ENUM(NSInteger, FIRMessagingAPNSTokenType) {
- /// Unknown token type.
- FIRMessagingAPNSTokenTypeUnknown,
- /// Sandbox token type.
- FIRMessagingAPNSTokenTypeSandbox,
- /// Production token type.
- FIRMessagingAPNSTokenTypeProd,
-} NS_SWIFT_NAME(MessagingAPNSTokenType);
-
-/// Information about a downstream message received by the app.
-NS_SWIFT_NAME(MessagingMessageInfo)
-@interface FIRMessagingMessageInfo : NSObject
-
-/// The status of the downstream message
-@property(nonatomic, readonly, assign) FIRMessagingMessageStatus status;
-
-@end
-
-/**
- * A remote data message received by the app via FCM (not just the APNs interface).
- *
- * This is only for devices running iOS 10 or above. To support devices running iOS 9 or below, use
- * the local and remote notifications handlers defined in UIApplicationDelegate protocol.
- */
-NS_SWIFT_NAME(MessagingRemoteMessage)
-@interface FIRMessagingRemoteMessage : NSObject
-
-/// The downstream message received by the application.
-@property(nonatomic, readonly, strong) NSDictionary *appData;
-@end
-
-@class FIRMessaging;
-/**
- * A protocol to handle token update or data message delivery from FCM.
- *
- */
-NS_SWIFT_NAME(MessagingDelegate)
-@protocol FIRMessagingDelegate
-
-@optional
-/// This method will be called once a token is available, or has been refreshed. Typically it
-/// will be called once per app start, but may be called more often, if token is invalidated or
-/// updated. In this method, you should perform operations such as:
-///
-/// * Uploading the FCM token to your application server, so targeted notifications can be sent.
-///
-/// * Subscribing to any topics.
-- (void)messaging:(FIRMessaging *)messaging
- didReceiveRegistrationToken:(NSString *)fcmToken
- NS_SWIFT_NAME(messaging(_:didReceiveRegistrationToken:));
-
-/// This method is called on iOS 10 devices to handle data messages received via FCM through its
-/// direct channel (not via APNS). For iOS 9 and below, the FCM data message is delivered via the
-/// UIApplicationDelegate's -application:didReceiveRemoteNotification: method.
-- (void)messaging:(FIRMessaging *)messaging
- didReceiveMessage:(FIRMessagingRemoteMessage *)remoteMessage
- NS_SWIFT_NAME(messaging(_:didReceive:))
- __IOS_AVAILABLE(10.0);
-
-@end
-
-/**
- * Firebase Messaging lets you reliably deliver messages at no cost.
- *
- * To send or receive messages, the app must get a
- * registration token from FIRInstanceID. This token authorizes an
- * app server to send messages to an app instance.
- *
- * In order to receive FIRMessaging messages, declare `application:didReceiveRemoteNotification:`.
- */
-NS_SWIFT_NAME(Messaging)
-@interface FIRMessaging : NSObject
-
-/**
- * Delegate to handle FCM token refreshes, and remote data messages received via FCM for devices
- * running iOS 10 or above.
- */
-@property(nonatomic, weak, nullable) id delegate;
-
-/**
- * When set to `YES`, Firebase Messaging will automatically establish a socket-based, direct
- * channel to the FCM server. Enable this only if you are sending upstream messages or
- * receiving non-APNS, data-only messages in foregrounded apps.
- * Default is `NO`.
- */
-@property(nonatomic) BOOL shouldEstablishDirectChannel;
-
-/**
- * Returns `YES` if the direct channel to the FCM server is active, and `NO` otherwise.
- */
-@property(nonatomic, readonly) BOOL isDirectChannelEstablished;
-
-/**
- * FIRMessaging
- *
- * @return An instance of FIRMessaging.
- */
-+ (instancetype)messaging NS_SWIFT_NAME(messaging());
-
-/**
- * Unavailable. Use +messaging instead.
- */
-- (instancetype)init __attribute__((unavailable("Use +messaging instead.")));
-
-#pragma mark - APNS
-
-/**
- * This property is used to set the APNS Token received by the application delegate.
- *
- * FIRMessaging uses method swizzling to ensure that the APNS token is set
- * automatically. However, if you have disabled swizzling by setting
- * `FirebaseAppDelegateProxyEnabled` to `NO` in your app's
- * Info.plist, you should manually set the APNS token in your application
- * delegate's `-application:didRegisterForRemoteNotificationsWithDeviceToken:`
- * method.
- *
- * If you would like to set the type of the APNS token, rather than relying on
- * automatic detection, see: `-setAPNSToken:type:`.
- */
-@property(nonatomic, copy, nullable) NSData *APNSToken NS_SWIFT_NAME(apnsToken);
-
-/**
- * Set APNS token for the application. This APNS token will be used to register
- * with Firebase Messaging using `FCMToken` or
- * `tokenWithAuthorizedEntity:scope:options:handler`.
- *
- * @param apnsToken The APNS token for the application.
- * @param type The type of APNS token. Debug builds should use
- * FIRMessagingAPNSTokenTypeSandbox. Alternatively, you can supply
- * FIRMessagingAPNSTokenTypeUnknown to have the type automatically
- * detected based on your provisioning profile.
- */
-- (void)setAPNSToken:(NSData *)apnsToken type:(FIRMessagingAPNSTokenType)type;
-
-#pragma mark - FCM Tokens
-
-/**
- * Is Firebase Messaging token auto generation enabled? If this flag is disabled,
- * Firebase Messaging will not generate token automatically for message delivery.
- *
- * If this flag is disabled, Firebase Messaging does not generate new tokens automatically for
- * message delivery. If this flag is enabled, FCM generates a registration token on application
- * start when there is no existing valid token. FCM also generates a new token when an existing
- * token is deleted.
- *
- * This setting is persisted, and is applied on future
- * invocations of your application. Once explicitly set, it overrides any
- * settings in your Info.plist.
- *
- * By default, FCM automatic initialization is enabled. If you need to change the
- * default (for example, because you want to prompt the user before getting token)
- * set FirebaseMessagingAutoInitEnabled to false in your application's Info.plist.
- */
-@property(nonatomic, assign, getter=isAutoInitEnabled) BOOL autoInitEnabled;
-
-/**
- * The FCM token is used to identify this device so that FCM can send notifications to it.
- * It is associated with your APNS token when the APNS token is supplied, so that sending
- * messages to the FCM token will be delivered over APNS.
- *
- * The FCM token is sometimes refreshed automatically. In your FIRMessaging delegate, the
- * delegate method `messaging:didReceiveRegistrationToken:` will be called once a token is
- * available, or has been refreshed. Typically it should be called once per app start, but
- * may be called more often, if token is invalidated or updated.
- *
- * Once you have an FCM token, you should send it to your application server, so it can use
- * the FCM token to send notifications to your device.
- */
-@property(nonatomic, readonly, nullable) NSString *FCMToken NS_SWIFT_NAME(fcmToken);
-
-
-/**
- * Retrieves an FCM registration token for a particular Sender ID. This can be used to allow
- * multiple senders to send notifications to the same device. By providing a different Sender
- * ID than your default when fetching a token, you can create a new FCM token which you can
- * give to a different sender. Both tokens will deliver notifications to your device, and you
- * can revoke a token when you need to.
- *
- * This registration token is not cached by FIRMessaging. FIRMessaging should have an APNS
- * token set before calling this to ensure that notifications can be delivered via APNS using
- * this FCM token. You may re-retrieve the FCM token once you have the APNS token set, to
- * associate it with the FCM token. The default FCM token is automatically associated with
- * the APNS token, if the APNS token data is available.
- *
- * @param senderID The Sender ID for a particular Firebase project.
- * @param completion The completion handler to handle the token request.
- */
-- (void)retrieveFCMTokenForSenderID:(NSString *)senderID
- completion:(FIRMessagingFCMTokenFetchCompletion)completion
- NS_SWIFT_NAME(retrieveFCMToken(forSenderID:completion:));
-
-
-/**
- * Invalidates an FCM token for a particular Sender ID. That Sender ID cannot no longer send
- * notifications to that FCM token.
- *
- * @param senderID The senderID for a particular Firebase project.
- * @param completion The completion handler to handle the token deletion.
- */
-- (void)deleteFCMTokenForSenderID:(NSString *)senderID
- completion:(FIRMessagingDeleteFCMTokenCompletion)completion
- NS_SWIFT_NAME(deleteFCMToken(forSenderID:completion:));
-
-
-#pragma mark - Connect
-
-/**
- * Create a FIRMessaging data connection which will be used to send the data notifications
- * sent by your server. It will also be used to send ACKS and other messages based
- * on the FIRMessaging ACKS and other messages based on the FIRMessaging protocol.
- *
- *
- * @param handler The handler to be invoked once the connection is established.
- * If the connection fails we invoke the handler with an
- * appropriate error code letting you know why it failed. At
- * the same time, FIRMessaging performs exponential backoff to retry
- * establishing a connection and invoke the handler when successful.
- */
-- (void)connectWithCompletion:(FIRMessagingConnectCompletion)handler
- NS_SWIFT_NAME(connect(handler:))
- __deprecated_msg("Please use the shouldEstablishDirectChannel property instead.");
-
-/**
- * Disconnect the current FIRMessaging data connection. This stops any attempts to
- * connect to FIRMessaging. Calling this on an already disconnected client is a no-op.
- *
- * Call this before `teardown` when your app is going to the background.
- * Since the FIRMessaging connection won't be allowed to live when in the background, it is
- * prudent to close the connection.
- */
-- (void)disconnect
- __deprecated_msg("Please use the shouldEstablishDirectChannel property instead.");
-
-#pragma mark - Topics
-
-/**
- * Asynchronously subscribes to a topic.
- *
- * @param topic The name of the topic, for example, @"sports".
- */
-- (void)subscribeToTopic:(NSString *)topic NS_SWIFT_NAME(subscribe(toTopic:));
-
-/**
- * Asynchronously subscribe to the provided topic, retrying on failure.
- *
- * @param topic The topic name to subscribe to, for example, @"sports".
- * @param completion The completion that is invoked once the subscribe call ends.
- * In case of success, nil error is returned. Otherwise, an
- * appropriate error object is returned.
- */
-- (void)subscribeToTopic:(nonnull NSString *)topic
- completion:(nullable FIRMessagingTopicOperationCompletion)completion;
-
-/**
- * Asynchronously unsubscribe from a topic.
- *
- * @param topic The name of the topic, for example @"sports".
- */
-- (void)unsubscribeFromTopic:(NSString *)topic NS_SWIFT_NAME(unsubscribe(fromTopic:));
-
-/**
- * Asynchronously unsubscribe from the provided topic, retrying on failure.
- *
- * @param topic The topic name to unsubscribe from, for example @"sports".
- * @param completion The completion that is invoked once the unsubscribe call ends.
- * In case of success, nil error is returned. Otherwise, an
- * appropriate error object is returned.
- */
-- (void)unsubscribeFromTopic:(nonnull NSString *)topic
- completion:(nullable FIRMessagingTopicOperationCompletion)completion;
-
-#pragma mark - Upstream
-
-/**
- * Sends an upstream ("device to cloud") message.
- *
- * The message is queued if we don't have an active connection.
- * You can only use the upstream feature if your FCM implementation
- * uses the XMPP server protocol.
- *
- * @param message Key/Value pairs to be sent. Values must be String, any
- * other type will be ignored.
- * @param receiver A string identifying the receiver of the message. For FCM
- * project IDs the value is `SENDER_ID@gcm.googleapis.com`.
- * @param messageID The ID of the message. This is generated by the application. It
- * must be unique for each message generated by this application.
- * It allows error callbacks and debugging, to uniquely identify
- * each message.
- * @param ttl The time to live for the message. In case we aren't able to
- * send the message before the TTL expires we will send you a
- * callback. If 0, we'll attempt to send immediately and return
- * an error if we're not connected. Otherwise, the message will
- * be queued. As for server-side messages, we don't return an error
- * if the message has been dropped because of TTL; this can happen
- * on the server side, and it would require extra communication.
- */
-- (void)sendMessage:(NSDictionary *)message
- to:(NSString *)receiver
- withMessageID:(NSString *)messageID
- timeToLive:(int64_t)ttl;
-
-#pragma mark - Analytics
-
-/**
- * Use this to track message delivery and analytics for messages, typically
- * when you receive a notification in `application:didReceiveRemoteNotification:`.
- * However, you only need to call this if you set the `FirebaseAppDelegateProxyEnabled`
- * flag to `NO` in your Info.plist. If `FirebaseAppDelegateProxyEnabled` is either missing
- * or set to `YES` in your Info.plist, the library will call this automatically.
- *
- * @param message The downstream message received by the application.
- *
- * @return Information about the downstream message.
- */
-- (FIRMessagingMessageInfo *)appDidReceiveMessage:(NSDictionary *)message;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/src/ios/Firebase/Messaging/FirebaseMessaging.framework/Headers/FirebaseMessaging.h b/src/ios/Firebase/Messaging/FirebaseMessaging.framework/Headers/FirebaseMessaging.h
deleted file mode 100755
index ef081c90f..000000000
--- a/src/ios/Firebase/Messaging/FirebaseMessaging.framework/Headers/FirebaseMessaging.h
+++ /dev/null
@@ -1,17 +0,0 @@
-/*
- * Copyright 2017 Google
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#import "FIRMessaging.h"
diff --git a/src/ios/Firebase/Messaging/FirebaseMessaging.framework/Modules/module.modulemap b/src/ios/Firebase/Messaging/FirebaseMessaging.framework/Modules/module.modulemap
deleted file mode 100644
index 14c966d22..000000000
--- a/src/ios/Firebase/Messaging/FirebaseMessaging.framework/Modules/module.modulemap
+++ /dev/null
@@ -1,7 +0,0 @@
-framework module FirebaseMessaging {
- umbrella header "FirebaseMessaging.h"
- export *
- module * { export *}
- link framework "SystemConfiguration"
- link "sqlite3"
-}
diff --git a/src/ios/Firebase/NOTICES b/src/ios/Firebase/NOTICES
deleted file mode 100644
index ad93dba4e..000000000
--- a/src/ios/Firebase/NOTICES
+++ /dev/null
@@ -1,375 +0,0 @@
-Google LevelDB
-Copyright (c) 2011 The LevelDB Authors. All rights reserved.
-
-Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
-
-Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
-
-Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation andor other materials provided with the distribution.
-
-Neither the name of Google Inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
---
-
-Square Socket Rocket
-Copyright 2012 Square Inc.
-
-Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
-
-http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
-
---
-
-APLevelDB
-Created by Adam Preble on 12312.
-Copyright (c) 2012 Adam Preble. All rights reserved.
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, andor sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE.
-
-Portions of APLevelDB are based on LevelDB-ObjC:
-https://github.com/hoisie/LevelDB-ObjC
-Specifically the SliceFromString/StringFromSlice macros, and the structure of
-the enumeration methods. License for those potions follows:
-Copyright (c) 2011 Pave Labs
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE.
-
---
-
-sqlite3
-2001 September 15
-
-The author disclaims copyright to this source code. In place of
-a legal notice, here is a blessing:
-
- May you do good and not evil.
- May you find forgiveness for yourself and forgive others.
- May you share freely, never taking more than you give.
-
-
-This header file defines the interface that the SQLite library
-presents to client programs. If a C-function, structure, datatype,
-or constant definition does not appear in this file, then it is
-not a published API of SQLite, is subject to change without
-notice, and should not be referenced by programs that use SQLite.
-
-Some of the definitions that are in this file are marked as
-"experimental". Experimental interfaces are normally new
-features recently added to SQLite. We do not anticipate changes
-to experimental interfaces but reserve the right to make minor changes
-if experience from use "in the wild" suggest such changes are prudent.
-
-The official C-language API documentation for SQLite is derived
-from comments in this file. This file is the authoritative source
-on how SQLite interfaces are suppose to operate.
-
-The name of this file under configuration management is "sqlite.h.in".
-The makefile makes some minor changes to this file (such as inserting
-the version number) and changes its name to "sqlite3.h" as
-part of the build process.
-
---
-
-sysutsname.h
-Copyright (c) 2000 Apple Computer, Inc. All rights reserved.
-
-This file contains Original Code andor Modifications of Original Code
-as defined in and that are subject to the Apple Public Source License
-Version 2.0 (the 'License'). You may not use this file except in
-compliance with the License. The rights granted to you under the License
-may not be used to create, or enable the creation or redistribution of,
-unlawful or unlicensed copies of an Apple operating system, or to
-circumvent, violate, or enable the circumvention or violation of, any
-terms of an Apple operating system software license agreement.
-
-Please obtain a copy of the License at
-http://www.opensource.apple.com/apsl and read it before using this file.
-
-The Original Code and all software distributed under the License are
-distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
-EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
-INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
-Please see the License for the specific language governing rights and
-limitations under the License.
-
-Copyright 1993,1995 NeXT Computer Inc. All Rights Reserved
-Copyright (c) 1994 The Regents of the University of California. All rights reserved.
-This code is derived from software contributed to Berkeley by
-Chuck Karish of Mindcraft, Inc.
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions
-are met:
-1. Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-2. Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in the
- documentation andor other materials provided with the distribution.
-3. All advertising materials mentioning features or use of this software
- must display the following acknowledgement:
-* This product includes software developed by the University of
-* California, Berkeley and its contributors.
-4. Neither the name of the University nor the names of its contributors
- may be used to endorse or promote products derived from this software
- without specific prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
-ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
-FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-SUCH DAMAGE.
-
---
-
-GTMNSData+zlib.h
-Copyright 2007-2008 Google Inc.
-
-Licensed under the Apache License, Version 2.0 (the "License"); you may not
-use this file except in compliance with the License. You may obtain a copy
-of the License at
-
-http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
-License for the specific language governing permissions and limitations under
-the License.
-
---
-
-GTMDefines.h
-Copyright 2008 Google Inc.
-
-Licensed under the Apache License, Version 2.0 (the "License"); you may not
-use this file except in compliance with the License. You may obtain a copy
-of the License at
-
-http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
-License for the specific language governing permissions and limitations under
-the License.
-
---
-
-ProtocolBuffer
-Copyright 2008 Cyrus Najmabadi
-Copyright 2011 Google Inc.
-
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
-
---
-
-GTMDefines.h
-Copyright 2008 Google Inc.
-
-Licensed under the Apache License, Version 2.0 (the "License"); you may not
-use this file except in compliance with the License. You may obtain a copy
-of the License at
-
-http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
-License for the specific language governing permissions and limitations under
-the License.
-
---
-
-fbase64.c
-
-Copyright (c) 1996 by Internet Software Consortium.
-Permission to use, copy, modify, and distribute this software for any
-purpose with or without fee is hereby granted, provided that the above
-copyright notice and this permission notice appear in all copies.
-THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM DISCLAIMS
-ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES
-OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL INTERNET SOFTWARE
-CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
-DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
-PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS
-ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
-SOFTWARE.
-
-Portions Copyright (c) 1995 by International Business Machines, Inc.
-International Business Machines, Inc. (hereinafter called IBM) grants
-permission under its copyrights to use, copy, modify, and distribute this
-Software with or without fee, provided that the above copyright notice and
-all paragraphs of this notice appear in all copies, and that the name of IBM
-not be used in connection with the marketing of any product incorporating
-the Software or modifications thereof, without specific, written prior
-permission.
-To the extent it has a right to do so, IBM grants an immunity from suit
-under its patents, if any, for the use, sale or manufacture of products to
-the extent that such products are used for performing Domain Name System
-dynamic updates in TCP/IP networks by means of the Software. No immunity is
-granted for any product per se or for any other function of any product.
-THE SOFTWARE IS PROVIDED "AS IS", AND IBM DISCLAIMS ALL WARRANTIES,
-INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
-PARTICULAR PURPOSE. IN NO EVENT SHALL IBM BE LIABLE FOR ANY SPECIAL,
-DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER ARISING
-OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE, EVEN
-IF IBM IS APPRISED OF THE POSSIBILITY OF SUCH DAMAGES.
-
-OPENBSD ORIGINAL: lib/libc/net/base64.c */
-
---
-
-FIRAppEnvironmentUtil.m
-
-The following copyright from Landon J. Fuller applies to the isAppEncrypted function.
-Copyright (c) 2017 Landon J. Fuller
-All rights reserved.
-Permission is hereby granted, free of charge, to any person obtaining a copy of this software
-and associated documentation files (the "Software"), to deal in the Software without
-restriction, including without limitation the rights to use, copy, modify, merge, publish,
-distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the
-Software is furnished to do so, subject to the following conditions:
-The above copyright notice and this permission notice shall be included in all copies or
-substantial portions of the Software.
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING
-BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
-DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
-FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-Comment from iPhone Dev Wiki
-Crack Prevention:
-App Store binaries are signed by both their developer and Apple. This encrypts the binary so
-that decryption keys are needed in order to make the binary readable. When iOS executes the
-binary, the decryption keys are used to decrypt the binary into a readable state where it is
-then loaded into memory and executed. iOS can tell the encryption status of a binary via the
-cryptid structure member of LC_ENCRYPTION_INFO MachO load command. If cryptid is a non-zero
-value then the binary is encrypted.
-'Cracking' works by letting the kernel decrypt the binary then siphoning the decrypted data into
-a new binary file, resigning, and repackaging. This will only work on jailbroken devices as
-codesignature validation has been removed. Resigning takes place because while the codesignature
-doesn't have to be valid thanks to the jailbreak, it does have to be in place unless you have
-AppSync or similar to disable codesignature checks.
-More information at Landon Fuller's blog
-
---
-
-tflite
-
-Copyright 2017 The TensorFlow Authors. All Rights Reserved.
-
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
-
---
-
-FirebaseCore
-
-Copyright 2017 Google.
-
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
-
---
-
-google_api_objectivec_client_for_rest
-
-Copyright 2011 Google Inc.
-
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
-
---
-
-ocmock
-
-Copyright (c) 2006-2016 Erik Doernenburg and contributors
-
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
-
---
diff --git a/src/ios/Firebase/Performance/FirebasePerformance.framework/FirebasePerformance b/src/ios/Firebase/Performance/FirebasePerformance.framework/FirebasePerformance
deleted file mode 100755
index 6c37fbb39..000000000
Binary files a/src/ios/Firebase/Performance/FirebasePerformance.framework/FirebasePerformance and /dev/null differ
diff --git a/src/ios/Firebase/Performance/FirebasePerformance.framework/Headers/FIRHTTPMetric.h b/src/ios/Firebase/Performance/FirebasePerformance.framework/Headers/FIRHTTPMetric.h
deleted file mode 100755
index 91264eda4..000000000
--- a/src/ios/Firebase/Performance/FirebasePerformance.framework/Headers/FIRHTTPMetric.h
+++ /dev/null
@@ -1,68 +0,0 @@
-#import
-
-#import "FIRPerformanceAttributable.h"
-
-/* Different HTTP methods. */
-typedef NS_ENUM(NSInteger, FIRHTTPMethod) {
- FIRHTTPMethodGET NS_SWIFT_NAME(get),
- FIRHTTPMethodPUT NS_SWIFT_NAME(put),
- FIRHTTPMethodPOST NS_SWIFT_NAME(post),
- FIRHTTPMethodDELETE NS_SWIFT_NAME(delete),
- FIRHTTPMethodHEAD NS_SWIFT_NAME(head),
- FIRHTTPMethodPATCH NS_SWIFT_NAME(patch),
- FIRHTTPMethodOPTIONS NS_SWIFT_NAME(options),
- FIRHTTPMethodTRACE NS_SWIFT_NAME(trace),
- FIRHTTPMethodCONNECT NS_SWIFT_NAME(connect)
-} NS_SWIFT_NAME(HTTPMethod);
-
-/**
- * FIRHTTPMetric object can be used to make the SDK record information about a HTTP network request.
- */
-NS_SWIFT_NAME(HTTPMetric)
-@interface FIRHTTPMetric : NSObject
-
-/**
- * Creates HTTPMetric object for a network request.
- * @param URL The URL for which the metrics are recorded.
- * @param httpMethod HTTP method used by the request.
- */
-- (nullable instancetype)initWithURL:(nonnull NSURL *)URL HTTPMethod:(FIRHTTPMethod)httpMethod
- NS_SWIFT_NAME(init(url:httpMethod:));
-
-/**
- * Use `initWithURL:HTTPMethod:` for Objective-C and `init(url:httpMethod:)` for Swift.
- */
-- (nonnull instancetype)init NS_UNAVAILABLE;
-
-/**
- * @brief HTTP Response code. Values are greater than 0.
- */
-@property(nonatomic, assign) NSInteger responseCode;
-
-/**
- * @brief Size of the request payload.
- */
-@property(nonatomic, assign) long requestPayloadSize;
-
-/**
- * @brief Size of the response payload.
- */
-@property(nonatomic, assign) long responsePayloadSize;
-
-/**
- * @brief HTTP Response content type.
- */
-@property(nonatomic, nullable, copy) NSString *responseContentType;
-
-/**
- * Marks the start time of the request.
- */
-- (void)start;
-
-/**
- * Marks the end time of the response and queues the network request metric on the device for
- * transmission. Check the logs if the metric is valid.
- */
-- (void)stop;
-
-@end
diff --git a/src/ios/Firebase/Performance/FirebasePerformance.framework/Headers/FIRPerformance.h b/src/ios/Firebase/Performance/FirebasePerformance.framework/Headers/FIRPerformance.h
deleted file mode 100755
index e7444a3cf..000000000
--- a/src/ios/Firebase/Performance/FirebasePerformance.framework/Headers/FIRPerformance.h
+++ /dev/null
@@ -1,62 +0,0 @@
-#import
-
-#import "FIRTrace.h"
-
-/** This class allows you to configure the Firebase Performance Reporting SDK. It also provides the
- * interfaces to create timers and enable or disable automatic metrics capture.
- *
- * This SDK uses a Firebase Instance ID token to identify the app instance and periodically sends
- * data to the Firebase backend. (see `[FIRInstanceID getIDWithHandler:]`).
- * To stop the periodic sync, call `[FIRInstanceID deleteIDWithHandler:]` and
- * either disable this SDK or set FIRPerformance.dataCollectionEnabled to NO.
- */
-NS_EXTENSION_UNAVAILABLE("FirebasePerformance does not support app extensions at this time.")
-NS_SWIFT_NAME(Performance)
-@interface FIRPerformance : NSObject
-
-/**
- * Controls the capture of performance data. When this value is set to NO, none of the performance
- * data will sent to the server. Default is YES.
- *
- * This setting is persisted, and is applied on future invocations of your application. Once
- * explicitly set, it overrides any settings in your Info.plist.
- */
-@property(nonatomic, assign, getter=isDataCollectionEnabled) BOOL dataCollectionEnabled;
-
-/**
- * Controls the instrumentation of the app to capture performance data. Setting this value to NO has
- * immediate effect only if it is done so before calling [FIRApp configure]. Otherwise it takes
- * effect after the app starts again the next time.
- *
- * If set to NO, the app will not be instrumented to collect performance
- * data (in scenarios like app_start, networking monitoring). Default is YES.
- *
- * This setting is persisted, and is applied on future invocations of your application. Once
- * explicitly set, it overrides any settings in your Info.plist.
- */
-@property(nonatomic, assign, getter=isInstrumentationEnabled) BOOL instrumentationEnabled;
-
-/** @return The shared instance. */
-+ (nonnull instancetype)sharedInstance NS_SWIFT_NAME(sharedInstance());
-
-/**
- * Creates an instance of FIRTrace after creating the shared instance of FIRPerformance. The trace
- * will automatically be started on a successful creation of the instance. The |name| of the trace
- * cannot be an empty string.
- *
- * @param name The name of the Trace.
- * @return The FIRTrace object.
- */
-+ (nullable FIRTrace *)startTraceWithName:(nonnull NSString *)name
- NS_SWIFT_NAME(startTrace(name:));
-
-/**
- * Creates an instance of FIRTrace. This API does not start the trace. To start the trace, use the
- * -start API on the returned |FIRTrace| object. The |name| cannot be an empty string.
- *
- * @param name The name of the Trace.
- * @return The FIRTrace object.
- */
-- (nullable FIRTrace *)traceWithName:(nonnull NSString *)name NS_SWIFT_NAME(trace(name:));
-
-@end
diff --git a/src/ios/Firebase/Performance/FirebasePerformance.framework/Headers/FIRPerformanceAttributable.h b/src/ios/Firebase/Performance/FirebasePerformance.framework/Headers/FIRPerformanceAttributable.h
deleted file mode 100755
index 5bf68717b..000000000
--- a/src/ios/Firebase/Performance/FirebasePerformance.framework/Headers/FIRPerformanceAttributable.h
+++ /dev/null
@@ -1,38 +0,0 @@
-#import
-
-/** Defines the interface that allows adding/removing attributes to any object.
- */
-NS_SWIFT_NAME(PerformanceAttributable)
-@protocol FIRPerformanceAttributable
-
-/** List of attributes. */
-@property(nonatomic, nonnull, readonly) NSDictionary *attributes;
-
-/**
- * Sets a value as a string for the specified attribute. Updates the value of the attribute if a
- * value had already existed.
- *
- * @param value The value that needs to be set/updated for an attribute. If the length of the value
- * exceeds the maximum allowed, the value will be truncated to the maximum allowed.
- * @param attribute The name of the attribute. If the length of the value exceeds the maximum
- * allowed, the value will be truncated to the maximum allowed.
- */
-- (void)setValue:(nonnull NSString *)value forAttribute:(nonnull NSString *)attribute;
-
-/**
- * Reads the value for the specified attribute. If the attribute does not exist, returns nil.
- *
- * @param attribute The name of the attribute.
- * @return The value for the attribute. Returns nil if the attribute does not exist.
- */
-- (nullable NSString *)valueForAttribute:(nonnull NSString *)attribute;
-
-/**
- * Removes an attribute from the list. Does nothing if the attribute does not exist.
- *
- * @param attribute The name of the attribute.
- */
-- (void)removeAttribute:(nonnull NSString *)attribute;
-
-@end
-
diff --git a/src/ios/Firebase/Performance/FirebasePerformance.framework/Headers/FIRTrace.h b/src/ios/Firebase/Performance/FirebasePerformance.framework/Headers/FIRTrace.h
deleted file mode 100755
index a226cda59..000000000
--- a/src/ios/Firebase/Performance/FirebasePerformance.framework/Headers/FIRTrace.h
+++ /dev/null
@@ -1,91 +0,0 @@
-#import
-
-#import "FIRPerformanceAttributable.h"
-
-/**
- * FIRTrace objects contain information about a "Trace", which is a sequence of steps. Traces can be
- * used to measure the time taken for a sequence of steps.
- * Traces also include "Counters". Counters are used to track information which is cumulative in
- * nature (e.g., Bytes downloaded). Counters are scoped to an FIRTrace object.
- */
-NS_EXTENSION_UNAVAILABLE("FirebasePerformance does not support app extensions at this time.")
-NS_SWIFT_NAME(Trace)
-@interface FIRTrace : NSObject
-
-/** @brief Name of the trace. */
-@property(nonatomic, copy, readonly, nonnull) NSString *name;
-
-/** @brief Not a valid initializer. */
-- (nonnull instancetype)init NS_UNAVAILABLE;
-
-/**
- * Starts the trace.
- */
-- (void)start;
-
-/**
- * Stops the trace if the trace is active.
- */
-- (void)stop;
-
-/**
- * Increments the counter for the provided counter name by 1. If it is a new counter name, the
- * counter value will be initialized to 1. Does nothing if the trace has not been started or has
- * already been stopped.
- *
- * Note: This API has been deprecated. Please use -incrementMetric:byInt: instead.
- *
- * @param counterName The name of the counter to increment.
- */
-- (void)incrementCounterNamed:(nonnull NSString *)counterName
- NS_SWIFT_NAME(incrementCounter(named:))
- DEPRECATED_MSG_ATTRIBUTE("Please use -incrementMetric:byInt: instead.");
-
-/**
- * Increments the counter for the provided counter name with the provided value. If it is a new
- * counter name, the counter value will be initialized to the value. Does nothing if the trace has
- * not been started or has already been stopped.
- *
- * Note: This API has been deprecated. Please use -incrementMetric:byInt: instead.
- *
- * @param counterName The name of the counter to increment.
- * @param incrementValue The value the counter would be incremented with.
- */
-- (void)incrementCounterNamed:(nonnull NSString *)counterName by:(NSInteger)incrementValue
- NS_SWIFT_NAME(incrementCounter(named:by:))
- DEPRECATED_MSG_ATTRIBUTE("Please use -incrementMetric:byInt: instead.");
-
-#pragma mark - Metrics API
-
-/**
- * Atomically increments the metric for the provided metric name with the provided value. If it is a
- * new metric name, the metric value will be initialized to the value. Does nothing if the trace
- * has not been started or has already been stopped.
- *
- * @param metricName The name of the metric to increment.
- * @param incrementValue The value to increment the metric by.
- */
-- (void)incrementMetric:(nonnull NSString *)metricName byInt:(int64_t)incrementValue
- NS_SWIFT_NAME(incrementMetric(_:by:));
-
-/**
- * Gets the value of the metric for the provided metric name. If the metric doesn't exist, a 0 is
- * returned.
- *
- * @param metricName The name of metric whose value to get.
- * @return The value of the given metric or 0 if it hasn't yet been set.
- */
-- (int64_t)valueForIntMetric:(nonnull NSString *)metricName
- NS_SWIFT_NAME(valueForMetric(_:));
-
-/**
- * Sets the value of the metric for the provided metric name to the provided value. Does nothing if
- * the trace has not been started or has already been stopped.
- *
- * @param metricName The name of the metric to set.
- * @param value The value to set the metric to.
- */
-- (void)setIntValue:(int64_t)value forMetric:(nonnull NSString *)metricName
- NS_SWIFT_NAME(setValue(_:forMetric:));
-
-@end
diff --git a/src/ios/Firebase/Performance/FirebasePerformance.framework/Headers/FirebasePerformance.h b/src/ios/Firebase/Performance/FirebasePerformance.framework/Headers/FirebasePerformance.h
deleted file mode 100755
index 8654e87d7..000000000
--- a/src/ios/Firebase/Performance/FirebasePerformance.framework/Headers/FirebasePerformance.h
+++ /dev/null
@@ -1,4 +0,0 @@
-#import "FIRHTTPMetric.h"
-#import "FIRPerformance.h"
-#import "FIRPerformanceAttributable.h"
-#import "FIRTrace.h"
diff --git a/src/ios/Firebase/Performance/FirebasePerformance.framework/Modules/module.modulemap b/src/ios/Firebase/Performance/FirebasePerformance.framework/Modules/module.modulemap
deleted file mode 100755
index 25f5c4315..000000000
--- a/src/ios/Firebase/Performance/FirebasePerformance.framework/Modules/module.modulemap
+++ /dev/null
@@ -1,13 +0,0 @@
-framework module FirebasePerformance {
- umbrella header "FirebasePerformance.h"
- export *
- module * { export *}
- link "c++"
- link "sqlite3"
- link "z"
- link framework "CoreTelephony"
- link framework "QuartzCore"
- link framework "Security"
- link framework "StoreKit"
- link framework "SystemConfiguration"
- link framework "UIKit"}
diff --git a/src/ios/Firebase/Performance/GoogleToolboxForMac.framework/GoogleToolboxForMac b/src/ios/Firebase/Performance/GoogleToolboxForMac.framework/GoogleToolboxForMac
deleted file mode 100644
index 8a7c51ef8..000000000
Binary files a/src/ios/Firebase/Performance/GoogleToolboxForMac.framework/GoogleToolboxForMac and /dev/null differ
diff --git a/src/ios/Firebase/Performance/GoogleToolboxForMac.framework/Headers/GTMDebugSelectorValidation.h b/src/ios/Firebase/Performance/GoogleToolboxForMac.framework/Headers/GTMDebugSelectorValidation.h
deleted file mode 100644
index c90caeb1f..000000000
--- a/src/ios/Firebase/Performance/GoogleToolboxForMac.framework/Headers/GTMDebugSelectorValidation.h
+++ /dev/null
@@ -1,100 +0,0 @@
-//
-// GTMDebugSelectorValidation.h
-//
-// This file should only be included within an implimation file. In any
-// function that takes an object and selector to invoke, you should call:
-//
-// GTMAssertSelectorNilOrImplementedWithArguments(obj, sel, @encode(arg1type), ..., NULL)
-// or
-// GTMAssertSelectorNilOrImplementedWithReturnTypeAndArguments(obj, sel, @encode(returnType), @encode(arg1type), ..., NULL)
-//
-// This will then validate that the selector is defined and using the right
-// type(s), this can help catch errors much earlier then waiting for the
-// selector to actually fire (and in the case of error selectors, might never
-// really be tested until in the field).
-//
-// Copyright 2007-2008 Google Inc.
-//
-// Licensed under the Apache License, Version 2.0 (the "License"); you may not
-// use this file except in compliance with the License. You may obtain a copy
-// of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
-// License for the specific language governing permissions and limitations under
-// the License.
-//
-
-#if DEBUG
-
-#import
-#import "GTMDefines.h"
-
-static void GTMAssertSelectorNilOrImplementedWithReturnTypeAndArguments(id obj, SEL sel, const char *retType, ...) {
-
- // verify that the object's selector is implemented with the proper
- // number and type of arguments
- va_list argList;
- va_start(argList, retType);
-
- if (obj && sel) {
- // check that the selector is implemented
- _GTMDevAssert([obj respondsToSelector:sel],
- @"\"%@\" selector \"%@\" is unimplemented or misnamed",
- NSStringFromClass([obj class]),
- NSStringFromSelector(sel));
-
- const char *expectedArgType;
- NSUInteger argCount = 2; // skip self and _cmd
- NSMethodSignature *sig = [obj methodSignatureForSelector:sel];
-
- // check that each expected argument is present and of the correct type
- while ((expectedArgType = va_arg(argList, const char*)) != 0) {
-
- if ([sig numberOfArguments] > argCount) {
- const char *foundArgType = [sig getArgumentTypeAtIndex:argCount];
-
- _GTMDevAssert(0 == strncmp(foundArgType, expectedArgType, strlen(expectedArgType)),
- @"\"%@\" selector \"%@\" argument %u should be type %s",
- NSStringFromClass([obj class]),
- NSStringFromSelector(sel),
- (uint32_t)(argCount - 2),
- expectedArgType);
- }
- argCount++;
- }
-
- // check that the proper number of arguments are present in the selector
- _GTMDevAssert(argCount == [sig numberOfArguments],
- @"\"%@\" selector \"%@\" should have %u arguments",
- NSStringFromClass([obj class]),
- NSStringFromSelector(sel),
- (uint32_t)(argCount - 2));
-
- // if asked, validate the return type
- if (retType && (strcmp("gtm_skip_return_test", retType) != 0)) {
- const char *foundRetType = [sig methodReturnType];
- _GTMDevAssert(0 == strncmp(foundRetType, retType, strlen(retType)),
- @"\"%@\" selector \"%@\" return type should be type %s",
- NSStringFromClass([obj class]),
- NSStringFromSelector(sel),
- retType);
- }
- }
-
- va_end(argList);
-}
-
-#define GTMAssertSelectorNilOrImplementedWithArguments(obj, sel, ...) \
- GTMAssertSelectorNilOrImplementedWithReturnTypeAndArguments((obj), (sel), "gtm_skip_return_test", __VA_ARGS__)
-
-#else // DEBUG
-
-// make it go away if not debug
-#define GTMAssertSelectorNilOrImplementedWithReturnTypeAndArguments(obj, sel, retType, ...) do { } while (0)
-#define GTMAssertSelectorNilOrImplementedWithArguments(obj, sel, ...) do { } while (0)
-
-#endif // DEBUG
diff --git a/src/ios/Firebase/Performance/GoogleToolboxForMac.framework/Headers/GTMDebugThreadValidation.h b/src/ios/Firebase/Performance/GoogleToolboxForMac.framework/Headers/GTMDebugThreadValidation.h
deleted file mode 100644
index 8d116d940..000000000
--- a/src/ios/Firebase/Performance/GoogleToolboxForMac.framework/Headers/GTMDebugThreadValidation.h
+++ /dev/null
@@ -1,44 +0,0 @@
-//
-// GTMDebugThreadValidation.h
-//
-// Copyright 2016 Google Inc.
-//
-// Licensed under the Apache License, Version 2.0 (the "License"); you may not
-// use this file except in compliance with the License. You may obtain a copy
-// of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
-// License for the specific language governing permissions and limitations under
-// the License.
-//
-
-#import "GTMDefines.h"
-#import
-
-// GTMCheckCurrentQueue, GTMIsCurrentQueue
-//
-// GTMCheckCurrentQueue takes a target queue and uses _GTMDevAssert to
-// report if that is not the currently executing queue.
-//
-// GTMIsCurrentQueue takes a target queue and returns true if the target queue
-// is the currently executing dispatch queue. This can be passed to another
-// assertion call in debug builds; it should never be used in release code.
-//
-// The dispatch queue must have a label.
-#define GTMCheckCurrentQueue(targetQueue) \
- _GTMDevAssert(GTMIsCurrentQueue(targetQueue), \
- @"Current queue is %s (expected %s)", \
- _GTMQueueName(DISPATCH_CURRENT_QUEUE_LABEL), \
- _GTMQueueName(targetQueue))
-
-#define GTMIsCurrentQueue(targetQueue) \
- (strcmp(_GTMQueueName(DISPATCH_CURRENT_QUEUE_LABEL), \
- _GTMQueueName(targetQueue)) == 0)
-
-#define _GTMQueueName(queue) \
- (strlen(dispatch_queue_get_label(queue)) > 0 ? \
- dispatch_queue_get_label(queue) : "unnamed")
diff --git a/src/ios/Firebase/Performance/GoogleToolboxForMac.framework/Headers/GTMDefines.h b/src/ios/Firebase/Performance/GoogleToolboxForMac.framework/Headers/GTMDefines.h
deleted file mode 100644
index 7feb1cbd8..000000000
--- a/src/ios/Firebase/Performance/GoogleToolboxForMac.framework/Headers/GTMDefines.h
+++ /dev/null
@@ -1,398 +0,0 @@
-//
-// GTMDefines.h
-//
-// Copyright 2008 Google Inc.
-//
-// Licensed under the Apache License, Version 2.0 (the "License"); you may not
-// use this file except in compliance with the License. You may obtain a copy
-// of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
-// License for the specific language governing permissions and limitations under
-// the License.
-//
-
-// ============================================================================
-
-#include
-#include
-
-#ifdef __OBJC__
-#include
-#endif // __OBJC__
-
-#if TARGET_OS_IPHONE
-#include
-#endif // TARGET_OS_IPHONE
-
-// ----------------------------------------------------------------------------
-// CPP symbols that can be overridden in a prefix to control how the toolbox
-// is compiled.
-// ----------------------------------------------------------------------------
-
-
-// By setting the GTM_CONTAINERS_VALIDATION_FAILED_LOG and
-// GTM_CONTAINERS_VALIDATION_FAILED_ASSERT macros you can control what happens
-// when a validation fails. If you implement your own validators, you may want
-// to control their internals using the same macros for consistency.
-#ifndef GTM_CONTAINERS_VALIDATION_FAILED_ASSERT
- #define GTM_CONTAINERS_VALIDATION_FAILED_ASSERT 0
-#endif
-
-// Ensure __has_feature and __has_extension are safe to use.
-// See http://clang-analyzer.llvm.org/annotations.html
-#ifndef __has_feature // Optional.
- #define __has_feature(x) 0 // Compatibility with non-clang compilers.
-#endif
-
-#ifndef __has_extension
- #define __has_extension __has_feature // Compatibility with pre-3.0 compilers.
-#endif
-
-// Give ourselves a consistent way to do inlines. Apple's macros even use
-// a few different actual definitions, so we're based off of the foundation
-// one.
-#if !defined(GTM_INLINE)
- #if (defined (__GNUC__) && (__GNUC__ == 4)) || defined (__clang__)
- #define GTM_INLINE static __inline__ __attribute__((always_inline))
- #else
- #define GTM_INLINE static __inline__
- #endif
-#endif
-
-// Give ourselves a consistent way of doing externs that links up nicely
-// when mixing objc and objc++
-#if !defined (GTM_EXTERN)
- #if defined __cplusplus
- #define GTM_EXTERN extern "C"
- #define GTM_EXTERN_C_BEGIN extern "C" {
- #define GTM_EXTERN_C_END }
- #else
- #define GTM_EXTERN extern
- #define GTM_EXTERN_C_BEGIN
- #define GTM_EXTERN_C_END
- #endif
-#endif
-
-// Give ourselves a consistent way of exporting things if we have visibility
-// set to hidden.
-#if !defined (GTM_EXPORT)
- #define GTM_EXPORT __attribute__((visibility("default")))
-#endif
-
-// Give ourselves a consistent way of declaring something as unused. This
-// doesn't use __unused because that is only supported in gcc 4.2 and greater.
-#if !defined (GTM_UNUSED)
-#define GTM_UNUSED(x) ((void)(x))
-#endif
-
-// _GTMDevLog & _GTMDevAssert
-//
-// _GTMDevLog & _GTMDevAssert are meant to be a very lightweight shell for
-// developer level errors. This implementation simply macros to NSLog/NSAssert.
-// It is not intended to be a general logging/reporting system.
-//
-// Please see http://code.google.com/p/google-toolbox-for-mac/wiki/DevLogNAssert
-// for a little more background on the usage of these macros.
-//
-// _GTMDevLog log some error/problem in debug builds
-// _GTMDevAssert assert if condition isn't met w/in a method/function
-// in all builds.
-//
-// To replace this system, just provide different macro definitions in your
-// prefix header. Remember, any implementation you provide *must* be thread
-// safe since this could be called by anything in what ever situtation it has
-// been placed in.
-//
-
-// Ignore the "Macro name is a reserved identifier" warning in this section
-#pragma clang diagnostic push
-#pragma clang diagnostic ignored "-Wreserved-id-macro"
-
-// We only define the simple macros if nothing else has defined this.
-#ifndef _GTMDevLog
-
-#ifdef DEBUG
- #define _GTMDevLog(...) NSLog(__VA_ARGS__)
-#else
- #define _GTMDevLog(...) do { } while (0)
-#endif
-
-#endif // _GTMDevLog
-
-#ifndef _GTMDevAssert
-// we directly invoke the NSAssert handler so we can pass on the varargs
-// (NSAssert doesn't have a macro we can use that takes varargs)
-#if !defined(NS_BLOCK_ASSERTIONS)
- #define _GTMDevAssert(condition, ...) \
- do { \
- if (!(condition)) { \
- [[NSAssertionHandler currentHandler] \
- handleFailureInFunction:(NSString *) \
- [NSString stringWithUTF8String:__PRETTY_FUNCTION__] \
- file:(NSString *)[NSString stringWithUTF8String:__FILE__] \
- lineNumber:__LINE__ \
- description:__VA_ARGS__]; \
- } \
- } while(0)
-#else // !defined(NS_BLOCK_ASSERTIONS)
- #define _GTMDevAssert(condition, ...) do { } while (0)
-#endif // !defined(NS_BLOCK_ASSERTIONS)
-
-#endif // _GTMDevAssert
-
-// _GTMCompileAssert
-//
-// Note: Software for current compilers should just use _Static_assert directly
-// instead of this macro.
-//
-// _GTMCompileAssert is an assert that is meant to fire at compile time if you
-// want to check things at compile instead of runtime. For example if you
-// want to check that a wchar is 4 bytes instead of 2 you would use
-// _GTMCompileAssert(sizeof(wchar_t) == 4, wchar_t_is_4_bytes_on_OS_X)
-// Note that the second "arg" is not in quotes, and must be a valid processor
-// symbol in it's own right (no spaces, punctuation etc).
-
-// Wrapping this in an #ifndef allows external groups to define their own
-// compile time assert scheme.
-#ifndef _GTMCompileAssert
- #if __has_feature(c_static_assert) || __has_extension(c_static_assert)
- #define _GTMCompileAssert(test, msg) _Static_assert((test), #msg)
- #else
- // Pre-Xcode 7 support.
- //
- // We got this technique from here:
- // http://unixjunkie.blogspot.com/2007/10/better-compile-time-asserts_29.html
- #define _GTMCompileAssertSymbolInner(line, msg) _GTMCOMPILEASSERT ## line ## __ ## msg
- #define _GTMCompileAssertSymbol(line, msg) _GTMCompileAssertSymbolInner(line, msg)
- #define _GTMCompileAssert(test, msg) \
- typedef char _GTMCompileAssertSymbol(__LINE__, msg) [ ((test) ? 1 : -1) ]
- #endif // __has_feature(c_static_assert) || __has_extension(c_static_assert)
-#endif // _GTMCompileAssert
-
-#pragma clang diagnostic pop
-
-// ----------------------------------------------------------------------------
-// CPP symbols defined based on the project settings so the GTM code has
-// simple things to test against w/o scattering the knowledge of project
-// setting through all the code.
-// ----------------------------------------------------------------------------
-
-// Provide a single constant CPP symbol that all of GTM uses for ifdefing
-// iPhone code.
-#if TARGET_OS_IPHONE // iPhone SDK
- // For iPhone specific stuff
- #define GTM_IPHONE_SDK 1
- #if TARGET_IPHONE_SIMULATOR
- #define GTM_IPHONE_DEVICE 0
- #define GTM_IPHONE_SIMULATOR 1
- #else
- #define GTM_IPHONE_DEVICE 1
- #define GTM_IPHONE_SIMULATOR 0
- #endif // TARGET_IPHONE_SIMULATOR
- // By default, GTM has provided it's own unittesting support, define this
- // to use the support provided by Xcode, especially for the Xcode4 support
- // for unittesting.
- #ifndef GTM_USING_XCTEST
- #define GTM_USING_XCTEST 0
- #endif
- #define GTM_MACOS_SDK 0
-#else
- // For MacOS specific stuff
- #define GTM_MACOS_SDK 1
- #define GTM_IPHONE_SDK 0
- #define GTM_IPHONE_SIMULATOR 0
- #define GTM_IPHONE_DEVICE 0
- #ifndef GTM_USING_XCTEST
- #define GTM_USING_XCTEST 0
- #endif
-#endif
-
-// Some of our own availability macros
-#if GTM_MACOS_SDK
-#define GTM_AVAILABLE_ONLY_ON_IPHONE UNAVAILABLE_ATTRIBUTE
-#define GTM_AVAILABLE_ONLY_ON_MACOS
-#else
-#define GTM_AVAILABLE_ONLY_ON_IPHONE
-#define GTM_AVAILABLE_ONLY_ON_MACOS UNAVAILABLE_ATTRIBUTE
-#endif
-
-// GC was dropped by Apple, define the old constant incase anyone still keys
-// off of it.
-#ifndef GTM_SUPPORT_GC
- #define GTM_SUPPORT_GC 0
-#endif
-
-// Some support for advanced clang static analysis functionality
-#ifndef NS_RETURNS_RETAINED
- #if __has_feature(attribute_ns_returns_retained)
- #define NS_RETURNS_RETAINED __attribute__((ns_returns_retained))
- #else
- #define NS_RETURNS_RETAINED
- #endif
-#endif
-
-#ifndef NS_RETURNS_NOT_RETAINED
- #if __has_feature(attribute_ns_returns_not_retained)
- #define NS_RETURNS_NOT_RETAINED __attribute__((ns_returns_not_retained))
- #else
- #define NS_RETURNS_NOT_RETAINED
- #endif
-#endif
-
-#ifndef CF_RETURNS_RETAINED
- #if __has_feature(attribute_cf_returns_retained)
- #define CF_RETURNS_RETAINED __attribute__((cf_returns_retained))
- #else
- #define CF_RETURNS_RETAINED
- #endif
-#endif
-
-#ifndef CF_RETURNS_NOT_RETAINED
- #if __has_feature(attribute_cf_returns_not_retained)
- #define CF_RETURNS_NOT_RETAINED __attribute__((cf_returns_not_retained))
- #else
- #define CF_RETURNS_NOT_RETAINED
- #endif
-#endif
-
-#ifndef NS_CONSUMED
- #if __has_feature(attribute_ns_consumed)
- #define NS_CONSUMED __attribute__((ns_consumed))
- #else
- #define NS_CONSUMED
- #endif
-#endif
-
-#ifndef CF_CONSUMED
- #if __has_feature(attribute_cf_consumed)
- #define CF_CONSUMED __attribute__((cf_consumed))
- #else
- #define CF_CONSUMED
- #endif
-#endif
-
-#ifndef NS_CONSUMES_SELF
- #if __has_feature(attribute_ns_consumes_self)
- #define NS_CONSUMES_SELF __attribute__((ns_consumes_self))
- #else
- #define NS_CONSUMES_SELF
- #endif
-#endif
-
-#ifndef GTM_NONNULL
- #if defined(__has_attribute)
- #if __has_attribute(nonnull)
- #define GTM_NONNULL(x) __attribute__((nonnull x))
- #else
- #define GTM_NONNULL(x)
- #endif
- #else
- #define GTM_NONNULL(x)
- #endif
-#endif
-
-// Invalidates the initializer from which it's called.
-#ifndef GTMInvalidateInitializer
- #if __has_feature(objc_arc)
- #define GTMInvalidateInitializer() \
- do { \
- [self class]; /* Avoid warning of dead store to |self|. */ \
- _GTMDevAssert(NO, @"Invalid initializer."); \
- return nil; \
- } while (0)
- #else
- #define GTMInvalidateInitializer() \
- do { \
- [self release]; \
- _GTMDevAssert(NO, @"Invalid initializer."); \
- return nil; \
- } while (0)
- #endif
-#endif
-
-#ifndef GTMCFAutorelease
- // GTMCFAutorelease returns an id. In contrast, Apple's CFAutorelease returns
- // a CFTypeRef.
- #if __has_feature(objc_arc)
- #define GTMCFAutorelease(x) CFBridgingRelease(x)
- #else
- #define GTMCFAutorelease(x) ([(id)x autorelease])
- #endif
-#endif
-
-#ifdef __OBJC__
-
-
-// Macro to allow you to create NSStrings out of other macros.
-// #define FOO foo
-// NSString *fooString = GTM_NSSTRINGIFY(FOO);
-#if !defined (GTM_NSSTRINGIFY)
- #define GTM_NSSTRINGIFY_INNER(x) @#x
- #define GTM_NSSTRINGIFY(x) GTM_NSSTRINGIFY_INNER(x)
-#endif
-
-// Macro to allow fast enumeration when building for 10.5 or later, and
-// reliance on NSEnumerator for 10.4. Remember, NSDictionary w/ FastEnumeration
-// does keys, so pick the right thing, nothing is done on the FastEnumeration
-// side to be sure you're getting what you wanted.
-#ifndef GTM_FOREACH_OBJECT
- #if TARGET_OS_IPHONE || !(MAC_OS_X_VERSION_MIN_REQUIRED < MAC_OS_X_VERSION_10_5)
- #define GTM_FOREACH_ENUMEREE(element, enumeration) \
- for (element in enumeration)
- #define GTM_FOREACH_OBJECT(element, collection) \
- for (element in collection)
- #define GTM_FOREACH_KEY(element, collection) \
- for (element in collection)
- #else
- #define GTM_FOREACH_ENUMEREE(element, enumeration) \
- for (NSEnumerator *_ ## element ## _enum = enumeration; \
- (element = [_ ## element ## _enum nextObject]) != nil; )
- #define GTM_FOREACH_OBJECT(element, collection) \
- GTM_FOREACH_ENUMEREE(element, [collection objectEnumerator])
- #define GTM_FOREACH_KEY(element, collection) \
- GTM_FOREACH_ENUMEREE(element, [collection keyEnumerator])
- #endif
-#endif
-
-// ============================================================================
-
-// GTM_SEL_STRING is for specifying selector (usually property) names to KVC
-// or KVO methods.
-// In debug it will generate warnings for undeclared selectors if
-// -Wunknown-selector is turned on.
-// In release it will have no runtime overhead.
-#ifndef GTM_SEL_STRING
- #ifdef DEBUG
- #define GTM_SEL_STRING(selName) NSStringFromSelector(@selector(selName))
- #else
- #define GTM_SEL_STRING(selName) @#selName
- #endif // DEBUG
-#endif // GTM_SEL_STRING
-
-#ifndef GTM_WEAK
-#if __has_feature(objc_arc_weak)
- // With ARC enabled, __weak means a reference that isn't implicitly
- // retained. __weak objects are accessed through runtime functions, so
- // they are zeroed out, but this requires OS X 10.7+.
- // At clang r251041+, ARC-style zeroing weak references even work in
- // non-ARC mode.
- #define GTM_WEAK __weak
- #elif __has_feature(objc_arc)
- // ARC, but targeting 10.6 or older, where zeroing weak references don't
- // exist.
- #define GTM_WEAK __unsafe_unretained
- #else
- // With manual reference counting, __weak used to be silently ignored.
- // clang r251041 gives it the ARC semantics instead. This means they
- // now require a deployment target of 10.7, while some clients of GTM
- // still target 10.6. In these cases, expand to __unsafe_unretained instead
- #define GTM_WEAK
- #endif
-#endif
-
-#endif // __OBJC__
diff --git a/src/ios/Firebase/Performance/GoogleToolboxForMac.framework/Headers/GTMLocalizedString.h b/src/ios/Firebase/Performance/GoogleToolboxForMac.framework/Headers/GTMLocalizedString.h
deleted file mode 100644
index c49b8a9da..000000000
--- a/src/ios/Firebase/Performance/GoogleToolboxForMac.framework/Headers/GTMLocalizedString.h
+++ /dev/null
@@ -1,79 +0,0 @@
-//
-// GTMLocalizedString.h
-//
-// Copyright (c) 2010 Google Inc. All rights reserved.
-//
-// Licensed under the Apache License, Version 2.0 (the "License"); you may not
-// use this file except in compliance with the License. You may obtain a copy
-// of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
-// License for the specific language governing permissions and limitations under
-// the License.
-//
-
-#import
-#import "GTMDefines.h"
-
-// The NSLocalizedString macros do not have NS_FORMAT_ARGUMENT modifiers put
-// on them which means you get warnings on Snow Leopard with when
-// GCC_WARN_TYPECHECK_CALLS_TO_PRINTF = YES and you do things like:
-// NSString *foo
-// = [NSString stringWithFormat:NSLocalizedString(@"blah %@", nil), @"bar"];
-// The GTMLocalizedString functions fix that for you so you can do:
-// NSString *foo
-// = [NSString stringWithFormat:GTMLocalizedString(@"blah %@", nil), @"bar"];
-// and you will compile cleanly.
-// If you use genstrings you can call it with
-// genstrings -s GTMLocalizedString ...
-// and it should work as expected.
-// You can override how GTM gets its localized strings (if you are using
-// something other than NSLocalizedString) by redefining
-// GTMLocalizedStringWithDefaultValueInternal.
-
-#ifndef GTMLocalizedStringWithDefaultValueInternal
- #define GTMLocalizedStringWithDefaultValueInternal \
- NSLocalizedStringWithDefaultValue
-#endif
-
-GTM_INLINE NS_FORMAT_ARGUMENT(1) NSString *GTMLocalizedString(
- NSString *key, NSString *comment) {
- return GTMLocalizedStringWithDefaultValueInternal(key,
- nil,
- [NSBundle mainBundle],
- @"",
- comment);
-}
-
-GTM_INLINE NS_FORMAT_ARGUMENT(1) NSString *GTMLocalizedStringFromTable(
- NSString *key, NSString *tableName, NSString *comment) {
- return GTMLocalizedStringWithDefaultValueInternal(key,
- tableName,
- [NSBundle mainBundle],
- @"",
- comment);
-}
-
-GTM_INLINE NS_FORMAT_ARGUMENT(1) NSString *GTMLocalizedStringFromTableInBundle(
- NSString *key, NSString *tableName, NSBundle *bundle, NSString *comment) {
- return GTMLocalizedStringWithDefaultValueInternal(key,
- tableName,
- bundle,
- @"",
- comment);
-}
-
-GTM_INLINE NS_FORMAT_ARGUMENT(1) NSString *GTMLocalizedStringWithDefaultValue(
- NSString *key, NSString *tableName, NSBundle *bundle, NSString *value,
- NSString *comment) {
- return GTMLocalizedStringWithDefaultValueInternal(key,
- tableName,
- bundle,
- value,
- comment);
-}
-
diff --git a/src/ios/Firebase/Performance/GoogleToolboxForMac.framework/Headers/GTMLogger.h b/src/ios/Firebase/Performance/GoogleToolboxForMac.framework/Headers/GTMLogger.h
deleted file mode 100644
index 16f0eafb9..000000000
--- a/src/ios/Firebase/Performance/GoogleToolboxForMac.framework/Headers/GTMLogger.h
+++ /dev/null
@@ -1,508 +0,0 @@
-//
-// GTMLogger.h
-//
-// Copyright 2007-2008 Google Inc.
-//
-// Licensed under the Apache License, Version 2.0 (the "License"); you may not
-// use this file except in compliance with the License. You may obtain a copy
-// of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
-// License for the specific language governing permissions and limitations under
-// the License.
-//
-
-// Key Abstractions
-// ----------------
-//
-// This file declares multiple classes and protocols that are used by the
-// GTMLogger logging system. The 4 main abstractions used in this file are the
-// following:
-//
-// * logger (GTMLogger) - The main logging class that users interact with. It
-// has methods for logging at different levels and uses a log writer, a log
-// formatter, and a log filter to get the job done.
-//
-// * log writer (GTMLogWriter) - Writes a given string to some log file, where
-// a "log file" can be a physical file on disk, a POST over HTTP to some URL,
-// or even some in-memory structure (e.g., a ring buffer).
-//
-// * log formatter (GTMLogFormatter) - Given a format string and arguments as
-// a va_list, returns a single formatted NSString. A "formatted string" could
-// be a string with the date prepended, a string with values in a CSV format,
-// or even a string of XML.
-//
-// * log filter (GTMLogFilter) - Given a formatted log message as an NSString
-// and the level at which the message is to be logged, this class will decide
-// whether the given message should be logged or not. This is a flexible way
-// to filter out messages logged at a certain level, messages that contain
-// certain text, or filter nothing out at all. This gives the caller the
-// flexibility to dynamically enable debug logging in Release builds.
-//
-// This file also declares some classes to handle the common log writer, log
-// formatter, and log filter cases. Callers can also create their own writers,
-// formatters, and filters and they can even build them on top of the ones
-// declared here. Keep in mind that your custom writer/formatter/filter may be
-// called from multiple threads, so it must be thread-safe.
-
-#import
-#import "GTMDefines.h"
-
-// Predeclaration of used protocols that are declared later in this file.
-@protocol GTMLogWriter, GTMLogFormatter, GTMLogFilter;
-
-// GTMLogger
-//
-// GTMLogger is the primary user-facing class for an object-oriented logging
-// system. It is built on the concept of log formatters (GTMLogFormatter), log
-// writers (GTMLogWriter), and log filters (GTMLogFilter). When a message is
-// sent to a GTMLogger to log a message, the message is formatted using the log
-// formatter, then the log filter is consulted to see if the message should be
-// logged, and if so, the message is sent to the log writer to be written out.
-//
-// GTMLogger is intended to be a flexible and thread-safe logging solution. Its
-// flexibility comes from the fact that GTMLogger instances can be customized
-// with user defined formatters, filters, and writers. And these writers,
-// filters, and formatters can be combined, stacked, and customized in arbitrary
-// ways to suit the needs at hand. For example, multiple writers can be used at
-// the same time, and a GTMLogger instance can even be used as another
-// GTMLogger's writer. This allows for arbitrarily deep logging trees.
-//
-// A standard GTMLogger uses a writer that sends messages to standard out, a
-// formatter that smacks a timestamp and a few other bits of interesting
-// information on the message, and a filter that filters out debug messages from
-// release builds. Using the standard log settings, a log message will look like
-// the following:
-//
-// 2007-12-30 10:29:24.177 myapp[4588/0xa07d0f60] [lvl=1] foo=
-//
-// The output contains the date and time of the log message, the name of the
-// process followed by its process ID/thread ID, the log level at which the
-// message was logged (in the previous example the level was 1:
-// kGTMLoggerLevelDebug), and finally, the user-specified log message itself (in
-// this case, the log message was @"foo=%@", foo).
-//
-// Multiple instances of GTMLogger can be created, each configured their own
-// way. Though GTMLogger is not a singleton (in the GoF sense), it does provide
-// access to a shared (i.e., globally accessible) GTMLogger instance. This makes
-// it convenient for all code in a process to use the same GTMLogger instance.
-// The shared GTMLogger instance can also be configured in an arbitrary, and
-// these configuration changes will affect all code that logs through the shared
-// instance.
-
-//
-// Log Levels
-// ----------
-// GTMLogger has 3 different log levels: Debug, Info, and Error. GTMLogger
-// doesn't take any special action based on the log level; it simply forwards
-// this information on to formatters, filters, and writers, each of which may
-// optionally take action based on the level. Since log level filtering is
-// performed at runtime, log messages are typically not filtered out at compile
-// time. The exception to this rule is that calls to the GTMLoggerDebug() macro
-// *ARE* filtered out of non-DEBUG builds. This is to be backwards compatible
-// with behavior that many developers are currently used to. Note that this
-// means that GTMLoggerDebug(@"hi") will be compiled out of Release builds, but
-// [[GTMLogger sharedLogger] logDebug:@"hi"] will NOT be compiled out.
-//
-// Standard loggers are created with the GTMLogLevelFilter log filter, which
-// filters out certain log messages based on log level, and some other settings.
-//
-// In addition to the -logDebug:, -logInfo:, and -logError: methods defined on
-// GTMLogger itself, there are also C macros that make usage of the shared
-// GTMLogger instance very convenient. These macros are:
-//
-// GTMLoggerDebug(...)
-// GTMLoggerInfo(...)
-// GTMLoggerError(...)
-//
-// Again, a notable feature of these macros is that GTMLogDebug() calls *will be
-// compiled out of non-DEBUG builds*.
-//
-// Standard Loggers
-// ----------------
-// GTMLogger has the concept of "standard loggers". A standard logger is simply
-// a logger that is pre-configured with some standard/common writer, formatter,
-// and filter combination. Standard loggers are created using the creation
-// methods beginning with "standard". The alternative to a standard logger is a
-// regular logger, which will send messages to stdout, with no special
-// formatting, and no filtering.
-//
-// How do I use GTMLogger?
-// ----------------------
-// The typical way you will want to use GTMLogger is to simply use the
-// GTMLogger*() macros for logging from code. That way we can easily make
-// changes to the GTMLogger class and simply update the macros accordingly. Only
-// your application startup code (perhaps, somewhere in main()) should use the
-// GTMLogger class directly in order to configure the shared logger, which all
-// of the code using the macros will be using. Again, this is just the typical
-// situation.
-//
-// To be complete, there are cases where you may want to use GTMLogger directly,
-// or even create separate GTMLogger instances for some reason. That's fine,
-// too.
-//
-// Examples
-// --------
-// The following show some common GTMLogger use cases.
-//
-// 1. You want to log something as simply as possible. Also, this call will only
-// appear in debug builds. In non-DEBUG builds it will be completely removed.
-//
-// GTMLoggerDebug(@"foo = %@", foo);
-//
-// 2. The previous example is similar to the following. The major difference is
-// that the previous call (example 1) will be compiled out of Release builds
-// but this statement will not be compiled out.
-//
-// [[GTMLogger sharedLogger] logDebug:@"foo = %@", foo];
-//
-// 3. Send all logging output from the shared logger to a file. We do this by
-// creating an NSFileHandle for writing associated with a file, and setting
-// that file handle as the logger's writer.
-//
-// NSFileHandle *f = [NSFileHandle fileHandleForWritingAtPath:@"/tmp/f.log"
-// create:YES];
-// [[GTMLogger sharedLogger] setWriter:f];
-// GTMLoggerError(@"hi"); // This will be sent to /tmp/f.log
-//
-// 4. Create a new GTMLogger that will log to a file. This example differs from
-// the previous one because here we create a new GTMLogger that is different
-// from the shared logger.
-//
-// GTMLogger *logger = [GTMLogger standardLoggerWithPath:@"/tmp/temp.log"];
-// [logger logInfo:@"hi temp log file"];
-//
-// 5. Create a logger that writes to stdout and does NOT do any formatting to
-// the log message. This might be useful, for example, when writing a help
-// screen for a command-line tool to standard output.
-//
-// GTMLogger *logger = [GTMLogger logger];
-// [logger logInfo:@"%@ version 0.1 usage", progName];
-//
-// 6. Send log output to stdout AND to a log file. The trick here is that
-// NSArrays function as composite log writers, which means when an array is
-// set as the log writer, it forwards all logging messages to all of its
-// contained GTMLogWriters.
-//
-// // Create array of GTMLogWriters
-// NSArray *writers = [NSArray arrayWithObjects:
-// [NSFileHandle fileHandleForWritingAtPath:@"/tmp/f.log" create:YES],
-// [NSFileHandle fileHandleWithStandardOutput], nil];
-//
-// GTMLogger *logger = [GTMLogger standardLogger];
-// [logger setWriter:writers];
-// [logger logInfo:@"hi"]; // Output goes to stdout and /tmp/f.log
-//
-// For futher details on log writers, formatters, and filters, see the
-// documentation below.
-//
-// NOTE: GTMLogger is application level logging. By default it does nothing
-// with _GTMDevLog/_GTMDevAssert (see GTMDefines.h). An application can choose
-// to bridge _GTMDevLog/_GTMDevAssert to GTMLogger by providing macro
-// definitions in its prefix header (see GTMDefines.h for how one would do
-// that).
-//
-@interface GTMLogger : NSObject {
- @private
- id writer_;
- id formatter_;
- id filter_;
-}
-
-//
-// Accessors for the shared logger instance
-//
-
-// Returns a shared/global standard GTMLogger instance. Callers should typically
-// use this method to get a GTMLogger instance, unless they explicitly want
-// their own instance to configure for their own needs. This is the only method
-// that returns a shared instance; all the rest return new GTMLogger instances.
-+ (id)sharedLogger;
-
-// Sets the shared logger instance to |logger|. Future calls to +sharedLogger
-// will return |logger| instead.
-+ (void)setSharedLogger:(GTMLogger *)logger;
-
-//
-// Creation methods
-//
-
-// Returns a new autoreleased GTMLogger instance that will log to stdout, using
-// the GTMLogStandardFormatter, and the GTMLogLevelFilter filter.
-+ (id)standardLogger;
-
-// Same as +standardLogger, but logs to stderr.
-+ (id)standardLoggerWithStderr;
-
-// Same as +standardLogger but levels >= kGTMLoggerLevelError are routed to
-// stderr, everything else goes to stdout.
-+ (id)standardLoggerWithStdoutAndStderr;
-
-// Returns a new standard GTMLogger instance with a log writer that will
-// write to the file at |path|, and will use the GTMLogStandardFormatter and
-// GTMLogLevelFilter classes. If |path| does not exist, it will be created.
-+ (id)standardLoggerWithPath:(NSString *)path;
-
-// Returns an autoreleased GTMLogger instance that will use the specified
-// |writer|, |formatter|, and |filter|.
-+ (id)loggerWithWriter:(id)writer
- formatter:(id)formatter
- filter:(id)filter;
-
-// Returns an autoreleased GTMLogger instance that logs to stdout, with the
-// basic formatter, and no filter. The returned logger differs from the logger
-// returned by +standardLogger because this one does not do any filtering and
-// does not do any special log formatting; this is the difference between a
-// "regular" logger and a "standard" logger.
-+ (id)logger;
-
-// Designated initializer. This method returns a GTMLogger initialized with the
-// specified |writer|, |formatter|, and |filter|. See the setter methods below
-// for what values will be used if nil is passed for a parameter.
-- (id)initWithWriter:(id)writer
- formatter:(id)formatter
- filter:(id)filter;
-
-//
-// Logging methods
-//
-
-// Logs a message at the debug level (kGTMLoggerLevelDebug).
-- (void)logDebug:(NSString *)fmt, ... NS_FORMAT_FUNCTION(1, 2);
-// Logs a message at the info level (kGTMLoggerLevelInfo).
-- (void)logInfo:(NSString *)fmt, ... NS_FORMAT_FUNCTION(1, 2);
-// Logs a message at the error level (kGTMLoggerLevelError).
-- (void)logError:(NSString *)fmt, ... NS_FORMAT_FUNCTION(1, 2);
-// Logs a message at the assert level (kGTMLoggerLevelAssert).
-- (void)logAssert:(NSString *)fmt, ... NS_FORMAT_FUNCTION(1, 2);
-
-
-//
-// Accessors
-//
-
-// Accessor methods for the log writer. If the log writer is set to nil,
-// [NSFileHandle fileHandleWithStandardOutput] is used.
-- (id)writer;
-- (void)setWriter:(id)writer;
-
-// Accessor methods for the log formatter. If the log formatter is set to nil,
-// GTMLogBasicFormatter is used. This formatter will format log messages in a
-// plain printf style.
-- (id)formatter;
-- (void)setFormatter:(id)formatter;
-
-// Accessor methods for the log filter. If the log filter is set to nil,
-// GTMLogNoFilter is used, which allows all log messages through.
-- (id)filter;
-- (void)setFilter:(id)filter;
-
-@end // GTMLogger
-
-
-// Helper functions that are used by the convenience GTMLogger*() macros that
-// enable the logging of function names.
-@interface GTMLogger (GTMLoggerMacroHelpers)
-- (void)logFuncDebug:(const char *)func msg:(NSString *)fmt, ...
- NS_FORMAT_FUNCTION(2, 3);
-- (void)logFuncInfo:(const char *)func msg:(NSString *)fmt, ...
- NS_FORMAT_FUNCTION(2, 3);
-- (void)logFuncError:(const char *)func msg:(NSString *)fmt, ...
- NS_FORMAT_FUNCTION(2, 3);
-- (void)logFuncAssert:(const char *)func msg:(NSString *)fmt, ...
- NS_FORMAT_FUNCTION(2, 3);
-@end // GTMLoggerMacroHelpers
-
-
-// The convenience macros are only defined if they haven't already been defined.
-#ifndef GTMLoggerInfo
-
-// Convenience macros that log to the shared GTMLogger instance. These macros
-// are how users should typically log to GTMLogger. Notice that GTMLoggerDebug()
-// calls will be compiled out of non-Debug builds.
-#define GTMLoggerDebug(...) \
- [[GTMLogger sharedLogger] logFuncDebug:__func__ msg:__VA_ARGS__]
-#define GTMLoggerInfo(...) \
- [[GTMLogger sharedLogger] logFuncInfo:__func__ msg:__VA_ARGS__]
-#define GTMLoggerError(...) \
- [[GTMLogger sharedLogger] logFuncError:__func__ msg:__VA_ARGS__]
-#define GTMLoggerAssert(...) \
- [[GTMLogger sharedLogger] logFuncAssert:__func__ msg:__VA_ARGS__]
-
-// If we're not in a debug build, remove the GTMLoggerDebug statements. This
-// makes calls to GTMLoggerDebug "compile out" of Release builds
-#ifndef DEBUG
-#undef GTMLoggerDebug
-#define GTMLoggerDebug(...) do {} while(0)
-#endif
-
-#endif // !defined(GTMLoggerInfo)
-
-// Log levels.
-typedef enum {
- kGTMLoggerLevelUnknown,
- kGTMLoggerLevelDebug,
- kGTMLoggerLevelInfo,
- kGTMLoggerLevelError,
- kGTMLoggerLevelAssert,
-} GTMLoggerLevel;
-
-
-//
-// Log Writers
-//
-
-// Protocol to be implemented by a GTMLogWriter instance.
-@protocol GTMLogWriter
-// Writes the given log message to where the log writer is configured to write.
-- (void)logMessage:(NSString *)msg level:(GTMLoggerLevel)level;
-@end // GTMLogWriter
-
-
-// Simple category on NSFileHandle that makes NSFileHandles valid log writers.
-// This is convenient because something like, say, +fileHandleWithStandardError
-// now becomes a valid log writer. Log messages are written to the file handle
-// with a newline appended.
-@interface NSFileHandle (GTMFileHandleLogWriter)
-// Opens the file at |path| in append mode, and creates the file with |mode|
-// if it didn't previously exist.
-+ (id)fileHandleForLoggingAtPath:(NSString *)path mode:(mode_t)mode;
-@end // NSFileHandle
-
-
-// This category makes NSArray a GTMLogWriter that can be composed of other
-// GTMLogWriters. This is the classic Composite GoF design pattern. When the
-// GTMLogWriter -logMessage:level: message is sent to the array, the array
-// forwards the message to all of its elements that implement the GTMLogWriter
-// protocol.
-//
-// This is useful in situations where you would like to send log output to
-// multiple log writers at the same time. Simply create an NSArray of the log
-// writers you wish to use, then set the array as the "writer" for your
-// GTMLogger instance.
-@interface NSArray (GTMArrayCompositeLogWriter)
-@end // GTMArrayCompositeLogWriter
-
-
-// This category adapts the GTMLogger interface so that it can be used as a log
-// writer; it's an "adapter" in the GoF Adapter pattern sense.
-//
-// This is useful when you want to configure a logger to log to a specific
-// writer with a specific formatter and/or filter. But you want to also compose
-// that with a different log writer that may have its own formatter and/or
-// filter.
-@interface GTMLogger (GTMLoggerLogWriter)
-@end // GTMLoggerLogWriter
-
-
-//
-// Log Formatters
-//
-
-// Protocol to be implemented by a GTMLogFormatter instance.
-@protocol GTMLogFormatter
-// Returns a formatted string using the format specified in |fmt| and the va
-// args specified in |args|.
-- (NSString *)stringForFunc:(NSString *)func
- withFormat:(NSString *)fmt
- valist:(va_list)args
- level:(GTMLoggerLevel)level NS_FORMAT_FUNCTION(2, 0);
-@end // GTMLogFormatter
-
-
-// A basic log formatter that formats a string the same way that NSLog (or
-// printf) would. It does not do anything fancy, nor does it add any data of its
-// own.
-@interface GTMLogBasicFormatter : NSObject
-
-// Helper method for prettying C99 __func__ and GCC __PRETTY_FUNCTION__
-- (NSString *)prettyNameForFunc:(NSString *)func;
-
-@end // GTMLogBasicFormatter
-
-
-// A log formatter that formats the log string like the basic formatter, but
-// also prepends a timestamp and some basic process info to the message, as
-// shown in the following sample output.
-// 2007-12-30 10:29:24.177 myapp[4588/0xa07d0f60] [lvl=1] log mesage here
-@interface GTMLogStandardFormatter : GTMLogBasicFormatter {
- @private
- NSDateFormatter *dateFormatter_; // yyyy-MM-dd HH:mm:ss.SSS
- NSString *pname_;
- pid_t pid_;
-}
-@end // GTMLogStandardFormatter
-
-
-//
-// Log Filters
-//
-
-// Protocol to be implemented by a GTMLogFilter instance.
-@protocol GTMLogFilter
-// Returns YES if |msg| at |level| should be logged; NO otherwise.
-- (BOOL)filterAllowsMessage:(NSString *)msg level:(GTMLoggerLevel)level;
-@end // GTMLogFilter
-
-
-// A log filter that filters messages at the kGTMLoggerLevelDebug level out of
-// non-debug builds. Messages at the kGTMLoggerLevelInfo level are also filtered
-// out of non-debug builds unless GTMVerboseLogging is set in the environment or
-// the processes's defaults. Messages at the kGTMLoggerLevelError level are
-// never filtered.
-@interface GTMLogLevelFilter : NSObject {
- @private
- BOOL verboseLoggingEnabled_;
- NSUserDefaults *userDefaults_;
-}
-@end // GTMLogLevelFilter
-
-// A simple log filter that does NOT filter anything out;
-// -filterAllowsMessage:level will always return YES. This can be a convenient
-// way to enable debug-level logging in release builds (if you so desire).
-@interface GTMLogNoFilter : NSObject
-@end // GTMLogNoFilter
-
-
-// Base class for custom level filters. Not for direct use, use the minimum
-// or maximum level subclasses below.
-@interface GTMLogAllowedLevelFilter : NSObject {
- @private
- NSIndexSet *allowedLevels_;
-}
-@end
-
-// A log filter that allows you to set a minimum log level. Messages below this
-// level will be filtered.
-@interface GTMLogMininumLevelFilter : GTMLogAllowedLevelFilter
-
-// Designated initializer, logs at levels < |level| will be filtered.
-- (id)initWithMinimumLevel:(GTMLoggerLevel)level;
-
-@end
-
-// A log filter that allows you to set a maximum log level. Messages whose level
-// exceeds this level will be filtered. This is really only useful if you have
-// a composite GTMLogger that is sending the other messages elsewhere.
-@interface GTMLogMaximumLevelFilter : GTMLogAllowedLevelFilter
-
-// Designated initializer, logs at levels > |level| will be filtered.
-- (id)initWithMaximumLevel:(GTMLoggerLevel)level;
-
-@end
-
-
-// For subclasses only
-@interface GTMLogger (PrivateMethods)
-
-- (void)logInternalFunc:(const char *)func
- format:(NSString *)fmt
- valist:(va_list)args
- level:(GTMLoggerLevel)level NS_FORMAT_FUNCTION(2, 0);
-
-@end
-
diff --git a/src/ios/Firebase/Performance/GoogleToolboxForMac.framework/Headers/GTMMethodCheck.h b/src/ios/Firebase/Performance/GoogleToolboxForMac.framework/Headers/GTMMethodCheck.h
deleted file mode 100644
index 9fad81d8c..000000000
--- a/src/ios/Firebase/Performance/GoogleToolboxForMac.framework/Headers/GTMMethodCheck.h
+++ /dev/null
@@ -1,69 +0,0 @@
-//
-// GTMMethodCheck.h
-//
-// Copyright 2006-2016 Google Inc.
-//
-// Licensed under the Apache License, Version 2.0 (the "License"); you may not
-// use this file except in compliance with the License. You may obtain a copy
-// of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
-// License for the specific language governing permissions and limitations under
-// the License.
-//
-
-#import
-#import