module Network.IPFS.Client ( API , add , cat , pin , unpin ) where import qualified RIO.ByteString.Lazy as Lazy import Servant import Servant.Client import Network.IPFS.Prelude import Network.IPFS.Internal.Orphanage.ByteString.Lazy () import qualified Network.IPFS.File.Types as File import Network.IPFS.CID.Types import qualified Network.IPFS.Client.Add as Add import qualified Network.IPFS.Client.Cat as Cat import qualified Network.IPFS.Client.Pin as Pin type API = "api" :> "v0" :> V0API type V0API = "add" :> Add.API :<|> "cat" :> Cat.API :<|> "pin" :> Pin.API add :: Lazy.ByteString -> ClientM CID cat :: Text -> ClientM File.Serialized pin :: Text -> ClientM Pin.Response unpin :: Text -> Bool -> ClientM Pin.Response add :<|> cat :<|> pin :<|> unpin = client <| Proxy @API