3 | import public Pact.API.Operator
4 | import public Pact.API.Verb
5 | import public Pact.API.MimeRender
6 | import public Pact.API.Accept
7 | import public Pact.API.HttpApiData
8 | import public Pact.API.Component
11 | import public Data.Vect.Quantifiers
16 | { types : Vect typesLen Type }
17 | { auto prf : All FromHttpApiData types }
18 | paths : Component lastType types reqBody
22 | ApiReqBody : API -> Type
23 | ApiReqBody (path :> _) = PathReqBody path
34 | GetHandlerType : (m : Type -> Type) -> API -> Type
35 | GetHandlerType m (path :> ep) = GetPathType path $
(m (VerbResponse ep))
45 | GetEPFromAPI : (m : Type -> Type) -> API -> Type
46 | GetEPFromAPI m (path :> ep) = m (VerbResponse ep)
55 | GetEpResultTypeFromAPI : API -> Type
56 | GetEpResultTypeFromAPI (path :> ep) = VerbResponse ep