firebase_rs_sdk/messaging/
mod.rs1#![doc = include_str!("README.md")]
2mod api;
3mod constants;
4mod error;
5#[cfg(any(test, all(feature = "wasm-web", target_arch = "wasm32")))]
6mod fcm_rest;
7mod subscription;
8mod support;
9mod sw_manager;
10mod token_store;
11mod types;
12
13pub use api::{
14 get_messaging, on_background_message, on_message, register_messaging_component, Messaging,
15 PermissionState,
16};
17
18pub use error::{
19 available_in_service_worker, available_in_window, failed_default_registration, internal_error,
20 invalid_argument, invalid_service_worker_registration, permission_blocked,
21 token_deletion_failed, token_subscribe_failed, token_subscribe_no_token,
22 token_unsubscribe_failed, token_update_failed, token_update_no_token, unsupported_browser,
23 MessagingError, MessagingErrorCode, MessagingResult,
24};
25
26#[cfg(not(all(feature = "wasm-web", target_arch = "wasm32")))]
27pub use subscription::PushSubscriptionManager;
28#[cfg(all(
29 feature = "wasm-web",
30 target_arch = "wasm32",
31 not(feature = "experimental-indexed-db")
32))]
33pub use subscription::PushSubscriptionManager;
34#[cfg(all(
35 feature = "wasm-web",
36 target_arch = "wasm32",
37 feature = "experimental-indexed-db"
38))]
39pub use subscription::{PushSubscriptionDetails, PushSubscriptionHandle, PushSubscriptionManager};
40pub use support::is_supported;
41#[cfg(not(all(feature = "wasm-web", target_arch = "wasm32")))]
42pub use sw_manager::{ServiceWorkerManager, ServiceWorkerRegistrationHandle};
43#[cfg(all(
44 feature = "wasm-web",
45 target_arch = "wasm32",
46 not(feature = "experimental-indexed-db")
47))]
48pub use sw_manager::{ServiceWorkerManager, ServiceWorkerRegistrationHandle};
49#[cfg(all(
50 feature = "wasm-web",
51 target_arch = "wasm32",
52 feature = "experimental-indexed-db"
53))]
54pub use sw_manager::{ServiceWorkerManager, ServiceWorkerRegistrationHandle};
55
56pub use token_store::{
57 read_token, remove_token, write_token, InstallationInfo, SubscriptionInfo, TokenRecord,
58};
59
60pub use types::{FcmOptions, MessageHandler, MessagePayload, NotificationPayload, Unsubscribe};