# Firebase C++ API Reference

## [firebase](https://firebase.google.com/docs/reference/cpp/namespace/firebase)

| ### Classes ||
|---|---|
| [firebase::App](https://firebase.google.com/docs/reference/cpp/class/firebase/app) | Firebase application object. |
| [firebase::AppOptions](https://firebase.google.com/docs/reference/cpp/class/firebase/app-options) | Options that control the creation of a Firebase [App](https://firebase.google.com/docs/reference/cpp/class/firebase/app#classfirebase_1_1_app). |
| [firebase::Future](https://firebase.google.com/docs/reference/cpp/class/firebase/future) | Type-specific version of [FutureBase](https://firebase.google.com/docs/reference/cpp/class/firebase/future-base#classfirebase_1_1_future_base). |
| [firebase::FutureBase](https://firebase.google.com/docs/reference/cpp/class/firebase/future-base) | Type-independent return type of asynchronous calls. |
| [firebase::FutureHandle](https://firebase.google.com/docs/reference/cpp/class/firebase/future-handle) | Class that provides more context to FutureHandleId, which allows the underlying API to track handles, perform reference counting, etc. |
| [firebase::ModuleInitializer](https://firebase.google.com/docs/reference/cpp/class/firebase/module-initializer) | Utility class to help with initializing Firebase modules. |
| [firebase::Timestamp](https://firebase.google.com/docs/reference/cpp/class/firebase/timestamp) | A [Timestamp](https://firebase.google.com/docs/reference/cpp/class/firebase/timestamp#classfirebase_1_1_timestamp) represents a point in time independent of any time zone or calendar, represented as seconds and fractions of seconds at nanosecond resolution in UTC Epoch time. |
| [firebase::Variant](https://firebase.google.com/docs/reference/cpp/class/firebase/variant) | [Variant](https://firebase.google.com/docs/reference/cpp/class/firebase/variant#classfirebase_1_1_variant) data type used by Firebase libraries. |

## [firebase::analytics](https://firebase.google.com/docs/reference/cpp/namespace/firebase/analytics)

| ### Structs ||
|---|---|
| [firebase::analytics::Parameter](https://firebase.google.com/docs/reference/cpp/struct/firebase/analytics/parameter) | Event parameter. |

## [firebase::app_check](https://firebase.google.com/docs/reference/cpp/namespace/firebase/app-check)

| ### Classes ||
|---|---|
| [firebase::app_check::AppAttestProviderFactory](https://firebase.google.com/docs/reference/cpp/class/firebase/app-check/app-attest-provider-factory) | Implementation of an [AppCheckProviderFactory](https://firebase.google.com/docs/reference/cpp/class/firebase/app-check/app-check-provider-factory#classfirebase_1_1app__check_1_1_app_check_provider_factory) that builds AppAttestProviders. |
| [firebase::app_check::AppCheck](https://firebase.google.com/docs/reference/cpp/class/firebase/app-check/app-check) | Firebase [App](https://firebase.google.com/docs/reference/cpp/class/firebase/app#classfirebase_1_1_app) Check object. |
| [firebase::app_check::AppCheckListener](https://firebase.google.com/docs/reference/cpp/class/firebase/app-check/app-check-listener) | Base class used to receive messages when [AppCheck](https://firebase.google.com/docs/reference/cpp/class/firebase/app-check/app-check#classfirebase_1_1app__check_1_1_app_check) token changes. |
| [firebase::app_check::AppCheckProvider](https://firebase.google.com/docs/reference/cpp/class/firebase/app-check/app-check-provider) | Interface for a provider that generates [AppCheckToken](https://firebase.google.com/docs/reference/cpp/struct/firebase/app-check/app-check-token#structfirebase_1_1app__check_1_1_app_check_token)s. |
| [firebase::app_check::AppCheckProviderFactory](https://firebase.google.com/docs/reference/cpp/class/firebase/app-check/app-check-provider-factory) | Interface for a factory that generates [AppCheckProvider](https://firebase.google.com/docs/reference/cpp/class/firebase/app-check/app-check-provider#classfirebase_1_1app__check_1_1_app_check_provider)s. |
| [firebase::app_check::DebugAppCheckProviderFactory](https://firebase.google.com/docs/reference/cpp/class/firebase/app-check/debug-app-check-provider-factory) | Implementation of an [AppCheckProviderFactory](https://firebase.google.com/docs/reference/cpp/class/firebase/app-check/app-check-provider-factory#classfirebase_1_1app__check_1_1_app_check_provider_factory) that builds DebugAppCheckProviders. |
| [firebase::app_check::DeviceCheckProviderFactory](https://firebase.google.com/docs/reference/cpp/class/firebase/app-check/device-check-provider-factory) | Implementation of an [AppCheckProviderFactory](https://firebase.google.com/docs/reference/cpp/class/firebase/app-check/app-check-provider-factory#classfirebase_1_1app__check_1_1_app_check_provider_factory) that builds DeviceCheckProviders. |
| [firebase::app_check::PlayIntegrityProviderFactory](https://firebase.google.com/docs/reference/cpp/class/firebase/app-check/play-integrity-provider-factory) | Implementation of an [AppCheckProviderFactory](https://firebase.google.com/docs/reference/cpp/class/firebase/app-check/app-check-provider-factory#classfirebase_1_1app__check_1_1_app_check_provider_factory) that builds PlayIntegrityProviders. |

| ### Structs ||
|---|---|
| [firebase::app_check::AppCheckToken](https://firebase.google.com/docs/reference/cpp/struct/firebase/app-check/app-check-token) | Struct to hold tokens emitted by the Firebase [App](https://firebase.google.com/docs/reference/cpp/class/firebase/app#classfirebase_1_1_app) Check service which are minted upon a successful application verification. |

## [firebase::auth](https://firebase.google.com/docs/reference/cpp/namespace/firebase/auth)

| ### Classes ||
|---|---|
| [firebase::auth::Auth](https://firebase.google.com/docs/reference/cpp/class/firebase/auth/auth) | Firebase authentication object. |
| [firebase::auth::Auth::FetchProvidersResult](https://firebase.google.com/docs/reference/cpp/struct/firebase/auth/auth/fetch-providers-result) | Results of calls FetchProvidersForEmail. |
| [firebase::auth::AuthStateListener](https://firebase.google.com/docs/reference/cpp/class/firebase/auth/auth-state-listener) | Listener called when there is a change in the authentication state. |
| [firebase::auth::Credential](https://firebase.google.com/docs/reference/cpp/class/firebase/auth/credential) | Authentication credentials for an authentication provider. |
| [firebase::auth::EmailAuthProvider](https://firebase.google.com/docs/reference/cpp/class/firebase/auth/email-auth-provider) | Use email and password to authenticate. |
| [firebase::auth::FacebookAuthProvider](https://firebase.google.com/docs/reference/cpp/class/firebase/auth/facebook-auth-provider) | Use an access token provided by Facebook to authenticate. |
| [firebase::auth::FederatedAuthProvider](https://firebase.google.com/docs/reference/cpp/class/firebase/auth/federated-auth-provider) | Used to authenticate with Federated [Auth](https://firebase.google.com/docs/reference/cpp/class/firebase/auth/auth#classfirebase_1_1auth_1_1_auth) Providers. |
| [firebase::auth::FederatedOAuthProvider](https://firebase.google.com/docs/reference/cpp/class/firebase/auth/federated-o-auth-provider) | Authenticates with Federated OAuth Providers via the [firebase::auth::Auth](https://firebase.google.com/docs/reference/cpp/class/firebase/auth/auth#classfirebase_1_1auth_1_1_auth) and [firebase::auth::User](https://firebase.google.com/docs/reference/cpp/class/firebase/auth/user#classfirebase_1_1auth_1_1_user) classes. |
| [firebase::auth::GameCenterAuthProvider](https://firebase.google.com/docs/reference/cpp/class/firebase/auth/game-center-auth-provider) | GameCenter (Apple) auth provider. |
| [firebase::auth::GitHubAuthProvider](https://firebase.google.com/docs/reference/cpp/class/firebase/auth/git-hub-auth-provider) | Use an access token provided by GitHub to authenticate. |
| [firebase::auth::GoogleAuthProvider](https://firebase.google.com/docs/reference/cpp/class/firebase/auth/google-auth-provider) | Use an ID token and access token provided by Google to authenticate. |
| [firebase::auth::IdTokenListener](https://firebase.google.com/docs/reference/cpp/class/firebase/auth/id-token-listener) | Listener called when there is a change in the ID token. |
| [firebase::auth::MicrosoftAuthProvider](https://firebase.google.com/docs/reference/cpp/class/firebase/auth/microsoft-auth-provider) | Use an access token provided by Microsoft to authenticate. |
| [firebase::auth::OAuthProvider](https://firebase.google.com/docs/reference/cpp/class/firebase/auth/o-auth-provider) | OAuth2.0+UserInfo auth provider (OIDC compliant and non-compliant). |
| [firebase::auth::PhoneAuthCredential](https://firebase.google.com/docs/reference/cpp/class/firebase/auth/phone-auth-credential) | Wraps phone number and verification information for authentication purposes. |
| [firebase::auth::PhoneAuthProvider](https://firebase.google.com/docs/reference/cpp/class/firebase/auth/phone-auth-provider) | Use phone number text messages to authenticate. |
| [firebase::auth::PhoneAuthProvider::ForceResendingToken](https://firebase.google.com/docs/reference/cpp/class/firebase/auth/phone-auth-provider/force-resending-token) | Token to maintain current phone number verification session. |
| [firebase::auth::PhoneAuthProvider::Listener](https://firebase.google.com/docs/reference/cpp/class/firebase/auth/phone-auth-provider/listener) | Receive callbacks from [VerifyPhoneNumber](https://firebase.google.com/docs/reference/cpp/class/firebase/auth/phone-auth-provider#classfirebase_1_1auth_1_1_phone_auth_provider_1ad8b24001f507a420a3915d0f29865d84) events. |
| [firebase::auth::PlayGamesAuthProvider](https://firebase.google.com/docs/reference/cpp/class/firebase/auth/play-games-auth-provider) | Use a server auth code provided by Google Play Games to authenticate. |
| [firebase::auth::TwitterAuthProvider](https://firebase.google.com/docs/reference/cpp/class/firebase/auth/twitter-auth-provider) | Use a token and secret provided by Twitter to authenticate. |
| [firebase::auth::User](https://firebase.google.com/docs/reference/cpp/class/firebase/auth/user) | Firebase user account object. |
| [firebase::auth::User::UserProfile](https://firebase.google.com/docs/reference/cpp/struct/firebase/auth/user/user-profile) | Parameters to the [UpdateUserProfile()](https://firebase.google.com/docs/reference/cpp/class/firebase/auth/user#classfirebase_1_1auth_1_1_user_1a28ff1771991dbcee97a6d99e84ba0f6d) function. |
| [firebase::auth::UserInfoInterface](https://firebase.google.com/docs/reference/cpp/class/firebase/auth/user-info-interface) | Interface implemented by each identity provider. |
| [firebase::auth::YahooAuthProvider](https://firebase.google.com/docs/reference/cpp/class/firebase/auth/yahoo-auth-provider) | Use an access token provided by Yahoo to authenticate. |

| ### Structs ||
|---|---|
| [firebase::auth::AdditionalUserInfo](https://firebase.google.com/docs/reference/cpp/struct/firebase/auth/additional-user-info) | Additional user data returned from an identity provider. |
| [firebase::auth::AuthResult](https://firebase.google.com/docs/reference/cpp/struct/firebase/auth/auth-result) | The result of operations that can affect authentication state. |
| [firebase::auth::FederatedOAuthProviderData](https://firebase.google.com/docs/reference/cpp/struct/firebase/auth/federated-o-auth-provider-data) | Contains information to identify an OAuth provider. |
| [firebase::auth::FederatedProviderData](https://firebase.google.com/docs/reference/cpp/struct/firebase/auth/federated-provider-data) | Contains information required to authenticate with a third party provider. |
| [firebase::auth::PhoneAuthOptions](https://firebase.google.com/docs/reference/cpp/struct/firebase/auth/phone-auth-options) | Options object for configuring phone validation flows in [PhoneAuthProvider](https://firebase.google.com/docs/reference/cpp/class/firebase/auth/phone-auth-provider#classfirebase_1_1auth_1_1_phone_auth_provider). |
| [firebase::auth::UserMetadata](https://firebase.google.com/docs/reference/cpp/struct/firebase/auth/user-metadata) | Metadata corresponding to a Firebase user. |

## [firebase::database](https://firebase.google.com/docs/reference/cpp/namespace/firebase/database)

| ### Classes ||
|---|---|
| [firebase::database::ChildListener](https://firebase.google.com/docs/reference/cpp/class/firebase/database/child-listener) | Child listener interface. |
| [firebase::database::Database](https://firebase.google.com/docs/reference/cpp/class/firebase/database/database) | Entry point for the Firebase Realtime [Database](https://firebase.google.com/docs/reference/cpp/class/firebase/database/database#classfirebase_1_1database_1_1_database) C++ SDK. |
| [firebase::database::DatabaseReference](https://firebase.google.com/docs/reference/cpp/class/firebase/database/database-reference) | [DatabaseReference](https://firebase.google.com/docs/reference/cpp/class/firebase/database/database-reference#classfirebase_1_1database_1_1_database_reference) represents a particular location in your [Database](https://firebase.google.com/docs/reference/cpp/class/firebase/database/database#classfirebase_1_1database_1_1_database) and can be used for reading or writing data to that [Database](https://firebase.google.com/docs/reference/cpp/class/firebase/database/database#classfirebase_1_1database_1_1_database) location. |
| [firebase::database::DataSnapshot](https://firebase.google.com/docs/reference/cpp/class/firebase/database/data-snapshot) | A [DataSnapshot](https://firebase.google.com/docs/reference/cpp/class/firebase/database/data-snapshot#classfirebase_1_1database_1_1_data_snapshot) instance contains data from a Firebase [Database](https://firebase.google.com/docs/reference/cpp/class/firebase/database/database#classfirebase_1_1database_1_1_database) location. |
| [firebase::database::DisconnectionHandler](https://firebase.google.com/docs/reference/cpp/class/firebase/database/disconnection-handler) | Allows you to register server-side actions to occur when the client disconnects. |
| [firebase::database::MutableData](https://firebase.google.com/docs/reference/cpp/class/firebase/database/mutable-data) | Instances of this class encapsulate the data and priority at a location. |
| [firebase::database::Query](https://firebase.google.com/docs/reference/cpp/class/firebase/database/query) | The [Query](https://firebase.google.com/docs/reference/cpp/class/firebase/database/query#classfirebase_1_1database_1_1_query) class is used for reading data. |
| [firebase::database::ValueListener](https://firebase.google.com/docs/reference/cpp/class/firebase/database/value-listener) | Value listener interface. |

## [firebase::firestore](https://firebase.google.com/docs/reference/cpp/namespace/firebase/firestore)

| ### Classes ||
|---|---|
| [firebase::firestore::AggregateQuery](https://firebase.google.com/docs/reference/cpp/class/firebase/firestore/aggregate-query) | A query that calculates aggregations over an underlying query. |
| [firebase::firestore::AggregateQuerySnapshot](https://firebase.google.com/docs/reference/cpp/class/firebase/firestore/aggregate-query-snapshot) | The results of executing an [AggregateQuery](https://firebase.google.com/docs/reference/cpp/class/firebase/firestore/aggregate-query#classfirebase_1_1firestore_1_1_aggregate_query). |
| [firebase::firestore::CollectionReference](https://firebase.google.com/docs/reference/cpp/class/firebase/firestore/collection-reference) | A [CollectionReference](https://firebase.google.com/docs/reference/cpp/class/firebase/firestore/collection-reference#classfirebase_1_1firestore_1_1_collection_reference) can be used for adding documents, getting document references, and querying for documents (using the methods inherited from `https://firebase.google.com/docs/reference/cpp/class/firebase/firestore/query#classfirebase_1_1firestore_1_1_query`). |
| [firebase::firestore::DocumentChange](https://firebase.google.com/docs/reference/cpp/class/firebase/firestore/document-change) | A [DocumentChange](https://firebase.google.com/docs/reference/cpp/class/firebase/firestore/document-change#classfirebase_1_1firestore_1_1_document_change) represents a change to the documents matching a query. |
| [firebase::firestore::DocumentReference](https://firebase.google.com/docs/reference/cpp/class/firebase/firestore/document-reference) | A [DocumentReference](https://firebase.google.com/docs/reference/cpp/class/firebase/firestore/document-reference#classfirebase_1_1firestore_1_1_document_reference) refers to a document location in a [Firestore](https://firebase.google.com/docs/reference/cpp/class/firebase/firestore/firestore#classfirebase_1_1firestore_1_1_firestore) database and can be used to write, read, or listen to the location. |
| [firebase::firestore::DocumentSnapshot](https://firebase.google.com/docs/reference/cpp/class/firebase/firestore/document-snapshot) | A [DocumentSnapshot](https://firebase.google.com/docs/reference/cpp/class/firebase/firestore/document-snapshot#classfirebase_1_1firestore_1_1_document_snapshot) contains data read from a document in your [Firestore](https://firebase.google.com/docs/reference/cpp/class/firebase/firestore/firestore#classfirebase_1_1firestore_1_1_firestore) database. |
| [firebase::firestore::FieldPath](https://firebase.google.com/docs/reference/cpp/class/firebase/firestore/field-path) | A [FieldPath](https://firebase.google.com/docs/reference/cpp/class/firebase/firestore/field-path#classfirebase_1_1firestore_1_1_field_path) refers to a field in a document. |
| [firebase::firestore::FieldValue](https://firebase.google.com/docs/reference/cpp/class/firebase/firestore/field-value) | A field value represents variant datatypes as stored by [Firestore](https://firebase.google.com/docs/reference/cpp/class/firebase/firestore/firestore#classfirebase_1_1firestore_1_1_firestore). |
| [firebase::firestore::Filter](https://firebase.google.com/docs/reference/cpp/class/firebase/firestore/filter) | A [Filter](https://firebase.google.com/docs/reference/cpp/class/firebase/firestore/filter#classfirebase_1_1firestore_1_1_filter) represents a restriction on one or more field values and can be used to refine the results of a [Query](https://firebase.google.com/docs/reference/cpp/class/firebase/firestore/query#classfirebase_1_1firestore_1_1_query). |
| [firebase::firestore::Firestore](https://firebase.google.com/docs/reference/cpp/class/firebase/firestore/firestore) | Entry point for the Firebase [Firestore](https://firebase.google.com/docs/reference/cpp/class/firebase/firestore/firestore#classfirebase_1_1firestore_1_1_firestore) C++ SDK. |
| [firebase::firestore::GeoPoint](https://firebase.google.com/docs/reference/cpp/class/firebase/firestore/geo-point) | An immutable object representing a geographical point in [Firestore](https://firebase.google.com/docs/reference/cpp/class/firebase/firestore/firestore#classfirebase_1_1firestore_1_1_firestore). |
| [firebase::firestore::ListenerRegistration](https://firebase.google.com/docs/reference/cpp/class/firebase/firestore/listener-registration) | Represents a listener that can be removed by calling [Remove()](https://firebase.google.com/docs/reference/cpp/class/firebase/firestore/listener-registration#classfirebase_1_1firestore_1_1_listener_registration_1acb1a46cf74c63cd376252babe8dcc018). |
| [firebase::firestore::LoadBundleTaskProgress](https://firebase.google.com/docs/reference/cpp/class/firebase/firestore/load-bundle-task-progress) | Represents a progress update or the final state from loading bundles. |
| [firebase::firestore::Query](https://firebase.google.com/docs/reference/cpp/class/firebase/firestore/query) | A [Query](https://firebase.google.com/docs/reference/cpp/class/firebase/firestore/query#classfirebase_1_1firestore_1_1_query) which you can read or listen to. |
| [firebase::firestore::QuerySnapshot](https://firebase.google.com/docs/reference/cpp/class/firebase/firestore/query-snapshot) | A [QuerySnapshot](https://firebase.google.com/docs/reference/cpp/class/firebase/firestore/query-snapshot#classfirebase_1_1firestore_1_1_query_snapshot) contains zero or more [DocumentSnapshot](https://firebase.google.com/docs/reference/cpp/class/firebase/firestore/document-snapshot#classfirebase_1_1firestore_1_1_document_snapshot) objects. |
| [firebase::firestore::SetOptions](https://firebase.google.com/docs/reference/cpp/class/firebase/firestore/set-options) | An options object that configures the behavior of Set() calls. |
| [firebase::firestore::Settings](https://firebase.google.com/docs/reference/cpp/class/firebase/firestore/settings) | [Settings](https://firebase.google.com/docs/reference/cpp/class/firebase/firestore/settings#classfirebase_1_1firestore_1_1_settings) used to configure a [Firestore](https://firebase.google.com/docs/reference/cpp/class/firebase/firestore/firestore#classfirebase_1_1firestore_1_1_firestore) instance. |
| [firebase::firestore::SnapshotMetadata](https://firebase.google.com/docs/reference/cpp/class/firebase/firestore/snapshot-metadata) | Metadata about a snapshot, describing the state of the snapshot. |
| [firebase::firestore::Transaction](https://firebase.google.com/docs/reference/cpp/class/firebase/firestore/transaction) | [Transaction](https://firebase.google.com/docs/reference/cpp/class/firebase/firestore/transaction#classfirebase_1_1firestore_1_1_transaction) provides methods to read and write data within a transaction. |
| [firebase::firestore::TransactionOptions](https://firebase.google.com/docs/reference/cpp/class/firebase/firestore/transaction-options) | Options to customize transaction behavior for `Firestore.runTransaction()`. |
| [firebase::firestore::WriteBatch](https://firebase.google.com/docs/reference/cpp/class/firebase/firestore/write-batch) | A write batch is used to perform multiple writes as a single atomic unit. |

## [firebase::functions](https://firebase.google.com/docs/reference/cpp/namespace/firebase/functions)

| ### Classes ||
|---|---|
| [firebase::functions::Functions](https://firebase.google.com/docs/reference/cpp/class/firebase/functions/functions) | Entry point for the Firebase C++ SDK for Cloud [Functions](https://firebase.google.com/docs/reference/cpp/class/firebase/functions/functions#classfirebase_1_1functions_1_1_functions). |
| [firebase::functions::HttpsCallableReference](https://firebase.google.com/docs/reference/cpp/class/firebase/functions/https-callable-reference) | Represents a reference to a Cloud [Functions](https://firebase.google.com/docs/reference/cpp/class/firebase/functions/functions#classfirebase_1_1functions_1_1_functions) object. |
| [firebase::functions::HttpsCallableResult](https://firebase.google.com/docs/reference/cpp/class/firebase/functions/https-callable-result) | An [HttpsCallableResult](https://firebase.google.com/docs/reference/cpp/class/firebase/functions/https-callable-result#classfirebase_1_1functions_1_1_https_callable_result) contains the result of calling an HttpsCallable. |

| ### Structs ||
|---|---|
| [firebase::functions::HttpsCallableOptions](https://firebase.google.com/docs/reference/cpp/struct/firebase/functions/https-callable-options) | Options for configuring the callable function. |

## [firebase::installations](https://firebase.google.com/docs/reference/cpp/namespace/firebase/installations)

| ### Classes ||
|---|---|
| [firebase::installations::Installations](https://firebase.google.com/docs/reference/cpp/class/firebase/installations/installations) | [Installations](https://firebase.google.com/docs/reference/cpp/class/firebase/installations/installations#classfirebase_1_1installations_1_1_installations) provides a unique identifier for each app instance and a mechanism to authenticate and authorize actions (for example, sending an FCM message). |

## [firebase::messaging](https://firebase.google.com/docs/reference/cpp/namespace/firebase/messaging)

| ### Classes ||
|---|---|
| [firebase::messaging::Listener](https://firebase.google.com/docs/reference/cpp/class/firebase/messaging/listener) | Base class used to receive messages from Firebase Cloud Messaging. |
| [firebase::messaging::PollableListener](https://firebase.google.com/docs/reference/cpp/class/firebase/messaging/pollable-listener) | A listener that can be polled to consume pending `https://firebase.google.com/docs/reference/cpp/struct/firebase/messaging/message#structfirebase_1_1messaging_1_1_message`s and registration events. |

| ### Structs ||
|---|---|
| [firebase::messaging::AndroidNotificationParams](https://firebase.google.com/docs/reference/cpp/struct/firebase/messaging/android-notification-params) | Data structure for parameters that are unique to the Android implementation. |
| [firebase::messaging::Message](https://firebase.google.com/docs/reference/cpp/struct/firebase/messaging/message) | Data structure used to receive messages from cloud messaging. |
| [firebase::messaging::MessagingOptions](https://firebase.google.com/docs/reference/cpp/struct/firebase/messaging/messaging-options) | A class to configure the behavior of Firebase Cloud Messaging. |
| [firebase::messaging::Notification](https://firebase.google.com/docs/reference/cpp/struct/firebase/messaging/notification) | Used for messages that display a notification. |

## [firebase::remote_config](https://firebase.google.com/docs/reference/cpp/namespace/firebase/remote-config)

| ### Classes ||
|---|---|
| [firebase::remote_config::ConfigUpdateListenerRegistration](https://firebase.google.com/docs/reference/cpp/class/firebase/remote-config/config-update-listener-registration) | Calling Remove stops the listener from receiving config updates and unregisters itself. |
| [firebase::remote_config::RemoteConfig](https://firebase.google.com/docs/reference/cpp/class/firebase/remote-config/remote-config) | Entry point for the Firebase C++ SDK for Remote Config. |

| ### Structs ||
|---|---|
| [firebase::remote_config::ConfigInfo](https://firebase.google.com/docs/reference/cpp/struct/firebase/remote-config/config-info) | Describes the state of the most recent Fetch() call. |
| [firebase::remote_config::ConfigKeyValue](https://firebase.google.com/docs/reference/cpp/struct/firebase/remote-config/config-key-value) | Describes a mapping of a key to a string value. |
| [firebase::remote_config::ConfigKeyValueVariant](https://firebase.google.com/docs/reference/cpp/struct/firebase/remote-config/config-key-value-variant) | Describes a mapping of a key to a value of any type. |
| [firebase::remote_config::ConfigSettings](https://firebase.google.com/docs/reference/cpp/struct/firebase/remote-config/config-settings) | Configurations for Remote Config behavior. |
| [firebase::remote_config::ConfigUpdate](https://firebase.google.com/docs/reference/cpp/struct/firebase/remote-config/config-update) | Information about the updated config. |
| [firebase::remote_config::ValueInfo](https://firebase.google.com/docs/reference/cpp/struct/firebase/remote-config/value-info) | Describes a retrieved value. |

## [firebase::storage](https://firebase.google.com/docs/reference/cpp/namespace/firebase/storage)

| ### Classes ||
|---|---|
| [firebase::storage::Controller](https://firebase.google.com/docs/reference/cpp/class/firebase/storage/controller) | Controls an ongoing operation, allowing the caller to Pause, Resume or Cancel an ongoing download or upload. |
| [firebase::storage::Listener](https://firebase.google.com/docs/reference/cpp/class/firebase/storage/listener) | Base class used to receive pause and progress events on a running read or write operation. |
| [firebase::storage::Metadata](https://firebase.google.com/docs/reference/cpp/class/firebase/storage/metadata) | [Metadata](https://firebase.google.com/docs/reference/cpp/class/firebase/storage/metadata#classfirebase_1_1storage_1_1_metadata) stores default attributes such as size and content type. |
| [firebase::storage::Storage](https://firebase.google.com/docs/reference/cpp/class/firebase/storage/storage) | Entry point for the Firebase C++ SDK for Cloud [Storage](https://firebase.google.com/docs/reference/cpp/class/firebase/storage/storage#classfirebase_1_1storage_1_1_storage). |
| [firebase::storage::StorageListResult](https://firebase.google.com/docs/reference/cpp/class/firebase/storage/storage-list-result) | Contains the prefixes and items returned by a [StorageReference::List](https://firebase.google.com/docs/reference/cpp/class/firebase/storage/storage-reference#classfirebase_1_1storage_1_1_storage_reference_1afc8bf2a6955abd24efd7975632d049ba) call. |
| [firebase::storage::StorageReference](https://firebase.google.com/docs/reference/cpp/class/firebase/storage/storage-reference) | Represents a reference to a Cloud [Storage](https://firebase.google.com/docs/reference/cpp/class/firebase/storage/storage#classfirebase_1_1storage_1_1_storage) object. |

## [firebase::ump](https://firebase.google.com/docs/reference/cpp/namespace/firebase/ump)

| ### Classes ||
|---|---|
| [firebase::ump::ConsentInfo](https://firebase.google.com/docs/reference/cpp/class/firebase/ump/consent-info) | Consent Information class for the User Messaging Platform SDK. |

| ### Structs ||
|---|---|
| [firebase::ump::ConsentDebugSettings](https://firebase.google.com/docs/reference/cpp/struct/firebase/ump/consent-debug-settings) | Debug settings for `https://firebase.google.com/docs/reference/cpp/class/firebase/ump/consent-info#classfirebase_1_1ump_1_1_consent_info_1a38f38f22b70b35732c3cd63b18dd26d2`. |
| [firebase::ump::ConsentRequestParameters](https://firebase.google.com/docs/reference/cpp/struct/firebase/ump/consent-request-parameters) | Parameters for the `https://firebase.google.com/docs/reference/cpp/class/firebase/ump/consent-info#classfirebase_1_1ump_1_1_consent_info_1a38f38f22b70b35732c3cd63b18dd26d2` operation. |

## [std](https://firebase.google.com/docs/reference/cpp/namespace/std)

| ### Structs ||
|---|---|
| [std::hash\< firebase::firestore::FieldPath \>](https://firebase.google.com/docs/reference/cpp/struct/std/hash-firebase/firestore/field-path-) | A convenient specialization of std::hash for FieldPath. |

## Additional Resources

| ## Modules ||
|---|---|
| [Analytics Events](https://firebase.google.com/docs/reference/cpp/group/event-names) | Predefined event names. |
| [Analytics Parameters](https://firebase.google.com/docs/reference/cpp/group/parameter-names) | Predefined event parameter names. |
| [Analytics User Properties](https://firebase.google.com/docs/reference/cpp/group/user-property-names) | Predefined user property names. |