package com.suno.android.push import android.app.Activity import android.content.Context import com.braze.Braze import com.braze.configuration.BrazeConfig import com.suno.android.common_networking.remote.session.User import javax.inject.Inject interface BrazeManager { fun configure( context: Context, ) fun openSession( activity: Activity, ) fun closeSession( activity: Activity, ) fun updateUser( user: User, ) } class BrazeManagerImpl @Inject constructor( private val braze: Braze, private val brazeConfig: BrazeConfig, ) : BrazeManager { override fun configure( context: Context, ) { Braze.configure(context, brazeConfig) } override fun openSession( activity: Activity, ) { braze.openSession(activity) } override fun closeSession( activity: Activity, ) { braze.closeSession(activity) } override fun updateUser( user: User, ) { braze.changeUser(user.id) braze.currentUser?.setEmail(user.email) } }