import type { Config, PostPasswordChangeData, PostUserData, PostUserDataLegacy, PutUserData, User, UserLegacy } from '@farfetch/blackout-client'; import type { UseUserOptions } from './types/index.js'; declare function useUser(options?: UseUserOptions): { actions: { login: (data: import("@farfetch/blackout-client").LoginData, config?: Config | undefined) => Promise; register: ((data: PostUserData, config?: Config) => Promise) | ((data: PostUserDataLegacy, config?: Config) => Promise); changePassword: (data: Omit, config?: Config) => Promise>; resetPassword: (data: import("@farfetch/blackout-client").PostPasswordResetData, config?: Config | undefined) => Promise>; recoverPassword: (data: import("@farfetch/blackout-client").PostPasswordRecoverData, config?: Config | undefined) => Promise>; fetch: ((config?: Config | undefined) => Promise) | ((config?: Config | undefined) => Promise); update: (data: PutUserData, config?: Config) => Promise; logout: (config?: Config | undefined) => Promise>; }; isFetched: boolean; isUserLoading: boolean; isRegisterLoading: boolean; isLoginLoading: boolean; isLogoutLoading: boolean; isChangePasswordLoading: boolean; isRecoverPasswordLoading: boolean; isResetPasswordLoading: boolean; authenticationError: import("@farfetch/blackout-redux").Nullable; userError: import("@farfetch/blackout-redux").Nullable; registerError: import("@farfetch/blackout-client").BlackoutError | null; loginError: import("@farfetch/blackout-client").BlackoutError | null; logoutError: import("@farfetch/blackout-client").BlackoutError | null; changePasswordError: import("@farfetch/blackout-client").BlackoutError | null; recoverPasswordError: import("@farfetch/blackout-client").BlackoutError | null; resetPasswordError: import("@farfetch/blackout-client").BlackoutError | null; data: import("@farfetch/blackout-redux").UserEntity | undefined; }; export default useUser;