module Network.Ipfs.Api.Repo where
import Control.Monad.IO.Class (MonadIO)
import Network.Ipfs.Api.Internal (_repoFsck, _repoVersion)
import Network.Ipfs.Api.Internal.Call (call, streamCall)
import Network.Ipfs.Api.Internal.Stream (_repoGc, _repoVerify)
import Network.Ipfs.Api.Types (RepoFsckObj, RepoVersionObj)
import Network.Ipfs.Client (IpfsT)
version :: MonadIO m => IpfsT m RepoVersionObj
version = call _repoVersion
fsck :: MonadIO m => IpfsT m RepoFsckObj
fsck = call _repoFsck
gc :: MonadIO m => m ()
gc = streamCall _repoGc
repoVerify :: MonadIO m => m ()
repoVerify = streamCall _repoVerify