module Okapi ( Forest (..) , Shape , fn , serve , tryServe , Function (..) , Client (..) , Route (..) , Handle (..) , handle , app , client , openApi , endpointToOpenApi , type (~>) , fetch , ClientError (..) , ClientSettings (..) , URI (..) , Link (..) , links , KnownMethod (..) , GET , POST , PUT , DELETE , KnownStatus (..) , S200 , S201 , S204 , S404 , S500 , ArrayStyle (..) , Cases , Responses , getResponses , cases , parseRequest , parseRequestResult , printRequest , link , parseResponse , parseResponseResult , parseResponses , printResponse , printResponses , SymTree , Leaf (..) , Info (..) , HasLeaf (..) , (=.) , int, int16, int32, int64, integer , bool, float, double, scientific, text , day, localTime, utcTime, timeOfDay, uuid , IsoJson , request, methodGET, methodPOST, methodPUT, methodDELETE , method, path, query, headers, body , pathOf, queryOf, headersOf , response, status200, status201, status204, status404, status500 , segment, segment_, segments , param, param', param_, flag, flag', list, list' , field, field', field_, contentType, cookie, cookie' , fieldRFC9651, fieldBareItem, fieldItem, fieldList, fieldDictionary , attribute, attribute', secure, httpOnly ) where import Okapi.Mode.Forest (Forest (..), Shape) import Okapi.Mode.Function (Function (..), fn, type (~>), serve, tryServe, app) import Okapi.Handle (Route (..), Handle (..), handle) import Okapi.Mode.Client (Client (..), ClientError (..), ClientSettings (..), fetch, client) import Okapi.Mode.Link (URI (..), Link (..), links) import Okapi.Artifact.OpenApi (endpointToOpenApi, openApi) import Okapi.Tree ( SymTree , Leaf (..), Info (..), HasLeaf (..) , int, int16, int32, int64, integer , bool, float, double, scientific, text , day, localTime, utcTime, timeOfDay, uuid , (=.) ) import Okapi.HTTP.Request ( request, methodGET, methodPOST, methodPUT, methodDELETE , method, path, query, headers, body , pathOf, queryOf, headersOf , parseRequest, parseRequestResult, printRequest, link ) import Okapi.HTTP.Request.Body (IsoJson) import Okapi.HTTP.Request.Method (DELETE, GET, KnownMethod (..), POST, PUT) import Okapi.HTTP.Request.Path (segment, segment_, segments) import Okapi.HTTP.Request.Query (ArrayStyle (..), param, param', param_, flag, flag', list, list') import Okapi.HTTP.Request.Headers ( field, field', field_, contentType, cookie, cookie' , fieldRFC9651, fieldBareItem, fieldItem, fieldList, fieldDictionary ) import Okapi.HTTP.Response ( response, status200, status201, status204, status404, status500 , parseResponse, parseResponseResult, printResponse ) import Okapi.HTTP.Response.Status (KnownStatus (..), S200, S201, S204, S404, S500) import Okapi.HTTP.Responses (Cases, Responses, getResponses, cases, parseResponses, printResponses) import Okapi.HTTP.Response.Attributes (attribute, attribute', secure, httpOnly)