import Analytics from '@farfetch/blackout-analytics'; import type { Middleware } from 'redux'; import type { SetUserMiddlewareOptions } from './types/index.js'; export declare const DEFAULT_TRIGGER_SET_USER_ACTION_TYPES: Set; export declare const DEFAULT_TRIGGER_ANONYMIZE_ACTION_TYPES: Set; export declare const OPTION_TRIGGER_SET_USER_ACTIONS = "triggerSetUserActions"; export declare const OPTION_TRIGGER_ANONYMIZE_ACTIONS = "triggerAnonymizeActions"; export declare const OPTION_FETCH_USER_SELECTOR = "getUserSelector"; export declare const OPTION_FETCH_USER_ID_SELECTOR = "getUserIdSelector"; export declare const OPTION_USER_TRAITS_PICKER = "userTraitsPicker"; /** * Middleware to call `analytics.setUser()` after any action that changes user * login state is dispatched. * * @param analyticsInstance - Analytics instance. * @param actionTypesOrOptions - An options object with options to set on the middleware or a set/array * of action types to override the default set of action types the * middleware listens to. * * @returns Redux middleware. */ export declare function analyticsSetUserMiddleware(analyticsInstance: Analytics, actionTypesOrOptions?: SetUserMiddlewareOptions): Middleware;