package moe.lava.neon.core.di

import dev.zacsweers.metro.GraphExtension
import moe.lava.neon.core.AppSettings
import moe.lava.neon.core.api.ApiClient
import moe.lava.neon.core.repository.AuthRepository
import moe.lava.neon.core.repository.UserRepository

@GraphExtension
interface AppGraph {
    val api: ApiClient
    val settings: AppSettings

    val auth: AuthRepository
    val users: UserRepository

    val gatewayHandlers: EventHandlerGraph
}
