module Mpv.Effect.Commands where import Mpv.Data.RequestId (RequestId) import Mpv.Data.Response (ResponseError) data Commands (fmt :: Type) (command :: Type -> Type) :: Effect where Decode :: command a -> fmt -> Commands fmt command m (Either ResponseError a) Encode :: RequestId -> Bool -> command a -> Commands fmt command m fmt makeSem ''Commands