import { Analytics, AnalyticsSettings } from 'firebase/analytics'; import { DefaultReactFirebaseHooksOptions } from './Context'; import { DefaultOptionsOnlyAnalytics, LogEventOptions, SetUserIDOptions, SetUserPropertiesOptions } from './types'; /** * @description get firebase analytics instance easily after add {@link FirebaseProvider} and your firebase app configurations to the top of your react app. * @author Achmad Kurnianto * @date 30/07/2024 * @export * @template Options * @param {Options} [options] * @returns {*} {Analytics} */ export declare function useFirebaseAnalytics(options?: Options): Analytics; /** * @description provided options when using {@link useInitializeAnalytics} * @author Achmad Kurnianto * @date 30/07/2024 * @export * @interface DefaultUseInitializeAnalyticsOptions * @extends {DefaultReactFirebaseHooksOptions} */ export interface DefaultUseInitializeAnalyticsOptions extends DefaultReactFirebaseHooksOptions { /** * @description second parameter when using firebase {@link initializeAnalytics} method. * @author Achmad Kurnianto * @date 30/07/2024 * @type {AnalyticsSettings} * @memberof DefaultUseInitializeAnalyticsOptions */ options?: AnalyticsSettings; } /** * @description create your own firebase analytics instance with the help of firebase {@link initializeAnalytics} method. * @author Achmad Kurnianto * @date 30/07/2024 * @export * @template Options * @param {Options} [opts] * @returns {*} {Analytics} */ export declare function useInitializeAnalytics(opts?: Options): Analytics; /** * @description options data type of {@link useFirebaseAnalyticsMethods}. Please note that {@link analytics} and {@link context} attribute * @author Achmad Kurnianto * @date 01/08/2024 * @export * @interface DefaultUseFirebaseAnalyticsMethodsOptions * @extends {DefaultReactFirebaseHooksOptions} * @extends {DefaultOptionsOnlyAnalytics} */ export interface DefaultUseFirebaseAnalyticsMethodsOptions extends DefaultReactFirebaseHooksOptions, DefaultOptionsOnlyAnalytics { } /** * @description easily use firebase analytics methods which depends on its instance inside your react app. * @author Achmad Kurnianto * @date 01/08/2024 * @export * @template Options * @param {Options} [options] * @returns {*} */ export declare function useFirebaseAnalyticsMethods(options?: Options): { getGoogleAnalyticsClientId: () => Promise; logEvent: = LogEventOptions>(opts: Options_1) => void; setAnalyticsCollectionEnabled: (enabled: boolean) => void; setUserId: (opts: Options_1) => void; setUserProperties: (opts: Options_1) => void; };