-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/


-- | Auto-generated swagger-petstore API Client
--   
--   . Client library for calling the Swagger Petstore API based on
--   http-client.
--   
--   host: petstore.swagger.io:80
--   
--   base path: <a>http://petstore.swagger.io:80/v2</a>
--   
--   Swagger Petstore API version: 1.0.0
--   
--   OpenAPI spec version: 2.0
--   
--   OpenAPI-Specification:
--   <a>https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md</a>
@package swagger-petstore
@version 0.1.0.0


-- | Katip Logging functions
module SwaggerPetstore.Logging

-- | Runs a Katip logging block with the Log environment
type LogExecWithContext = forall m. MonadIO m => LogContext -> LogExec m

-- | A Katip logging block
type LogExec m = forall a. KatipT m a -> m a

-- | A Katip Log environment
type LogContext = LogEnv

-- | A Katip Log severity
type LogLevel = Severity

-- | the default log environment
initLogContext :: IO LogContext

-- | Runs a Katip logging block with the Log environment
runDefaultLogExecWithContext :: LogExecWithContext

-- | Runs a Katip logging block with the Log environment
stdoutLoggingExec :: LogExecWithContext

-- | A Katip Log environment which targets stdout
stdoutLoggingContext :: LogContext -> IO LogContext

-- | Runs a Katip logging block with the Log environment
stderrLoggingExec :: LogExecWithContext

-- | A Katip Log environment which targets stderr
stderrLoggingContext :: LogContext -> IO LogContext

-- | Disables Katip logging
runNullLogExec :: LogExecWithContext

-- | Log a katip message
_log :: (Applicative m, Katip m) => Text -> LogLevel -> Text -> m ()

-- | re-throws exceptions after logging them
logExceptions :: (Katip m, MonadCatch m, Applicative m) => Text -> m a -> m a
levelInfo :: LogLevel
levelError :: LogLevel
levelDebug :: LogLevel


module SwaggerPetstore.MimeTypes
data ContentType a
ContentType :: a -> ContentType a
[unContentType] :: ContentType a -> a
data Accept a
Accept :: a -> Accept a
[unAccept] :: Accept a -> a
class MimeType mtype => Consumes req mtype
class MimeType mtype => Produces req mtype
data MimeJSON
MimeJSON :: MimeJSON
data MimeXML
MimeXML :: MimeXML
data MimePlainText
MimePlainText :: MimePlainText
data MimeFormUrlEncoded
MimeFormUrlEncoded :: MimeFormUrlEncoded
data MimeMultipartFormData
MimeMultipartFormData :: MimeMultipartFormData
data MimeOctetStream
MimeOctetStream :: MimeOctetStream
data MimeNoContent
MimeNoContent :: MimeNoContent
data MimeAny
MimeAny :: MimeAny

-- | A type for responses without content-body.
data NoContent
NoContent :: NoContent
class Typeable mtype => MimeType mtype
mimeTypes :: MimeType mtype => Proxy mtype -> [MediaType]
mimeType :: MimeType mtype => Proxy mtype -> Maybe MediaType
mimeType' :: MimeType mtype => mtype -> Maybe MediaType
mimeTypes' :: MimeType mtype => mtype -> [MediaType]

-- | <pre>
--   application/json; charset=utf-8
--   </pre>

-- | <pre>
--   application/xml; charset=utf-8
--   </pre>

-- | <pre>
--   application/x-www-form-urlencoded
--   </pre>

-- | <pre>
--   multipart/form-data
--   </pre>

-- | <pre>
--   text/plain; charset=utf-8
--   </pre>

-- | <pre>
--   application/octet-stream
--   </pre>

-- | <pre>
--   "*/*"
--   </pre>
class MimeType mtype => MimeRender mtype x
mimeRender :: MimeRender mtype x => Proxy mtype -> x -> ByteString
mimeRender' :: MimeRender mtype x => mtype -> x -> ByteString
mimeRenderDefaultMultipartFormData :: ToHttpApiData a => a -> ByteString

-- | <a>encode</a>

-- | <pre>
--   WH.urlEncodeAsForm
--   </pre>

-- | <pre>
--   P.id
--   </pre>

-- | <pre>
--   BL.fromStrict . T.encodeUtf8
--   </pre>

-- | <pre>
--   BCL.pack
--   </pre>

-- | <pre>
--   P.id
--   </pre>

-- | <pre>
--   BL.fromStrict . T.encodeUtf8
--   </pre>

-- | <pre>
--   BCL.pack
--   </pre>

-- | <pre>
--   P.Right . P.const NoContent
--   </pre>
class MimeType mtype => MimeUnrender mtype o
mimeUnrender :: MimeUnrender mtype o => Proxy mtype -> ByteString -> Either String o
mimeUnrender' :: MimeUnrender mtype o => mtype -> ByteString -> Either String o

-- | <pre>
--   A.eitherDecode
--   </pre>

-- | <pre>
--   P.left T.unpack . WH.urlDecodeAsForm
--   </pre>

-- | <pre>
--   P.Right . P.id
--   </pre>

-- | <pre>
--   P.left P.show . TL.decodeUtf8'
--   </pre>

-- | <pre>
--   P.Right . BCL.unpack
--   </pre>

-- | <pre>
--   P.Right . P.id
--   </pre>

-- | <pre>
--   P.left P.show . T.decodeUtf8' . BL.toStrict
--   </pre>

-- | <pre>
--   P.Right . BCL.unpack
--   </pre>

-- | <pre>
--   P.Right . P.const NoContent
--   </pre>
data MimeJsonCharsetutf8
MimeJsonCharsetutf8 :: MimeJsonCharsetutf8

-- | <pre>
--   application/json; charset=utf-8
--   </pre>
data MimeXmlCharsetutf8
MimeXmlCharsetutf8 :: MimeXmlCharsetutf8

-- | <pre>
--   application/xml; charset=utf-8
--   </pre>
instance GHC.Classes.Eq SwaggerPetstore.MimeTypes.NoContent
instance GHC.Show.Show SwaggerPetstore.MimeTypes.NoContent
instance SwaggerPetstore.MimeTypes.MimeType SwaggerPetstore.MimeTypes.MimeXmlCharsetutf8
instance SwaggerPetstore.MimeTypes.MimeType SwaggerPetstore.MimeTypes.MimeJsonCharsetutf8
instance Data.Aeson.Types.ToJSON.ToJSON a => SwaggerPetstore.MimeTypes.MimeRender SwaggerPetstore.MimeTypes.MimeJsonCharsetutf8 a
instance Data.Aeson.Types.FromJSON.FromJSON a => SwaggerPetstore.MimeTypes.MimeUnrender SwaggerPetstore.MimeTypes.MimeJsonCharsetutf8 a
instance Data.Aeson.Types.FromJSON.FromJSON a => SwaggerPetstore.MimeTypes.MimeUnrender SwaggerPetstore.MimeTypes.MimeJSON a
instance Web.Internal.FormUrlEncoded.FromForm a => SwaggerPetstore.MimeTypes.MimeUnrender SwaggerPetstore.MimeTypes.MimeFormUrlEncoded a
instance SwaggerPetstore.MimeTypes.MimeUnrender SwaggerPetstore.MimeTypes.MimePlainText Data.ByteString.Lazy.Internal.ByteString
instance SwaggerPetstore.MimeTypes.MimeUnrender SwaggerPetstore.MimeTypes.MimePlainText Data.Text.Internal.Text
instance SwaggerPetstore.MimeTypes.MimeUnrender SwaggerPetstore.MimeTypes.MimePlainText GHC.Base.String
instance SwaggerPetstore.MimeTypes.MimeUnrender SwaggerPetstore.MimeTypes.MimeOctetStream Data.ByteString.Lazy.Internal.ByteString
instance SwaggerPetstore.MimeTypes.MimeUnrender SwaggerPetstore.MimeTypes.MimeOctetStream Data.Text.Internal.Text
instance SwaggerPetstore.MimeTypes.MimeUnrender SwaggerPetstore.MimeTypes.MimeOctetStream GHC.Base.String
instance SwaggerPetstore.MimeTypes.MimeUnrender SwaggerPetstore.MimeTypes.MimeNoContent SwaggerPetstore.MimeTypes.NoContent
instance Data.Aeson.Types.ToJSON.ToJSON a => SwaggerPetstore.MimeTypes.MimeRender SwaggerPetstore.MimeTypes.MimeJSON a
instance Web.Internal.FormUrlEncoded.ToForm a => SwaggerPetstore.MimeTypes.MimeRender SwaggerPetstore.MimeTypes.MimeFormUrlEncoded a
instance SwaggerPetstore.MimeTypes.MimeRender SwaggerPetstore.MimeTypes.MimePlainText Data.ByteString.Lazy.Internal.ByteString
instance SwaggerPetstore.MimeTypes.MimeRender SwaggerPetstore.MimeTypes.MimePlainText Data.Text.Internal.Text
instance SwaggerPetstore.MimeTypes.MimeRender SwaggerPetstore.MimeTypes.MimePlainText GHC.Base.String
instance SwaggerPetstore.MimeTypes.MimeRender SwaggerPetstore.MimeTypes.MimeOctetStream Data.ByteString.Lazy.Internal.ByteString
instance SwaggerPetstore.MimeTypes.MimeRender SwaggerPetstore.MimeTypes.MimeOctetStream Data.Text.Internal.Text
instance SwaggerPetstore.MimeTypes.MimeRender SwaggerPetstore.MimeTypes.MimeOctetStream GHC.Base.String
instance SwaggerPetstore.MimeTypes.MimeRender SwaggerPetstore.MimeTypes.MimeMultipartFormData Data.ByteString.Lazy.Internal.ByteString
instance SwaggerPetstore.MimeTypes.MimeRender SwaggerPetstore.MimeTypes.MimeMultipartFormData GHC.Types.Bool
instance SwaggerPetstore.MimeTypes.MimeRender SwaggerPetstore.MimeTypes.MimeMultipartFormData GHC.Types.Char
instance SwaggerPetstore.MimeTypes.MimeRender SwaggerPetstore.MimeTypes.MimeMultipartFormData GHC.Types.Double
instance SwaggerPetstore.MimeTypes.MimeRender SwaggerPetstore.MimeTypes.MimeMultipartFormData GHC.Types.Float
instance SwaggerPetstore.MimeTypes.MimeRender SwaggerPetstore.MimeTypes.MimeMultipartFormData GHC.Types.Int
instance SwaggerPetstore.MimeTypes.MimeRender SwaggerPetstore.MimeTypes.MimeMultipartFormData GHC.Integer.Type.Integer
instance SwaggerPetstore.MimeTypes.MimeRender SwaggerPetstore.MimeTypes.MimeMultipartFormData GHC.Base.String
instance SwaggerPetstore.MimeTypes.MimeRender SwaggerPetstore.MimeTypes.MimeMultipartFormData Data.Text.Internal.Text
instance SwaggerPetstore.MimeTypes.MimeRender SwaggerPetstore.MimeTypes.MimeNoContent SwaggerPetstore.MimeTypes.NoContent
instance SwaggerPetstore.MimeTypes.MimeType SwaggerPetstore.MimeTypes.MimeJSON
instance SwaggerPetstore.MimeTypes.MimeType SwaggerPetstore.MimeTypes.MimeXML
instance SwaggerPetstore.MimeTypes.MimeType SwaggerPetstore.MimeTypes.MimeFormUrlEncoded
instance SwaggerPetstore.MimeTypes.MimeType SwaggerPetstore.MimeTypes.MimeMultipartFormData
instance SwaggerPetstore.MimeTypes.MimeType SwaggerPetstore.MimeTypes.MimePlainText
instance SwaggerPetstore.MimeTypes.MimeType SwaggerPetstore.MimeTypes.MimeOctetStream
instance SwaggerPetstore.MimeTypes.MimeType SwaggerPetstore.MimeTypes.MimeAny
instance SwaggerPetstore.MimeTypes.MimeType SwaggerPetstore.MimeTypes.MimeNoContent


module SwaggerPetstore.Core
data SwaggerPetstoreConfig
SwaggerPetstoreConfig :: ByteString -> Text -> LogExecWithContext -> LogContext -> [AnyAuthMethod] -> Bool -> SwaggerPetstoreConfig

-- | host supplied in the Request
[configHost] :: SwaggerPetstoreConfig -> ByteString

-- | user-agent supplied in the Request
[configUserAgent] :: SwaggerPetstoreConfig -> Text

-- | Run a block using a Logger instance
[configLogExecWithContext] :: SwaggerPetstoreConfig -> LogExecWithContext

-- | Configures the logger
[configLogContext] :: SwaggerPetstoreConfig -> LogContext

-- | List of configured auth methods
[configAuthMethods] :: SwaggerPetstoreConfig -> [AnyAuthMethod]

-- | throw exceptions if auth methods are not configured
[configValidateAuthMethods] :: SwaggerPetstoreConfig -> Bool

-- | display the config

-- | constructs a default SwaggerPetstoreConfig
--   
--   configHost:
--   
--   <pre>
--   <a>http://petstore.swagger.io:80/v2</a>
--   </pre>
--   
--   configUserAgent:
--   
--   <pre>
--   "swagger-petstore/0.1.0.0"
--   </pre>
newConfig :: IO SwaggerPetstoreConfig

-- | updates config use AuthMethod on matching requests
addAuthMethod :: AuthMethod auth => SwaggerPetstoreConfig -> auth -> SwaggerPetstoreConfig

-- | updates the config to use stdout logging
withStdoutLogging :: SwaggerPetstoreConfig -> IO SwaggerPetstoreConfig

-- | updates the config to use stderr logging
withStderrLogging :: SwaggerPetstoreConfig -> IO SwaggerPetstoreConfig

-- | updates the config to disable logging
withNoLogging :: SwaggerPetstoreConfig -> SwaggerPetstoreConfig

-- | Represents a request.
--   
--   Type Variables:
--   
--   <ul>
--   <li>req - request operation</li>
--   <li>contentType - <a>MimeType</a> associated with request body</li>
--   <li>res - response model</li>
--   <li>accept - <a>MimeType</a> associated with response body</li>
--   </ul>
data SwaggerPetstoreRequest req contentType res accept
SwaggerPetstoreRequest :: Method -> [ByteString] -> Params -> [TypeRep] -> SwaggerPetstoreRequest req contentType res accept

-- | Method of SwaggerPetstoreRequest
[rMethod] :: SwaggerPetstoreRequest req contentType res accept -> Method

-- | Endpoint of SwaggerPetstoreRequest
[rUrlPath] :: SwaggerPetstoreRequest req contentType res accept -> [ByteString]

-- | params of SwaggerPetstoreRequest
[rParams] :: SwaggerPetstoreRequest req contentType res accept -> Params

-- | types of auth methods
[rAuthTypes] :: SwaggerPetstoreRequest req contentType res accept -> [TypeRep]

-- | <a>rMethod</a> Lens
rMethodL :: Lens_' (SwaggerPetstoreRequest req contentType res accept) Method

-- | <a>rUrlPath</a> Lens
rUrlPathL :: Lens_' (SwaggerPetstoreRequest req contentType res accept) [ByteString]

-- | <a>rParams</a> Lens
rParamsL :: Lens_' (SwaggerPetstoreRequest req contentType res accept) Params

-- | <a>rParams</a> Lens
rAuthTypesL :: Lens_' (SwaggerPetstoreRequest req contentType res accept) [TypeRep]

-- | Designates the body parameter of a request
class HasBodyParam req param
setBodyParam :: forall contentType res accept. (HasBodyParam req param, Consumes req contentType, MimeRender contentType param) => SwaggerPetstoreRequest req contentType res accept -> param -> SwaggerPetstoreRequest req contentType res accept

-- | Designates the optional parameters of a request
class HasOptionalParam req param

-- | Apply an optional parameter to a request
applyOptionalParam :: HasOptionalParam req param => SwaggerPetstoreRequest req contentType res accept -> param -> SwaggerPetstoreRequest req contentType res accept

-- | infix operator / alias for <tt>addOptionalParam</tt>
(-&-) :: HasOptionalParam req param => SwaggerPetstoreRequest req contentType res accept -> param -> SwaggerPetstoreRequest req contentType res accept

-- | Request Params
data Params
Params :: Query -> RequestHeaders -> ParamBody -> Params
[paramsQuery] :: Params -> Query
[paramsHeaders] :: Params -> RequestHeaders
[paramsBody] :: Params -> ParamBody

-- | <a>paramsQuery</a> Lens
paramsQueryL :: Lens_' Params Query

-- | <a>paramsHeaders</a> Lens
paramsHeadersL :: Lens_' Params RequestHeaders

-- | <a>paramsBody</a> Lens
paramsBodyL :: Lens_' Params ParamBody

-- | Request Body
data ParamBody
ParamBodyNone :: ParamBody
ParamBodyB :: ByteString -> ParamBody
ParamBodyBL :: ByteString -> ParamBody
ParamBodyFormUrlEncoded :: Form -> ParamBody
ParamBodyMultipartFormData :: [Part] -> ParamBody
_mkRequest :: Method -> [ByteString] -> SwaggerPetstoreRequest req contentType res accept
_mkParams :: Params
setHeader :: SwaggerPetstoreRequest req contentType res accept -> [Header] -> SwaggerPetstoreRequest req contentType res accept
removeHeader :: SwaggerPetstoreRequest req contentType res accept -> [HeaderName] -> SwaggerPetstoreRequest req contentType res accept
_setContentTypeHeader :: forall req contentType res accept. MimeType contentType => SwaggerPetstoreRequest req contentType res accept -> SwaggerPetstoreRequest req contentType res accept
_setAcceptHeader :: forall req contentType res accept. MimeType accept => SwaggerPetstoreRequest req contentType res accept -> SwaggerPetstoreRequest req contentType res accept
setQuery :: SwaggerPetstoreRequest req contentType res accept -> [QueryItem] -> SwaggerPetstoreRequest req contentType res accept
addForm :: SwaggerPetstoreRequest req contentType res accept -> Form -> SwaggerPetstoreRequest req contentType res accept
_addMultiFormPart :: SwaggerPetstoreRequest req contentType res accept -> Part -> SwaggerPetstoreRequest req contentType res accept
_setBodyBS :: SwaggerPetstoreRequest req contentType res accept -> ByteString -> SwaggerPetstoreRequest req contentType res accept
_setBodyLBS :: SwaggerPetstoreRequest req contentType res accept -> ByteString -> SwaggerPetstoreRequest req contentType res accept
_hasAuthType :: AuthMethod authMethod => SwaggerPetstoreRequest req contentType res accept -> Proxy authMethod -> SwaggerPetstoreRequest req contentType res accept
toPath :: ToHttpApiData a => a -> ByteString
toHeader :: ToHttpApiData a => (HeaderName, a) -> [Header]
toForm :: ToHttpApiData v => (ByteString, v) -> Form
toQuery :: ToHttpApiData a => (ByteString, Maybe a) -> [QueryItem]

-- | Determines the format of the array if type array is used.
data CollectionFormat

-- | CSV format for multiple parameters.
CommaSeparated :: CollectionFormat

-- | Also called <a>SSV</a>
SpaceSeparated :: CollectionFormat

-- | Also called <a>TSV</a>
TabSeparated :: CollectionFormat

-- | `value1|value2|value2`
PipeSeparated :: CollectionFormat

-- | Using multiple GET parameters, e.g. `foo=bar&amp;foo=baz`. This is
--   valid only for parameters in "query" (<a>Query</a>) or "formData"
--   (<a>Form</a>)
MultiParamArray :: CollectionFormat
toHeaderColl :: ToHttpApiData a => CollectionFormat -> (HeaderName, [a]) -> [Header]
toFormColl :: ToHttpApiData v => CollectionFormat -> (ByteString, [v]) -> Form
toQueryColl :: ToHttpApiData a => CollectionFormat -> (ByteString, Maybe [a]) -> Query
_toColl :: Traversable f => CollectionFormat -> (f a -> [(b, ByteString)]) -> f [a] -> [(b, ByteString)]
_toCollA :: (Traversable f, Traversable t, Alternative t) => CollectionFormat -> (f (t a) -> [(b, t ByteString)]) -> f (t [a]) -> [(b, t ByteString)]
_toCollA' :: (Monoid c, Traversable f, Traversable t, Alternative t) => CollectionFormat -> (f (t a) -> [(b, t c)]) -> (Char -> c) -> f (t [a]) -> [(b, t c)]

-- | Provides a method to apply auth methods to requests
class Typeable a => AuthMethod a
applyAuthMethod :: AuthMethod a => SwaggerPetstoreConfig -> a -> SwaggerPetstoreRequest req contentType res accept -> IO (SwaggerPetstoreRequest req contentType res accept)

-- | An existential wrapper for any AuthMethod
data AnyAuthMethod
AnyAuthMethod :: a -> AnyAuthMethod

-- | indicates exceptions related to AuthMethods
data AuthMethodException
AuthMethodException :: String -> AuthMethodException

-- | apply all matching AuthMethods in config to request
_applyAuthMethods :: SwaggerPetstoreRequest req contentType res accept -> SwaggerPetstoreConfig -> IO (SwaggerPetstoreRequest req contentType res accept)

-- | Removes Null fields. (OpenAPI-Specification 2.0 does not allow Null in
--   JSON)
_omitNulls :: [(Text, Value)] -> Value

-- | Encodes fields using WH.toQueryParam
_toFormItem :: (ToHttpApiData a, Functor f) => t -> f a -> f (t, [Text])

-- | Collapse (Just "") to Nothing
_emptyToNothing :: Maybe String -> Maybe String

-- | Collapse (Just mempty) to Nothing
_memptyToNothing :: (Monoid a, Eq a) => Maybe a -> Maybe a
newtype DateTime
DateTime :: UTCTime -> DateTime
[unDateTime] :: DateTime -> UTCTime

-- | <pre>
--   _parseISO8601
--   </pre>
_readDateTime :: (ParseTime t, Monad m, Alternative m) => String -> m t

-- | <pre>
--   TI.formatISO8601Millis
--   </pre>
_showDateTime :: (t ~ UTCTime, FormatTime t) => t -> String

-- | parse an ISO8601 date-time string
_parseISO8601 :: (ParseTime t, Monad m, Alternative m) => String -> m t
newtype Date
Date :: Day -> Date
[unDate] :: Date -> Day

-- | <pre>
--   TI.parseTimeM True TI.defaultTimeLocale "%Y-%m-%d"
--   </pre>
_readDate :: (ParseTime t, Monad m) => String -> m t

-- | <pre>
--   TI.formatTime TI.defaultTimeLocale "%Y-%m-%d"
--   </pre>
_showDate :: FormatTime t => t -> String

-- | base64 encoded characters
newtype ByteArray
ByteArray :: ByteString -> ByteArray
[unByteArray] :: ByteArray -> ByteString

-- | read base64 encoded characters
_readByteArray :: Monad m => Text -> m ByteArray

-- | show base64 encoded characters
_showByteArray :: ByteArray -> Text

-- | any sequence of octets
newtype Binary
Binary :: ByteString -> Binary
[unBinary] :: Binary -> ByteString
_readBinaryBase64 :: Monad m => Text -> m Binary
_showBinaryBase64 :: Binary -> Text
type Lens_' s a = Lens_ s s a a
type Lens_ s t a b = forall (f :: * -> *). Functor f => (a -> f b) -> s -> f t
instance Control.DeepSeq.NFData SwaggerPetstore.Core.Binary
instance GHC.Classes.Ord SwaggerPetstore.Core.Binary
instance Data.Data.Data SwaggerPetstore.Core.Binary
instance GHC.Classes.Eq SwaggerPetstore.Core.Binary
instance Control.DeepSeq.NFData SwaggerPetstore.Core.ByteArray
instance GHC.Classes.Ord SwaggerPetstore.Core.ByteArray
instance Data.Data.Data SwaggerPetstore.Core.ByteArray
instance GHC.Classes.Eq SwaggerPetstore.Core.ByteArray
instance Data.Time.Format.FormatTime SwaggerPetstore.Core.Date
instance Data.Time.Format.Parse.ParseTime SwaggerPetstore.Core.Date
instance Control.DeepSeq.NFData SwaggerPetstore.Core.Date
instance GHC.Arr.Ix SwaggerPetstore.Core.Date
instance GHC.Classes.Ord SwaggerPetstore.Core.Date
instance Data.Data.Data SwaggerPetstore.Core.Date
instance GHC.Classes.Eq SwaggerPetstore.Core.Date
instance GHC.Enum.Enum SwaggerPetstore.Core.Date
instance Data.Time.Format.FormatTime SwaggerPetstore.Core.DateTime
instance Data.Time.Format.Parse.ParseTime SwaggerPetstore.Core.DateTime
instance Control.DeepSeq.NFData SwaggerPetstore.Core.DateTime
instance GHC.Classes.Ord SwaggerPetstore.Core.DateTime
instance Data.Data.Data SwaggerPetstore.Core.DateTime
instance GHC.Classes.Eq SwaggerPetstore.Core.DateTime
instance GHC.Show.Show SwaggerPetstore.Core.AuthMethodException
instance GHC.Show.Show (SwaggerPetstore.Core.SwaggerPetstoreRequest req contentType res accept)
instance GHC.Show.Show SwaggerPetstore.Core.Params
instance GHC.Show.Show SwaggerPetstore.Core.ParamBody
instance Data.Aeson.Types.FromJSON.FromJSON SwaggerPetstore.Core.Binary
instance Data.Aeson.Types.ToJSON.ToJSON SwaggerPetstore.Core.Binary
instance Web.Internal.HttpApiData.FromHttpApiData SwaggerPetstore.Core.Binary
instance Web.Internal.HttpApiData.ToHttpApiData SwaggerPetstore.Core.Binary
instance GHC.Show.Show SwaggerPetstore.Core.Binary
instance SwaggerPetstore.MimeTypes.MimeRender SwaggerPetstore.MimeTypes.MimeMultipartFormData SwaggerPetstore.Core.Binary
instance Data.Aeson.Types.FromJSON.FromJSON SwaggerPetstore.Core.ByteArray
instance Data.Aeson.Types.ToJSON.ToJSON SwaggerPetstore.Core.ByteArray
instance Web.Internal.HttpApiData.FromHttpApiData SwaggerPetstore.Core.ByteArray
instance Web.Internal.HttpApiData.ToHttpApiData SwaggerPetstore.Core.ByteArray
instance GHC.Show.Show SwaggerPetstore.Core.ByteArray
instance SwaggerPetstore.MimeTypes.MimeRender SwaggerPetstore.MimeTypes.MimeMultipartFormData SwaggerPetstore.Core.ByteArray
instance Data.Aeson.Types.FromJSON.FromJSON SwaggerPetstore.Core.Date
instance Data.Aeson.Types.ToJSON.ToJSON SwaggerPetstore.Core.Date
instance Web.Internal.HttpApiData.FromHttpApiData SwaggerPetstore.Core.Date
instance Web.Internal.HttpApiData.ToHttpApiData SwaggerPetstore.Core.Date
instance GHC.Show.Show SwaggerPetstore.Core.Date
instance SwaggerPetstore.MimeTypes.MimeRender SwaggerPetstore.MimeTypes.MimeMultipartFormData SwaggerPetstore.Core.Date
instance Data.Aeson.Types.FromJSON.FromJSON SwaggerPetstore.Core.DateTime
instance Data.Aeson.Types.ToJSON.ToJSON SwaggerPetstore.Core.DateTime
instance Web.Internal.HttpApiData.FromHttpApiData SwaggerPetstore.Core.DateTime
instance Web.Internal.HttpApiData.ToHttpApiData SwaggerPetstore.Core.DateTime
instance GHC.Show.Show SwaggerPetstore.Core.DateTime
instance SwaggerPetstore.MimeTypes.MimeRender SwaggerPetstore.MimeTypes.MimeMultipartFormData SwaggerPetstore.Core.DateTime
instance GHC.Exception.Exception SwaggerPetstore.Core.AuthMethodException
instance GHC.Show.Show SwaggerPetstore.Core.SwaggerPetstoreConfig
instance SwaggerPetstore.Core.AuthMethod SwaggerPetstore.Core.AnyAuthMethod


module SwaggerPetstore.Client

-- | send a request returning the raw http response
dispatchLbs :: (Produces req accept, MimeType contentType) => Manager -> SwaggerPetstoreConfig -> SwaggerPetstoreRequest req contentType res accept -> IO (Response ByteString)

-- | pair of decoded http body and http response
data MimeResult res
MimeResult :: Either MimeError res -> Response ByteString -> MimeResult res

-- | decoded http body
[mimeResult] :: MimeResult res -> Either MimeError res

-- | http response
[mimeResultResponse] :: MimeResult res -> Response ByteString

-- | pair of unrender/parser error and http response
data MimeError
MimeError :: String -> Response ByteString -> MimeError

-- | unrender/parser error
[mimeError] :: MimeError -> String

-- | http response
[mimeErrorResponse] :: MimeError -> Response ByteString

-- | send a request returning the <a>MimeResult</a>
dispatchMime :: forall req contentType res accept. (Produces req accept, MimeUnrender accept res, MimeType contentType) => Manager -> SwaggerPetstoreConfig -> SwaggerPetstoreRequest req contentType res accept -> IO (MimeResult res)

-- | like <a>dispatchMime</a>, but only returns the decoded http body
dispatchMime' :: (Produces req accept, MimeUnrender accept res, MimeType contentType) => Manager -> SwaggerPetstoreConfig -> SwaggerPetstoreRequest req contentType res accept -> IO (Either MimeError res)

-- | like <tt>dispatchReqLbs</tt>, but does not validate the operation is a
--   <tt>Producer</tt> of the "accept" <a>MimeType</a>. (Useful if the
--   server's response is undocumented)
dispatchLbsUnsafe :: (MimeType accept, MimeType contentType) => Manager -> SwaggerPetstoreConfig -> SwaggerPetstoreRequest req contentType res accept -> IO (Response ByteString)

-- | dispatch an InitRequest
dispatchInitUnsafe :: Manager -> SwaggerPetstoreConfig -> InitRequest req contentType res accept -> IO (Response ByteString)

-- | wraps an http-client <tt>Request</tt> with request/response type
--   parameters
newtype InitRequest req contentType res accept
InitRequest :: Request -> InitRequest req contentType res accept
[unInitRequest] :: InitRequest req contentType res accept -> Request

-- | Build an http-client <tt>Request</tt> record from the supplied config
--   and request
_toInitRequest :: (MimeType accept, MimeType contentType) => SwaggerPetstoreConfig -> SwaggerPetstoreRequest req contentType res accept -> IO (InitRequest req contentType res accept)

-- | modify the underlying Request
modifyInitRequest :: InitRequest req contentType res accept -> (Request -> Request) -> InitRequest req contentType res accept

-- | modify the underlying Request (monadic)
modifyInitRequestM :: Monad m => InitRequest req contentType res accept -> (Request -> m Request) -> m (InitRequest req contentType res accept)

-- | Run a block using the configured logger instance
runConfigLog :: MonadIO m => SwaggerPetstoreConfig -> LogExec m

-- | Run a block using the configured logger instance (logs exceptions)
runConfigLogWithExceptions :: (MonadCatch m, MonadIO m) => Text -> SwaggerPetstoreConfig -> LogExec m
instance GHC.Show.Show (SwaggerPetstore.Client.InitRequest req contentType res accept)
instance Data.Traversable.Traversable SwaggerPetstore.Client.MimeResult
instance Data.Foldable.Foldable SwaggerPetstore.Client.MimeResult
instance GHC.Base.Functor SwaggerPetstore.Client.MimeResult
instance GHC.Show.Show res => GHC.Show.Show (SwaggerPetstore.Client.MimeResult res)
instance GHC.Show.Show SwaggerPetstore.Client.MimeError
instance GHC.Classes.Eq SwaggerPetstore.Client.MimeError


module SwaggerPetstore.Model
newtype AdditionalMetadata
AdditionalMetadata :: Text -> AdditionalMetadata
[unAdditionalMetadata] :: AdditionalMetadata -> Text
newtype ApiKey
ApiKey :: Text -> ApiKey
[unApiKey] :: ApiKey -> Text
newtype Body
Body :: [User] -> Body
[unBody] :: Body -> [User]
newtype Byte
Byte :: ByteArray -> Byte
[unByte] :: Byte -> ByteArray
newtype Callback
Callback :: Text -> Callback
[unCallback] :: Callback -> Text
newtype EnumFormString
EnumFormString :: E'EnumFormString -> EnumFormString
[unEnumFormString] :: EnumFormString -> E'EnumFormString
newtype EnumFormStringArray
EnumFormStringArray :: [E'Inner2] -> EnumFormStringArray
[unEnumFormStringArray] :: EnumFormStringArray -> [E'Inner2]
newtype EnumHeaderString
EnumHeaderString :: E'EnumFormString -> EnumHeaderString
[unEnumHeaderString] :: EnumHeaderString -> E'EnumFormString
newtype EnumHeaderStringArray
EnumHeaderStringArray :: [E'Inner2] -> EnumHeaderStringArray
[unEnumHeaderStringArray] :: EnumHeaderStringArray -> [E'Inner2]
newtype EnumQueryDouble
EnumQueryDouble :: E'EnumNumber -> EnumQueryDouble
[unEnumQueryDouble] :: EnumQueryDouble -> E'EnumNumber
newtype EnumQueryInteger
EnumQueryInteger :: E'EnumQueryInteger -> EnumQueryInteger
[unEnumQueryInteger] :: EnumQueryInteger -> E'EnumQueryInteger
newtype EnumQueryString
EnumQueryString :: E'EnumFormString -> EnumQueryString
[unEnumQueryString] :: EnumQueryString -> E'EnumFormString
newtype EnumQueryStringArray
EnumQueryStringArray :: [E'Inner2] -> EnumQueryStringArray
[unEnumQueryStringArray] :: EnumQueryStringArray -> [E'Inner2]
newtype File
File :: FilePath -> File
[unFile] :: File -> FilePath
newtype Int32
Int32 :: Int -> Int32
[unInt32] :: Int32 -> Int
newtype Int64
Int64 :: Integer -> Int64
[unInt64] :: Int64 -> Integer
newtype Name2
Name2 :: Text -> Name2
[unName2] :: Name2 -> Text
newtype Number
Number :: Double -> Number
[unNumber] :: Number -> Double
newtype OrderId
OrderId :: Integer -> OrderId
[unOrderId] :: OrderId -> Integer
newtype OrderIdText
OrderIdText :: Text -> OrderIdText
[unOrderIdText] :: OrderIdText -> Text
newtype Param
Param :: Text -> Param
[unParam] :: Param -> Text
newtype Param2
Param2 :: Text -> Param2
[unParam2] :: Param2 -> Text
newtype ParamBinary
ParamBinary :: Binary -> ParamBinary
[unParamBinary] :: ParamBinary -> Binary
newtype ParamDate
ParamDate :: Date -> ParamDate
[unParamDate] :: ParamDate -> Date
newtype ParamDateTime
ParamDateTime :: DateTime -> ParamDateTime
[unParamDateTime] :: ParamDateTime -> DateTime
newtype ParamDouble
ParamDouble :: Double -> ParamDouble
[unParamDouble] :: ParamDouble -> Double
newtype ParamFloat
ParamFloat :: Float -> ParamFloat
[unParamFloat] :: ParamFloat -> Float
newtype ParamInteger
ParamInteger :: Int -> ParamInteger
[unParamInteger] :: ParamInteger -> Int
newtype ParamString
ParamString :: Text -> ParamString
[unParamString] :: ParamString -> Text
newtype Password
Password :: Text -> Password
[unPassword] :: Password -> Text
newtype PatternWithoutDelimiter
PatternWithoutDelimiter :: Text -> PatternWithoutDelimiter
[unPatternWithoutDelimiter] :: PatternWithoutDelimiter -> Text
newtype PetId
PetId :: Integer -> PetId
[unPetId] :: PetId -> Integer
newtype Status
Status :: [E'Status2] -> Status
[unStatus] :: Status -> [E'Status2]
newtype StatusText
StatusText :: Text -> StatusText
[unStatusText] :: StatusText -> Text
newtype Tags
Tags :: [Text] -> Tags
[unTags] :: Tags -> [Text]
newtype Username
Username :: Text -> Username
[unUsername] :: Username -> Text

-- | AdditionalPropertiesClass
data AdditionalPropertiesClass
AdditionalPropertiesClass :: !(Maybe (Map String Text)) -> !(Maybe (Map String (Map String Text))) -> AdditionalPropertiesClass

-- | "map_property"
[additionalPropertiesClassMapProperty] :: AdditionalPropertiesClass -> !(Maybe (Map String Text))

-- | "map_of_map_property"
[additionalPropertiesClassMapOfMapProperty] :: AdditionalPropertiesClass -> !(Maybe (Map String (Map String Text)))

-- | FromJSON AdditionalPropertiesClass

-- | ToJSON AdditionalPropertiesClass

-- | Construct a value of type <a>AdditionalPropertiesClass</a> (by
--   applying it's required fields, if any)
mkAdditionalPropertiesClass :: AdditionalPropertiesClass

-- | Animal
data Animal
Animal :: !(Text) -> !(Maybe Text) -> Animal

-- | <i>Required</i> "className"
[animalClassName] :: Animal -> !(Text)

-- | "color"
[animalColor] :: Animal -> !(Maybe Text)

-- | FromJSON Animal

-- | ToJSON Animal

-- | Construct a value of type <a>Animal</a> (by applying it's required
--   fields, if any)
mkAnimal :: Text -> Animal

-- | AnimalFarm
data AnimalFarm
AnimalFarm :: AnimalFarm

-- | FromJSON AnimalFarm

-- | ToJSON AnimalFarm

-- | Construct a value of type <a>AnimalFarm</a> (by applying it's required
--   fields, if any)
mkAnimalFarm :: AnimalFarm

-- | ApiResponse
data ApiResponse
ApiResponse :: !(Maybe Int) -> !(Maybe Text) -> !(Maybe Text) -> ApiResponse

-- | "code"
[apiResponseCode] :: ApiResponse -> !(Maybe Int)

-- | "type"
[apiResponseType] :: ApiResponse -> !(Maybe Text)

-- | "message"
[apiResponseMessage] :: ApiResponse -> !(Maybe Text)

-- | FromJSON ApiResponse

-- | ToJSON ApiResponse

-- | Construct a value of type <a>ApiResponse</a> (by applying it's
--   required fields, if any)
mkApiResponse :: ApiResponse

-- | ArrayOfArrayOfNumberOnly
data ArrayOfArrayOfNumberOnly
ArrayOfArrayOfNumberOnly :: !(Maybe [[Double]]) -> ArrayOfArrayOfNumberOnly

-- | <a>ArrayArrayNumber</a>
[arrayOfArrayOfNumberOnlyArrayArrayNumber] :: ArrayOfArrayOfNumberOnly -> !(Maybe [[Double]])

-- | FromJSON ArrayOfArrayOfNumberOnly

-- | ToJSON ArrayOfArrayOfNumberOnly

-- | Construct a value of type <a>ArrayOfArrayOfNumberOnly</a> (by applying
--   it's required fields, if any)
mkArrayOfArrayOfNumberOnly :: ArrayOfArrayOfNumberOnly

-- | ArrayOfNumberOnly
data ArrayOfNumberOnly
ArrayOfNumberOnly :: !(Maybe [Double]) -> ArrayOfNumberOnly

-- | <a>ArrayNumber</a>
[arrayOfNumberOnlyArrayNumber] :: ArrayOfNumberOnly -> !(Maybe [Double])

-- | FromJSON ArrayOfNumberOnly

-- | ToJSON ArrayOfNumberOnly

-- | Construct a value of type <a>ArrayOfNumberOnly</a> (by applying it's
--   required fields, if any)
mkArrayOfNumberOnly :: ArrayOfNumberOnly

-- | ArrayTest
data ArrayTest
ArrayTest :: !(Maybe [Text]) -> !(Maybe [[Integer]]) -> !(Maybe [[ReadOnlyFirst]]) -> ArrayTest

-- | "array_of_string"
[arrayTestArrayOfString] :: ArrayTest -> !(Maybe [Text])

-- | "array_array_of_integer"
[arrayTestArrayArrayOfInteger] :: ArrayTest -> !(Maybe [[Integer]])

-- | "array_array_of_model"
[arrayTestArrayArrayOfModel] :: ArrayTest -> !(Maybe [[ReadOnlyFirst]])

-- | FromJSON ArrayTest

-- | ToJSON ArrayTest

-- | Construct a value of type <a>ArrayTest</a> (by applying it's required
--   fields, if any)
mkArrayTest :: ArrayTest

-- | Capitalization
data Capitalization
Capitalization :: !(Maybe Text) -> !(Maybe Text) -> !(Maybe Text) -> !(Maybe Text) -> !(Maybe Text) -> !(Maybe Text) -> Capitalization

-- | "smallCamel"
[capitalizationSmallCamel] :: Capitalization -> !(Maybe Text)

-- | <a>CapitalCamel</a>
[capitalizationCapitalCamel] :: Capitalization -> !(Maybe Text)

-- | "small_Snake"
[capitalizationSmallSnake] :: Capitalization -> !(Maybe Text)

-- | <a>Capital_Snake</a>
[capitalizationCapitalSnake] :: Capitalization -> !(Maybe Text)

-- | <a>SCA_ETH_Flow_Points</a>
[capitalizationScaEthFlowPoints] :: Capitalization -> !(Maybe Text)

-- | <a>ATT_NAME</a> - Name of the pet
[capitalizationAttName] :: Capitalization -> !(Maybe Text)

-- | FromJSON Capitalization

-- | ToJSON Capitalization

-- | Construct a value of type <a>Capitalization</a> (by applying it's
--   required fields, if any)
mkCapitalization :: Capitalization

-- | Category
data Category
Category :: !(Maybe Integer) -> !(Maybe Text) -> Category

-- | "id"
[categoryId] :: Category -> !(Maybe Integer)

-- | "name"
[categoryName] :: Category -> !(Maybe Text)

-- | FromJSON Category

-- | ToJSON Category

-- | Construct a value of type <a>Category</a> (by applying it's required
--   fields, if any)
mkCategory :: Category

-- | ClassModel Model for testing model with "_class" property
data ClassModel
ClassModel :: !(Maybe Text) -> ClassModel

-- | "_class"
[classModelClass] :: ClassModel -> !(Maybe Text)

-- | FromJSON ClassModel

-- | ToJSON ClassModel

-- | Construct a value of type <a>ClassModel</a> (by applying it's required
--   fields, if any)
mkClassModel :: ClassModel

-- | Client
data Client
Client :: !(Maybe Text) -> Client

-- | "client"
[clientClient] :: Client -> !(Maybe Text)

-- | FromJSON Client

-- | ToJSON Client

-- | Construct a value of type <a>Client</a> (by applying it's required
--   fields, if any)
mkClient :: Client

-- | EnumArrays
data EnumArrays
EnumArrays :: !(Maybe E'JustSymbol) -> !(Maybe [E'ArrayEnum]) -> EnumArrays

-- | "just_symbol"
[enumArraysJustSymbol] :: EnumArrays -> !(Maybe E'JustSymbol)

-- | "array_enum"
[enumArraysArrayEnum] :: EnumArrays -> !(Maybe [E'ArrayEnum])

-- | FromJSON EnumArrays

-- | ToJSON EnumArrays

-- | Construct a value of type <a>EnumArrays</a> (by applying it's required
--   fields, if any)
mkEnumArrays :: EnumArrays

-- | EnumTest
data EnumTest
EnumTest :: !(Maybe E'EnumString) -> !(Maybe E'EnumInteger) -> !(Maybe E'EnumNumber) -> !(Maybe OuterEnum) -> EnumTest

-- | "enum_string"
[enumTestEnumString] :: EnumTest -> !(Maybe E'EnumString)

-- | "enum_integer"
[enumTestEnumInteger] :: EnumTest -> !(Maybe E'EnumInteger)

-- | "enum_number"
[enumTestEnumNumber] :: EnumTest -> !(Maybe E'EnumNumber)

-- | "outerEnum"
[enumTestOuterEnum] :: EnumTest -> !(Maybe OuterEnum)

-- | FromJSON EnumTest

-- | ToJSON EnumTest

-- | Construct a value of type <a>EnumTest</a> (by applying it's required
--   fields, if any)
mkEnumTest :: EnumTest

-- | FormatTest
data FormatTest
FormatTest :: !(Maybe Int) -> !(Maybe Int) -> !(Maybe Integer) -> !(Double) -> !(Maybe Float) -> !(Maybe Double) -> !(Maybe Text) -> !(ByteArray) -> !(Maybe Binary) -> !(Date) -> !(Maybe DateTime) -> !(Maybe Text) -> !(Text) -> FormatTest

-- | "integer"
[formatTestInteger] :: FormatTest -> !(Maybe Int)

-- | "int32"
[formatTestInt32] :: FormatTest -> !(Maybe Int)

-- | "int64"
[formatTestInt64] :: FormatTest -> !(Maybe Integer)

-- | <i>Required</i> "number"
[formatTestNumber] :: FormatTest -> !(Double)

-- | "float"
[formatTestFloat] :: FormatTest -> !(Maybe Float)

-- | "double"
[formatTestDouble] :: FormatTest -> !(Maybe Double)

-- | "string"
[formatTestString] :: FormatTest -> !(Maybe Text)

-- | <i>Required</i> "byte"
[formatTestByte] :: FormatTest -> !(ByteArray)

-- | "binary"
[formatTestBinary] :: FormatTest -> !(Maybe Binary)

-- | <i>Required</i> "date"
[formatTestDate] :: FormatTest -> !(Date)

-- | "dateTime"
[formatTestDateTime] :: FormatTest -> !(Maybe DateTime)

-- | "uuid"
[formatTestUuid] :: FormatTest -> !(Maybe Text)

-- | <i>Required</i> "password"
[formatTestPassword] :: FormatTest -> !(Text)

-- | FromJSON FormatTest

-- | ToJSON FormatTest

-- | Construct a value of type <a>FormatTest</a> (by applying it's required
--   fields, if any)
mkFormatTest :: Double -> ByteArray -> Date -> Text -> FormatTest

-- | HasOnlyReadOnly
data HasOnlyReadOnly
HasOnlyReadOnly :: !(Maybe Text) -> !(Maybe Text) -> HasOnlyReadOnly

-- | "bar"
[hasOnlyReadOnlyBar] :: HasOnlyReadOnly -> !(Maybe Text)

-- | "foo"
[hasOnlyReadOnlyFoo] :: HasOnlyReadOnly -> !(Maybe Text)

-- | FromJSON HasOnlyReadOnly

-- | ToJSON HasOnlyReadOnly

-- | Construct a value of type <a>HasOnlyReadOnly</a> (by applying it's
--   required fields, if any)
mkHasOnlyReadOnly :: HasOnlyReadOnly

-- | MapTest
data MapTest
MapTest :: !(Maybe (Map String (Map String Text))) -> !(Maybe (Map String E'Inner)) -> MapTest

-- | "map_map_of_string"
[mapTestMapMapOfString] :: MapTest -> !(Maybe (Map String (Map String Text)))

-- | "map_of_enum_string"
[mapTestMapOfEnumString] :: MapTest -> !(Maybe (Map String E'Inner))

-- | FromJSON MapTest

-- | ToJSON MapTest

-- | Construct a value of type <a>MapTest</a> (by applying it's required
--   fields, if any)
mkMapTest :: MapTest

-- | MixedPropertiesAndAdditionalPropertiesClass
data MixedPropertiesAndAdditionalPropertiesClass
MixedPropertiesAndAdditionalPropertiesClass :: !(Maybe Text) -> !(Maybe DateTime) -> !(Maybe (Map String Animal)) -> MixedPropertiesAndAdditionalPropertiesClass

-- | "uuid"
[mixedPropertiesAndAdditionalPropertiesClassUuid] :: MixedPropertiesAndAdditionalPropertiesClass -> !(Maybe Text)

-- | "dateTime"
[mixedPropertiesAndAdditionalPropertiesClassDateTime] :: MixedPropertiesAndAdditionalPropertiesClass -> !(Maybe DateTime)

-- | "map"
[mixedPropertiesAndAdditionalPropertiesClassMap] :: MixedPropertiesAndAdditionalPropertiesClass -> !(Maybe (Map String Animal))

-- | FromJSON MixedPropertiesAndAdditionalPropertiesClass

-- | ToJSON MixedPropertiesAndAdditionalPropertiesClass

-- | Construct a value of type
--   <a>MixedPropertiesAndAdditionalPropertiesClass</a> (by applying it's
--   required fields, if any)
mkMixedPropertiesAndAdditionalPropertiesClass :: MixedPropertiesAndAdditionalPropertiesClass

-- | Model200Response Model for testing model name starting with number
data Model200Response
Model200Response :: !(Maybe Int) -> !(Maybe Text) -> Model200Response

-- | "name"
[model200ResponseName] :: Model200Response -> !(Maybe Int)

-- | "class"
[model200ResponseClass] :: Model200Response -> !(Maybe Text)

-- | FromJSON Model200Response

-- | ToJSON Model200Response

-- | Construct a value of type <a>Model200Response</a> (by applying it's
--   required fields, if any)
mkModel200Response :: Model200Response

-- | ModelList
data ModelList
ModelList :: !(Maybe Text) -> ModelList

-- | "123-list"
[modelList123List] :: ModelList -> !(Maybe Text)

-- | FromJSON ModelList

-- | ToJSON ModelList

-- | Construct a value of type <a>ModelList</a> (by applying it's required
--   fields, if any)
mkModelList :: ModelList

-- | ModelReturn Model for testing reserved words
data ModelReturn
ModelReturn :: !(Maybe Int) -> ModelReturn

-- | "return"
[modelReturnReturn] :: ModelReturn -> !(Maybe Int)

-- | FromJSON ModelReturn

-- | ToJSON ModelReturn

-- | Construct a value of type <a>ModelReturn</a> (by applying it's
--   required fields, if any)
mkModelReturn :: ModelReturn

-- | Name Model for testing model name same as property name
data Name
Name :: !(Int) -> !(Maybe Int) -> !(Maybe Text) -> !(Maybe Int) -> Name

-- | <i>Required</i> "name"
[nameName] :: Name -> !(Int)

-- | "snake_case"
[nameSnakeCase] :: Name -> !(Maybe Int)

-- | "property"
[nameProperty] :: Name -> !(Maybe Text)

-- | "123Number"
[name123Number] :: Name -> !(Maybe Int)

-- | FromJSON Name

-- | ToJSON Name

-- | Construct a value of type <a>Name</a> (by applying it's required
--   fields, if any)
mkName :: Int -> Name

-- | NumberOnly
data NumberOnly
NumberOnly :: !(Maybe Double) -> NumberOnly

-- | <a>JustNumber</a>
[numberOnlyJustNumber] :: NumberOnly -> !(Maybe Double)

-- | FromJSON NumberOnly

-- | ToJSON NumberOnly

-- | Construct a value of type <a>NumberOnly</a> (by applying it's required
--   fields, if any)
mkNumberOnly :: NumberOnly

-- | Order
data Order
Order :: !(Maybe Integer) -> !(Maybe Integer) -> !(Maybe Int) -> !(Maybe DateTime) -> !(Maybe E'Status) -> !(Maybe Bool) -> Order

-- | "id"
[orderId] :: Order -> !(Maybe Integer)

-- | "petId"
[orderPetId] :: Order -> !(Maybe Integer)

-- | "quantity"
[orderQuantity] :: Order -> !(Maybe Int)

-- | "shipDate"
[orderShipDate] :: Order -> !(Maybe DateTime)

-- | "status" - Order Status
[orderStatus] :: Order -> !(Maybe E'Status)

-- | "complete"
[orderComplete] :: Order -> !(Maybe Bool)

-- | FromJSON Order

-- | ToJSON Order

-- | Construct a value of type <a>Order</a> (by applying it's required
--   fields, if any)
mkOrder :: Order

-- | OuterBoolean
newtype OuterBoolean
OuterBoolean :: Bool -> OuterBoolean
[unOuterBoolean] :: OuterBoolean -> Bool

-- | OuterComposite
data OuterComposite
OuterComposite :: !(Maybe OuterNumber) -> !(Maybe OuterString) -> !(Maybe OuterBoolean) -> OuterComposite

-- | "my_number"
[outerCompositeMyNumber] :: OuterComposite -> !(Maybe OuterNumber)

-- | "my_string"
[outerCompositeMyString] :: OuterComposite -> !(Maybe OuterString)

-- | "my_boolean"
[outerCompositeMyBoolean] :: OuterComposite -> !(Maybe OuterBoolean)

-- | FromJSON OuterComposite

-- | ToJSON OuterComposite

-- | Construct a value of type <a>OuterComposite</a> (by applying it's
--   required fields, if any)
mkOuterComposite :: OuterComposite

-- | OuterNumber
newtype OuterNumber
OuterNumber :: Double -> OuterNumber
[unOuterNumber] :: OuterNumber -> Double

-- | OuterString
newtype OuterString
OuterString :: Text -> OuterString
[unOuterString] :: OuterString -> Text

-- | Pet
data Pet
Pet :: !(Maybe Integer) -> !(Maybe Category) -> !(Text) -> !([Text]) -> !(Maybe [Tag]) -> !(Maybe E'Status2) -> Pet

-- | "id"
[petId] :: Pet -> !(Maybe Integer)

-- | "category"
[petCategory] :: Pet -> !(Maybe Category)

-- | <i>Required</i> "name"
[petName] :: Pet -> !(Text)

-- | <i>Required</i> "photoUrls"
[petPhotoUrls] :: Pet -> !([Text])

-- | "tags"
[petTags] :: Pet -> !(Maybe [Tag])

-- | "status" - pet status in the store
[petStatus] :: Pet -> !(Maybe E'Status2)

-- | FromJSON Pet

-- | ToJSON Pet

-- | Construct a value of type <a>Pet</a> (by applying it's required
--   fields, if any)
mkPet :: Text -> [Text] -> Pet

-- | ReadOnlyFirst
data ReadOnlyFirst
ReadOnlyFirst :: !(Maybe Text) -> !(Maybe Text) -> ReadOnlyFirst

-- | "bar"
[readOnlyFirstBar] :: ReadOnlyFirst -> !(Maybe Text)

-- | "baz"
[readOnlyFirstBaz] :: ReadOnlyFirst -> !(Maybe Text)

-- | FromJSON ReadOnlyFirst

-- | ToJSON ReadOnlyFirst

-- | Construct a value of type <a>ReadOnlyFirst</a> (by applying it's
--   required fields, if any)
mkReadOnlyFirst :: ReadOnlyFirst

-- | SpecialModelName
data SpecialModelName
SpecialModelName :: !(Maybe Integer) -> SpecialModelName

-- | "$special[property.name]"
[specialModelNameSpecialPropertyName] :: SpecialModelName -> !(Maybe Integer)

-- | FromJSON SpecialModelName

-- | ToJSON SpecialModelName

-- | Construct a value of type <a>SpecialModelName</a> (by applying it's
--   required fields, if any)
mkSpecialModelName :: SpecialModelName

-- | Tag
data Tag
Tag :: !(Maybe Integer) -> !(Maybe Text) -> Tag

-- | "id"
[tagId] :: Tag -> !(Maybe Integer)

-- | "name"
[tagName] :: Tag -> !(Maybe Text)

-- | FromJSON Tag

-- | ToJSON Tag

-- | Construct a value of type <a>Tag</a> (by applying it's required
--   fields, if any)
mkTag :: Tag

-- | User
data User
User :: !(Maybe Integer) -> !(Maybe Text) -> !(Maybe Text) -> !(Maybe Text) -> !(Maybe Text) -> !(Maybe Text) -> !(Maybe Text) -> !(Maybe Int) -> User

-- | "id"
[userId] :: User -> !(Maybe Integer)

-- | "username"
[userUsername] :: User -> !(Maybe Text)

-- | "firstName"
[userFirstName] :: User -> !(Maybe Text)

-- | "lastName"
[userLastName] :: User -> !(Maybe Text)

-- | "email"
[userEmail] :: User -> !(Maybe Text)

-- | "password"
[userPassword] :: User -> !(Maybe Text)

-- | "phone"
[userPhone] :: User -> !(Maybe Text)

-- | "userStatus" - User Status
[userUserStatus] :: User -> !(Maybe Int)

-- | FromJSON User

-- | ToJSON User

-- | Construct a value of type <a>User</a> (by applying it's required
--   fields, if any)
mkUser :: User

-- | Cat
data Cat
Cat :: !(Text) -> !(Maybe Text) -> !(Maybe Bool) -> Cat

-- | <i>Required</i> "className"
[catClassName] :: Cat -> !(Text)

-- | "color"
[catColor] :: Cat -> !(Maybe Text)

-- | "declawed"
[catDeclawed] :: Cat -> !(Maybe Bool)

-- | FromJSON Cat

-- | ToJSON Cat

-- | Construct a value of type <a>Cat</a> (by applying it's required
--   fields, if any)
mkCat :: Text -> Cat

-- | Dog
data Dog
Dog :: !(Text) -> !(Maybe Text) -> !(Maybe Text) -> Dog

-- | <i>Required</i> "className"
[dogClassName] :: Dog -> !(Text)

-- | "color"
[dogColor] :: Dog -> !(Maybe Text)

-- | "breed"
[dogBreed] :: Dog -> !(Maybe Text)

-- | FromJSON Dog

-- | ToJSON Dog

-- | Construct a value of type <a>Dog</a> (by applying it's required
--   fields, if any)
mkDog :: Text -> Dog

-- | Enum of <a>Text</a>
data E'ArrayEnum

-- | <pre>
--   "fish"
--   </pre>
E'ArrayEnum'Fish :: E'ArrayEnum

-- | <pre>
--   "crab"
--   </pre>
E'ArrayEnum'Crab :: E'ArrayEnum

-- | unwrap <a>E'ArrayEnum</a> enum
fromE'ArrayEnum :: E'ArrayEnum -> Text

-- | parse <a>E'ArrayEnum</a> enum
toE'ArrayEnum :: Text -> Either String E'ArrayEnum

-- | Enum of <a>Text</a>
data E'EnumFormString

-- | <pre>
--   "_abc"
--   </pre>
E'EnumFormString'_abc :: E'EnumFormString

-- | <pre>
--   "-efg"
--   </pre>
E'EnumFormString'_efg :: E'EnumFormString

-- | <pre>
--   "(xyz)"
--   </pre>
E'EnumFormString'_xyz :: E'EnumFormString

-- | unwrap <a>E'EnumFormString</a> enum
fromE'EnumFormString :: E'EnumFormString -> Text

-- | parse <a>E'EnumFormString</a> enum
toE'EnumFormString :: Text -> Either String E'EnumFormString

-- | Enum of <a>Int</a>
data E'EnumInteger

-- | <pre>
--   1
--   </pre>
E'EnumInteger'Num1 :: E'EnumInteger

-- | <pre>
--   -1
--   </pre>
E'EnumInteger'NumMinus_1 :: E'EnumInteger

-- | unwrap <a>E'EnumInteger</a> enum
fromE'EnumInteger :: E'EnumInteger -> Int

-- | parse <a>E'EnumInteger</a> enum
toE'EnumInteger :: Int -> Either String E'EnumInteger

-- | Enum of <a>Double</a>
data E'EnumNumber

-- | <pre>
--   1.1
--   </pre>
E'EnumNumber'Num1_Dot_1 :: E'EnumNumber

-- | <pre>
--   -1.2
--   </pre>
E'EnumNumber'NumMinus_1_Dot_2 :: E'EnumNumber

-- | unwrap <a>E'EnumNumber</a> enum
fromE'EnumNumber :: E'EnumNumber -> Double

-- | parse <a>E'EnumNumber</a> enum
toE'EnumNumber :: Double -> Either String E'EnumNumber

-- | Enum of <a>Int</a>
data E'EnumQueryInteger

-- | <pre>
--   1
--   </pre>
E'EnumQueryInteger'Num1 :: E'EnumQueryInteger

-- | <pre>
--   -2
--   </pre>
E'EnumQueryInteger'NumMinus_2 :: E'EnumQueryInteger

-- | unwrap <a>E'EnumQueryInteger</a> enum
fromE'EnumQueryInteger :: E'EnumQueryInteger -> Int

-- | parse <a>E'EnumQueryInteger</a> enum
toE'EnumQueryInteger :: Int -> Either String E'EnumQueryInteger

-- | Enum of <a>Text</a>
data E'EnumString

-- | <pre>
--   <a>UPPER</a>
--   </pre>
E'EnumString'UPPER :: E'EnumString

-- | <pre>
--   "lower"
--   </pre>
E'EnumString'Lower :: E'EnumString

-- | <pre>
--   ""
--   </pre>
E'EnumString'Empty :: E'EnumString

-- | unwrap <a>E'EnumString</a> enum
fromE'EnumString :: E'EnumString -> Text

-- | parse <a>E'EnumString</a> enum
toE'EnumString :: Text -> Either String E'EnumString

-- | Enum of <a>Text</a>
data E'Inner

-- | <pre>
--   <a>UPPER</a>
--   </pre>
E'Inner'UPPER :: E'Inner

-- | <pre>
--   "lower"
--   </pre>
E'Inner'Lower :: E'Inner

-- | unwrap <a>E'Inner</a> enum
fromE'Inner :: E'Inner -> Text

-- | parse <a>E'Inner</a> enum
toE'Inner :: Text -> Either String E'Inner

-- | Enum of <a>Text</a>
data E'Inner2

-- | <pre>
--   "&gt;"
--   </pre>
E'Inner2'GreaterThan :: E'Inner2

-- | <pre>
--   "$"
--   </pre>
E'Inner2'Dollar :: E'Inner2

-- | unwrap <a>E'Inner2</a> enum
fromE'Inner2 :: E'Inner2 -> Text

-- | parse <a>E'Inner2</a> enum
toE'Inner2 :: Text -> Either String E'Inner2

-- | Enum of <a>Text</a>
data E'JustSymbol

-- | <pre>
--   "&gt;="
--   </pre>
E'JustSymbol'Greater_Than_Or_Equal_To :: E'JustSymbol

-- | <pre>
--   "$"
--   </pre>
E'JustSymbol'Dollar :: E'JustSymbol

-- | unwrap <a>E'JustSymbol</a> enum
fromE'JustSymbol :: E'JustSymbol -> Text

-- | parse <a>E'JustSymbol</a> enum
toE'JustSymbol :: Text -> Either String E'JustSymbol

-- | Enum of <a>Text</a> . Order Status
data E'Status

-- | <pre>
--   "placed"
--   </pre>
E'Status'Placed :: E'Status

-- | <pre>
--   "approved"
--   </pre>
E'Status'Approved :: E'Status

-- | <pre>
--   "delivered"
--   </pre>
E'Status'Delivered :: E'Status

-- | unwrap <a>E'Status</a> enum
fromE'Status :: E'Status -> Text

-- | parse <a>E'Status</a> enum
toE'Status :: Text -> Either String E'Status

-- | Enum of <a>Text</a> . pet status in the store
data E'Status2

-- | <pre>
--   "available"
--   </pre>
E'Status2'Available :: E'Status2

-- | <pre>
--   "pending"
--   </pre>
E'Status2'Pending :: E'Status2

-- | <pre>
--   "sold"
--   </pre>
E'Status2'Sold :: E'Status2

-- | unwrap <a>E'Status2</a> enum
fromE'Status2 :: E'Status2 -> Text

-- | parse <a>E'Status2</a> enum
toE'Status2 :: Text -> Either String E'Status2

-- | Enum of <a>Text</a>
data EnumClass

-- | <pre>
--   "_abc"
--   </pre>
EnumClass'_abc :: EnumClass

-- | <pre>
--   "-efg"
--   </pre>
EnumClass'_efg :: EnumClass

-- | <pre>
--   "(xyz)"
--   </pre>
EnumClass'_xyz :: EnumClass

-- | unwrap <a>EnumClass</a> enum
fromEnumClass :: EnumClass -> Text

-- | parse <a>EnumClass</a> enum
toEnumClass :: Text -> Either String EnumClass

-- | Enum of <a>Text</a>
data OuterEnum

-- | <pre>
--   "placed"
--   </pre>
OuterEnum'Placed :: OuterEnum

-- | <pre>
--   "approved"
--   </pre>
OuterEnum'Approved :: OuterEnum

-- | <pre>
--   "delivered"
--   </pre>
OuterEnum'Delivered :: OuterEnum

-- | unwrap <a>OuterEnum</a> enum
fromOuterEnum :: OuterEnum -> Text

-- | parse <a>OuterEnum</a> enum
toOuterEnum :: Text -> Either String OuterEnum
data AuthApiKeyApiKey

-- | secret
AuthApiKeyApiKey :: Text -> AuthApiKeyApiKey
data AuthApiKeyApiKeyQuery

-- | secret
AuthApiKeyApiKeyQuery :: Text -> AuthApiKeyApiKeyQuery
data AuthBasicHttpBasicTest

-- | username password
AuthBasicHttpBasicTest :: ByteString -> ByteString -> AuthBasicHttpBasicTest
data AuthOAuthPetstoreAuth

-- | secret
AuthOAuthPetstoreAuth :: Text -> AuthOAuthPetstoreAuth
instance GHC.Show.Show SwaggerPetstore.Model.AuthOAuthPetstoreAuth
instance GHC.Classes.Eq SwaggerPetstore.Model.AuthOAuthPetstoreAuth
instance GHC.Show.Show SwaggerPetstore.Model.AuthBasicHttpBasicTest
instance GHC.Classes.Eq SwaggerPetstore.Model.AuthBasicHttpBasicTest
instance GHC.Show.Show SwaggerPetstore.Model.AuthApiKeyApiKeyQuery
instance GHC.Classes.Eq SwaggerPetstore.Model.AuthApiKeyApiKeyQuery
instance GHC.Show.Show SwaggerPetstore.Model.AuthApiKeyApiKey
instance GHC.Classes.Eq SwaggerPetstore.Model.AuthApiKeyApiKey
instance GHC.Classes.Eq SwaggerPetstore.Model.EnumTest
instance GHC.Show.Show SwaggerPetstore.Model.EnumTest
instance GHC.Enum.Enum SwaggerPetstore.Model.OuterEnum
instance GHC.Enum.Bounded SwaggerPetstore.Model.OuterEnum
instance GHC.Classes.Ord SwaggerPetstore.Model.OuterEnum
instance GHC.Classes.Eq SwaggerPetstore.Model.OuterEnum
instance GHC.Show.Show SwaggerPetstore.Model.OuterEnum
instance GHC.Enum.Enum SwaggerPetstore.Model.EnumClass
instance GHC.Enum.Bounded SwaggerPetstore.Model.EnumClass
instance GHC.Classes.Ord SwaggerPetstore.Model.EnumClass
instance GHC.Classes.Eq SwaggerPetstore.Model.EnumClass
instance GHC.Show.Show SwaggerPetstore.Model.EnumClass
instance GHC.Show.Show SwaggerPetstore.Model.Status
instance GHC.Classes.Eq SwaggerPetstore.Model.Status
instance GHC.Classes.Eq SwaggerPetstore.Model.Pet
instance GHC.Show.Show SwaggerPetstore.Model.Pet
instance GHC.Enum.Enum SwaggerPetstore.Model.E'Status2
instance GHC.Enum.Bounded SwaggerPetstore.Model.E'Status2
instance GHC.Classes.Ord SwaggerPetstore.Model.E'Status2
instance GHC.Classes.Eq SwaggerPetstore.Model.E'Status2
instance GHC.Show.Show SwaggerPetstore.Model.E'Status2
instance GHC.Classes.Eq SwaggerPetstore.Model.Order
instance GHC.Show.Show SwaggerPetstore.Model.Order
instance GHC.Enum.Enum SwaggerPetstore.Model.E'Status
instance GHC.Enum.Bounded SwaggerPetstore.Model.E'Status
instance GHC.Classes.Ord SwaggerPetstore.Model.E'Status
instance GHC.Classes.Eq SwaggerPetstore.Model.E'Status
instance GHC.Show.Show SwaggerPetstore.Model.E'Status
instance GHC.Classes.Eq SwaggerPetstore.Model.EnumArrays
instance GHC.Show.Show SwaggerPetstore.Model.EnumArrays
instance GHC.Enum.Enum SwaggerPetstore.Model.E'JustSymbol
instance GHC.Enum.Bounded SwaggerPetstore.Model.E'JustSymbol
instance GHC.Classes.Ord SwaggerPetstore.Model.E'JustSymbol
instance GHC.Classes.Eq SwaggerPetstore.Model.E'JustSymbol
instance GHC.Show.Show SwaggerPetstore.Model.E'JustSymbol
instance GHC.Show.Show SwaggerPetstore.Model.EnumFormStringArray
instance GHC.Classes.Eq SwaggerPetstore.Model.EnumFormStringArray
instance GHC.Show.Show SwaggerPetstore.Model.EnumHeaderStringArray
instance GHC.Classes.Eq SwaggerPetstore.Model.EnumHeaderStringArray
instance GHC.Show.Show SwaggerPetstore.Model.EnumQueryStringArray
instance GHC.Classes.Eq SwaggerPetstore.Model.EnumQueryStringArray
instance GHC.Enum.Enum SwaggerPetstore.Model.E'Inner2
instance GHC.Enum.Bounded SwaggerPetstore.Model.E'Inner2
instance GHC.Classes.Ord SwaggerPetstore.Model.E'Inner2
instance GHC.Classes.Eq SwaggerPetstore.Model.E'Inner2
instance GHC.Show.Show SwaggerPetstore.Model.E'Inner2
instance GHC.Classes.Eq SwaggerPetstore.Model.MapTest
instance GHC.Show.Show SwaggerPetstore.Model.MapTest
instance GHC.Enum.Enum SwaggerPetstore.Model.E'Inner
instance GHC.Enum.Bounded SwaggerPetstore.Model.E'Inner
instance GHC.Classes.Ord SwaggerPetstore.Model.E'Inner
instance GHC.Classes.Eq SwaggerPetstore.Model.E'Inner
instance GHC.Show.Show SwaggerPetstore.Model.E'Inner
instance GHC.Enum.Enum SwaggerPetstore.Model.E'EnumString
instance GHC.Enum.Bounded SwaggerPetstore.Model.E'EnumString
instance GHC.Classes.Ord SwaggerPetstore.Model.E'EnumString
instance GHC.Classes.Eq SwaggerPetstore.Model.E'EnumString
instance GHC.Show.Show SwaggerPetstore.Model.E'EnumString
instance GHC.Show.Show SwaggerPetstore.Model.EnumQueryInteger
instance GHC.Classes.Eq SwaggerPetstore.Model.EnumQueryInteger
instance GHC.Enum.Enum SwaggerPetstore.Model.E'EnumQueryInteger
instance GHC.Enum.Bounded SwaggerPetstore.Model.E'EnumQueryInteger
instance GHC.Classes.Ord SwaggerPetstore.Model.E'EnumQueryInteger
instance GHC.Classes.Eq SwaggerPetstore.Model.E'EnumQueryInteger
instance GHC.Show.Show SwaggerPetstore.Model.E'EnumQueryInteger
instance GHC.Show.Show SwaggerPetstore.Model.EnumQueryDouble
instance GHC.Classes.Eq SwaggerPetstore.Model.EnumQueryDouble
instance GHC.Enum.Enum SwaggerPetstore.Model.E'EnumNumber
instance GHC.Enum.Bounded SwaggerPetstore.Model.E'EnumNumber
instance GHC.Classes.Ord SwaggerPetstore.Model.E'EnumNumber
instance GHC.Classes.Eq SwaggerPetstore.Model.E'EnumNumber
instance GHC.Show.Show SwaggerPetstore.Model.E'EnumNumber
instance GHC.Enum.Enum SwaggerPetstore.Model.E'EnumInteger
instance GHC.Enum.Bounded SwaggerPetstore.Model.E'EnumInteger
instance GHC.Classes.Ord SwaggerPetstore.Model.E'EnumInteger
instance GHC.Classes.Eq SwaggerPetstore.Model.E'EnumInteger
instance GHC.Show.Show SwaggerPetstore.Model.E'EnumInteger
instance GHC.Show.Show SwaggerPetstore.Model.EnumFormString
instance GHC.Classes.Eq SwaggerPetstore.Model.EnumFormString
instance GHC.Show.Show SwaggerPetstore.Model.EnumHeaderString
instance GHC.Classes.Eq SwaggerPetstore.Model.EnumHeaderString
instance GHC.Show.Show SwaggerPetstore.Model.EnumQueryString
instance GHC.Classes.Eq SwaggerPetstore.Model.EnumQueryString
instance GHC.Enum.Enum SwaggerPetstore.Model.E'EnumFormString
instance GHC.Enum.Bounded SwaggerPetstore.Model.E'EnumFormString
instance GHC.Classes.Ord SwaggerPetstore.Model.E'EnumFormString
instance GHC.Classes.Eq SwaggerPetstore.Model.E'EnumFormString
instance GHC.Show.Show SwaggerPetstore.Model.E'EnumFormString
instance GHC.Enum.Enum SwaggerPetstore.Model.E'ArrayEnum
instance GHC.Enum.Bounded SwaggerPetstore.Model.E'ArrayEnum
instance GHC.Classes.Ord SwaggerPetstore.Model.E'ArrayEnum
instance GHC.Classes.Eq SwaggerPetstore.Model.E'ArrayEnum
instance GHC.Show.Show SwaggerPetstore.Model.E'ArrayEnum
instance GHC.Classes.Eq SwaggerPetstore.Model.Dog
instance GHC.Show.Show SwaggerPetstore.Model.Dog
instance GHC.Classes.Eq SwaggerPetstore.Model.Cat
instance GHC.Show.Show SwaggerPetstore.Model.Cat
instance Data.Aeson.Types.ToJSON.ToJSON SwaggerPetstore.Model.Body
instance GHC.Show.Show SwaggerPetstore.Model.Body
instance GHC.Classes.Eq SwaggerPetstore.Model.Body
instance GHC.Classes.Eq SwaggerPetstore.Model.User
instance GHC.Show.Show SwaggerPetstore.Model.User
instance GHC.Classes.Eq SwaggerPetstore.Model.Tag
instance GHC.Show.Show SwaggerPetstore.Model.Tag
instance GHC.Classes.Eq SwaggerPetstore.Model.SpecialModelName
instance GHC.Show.Show SwaggerPetstore.Model.SpecialModelName
instance GHC.Classes.Eq SwaggerPetstore.Model.ArrayTest
instance GHC.Show.Show SwaggerPetstore.Model.ArrayTest
instance GHC.Classes.Eq SwaggerPetstore.Model.ReadOnlyFirst
instance GHC.Show.Show SwaggerPetstore.Model.ReadOnlyFirst
instance GHC.Classes.Eq SwaggerPetstore.Model.OuterComposite
instance GHC.Show.Show SwaggerPetstore.Model.OuterComposite
instance Web.Internal.HttpApiData.FromHttpApiData SwaggerPetstore.Model.OuterString
instance Web.Internal.HttpApiData.ToHttpApiData SwaggerPetstore.Model.OuterString
instance Data.Aeson.Types.FromJSON.FromJSON SwaggerPetstore.Model.OuterString
instance Data.Aeson.Types.ToJSON.ToJSON SwaggerPetstore.Model.OuterString
instance GHC.Show.Show SwaggerPetstore.Model.OuterString
instance GHC.Classes.Eq SwaggerPetstore.Model.OuterString
instance Web.Internal.HttpApiData.FromHttpApiData SwaggerPetstore.Model.OuterNumber
instance Web.Internal.HttpApiData.ToHttpApiData SwaggerPetstore.Model.OuterNumber
instance Data.Aeson.Types.FromJSON.FromJSON SwaggerPetstore.Model.OuterNumber
instance Data.Aeson.Types.ToJSON.ToJSON SwaggerPetstore.Model.OuterNumber
instance GHC.Show.Show SwaggerPetstore.Model.OuterNumber
instance GHC.Classes.Eq SwaggerPetstore.Model.OuterNumber
instance Web.Internal.HttpApiData.FromHttpApiData SwaggerPetstore.Model.OuterBoolean
instance Web.Internal.HttpApiData.ToHttpApiData SwaggerPetstore.Model.OuterBoolean
instance Data.Aeson.Types.FromJSON.FromJSON SwaggerPetstore.Model.OuterBoolean
instance Data.Aeson.Types.ToJSON.ToJSON SwaggerPetstore.Model.OuterBoolean
instance GHC.Show.Show SwaggerPetstore.Model.OuterBoolean
instance GHC.Classes.Eq SwaggerPetstore.Model.OuterBoolean
instance GHC.Classes.Eq SwaggerPetstore.Model.NumberOnly
instance GHC.Show.Show SwaggerPetstore.Model.NumberOnly
instance GHC.Classes.Eq SwaggerPetstore.Model.Name
instance GHC.Show.Show SwaggerPetstore.Model.Name
instance GHC.Classes.Eq SwaggerPetstore.Model.ModelReturn
instance GHC.Show.Show SwaggerPetstore.Model.ModelReturn
instance GHC.Classes.Eq SwaggerPetstore.Model.ModelList
instance GHC.Show.Show SwaggerPetstore.Model.ModelList
instance GHC.Classes.Eq SwaggerPetstore.Model.Model200Response
instance GHC.Show.Show SwaggerPetstore.Model.Model200Response
instance GHC.Classes.Eq SwaggerPetstore.Model.MixedPropertiesAndAdditionalPropertiesClass
instance GHC.Show.Show SwaggerPetstore.Model.MixedPropertiesAndAdditionalPropertiesClass
instance GHC.Classes.Eq SwaggerPetstore.Model.HasOnlyReadOnly
instance GHC.Show.Show SwaggerPetstore.Model.HasOnlyReadOnly
instance GHC.Classes.Eq SwaggerPetstore.Model.FormatTest
instance GHC.Show.Show SwaggerPetstore.Model.FormatTest
instance GHC.Classes.Eq SwaggerPetstore.Model.Client
instance GHC.Show.Show SwaggerPetstore.Model.Client
instance GHC.Classes.Eq SwaggerPetstore.Model.ClassModel
instance GHC.Show.Show SwaggerPetstore.Model.ClassModel
instance GHC.Classes.Eq SwaggerPetstore.Model.Category
instance GHC.Show.Show SwaggerPetstore.Model.Category
instance GHC.Classes.Eq SwaggerPetstore.Model.Capitalization
instance GHC.Show.Show SwaggerPetstore.Model.Capitalization
instance GHC.Classes.Eq SwaggerPetstore.Model.ArrayOfNumberOnly
instance GHC.Show.Show SwaggerPetstore.Model.ArrayOfNumberOnly
instance GHC.Classes.Eq SwaggerPetstore.Model.ArrayOfArrayOfNumberOnly
instance GHC.Show.Show SwaggerPetstore.Model.ArrayOfArrayOfNumberOnly
instance GHC.Classes.Eq SwaggerPetstore.Model.ApiResponse
instance GHC.Show.Show SwaggerPetstore.Model.ApiResponse
instance GHC.Classes.Eq SwaggerPetstore.Model.AnimalFarm
instance GHC.Show.Show SwaggerPetstore.Model.AnimalFarm
instance GHC.Classes.Eq SwaggerPetstore.Model.Animal
instance GHC.Show.Show SwaggerPetstore.Model.Animal
instance GHC.Classes.Eq SwaggerPetstore.Model.AdditionalPropertiesClass
instance GHC.Show.Show SwaggerPetstore.Model.AdditionalPropertiesClass
instance GHC.Show.Show SwaggerPetstore.Model.Username
instance GHC.Classes.Eq SwaggerPetstore.Model.Username
instance GHC.Show.Show SwaggerPetstore.Model.Tags
instance GHC.Classes.Eq SwaggerPetstore.Model.Tags
instance GHC.Show.Show SwaggerPetstore.Model.StatusText
instance GHC.Classes.Eq SwaggerPetstore.Model.StatusText
instance GHC.Show.Show SwaggerPetstore.Model.PetId
instance GHC.Classes.Eq SwaggerPetstore.Model.PetId
instance GHC.Show.Show SwaggerPetstore.Model.PatternWithoutDelimiter
instance GHC.Classes.Eq SwaggerPetstore.Model.PatternWithoutDelimiter
instance GHC.Show.Show SwaggerPetstore.Model.Password
instance GHC.Classes.Eq SwaggerPetstore.Model.Password
instance GHC.Show.Show SwaggerPetstore.Model.ParamString
instance GHC.Classes.Eq SwaggerPetstore.Model.ParamString
instance GHC.Show.Show SwaggerPetstore.Model.ParamInteger
instance GHC.Classes.Eq SwaggerPetstore.Model.ParamInteger
instance GHC.Show.Show SwaggerPetstore.Model.ParamFloat
instance GHC.Classes.Eq SwaggerPetstore.Model.ParamFloat
instance GHC.Show.Show SwaggerPetstore.Model.ParamDouble
instance GHC.Classes.Eq SwaggerPetstore.Model.ParamDouble
instance GHC.Show.Show SwaggerPetstore.Model.ParamDateTime
instance GHC.Classes.Eq SwaggerPetstore.Model.ParamDateTime
instance GHC.Show.Show SwaggerPetstore.Model.ParamDate
instance GHC.Classes.Eq SwaggerPetstore.Model.ParamDate
instance GHC.Show.Show SwaggerPetstore.Model.ParamBinary
instance GHC.Classes.Eq SwaggerPetstore.Model.ParamBinary
instance GHC.Show.Show SwaggerPetstore.Model.Param2
instance GHC.Classes.Eq SwaggerPetstore.Model.Param2
instance GHC.Show.Show SwaggerPetstore.Model.Param
instance GHC.Classes.Eq SwaggerPetstore.Model.Param
instance GHC.Show.Show SwaggerPetstore.Model.OrderIdText
instance GHC.Classes.Eq SwaggerPetstore.Model.OrderIdText
instance GHC.Show.Show SwaggerPetstore.Model.OrderId
instance GHC.Classes.Eq SwaggerPetstore.Model.OrderId
instance GHC.Show.Show SwaggerPetstore.Model.Number
instance GHC.Classes.Eq SwaggerPetstore.Model.Number
instance GHC.Show.Show SwaggerPetstore.Model.Name2
instance GHC.Classes.Eq SwaggerPetstore.Model.Name2
instance GHC.Show.Show SwaggerPetstore.Model.Int64
instance GHC.Classes.Eq SwaggerPetstore.Model.Int64
instance GHC.Show.Show SwaggerPetstore.Model.Int32
instance GHC.Classes.Eq SwaggerPetstore.Model.Int32
instance GHC.Show.Show SwaggerPetstore.Model.File
instance GHC.Classes.Eq SwaggerPetstore.Model.File
instance GHC.Show.Show SwaggerPetstore.Model.Callback
instance GHC.Classes.Eq SwaggerPetstore.Model.Callback
instance GHC.Show.Show SwaggerPetstore.Model.Byte
instance GHC.Classes.Eq SwaggerPetstore.Model.Byte
instance GHC.Show.Show SwaggerPetstore.Model.ApiKey
instance GHC.Classes.Eq SwaggerPetstore.Model.ApiKey
instance GHC.Show.Show SwaggerPetstore.Model.AdditionalMetadata
instance GHC.Classes.Eq SwaggerPetstore.Model.AdditionalMetadata
instance SwaggerPetstore.Core.AuthMethod SwaggerPetstore.Model.AuthOAuthPetstoreAuth
instance SwaggerPetstore.Core.AuthMethod SwaggerPetstore.Model.AuthBasicHttpBasicTest
instance SwaggerPetstore.Core.AuthMethod SwaggerPetstore.Model.AuthApiKeyApiKeyQuery
instance SwaggerPetstore.Core.AuthMethod SwaggerPetstore.Model.AuthApiKeyApiKey
instance Data.Aeson.Types.FromJSON.FromJSON SwaggerPetstore.Model.EnumTest
instance Data.Aeson.Types.ToJSON.ToJSON SwaggerPetstore.Model.EnumTest
instance Data.Aeson.Types.ToJSON.ToJSON SwaggerPetstore.Model.OuterEnum
instance Data.Aeson.Types.FromJSON.FromJSON SwaggerPetstore.Model.OuterEnum
instance Web.Internal.HttpApiData.ToHttpApiData SwaggerPetstore.Model.OuterEnum
instance Web.Internal.HttpApiData.FromHttpApiData SwaggerPetstore.Model.OuterEnum
instance SwaggerPetstore.MimeTypes.MimeRender SwaggerPetstore.MimeTypes.MimeMultipartFormData SwaggerPetstore.Model.OuterEnum
instance Data.Aeson.Types.ToJSON.ToJSON SwaggerPetstore.Model.EnumClass
instance Data.Aeson.Types.FromJSON.FromJSON SwaggerPetstore.Model.EnumClass
instance Web.Internal.HttpApiData.ToHttpApiData SwaggerPetstore.Model.EnumClass
instance Web.Internal.HttpApiData.FromHttpApiData SwaggerPetstore.Model.EnumClass
instance SwaggerPetstore.MimeTypes.MimeRender SwaggerPetstore.MimeTypes.MimeMultipartFormData SwaggerPetstore.Model.EnumClass
instance Data.Aeson.Types.FromJSON.FromJSON SwaggerPetstore.Model.Pet
instance Data.Aeson.Types.ToJSON.ToJSON SwaggerPetstore.Model.Pet
instance Data.Aeson.Types.ToJSON.ToJSON SwaggerPetstore.Model.E'Status2
instance Data.Aeson.Types.FromJSON.FromJSON SwaggerPetstore.Model.E'Status2
instance Web.Internal.HttpApiData.ToHttpApiData SwaggerPetstore.Model.E'Status2
instance Web.Internal.HttpApiData.FromHttpApiData SwaggerPetstore.Model.E'Status2
instance SwaggerPetstore.MimeTypes.MimeRender SwaggerPetstore.MimeTypes.MimeMultipartFormData SwaggerPetstore.Model.E'Status2
instance Data.Aeson.Types.FromJSON.FromJSON SwaggerPetstore.Model.Order
instance Data.Aeson.Types.ToJSON.ToJSON SwaggerPetstore.Model.Order
instance Data.Aeson.Types.ToJSON.ToJSON SwaggerPetstore.Model.E'Status
instance Data.Aeson.Types.FromJSON.FromJSON SwaggerPetstore.Model.E'Status
instance Web.Internal.HttpApiData.ToHttpApiData SwaggerPetstore.Model.E'Status
instance Web.Internal.HttpApiData.FromHttpApiData SwaggerPetstore.Model.E'Status
instance SwaggerPetstore.MimeTypes.MimeRender SwaggerPetstore.MimeTypes.MimeMultipartFormData SwaggerPetstore.Model.E'Status
instance Data.Aeson.Types.FromJSON.FromJSON SwaggerPetstore.Model.EnumArrays
instance Data.Aeson.Types.ToJSON.ToJSON SwaggerPetstore.Model.EnumArrays
instance Data.Aeson.Types.ToJSON.ToJSON SwaggerPetstore.Model.E'JustSymbol
instance Data.Aeson.Types.FromJSON.FromJSON SwaggerPetstore.Model.E'JustSymbol
instance Web.Internal.HttpApiData.ToHttpApiData SwaggerPetstore.Model.E'JustSymbol
instance Web.Internal.HttpApiData.FromHttpApiData SwaggerPetstore.Model.E'JustSymbol
instance SwaggerPetstore.MimeTypes.MimeRender SwaggerPetstore.MimeTypes.MimeMultipartFormData SwaggerPetstore.Model.E'JustSymbol
instance Data.Aeson.Types.ToJSON.ToJSON SwaggerPetstore.Model.E'Inner2
instance Data.Aeson.Types.FromJSON.FromJSON SwaggerPetstore.Model.E'Inner2
instance Web.Internal.HttpApiData.ToHttpApiData SwaggerPetstore.Model.E'Inner2
instance Web.Internal.HttpApiData.FromHttpApiData SwaggerPetstore.Model.E'Inner2
instance SwaggerPetstore.MimeTypes.MimeRender SwaggerPetstore.MimeTypes.MimeMultipartFormData SwaggerPetstore.Model.E'Inner2
instance Data.Aeson.Types.FromJSON.FromJSON SwaggerPetstore.Model.MapTest
instance Data.Aeson.Types.ToJSON.ToJSON SwaggerPetstore.Model.MapTest
instance Data.Aeson.Types.ToJSON.ToJSON SwaggerPetstore.Model.E'Inner
instance Data.Aeson.Types.FromJSON.FromJSON SwaggerPetstore.Model.E'Inner
instance Web.Internal.HttpApiData.ToHttpApiData SwaggerPetstore.Model.E'Inner
instance Web.Internal.HttpApiData.FromHttpApiData SwaggerPetstore.Model.E'Inner
instance SwaggerPetstore.MimeTypes.MimeRender SwaggerPetstore.MimeTypes.MimeMultipartFormData SwaggerPetstore.Model.E'Inner
instance Data.Aeson.Types.ToJSON.ToJSON SwaggerPetstore.Model.E'EnumString
instance Data.Aeson.Types.FromJSON.FromJSON SwaggerPetstore.Model.E'EnumString
instance Web.Internal.HttpApiData.ToHttpApiData SwaggerPetstore.Model.E'EnumString
instance Web.Internal.HttpApiData.FromHttpApiData SwaggerPetstore.Model.E'EnumString
instance SwaggerPetstore.MimeTypes.MimeRender SwaggerPetstore.MimeTypes.MimeMultipartFormData SwaggerPetstore.Model.E'EnumString
instance Data.Aeson.Types.ToJSON.ToJSON SwaggerPetstore.Model.E'EnumQueryInteger
instance Data.Aeson.Types.FromJSON.FromJSON SwaggerPetstore.Model.E'EnumQueryInteger
instance Web.Internal.HttpApiData.ToHttpApiData SwaggerPetstore.Model.E'EnumQueryInteger
instance Web.Internal.HttpApiData.FromHttpApiData SwaggerPetstore.Model.E'EnumQueryInteger
instance SwaggerPetstore.MimeTypes.MimeRender SwaggerPetstore.MimeTypes.MimeMultipartFormData SwaggerPetstore.Model.E'EnumQueryInteger
instance Data.Aeson.Types.ToJSON.ToJSON SwaggerPetstore.Model.E'EnumNumber
instance Data.Aeson.Types.FromJSON.FromJSON SwaggerPetstore.Model.E'EnumNumber
instance Web.Internal.HttpApiData.ToHttpApiData SwaggerPetstore.Model.E'EnumNumber
instance Web.Internal.HttpApiData.FromHttpApiData SwaggerPetstore.Model.E'EnumNumber
instance SwaggerPetstore.MimeTypes.MimeRender SwaggerPetstore.MimeTypes.MimeMultipartFormData SwaggerPetstore.Model.E'EnumNumber
instance Data.Aeson.Types.ToJSON.ToJSON SwaggerPetstore.Model.E'EnumInteger
instance Data.Aeson.Types.FromJSON.FromJSON SwaggerPetstore.Model.E'EnumInteger
instance Web.Internal.HttpApiData.ToHttpApiData SwaggerPetstore.Model.E'EnumInteger
instance Web.Internal.HttpApiData.FromHttpApiData SwaggerPetstore.Model.E'EnumInteger
instance SwaggerPetstore.MimeTypes.MimeRender SwaggerPetstore.MimeTypes.MimeMultipartFormData SwaggerPetstore.Model.E'EnumInteger
instance Data.Aeson.Types.ToJSON.ToJSON SwaggerPetstore.Model.E'EnumFormString
instance Data.Aeson.Types.FromJSON.FromJSON SwaggerPetstore.Model.E'EnumFormString
instance Web.Internal.HttpApiData.ToHttpApiData SwaggerPetstore.Model.E'EnumFormString
instance Web.Internal.HttpApiData.FromHttpApiData SwaggerPetstore.Model.E'EnumFormString
instance SwaggerPetstore.MimeTypes.MimeRender SwaggerPetstore.MimeTypes.MimeMultipartFormData SwaggerPetstore.Model.E'EnumFormString
instance Data.Aeson.Types.ToJSON.ToJSON SwaggerPetstore.Model.E'ArrayEnum
instance Data.Aeson.Types.FromJSON.FromJSON SwaggerPetstore.Model.E'ArrayEnum
instance Web.Internal.HttpApiData.ToHttpApiData SwaggerPetstore.Model.E'ArrayEnum
instance Web.Internal.HttpApiData.FromHttpApiData SwaggerPetstore.Model.E'ArrayEnum
instance SwaggerPetstore.MimeTypes.MimeRender SwaggerPetstore.MimeTypes.MimeMultipartFormData SwaggerPetstore.Model.E'ArrayEnum
instance Data.Aeson.Types.FromJSON.FromJSON SwaggerPetstore.Model.Dog
instance Data.Aeson.Types.ToJSON.ToJSON SwaggerPetstore.Model.Dog
instance Data.Aeson.Types.FromJSON.FromJSON SwaggerPetstore.Model.Cat
instance Data.Aeson.Types.ToJSON.ToJSON SwaggerPetstore.Model.Cat
instance Data.Aeson.Types.FromJSON.FromJSON SwaggerPetstore.Model.User
instance Data.Aeson.Types.ToJSON.ToJSON SwaggerPetstore.Model.User
instance Data.Aeson.Types.FromJSON.FromJSON SwaggerPetstore.Model.Tag
instance Data.Aeson.Types.ToJSON.ToJSON SwaggerPetstore.Model.Tag
instance Data.Aeson.Types.FromJSON.FromJSON SwaggerPetstore.Model.SpecialModelName
instance Data.Aeson.Types.ToJSON.ToJSON SwaggerPetstore.Model.SpecialModelName
instance Data.Aeson.Types.FromJSON.FromJSON SwaggerPetstore.Model.ArrayTest
instance Data.Aeson.Types.ToJSON.ToJSON SwaggerPetstore.Model.ArrayTest
instance Data.Aeson.Types.FromJSON.FromJSON SwaggerPetstore.Model.ReadOnlyFirst
instance Data.Aeson.Types.ToJSON.ToJSON SwaggerPetstore.Model.ReadOnlyFirst
instance Data.Aeson.Types.FromJSON.FromJSON SwaggerPetstore.Model.OuterComposite
instance Data.Aeson.Types.ToJSON.ToJSON SwaggerPetstore.Model.OuterComposite
instance Data.Aeson.Types.FromJSON.FromJSON SwaggerPetstore.Model.NumberOnly
instance Data.Aeson.Types.ToJSON.ToJSON SwaggerPetstore.Model.NumberOnly
instance Data.Aeson.Types.FromJSON.FromJSON SwaggerPetstore.Model.Name
instance Data.Aeson.Types.ToJSON.ToJSON SwaggerPetstore.Model.Name
instance Data.Aeson.Types.FromJSON.FromJSON SwaggerPetstore.Model.ModelReturn
instance Data.Aeson.Types.ToJSON.ToJSON SwaggerPetstore.Model.ModelReturn
instance Data.Aeson.Types.FromJSON.FromJSON SwaggerPetstore.Model.ModelList
instance Data.Aeson.Types.ToJSON.ToJSON SwaggerPetstore.Model.ModelList
instance Data.Aeson.Types.FromJSON.FromJSON SwaggerPetstore.Model.Model200Response
instance Data.Aeson.Types.ToJSON.ToJSON SwaggerPetstore.Model.Model200Response
instance Data.Aeson.Types.FromJSON.FromJSON SwaggerPetstore.Model.MixedPropertiesAndAdditionalPropertiesClass
instance Data.Aeson.Types.ToJSON.ToJSON SwaggerPetstore.Model.MixedPropertiesAndAdditionalPropertiesClass
instance Data.Aeson.Types.FromJSON.FromJSON SwaggerPetstore.Model.HasOnlyReadOnly
instance Data.Aeson.Types.ToJSON.ToJSON SwaggerPetstore.Model.HasOnlyReadOnly
instance Data.Aeson.Types.FromJSON.FromJSON SwaggerPetstore.Model.FormatTest
instance Data.Aeson.Types.ToJSON.ToJSON SwaggerPetstore.Model.FormatTest
instance Data.Aeson.Types.FromJSON.FromJSON SwaggerPetstore.Model.Client
instance Data.Aeson.Types.ToJSON.ToJSON SwaggerPetstore.Model.Client
instance Data.Aeson.Types.FromJSON.FromJSON SwaggerPetstore.Model.ClassModel
instance Data.Aeson.Types.ToJSON.ToJSON SwaggerPetstore.Model.ClassModel
instance Data.Aeson.Types.FromJSON.FromJSON SwaggerPetstore.Model.Category
instance Data.Aeson.Types.ToJSON.ToJSON SwaggerPetstore.Model.Category
instance Data.Aeson.Types.FromJSON.FromJSON SwaggerPetstore.Model.Capitalization
instance Data.Aeson.Types.ToJSON.ToJSON SwaggerPetstore.Model.Capitalization
instance Data.Aeson.Types.FromJSON.FromJSON SwaggerPetstore.Model.ArrayOfNumberOnly
instance Data.Aeson.Types.ToJSON.ToJSON SwaggerPetstore.Model.ArrayOfNumberOnly
instance Data.Aeson.Types.FromJSON.FromJSON SwaggerPetstore.Model.ArrayOfArrayOfNumberOnly
instance Data.Aeson.Types.ToJSON.ToJSON SwaggerPetstore.Model.ArrayOfArrayOfNumberOnly
instance Data.Aeson.Types.FromJSON.FromJSON SwaggerPetstore.Model.ApiResponse
instance Data.Aeson.Types.ToJSON.ToJSON SwaggerPetstore.Model.ApiResponse
instance Data.Aeson.Types.FromJSON.FromJSON SwaggerPetstore.Model.AnimalFarm
instance Data.Aeson.Types.ToJSON.ToJSON SwaggerPetstore.Model.AnimalFarm
instance Data.Aeson.Types.FromJSON.FromJSON SwaggerPetstore.Model.Animal
instance Data.Aeson.Types.ToJSON.ToJSON SwaggerPetstore.Model.Animal
instance Data.Aeson.Types.FromJSON.FromJSON SwaggerPetstore.Model.AdditionalPropertiesClass
instance Data.Aeson.Types.ToJSON.ToJSON SwaggerPetstore.Model.AdditionalPropertiesClass


module SwaggerPetstore.API.User

-- | <pre>
--   POST /user
--   </pre>
--   
--   Create user
--   
--   This can only be done by the logged in user.
--   
--   Note: Has <a>Produces</a> instances, but no response schema
createUser :: (Consumes CreateUser contentType, MimeRender contentType User) => ContentType contentType -> Accept accept -> User -> SwaggerPetstoreRequest CreateUser contentType res accept
data CreateUser

-- | <i>Body Param</i> "body" - Created user object

-- | <pre>
--   application/xml
--   </pre>

-- | <pre>
--   application/json
--   </pre>

-- | <pre>
--   POST /user/createWithArray
--   </pre>
--   
--   Creates list of users with given input array
--   
--   Note: Has <a>Produces</a> instances, but no response schema
createUsersWithArrayInput :: (Consumes CreateUsersWithArrayInput contentType, MimeRender contentType Body) => ContentType contentType -> Accept accept -> Body -> SwaggerPetstoreRequest CreateUsersWithArrayInput contentType res accept
data CreateUsersWithArrayInput

-- | <i>Body Param</i> "body" - List of user object

-- | <pre>
--   application/xml
--   </pre>

-- | <pre>
--   application/json
--   </pre>

-- | <pre>
--   POST /user/createWithList
--   </pre>
--   
--   Creates list of users with given input array
--   
--   Note: Has <a>Produces</a> instances, but no response schema
createUsersWithListInput :: (Consumes CreateUsersWithListInput contentType, MimeRender contentType Body) => ContentType contentType -> Accept accept -> Body -> SwaggerPetstoreRequest CreateUsersWithListInput contentType res accept
data CreateUsersWithListInput

-- | <i>Body Param</i> "body" - List of user object

-- | <pre>
--   application/xml
--   </pre>

-- | <pre>
--   application/json
--   </pre>

-- | <pre>
--   DELETE /user/{username}
--   </pre>
--   
--   Delete user
--   
--   This can only be done by the logged in user.
--   
--   Note: Has <a>Produces</a> instances, but no response schema
deleteUser :: Accept accept -> Username -> SwaggerPetstoreRequest DeleteUser MimeNoContent res accept
data DeleteUser

-- | <pre>
--   application/xml
--   </pre>

-- | <pre>
--   application/json
--   </pre>

-- | <pre>
--   GET /user/{username}
--   </pre>
--   
--   Get user by user name
getUserByName :: Accept accept -> Username -> SwaggerPetstoreRequest GetUserByName MimeNoContent User accept
data GetUserByName

-- | <pre>
--   application/xml
--   </pre>

-- | <pre>
--   application/json
--   </pre>

-- | <pre>
--   GET /user/login
--   </pre>
--   
--   Logs user into the system
loginUser :: Accept accept -> Username -> Password -> SwaggerPetstoreRequest LoginUser MimeNoContent Text accept
data LoginUser

-- | <pre>
--   application/xml
--   </pre>

-- | <pre>
--   application/json
--   </pre>

-- | <pre>
--   GET /user/logout
--   </pre>
--   
--   Logs out current logged in user session
--   
--   Note: Has <a>Produces</a> instances, but no response schema
logoutUser :: Accept accept -> SwaggerPetstoreRequest LogoutUser MimeNoContent res accept
data LogoutUser

-- | <pre>
--   application/xml
--   </pre>

-- | <pre>
--   application/json
--   </pre>

-- | <pre>
--   PUT /user/{username}
--   </pre>
--   
--   Updated user
--   
--   This can only be done by the logged in user.
--   
--   Note: Has <a>Produces</a> instances, but no response schema
updateUser :: (Consumes UpdateUser contentType, MimeRender contentType User) => ContentType contentType -> Accept accept -> Username -> User -> SwaggerPetstoreRequest UpdateUser contentType res accept
data UpdateUser

-- | <i>Body Param</i> "body" - Updated user object

-- | <pre>
--   application/xml
--   </pre>

-- | <pre>
--   application/json
--   </pre>
instance SwaggerPetstore.Core.HasBodyParam SwaggerPetstore.API.User.UpdateUser SwaggerPetstore.Model.User
instance SwaggerPetstore.MimeTypes.Produces SwaggerPetstore.API.User.UpdateUser SwaggerPetstore.MimeTypes.MimeXML
instance SwaggerPetstore.MimeTypes.Produces SwaggerPetstore.API.User.UpdateUser SwaggerPetstore.MimeTypes.MimeJSON
instance SwaggerPetstore.MimeTypes.Produces SwaggerPetstore.API.User.LogoutUser SwaggerPetstore.MimeTypes.MimeXML
instance SwaggerPetstore.MimeTypes.Produces SwaggerPetstore.API.User.LogoutUser SwaggerPetstore.MimeTypes.MimeJSON
instance SwaggerPetstore.MimeTypes.Produces SwaggerPetstore.API.User.LoginUser SwaggerPetstore.MimeTypes.MimeXML
instance SwaggerPetstore.MimeTypes.Produces SwaggerPetstore.API.User.LoginUser SwaggerPetstore.MimeTypes.MimeJSON
instance SwaggerPetstore.MimeTypes.Produces SwaggerPetstore.API.User.GetUserByName SwaggerPetstore.MimeTypes.MimeXML
instance SwaggerPetstore.MimeTypes.Produces SwaggerPetstore.API.User.GetUserByName SwaggerPetstore.MimeTypes.MimeJSON
instance SwaggerPetstore.MimeTypes.Produces SwaggerPetstore.API.User.DeleteUser SwaggerPetstore.MimeTypes.MimeXML
instance SwaggerPetstore.MimeTypes.Produces SwaggerPetstore.API.User.DeleteUser SwaggerPetstore.MimeTypes.MimeJSON
instance SwaggerPetstore.Core.HasBodyParam SwaggerPetstore.API.User.CreateUsersWithListInput SwaggerPetstore.Model.Body
instance SwaggerPetstore.MimeTypes.Produces SwaggerPetstore.API.User.CreateUsersWithListInput SwaggerPetstore.MimeTypes.MimeXML
instance SwaggerPetstore.MimeTypes.Produces SwaggerPetstore.API.User.CreateUsersWithListInput SwaggerPetstore.MimeTypes.MimeJSON
instance SwaggerPetstore.Core.HasBodyParam SwaggerPetstore.API.User.CreateUsersWithArrayInput SwaggerPetstore.Model.Body
instance SwaggerPetstore.MimeTypes.Produces SwaggerPetstore.API.User.CreateUsersWithArrayInput SwaggerPetstore.MimeTypes.MimeXML
instance SwaggerPetstore.MimeTypes.Produces SwaggerPetstore.API.User.CreateUsersWithArrayInput SwaggerPetstore.MimeTypes.MimeJSON
instance SwaggerPetstore.Core.HasBodyParam SwaggerPetstore.API.User.CreateUser SwaggerPetstore.Model.User
instance SwaggerPetstore.MimeTypes.Produces SwaggerPetstore.API.User.CreateUser SwaggerPetstore.MimeTypes.MimeXML
instance SwaggerPetstore.MimeTypes.Produces SwaggerPetstore.API.User.CreateUser SwaggerPetstore.MimeTypes.MimeJSON


module SwaggerPetstore.API.Store

-- | <pre>
--   DELETE /store/order/{order_id}
--   </pre>
--   
--   Delete purchase order by ID
--   
--   For valid response try integer IDs with value &lt; 1000. Anything
--   above 1000 or nonintegers will generate API errors
--   
--   Note: Has <a>Produces</a> instances, but no response schema
deleteOrder :: Accept accept -> OrderIdText -> SwaggerPetstoreRequest DeleteOrder MimeNoContent res accept
data DeleteOrder

-- | <pre>
--   application/xml
--   </pre>

-- | <pre>
--   application/json
--   </pre>

-- | <pre>
--   GET /store/inventory
--   </pre>
--   
--   Returns pet inventories by status
--   
--   Returns a map of status codes to quantities
--   
--   AuthMethod: <a>AuthApiKeyApiKey</a>
getInventory :: SwaggerPetstoreRequest GetInventory MimeNoContent ((Map String Int)) MimeJSON
data GetInventory

-- | <pre>
--   application/json
--   </pre>

-- | <pre>
--   GET /store/order/{order_id}
--   </pre>
--   
--   Find purchase order by ID
--   
--   For valid response try integer IDs with value <a>5 or</a> 10. Other
--   values will generated exceptions
getOrderById :: Accept accept -> OrderId -> SwaggerPetstoreRequest GetOrderById MimeNoContent Order accept
data GetOrderById

-- | <pre>
--   application/xml
--   </pre>

-- | <pre>
--   application/json
--   </pre>

-- | <pre>
--   POST /store/order
--   </pre>
--   
--   Place an order for a pet
placeOrder :: (Consumes PlaceOrder contentType, MimeRender contentType Order) => ContentType contentType -> Accept accept -> Order -> SwaggerPetstoreRequest PlaceOrder contentType Order accept
data PlaceOrder

-- | <i>Body Param</i> "body" - order placed for purchasing the pet

-- | <pre>
--   application/xml
--   </pre>

-- | <pre>
--   application/json
--   </pre>
instance SwaggerPetstore.Core.HasBodyParam SwaggerPetstore.API.Store.PlaceOrder SwaggerPetstore.Model.Order
instance SwaggerPetstore.MimeTypes.Produces SwaggerPetstore.API.Store.PlaceOrder SwaggerPetstore.MimeTypes.MimeXML
instance SwaggerPetstore.MimeTypes.Produces SwaggerPetstore.API.Store.PlaceOrder SwaggerPetstore.MimeTypes.MimeJSON
instance SwaggerPetstore.MimeTypes.Produces SwaggerPetstore.API.Store.GetOrderById SwaggerPetstore.MimeTypes.MimeXML
instance SwaggerPetstore.MimeTypes.Produces SwaggerPetstore.API.Store.GetOrderById SwaggerPetstore.MimeTypes.MimeJSON
instance SwaggerPetstore.MimeTypes.Produces SwaggerPetstore.API.Store.GetInventory SwaggerPetstore.MimeTypes.MimeJSON
instance SwaggerPetstore.MimeTypes.Produces SwaggerPetstore.API.Store.DeleteOrder SwaggerPetstore.MimeTypes.MimeXML
instance SwaggerPetstore.MimeTypes.Produces SwaggerPetstore.API.Store.DeleteOrder SwaggerPetstore.MimeTypes.MimeJSON


module SwaggerPetstore.API.Pet

-- | <pre>
--   POST /pet
--   </pre>
--   
--   Add a new pet to the store
--   
--   AuthMethod: <a>AuthOAuthPetstoreAuth</a>
--   
--   Note: Has <a>Produces</a> instances, but no response schema
addPet :: (Consumes AddPet contentType, MimeRender contentType Pet) => ContentType contentType -> Accept accept -> Pet -> SwaggerPetstoreRequest AddPet contentType res accept
data AddPet

-- | <i>Body Param</i> "body" - Pet object that needs to be added to the
--   store

-- | <pre>
--   application/json
--   </pre>

-- | <pre>
--   application/xml
--   </pre>

-- | <pre>
--   application/xml
--   </pre>

-- | <pre>
--   application/json
--   </pre>

-- | <pre>
--   DELETE /pet/{petId}
--   </pre>
--   
--   Deletes a pet
--   
--   AuthMethod: <a>AuthOAuthPetstoreAuth</a>
--   
--   Note: Has <a>Produces</a> instances, but no response schema
deletePet :: Accept accept -> PetId -> SwaggerPetstoreRequest DeletePet MimeNoContent res accept
data DeletePet

-- | <pre>
--   application/xml
--   </pre>

-- | <pre>
--   application/json
--   </pre>

-- | <pre>
--   GET /pet/findByStatus
--   </pre>
--   
--   Finds Pets by status
--   
--   Multiple status values can be provided with comma separated strings
--   
--   AuthMethod: <a>AuthOAuthPetstoreAuth</a>
findPetsByStatus :: Accept accept -> Status -> SwaggerPetstoreRequest FindPetsByStatus MimeNoContent [Pet] accept
data FindPetsByStatus

-- | <pre>
--   application/xml
--   </pre>

-- | <pre>
--   application/json
--   </pre>

-- | <pre>
--   GET /pet/findByTags
--   </pre>
--   
--   Finds Pets by tags
--   
--   Multiple tags can be provided with comma separated strings. Use tag1,
--   tag2, tag3 for testing.
--   
--   AuthMethod: <a>AuthOAuthPetstoreAuth</a>

-- | <i>Deprecated: </i>
findPetsByTags :: Accept accept -> Tags -> SwaggerPetstoreRequest FindPetsByTags MimeNoContent [Pet] accept
data FindPetsByTags

-- | <pre>
--   application/xml
--   </pre>

-- | <pre>
--   application/json
--   </pre>

-- | <pre>
--   GET /pet/{petId}
--   </pre>
--   
--   Find pet by ID
--   
--   Returns a single pet
--   
--   AuthMethod: <a>AuthApiKeyApiKey</a>
getPetById :: Accept accept -> PetId -> SwaggerPetstoreRequest GetPetById MimeNoContent Pet accept
data GetPetById

-- | <pre>
--   application/xml
--   </pre>

-- | <pre>
--   application/json
--   </pre>

-- | <pre>
--   PUT /pet
--   </pre>
--   
--   Update an existing pet
--   
--   AuthMethod: <a>AuthOAuthPetstoreAuth</a>
--   
--   Note: Has <a>Produces</a> instances, but no response schema
updatePet :: (Consumes UpdatePet contentType, MimeRender contentType Pet) => ContentType contentType -> Accept accept -> Pet -> SwaggerPetstoreRequest UpdatePet contentType res accept
data UpdatePet

-- | <i>Body Param</i> "body" - Pet object that needs to be added to the
--   store

-- | <pre>
--   application/json
--   </pre>

-- | <pre>
--   application/xml
--   </pre>

-- | <pre>
--   application/xml
--   </pre>

-- | <pre>
--   application/json
--   </pre>

-- | <pre>
--   POST /pet/{petId}
--   </pre>
--   
--   Updates a pet in the store with form data
--   
--   AuthMethod: <a>AuthOAuthPetstoreAuth</a>
--   
--   Note: Has <a>Produces</a> instances, but no response schema
updatePetWithForm :: (Consumes UpdatePetWithForm MimeFormUrlEncoded) => Accept accept -> PetId -> SwaggerPetstoreRequest UpdatePetWithForm MimeFormUrlEncoded res accept
data UpdatePetWithForm

-- | <i>Optional Param</i> "name" - Updated name of the pet

-- | <i>Optional Param</i> "status" - Updated status of the pet

-- | <pre>
--   application/x-www-form-urlencoded
--   </pre>

-- | <pre>
--   application/xml
--   </pre>

-- | <pre>
--   application/json
--   </pre>

-- | <pre>
--   POST /pet/{petId}/uploadImage
--   </pre>
--   
--   uploads an image
--   
--   AuthMethod: <a>AuthOAuthPetstoreAuth</a>
uploadFile :: (Consumes UploadFile MimeMultipartFormData) => PetId -> SwaggerPetstoreRequest UploadFile MimeMultipartFormData ApiResponse MimeJSON
data UploadFile

-- | <i>Optional Param</i> "additionalMetadata" - Additional data to pass
--   to server

-- | <i>Optional Param</i> "file" - file to upload

-- | <pre>
--   multipart/form-data
--   </pre>

-- | <pre>
--   application/json
--   </pre>
instance SwaggerPetstore.Core.HasOptionalParam SwaggerPetstore.API.Pet.UploadFile SwaggerPetstore.Model.AdditionalMetadata
instance SwaggerPetstore.Core.HasOptionalParam SwaggerPetstore.API.Pet.UploadFile SwaggerPetstore.Model.File
instance SwaggerPetstore.MimeTypes.Consumes SwaggerPetstore.API.Pet.UploadFile SwaggerPetstore.MimeTypes.MimeMultipartFormData
instance SwaggerPetstore.MimeTypes.Produces SwaggerPetstore.API.Pet.UploadFile SwaggerPetstore.MimeTypes.MimeJSON
instance SwaggerPetstore.Core.HasOptionalParam SwaggerPetstore.API.Pet.UpdatePetWithForm SwaggerPetstore.Model.Name2
instance SwaggerPetstore.Core.HasOptionalParam SwaggerPetstore.API.Pet.UpdatePetWithForm SwaggerPetstore.Model.StatusText
instance SwaggerPetstore.MimeTypes.Consumes SwaggerPetstore.API.Pet.UpdatePetWithForm SwaggerPetstore.MimeTypes.MimeFormUrlEncoded
instance SwaggerPetstore.MimeTypes.Produces SwaggerPetstore.API.Pet.UpdatePetWithForm SwaggerPetstore.MimeTypes.MimeXML
instance SwaggerPetstore.MimeTypes.Produces SwaggerPetstore.API.Pet.UpdatePetWithForm SwaggerPetstore.MimeTypes.MimeJSON
instance SwaggerPetstore.Core.HasBodyParam SwaggerPetstore.API.Pet.UpdatePet SwaggerPetstore.Model.Pet
instance SwaggerPetstore.MimeTypes.Consumes SwaggerPetstore.API.Pet.UpdatePet SwaggerPetstore.MimeTypes.MimeJSON
instance SwaggerPetstore.MimeTypes.Consumes SwaggerPetstore.API.Pet.UpdatePet SwaggerPetstore.MimeTypes.MimeXML
instance SwaggerPetstore.MimeTypes.Produces SwaggerPetstore.API.Pet.UpdatePet SwaggerPetstore.MimeTypes.MimeXML
instance SwaggerPetstore.MimeTypes.Produces SwaggerPetstore.API.Pet.UpdatePet SwaggerPetstore.MimeTypes.MimeJSON
instance SwaggerPetstore.MimeTypes.Produces SwaggerPetstore.API.Pet.GetPetById SwaggerPetstore.MimeTypes.MimeXML
instance SwaggerPetstore.MimeTypes.Produces SwaggerPetstore.API.Pet.GetPetById SwaggerPetstore.MimeTypes.MimeJSON
instance SwaggerPetstore.MimeTypes.Produces SwaggerPetstore.API.Pet.FindPetsByTags SwaggerPetstore.MimeTypes.MimeXML
instance SwaggerPetstore.MimeTypes.Produces SwaggerPetstore.API.Pet.FindPetsByTags SwaggerPetstore.MimeTypes.MimeJSON
instance SwaggerPetstore.MimeTypes.Produces SwaggerPetstore.API.Pet.FindPetsByStatus SwaggerPetstore.MimeTypes.MimeXML
instance SwaggerPetstore.MimeTypes.Produces SwaggerPetstore.API.Pet.FindPetsByStatus SwaggerPetstore.MimeTypes.MimeJSON
instance SwaggerPetstore.Core.HasOptionalParam SwaggerPetstore.API.Pet.DeletePet SwaggerPetstore.Model.ApiKey
instance SwaggerPetstore.MimeTypes.Produces SwaggerPetstore.API.Pet.DeletePet SwaggerPetstore.MimeTypes.MimeXML
instance SwaggerPetstore.MimeTypes.Produces SwaggerPetstore.API.Pet.DeletePet SwaggerPetstore.MimeTypes.MimeJSON
instance SwaggerPetstore.Core.HasBodyParam SwaggerPetstore.API.Pet.AddPet SwaggerPetstore.Model.Pet
instance SwaggerPetstore.MimeTypes.Consumes SwaggerPetstore.API.Pet.AddPet SwaggerPetstore.MimeTypes.MimeJSON
instance SwaggerPetstore.MimeTypes.Consumes SwaggerPetstore.API.Pet.AddPet SwaggerPetstore.MimeTypes.MimeXML
instance SwaggerPetstore.MimeTypes.Produces SwaggerPetstore.API.Pet.AddPet SwaggerPetstore.MimeTypes.MimeXML
instance SwaggerPetstore.MimeTypes.Produces SwaggerPetstore.API.Pet.AddPet SwaggerPetstore.MimeTypes.MimeJSON


module SwaggerPetstore.API.FakeClassnameTags123

-- | <pre>
--   PATCH /fake_classname_test
--   </pre>
--   
--   To test class name in snake case
--   
--   AuthMethod: <a>AuthApiKeyApiKeyQuery</a>
testClassname :: (Consumes TestClassname MimeJSON, MimeRender MimeJSON Client) => Client -> SwaggerPetstoreRequest TestClassname MimeJSON Client MimeJSON
data TestClassname

-- | <i>Body Param</i> "body" - client model

-- | <pre>
--   application/json
--   </pre>

-- | <pre>
--   application/json
--   </pre>
instance SwaggerPetstore.Core.HasBodyParam SwaggerPetstore.API.FakeClassnameTags123.TestClassname SwaggerPetstore.Model.Client
instance SwaggerPetstore.MimeTypes.Consumes SwaggerPetstore.API.FakeClassnameTags123.TestClassname SwaggerPetstore.MimeTypes.MimeJSON
instance SwaggerPetstore.MimeTypes.Produces SwaggerPetstore.API.FakeClassnameTags123.TestClassname SwaggerPetstore.MimeTypes.MimeJSON


module SwaggerPetstore.API.Fake

-- | <pre>
--   POST /fake/outer/boolean
--   </pre>
--   
--   Test serialization of outer boolean types
fakeOuterBooleanSerialize :: (Consumes FakeOuterBooleanSerialize contentType) => ContentType contentType -> Accept accept -> SwaggerPetstoreRequest FakeOuterBooleanSerialize contentType OuterBoolean accept
data FakeOuterBooleanSerialize

-- | <i>Body Param</i> "body" - Input boolean as post body

-- | <pre>
--   POST /fake/outer/composite
--   </pre>
--   
--   Test serialization of object with outer number type
fakeOuterCompositeSerialize :: (Consumes FakeOuterCompositeSerialize contentType) => ContentType contentType -> Accept accept -> SwaggerPetstoreRequest FakeOuterCompositeSerialize contentType OuterComposite accept
data FakeOuterCompositeSerialize

-- | <i>Body Param</i> "body" - Input composite as post body

-- | <pre>
--   POST /fake/outer/number
--   </pre>
--   
--   Test serialization of outer number types
fakeOuterNumberSerialize :: (Consumes FakeOuterNumberSerialize contentType) => ContentType contentType -> Accept accept -> SwaggerPetstoreRequest FakeOuterNumberSerialize contentType OuterNumber accept
data FakeOuterNumberSerialize

-- | <i>Body Param</i> "body" - Input number as post body

-- | <pre>
--   POST /fake/outer/string
--   </pre>
--   
--   Test serialization of outer string types
fakeOuterStringSerialize :: (Consumes FakeOuterStringSerialize contentType) => ContentType contentType -> Accept accept -> SwaggerPetstoreRequest FakeOuterStringSerialize contentType OuterString accept
data FakeOuterStringSerialize

-- | <i>Body Param</i> "body" - Input string as post body

-- | <pre>
--   PATCH /fake
--   </pre>
--   
--   To test "client" model
--   
--   To test "client" model
testClientModel :: (Consumes TestClientModel MimeJSON, MimeRender MimeJSON Client) => Client -> SwaggerPetstoreRequest TestClientModel MimeJSON Client MimeJSON
data TestClientModel

-- | <i>Body Param</i> "body" - client model

-- | <pre>
--   application/json
--   </pre>

-- | <pre>
--   application/json
--   </pre>

-- | <pre>
--   POST /fake
--   </pre>
--   
--   Fake endpoint for testing various parameters 假端點 偽のエンドポイント 가짜 엔드 포인트
--   
--   Fake endpoint for testing various parameters 假端點 偽のエンドポイント 가짜 엔드 포인트
--   
--   AuthMethod: <a>AuthBasicHttpBasicTest</a>
--   
--   Note: Has <a>Produces</a> instances, but no response schema
testEndpointParameters :: (Consumes TestEndpointParameters contentType) => ContentType contentType -> Accept accept -> Number -> ParamDouble -> PatternWithoutDelimiter -> Byte -> SwaggerPetstoreRequest TestEndpointParameters contentType res accept
data TestEndpointParameters

-- | <i>Optional Param</i> "integer" - None

-- | <i>Optional Param</i> "int32" - None

-- | <i>Optional Param</i> "int64" - None

-- | <i>Optional Param</i> "float" - None

-- | <i>Optional Param</i> "string" - None

-- | <i>Optional Param</i> "binary" - None

-- | <i>Optional Param</i> "date" - None

-- | <i>Optional Param</i> "dateTime" - None

-- | <i>Optional Param</i> "password" - None

-- | <i>Optional Param</i> "callback" - None

-- | <pre>
--   application/xml; charset=utf-8
--   </pre>

-- | <pre>
--   application/json; charset=utf-8
--   </pre>

-- | <pre>
--   application/xml; charset=utf-8
--   </pre>

-- | <pre>
--   application/json; charset=utf-8
--   </pre>

-- | <pre>
--   GET /fake
--   </pre>
--   
--   To test enum parameters
--   
--   To test enum parameters
--   
--   Note: Has <a>Produces</a> instances, but no response schema
testEnumParameters :: (Consumes TestEnumParameters contentType) => ContentType contentType -> Accept accept -> SwaggerPetstoreRequest TestEnumParameters contentType res accept
data TestEnumParameters

-- | <i>Optional Param</i> "enum_form_string_array" - Form parameter enum
--   test (string array)

-- | <i>Optional Param</i> "enum_form_string" - Form parameter enum test
--   (string)

-- | <i>Optional Param</i> "enum_header_string_array" - Header parameter
--   enum test (string array)

-- | <i>Optional Param</i> "enum_header_string" - Header parameter enum
--   test (string)

-- | <i>Optional Param</i> "enum_query_string_array" - Query parameter enum
--   test (string array)

-- | <i>Optional Param</i> "enum_query_string" - Query parameter enum test
--   (string)

-- | <i>Optional Param</i> "enum_query_integer" - Query parameter enum test
--   (double)

-- | <i>Optional Param</i> "enum_query_double" - Query parameter enum test
--   (double)

-- | <pre>
--   */*
--   </pre>

-- | <pre>
--   */*
--   </pre>

-- | <pre>
--   POST /fake/inline-additionalProperties
--   </pre>
--   
--   test inline additionalProperties
testInlineAdditionalProperties :: (Consumes TestInlineAdditionalProperties MimeJSON, MimeRender MimeJSON Value) => Value -> SwaggerPetstoreRequest TestInlineAdditionalProperties MimeJSON NoContent MimeNoContent
data TestInlineAdditionalProperties

-- | <i>Body Param</i> "param" - request body

-- | <pre>
--   application/json
--   </pre>

-- | <pre>
--   GET /fake/jsonFormData
--   </pre>
--   
--   test json serialization of form data
testJsonFormData :: (Consumes TestJsonFormData MimeJSON) => Param -> Param2 -> SwaggerPetstoreRequest TestJsonFormData MimeJSON NoContent MimeNoContent
data TestJsonFormData

-- | <pre>
--   application/json
--   </pre>
instance SwaggerPetstore.MimeTypes.Consumes SwaggerPetstore.API.Fake.TestJsonFormData SwaggerPetstore.MimeTypes.MimeJSON
instance SwaggerPetstore.Core.HasBodyParam SwaggerPetstore.API.Fake.TestInlineAdditionalProperties Data.Aeson.Types.Internal.Value
instance SwaggerPetstore.MimeTypes.Consumes SwaggerPetstore.API.Fake.TestInlineAdditionalProperties SwaggerPetstore.MimeTypes.MimeJSON
instance SwaggerPetstore.Core.HasOptionalParam SwaggerPetstore.API.Fake.TestEnumParameters SwaggerPetstore.Model.EnumFormStringArray
instance SwaggerPetstore.Core.HasOptionalParam SwaggerPetstore.API.Fake.TestEnumParameters SwaggerPetstore.Model.EnumFormString
instance SwaggerPetstore.Core.HasOptionalParam SwaggerPetstore.API.Fake.TestEnumParameters SwaggerPetstore.Model.EnumHeaderStringArray
instance SwaggerPetstore.Core.HasOptionalParam SwaggerPetstore.API.Fake.TestEnumParameters SwaggerPetstore.Model.EnumHeaderString
instance SwaggerPetstore.Core.HasOptionalParam SwaggerPetstore.API.Fake.TestEnumParameters SwaggerPetstore.Model.EnumQueryStringArray
instance SwaggerPetstore.Core.HasOptionalParam SwaggerPetstore.API.Fake.TestEnumParameters SwaggerPetstore.Model.EnumQueryString
instance SwaggerPetstore.Core.HasOptionalParam SwaggerPetstore.API.Fake.TestEnumParameters SwaggerPetstore.Model.EnumQueryInteger
instance SwaggerPetstore.Core.HasOptionalParam SwaggerPetstore.API.Fake.TestEnumParameters SwaggerPetstore.Model.EnumQueryDouble
instance SwaggerPetstore.MimeTypes.MimeType mtype => SwaggerPetstore.MimeTypes.Consumes SwaggerPetstore.API.Fake.TestEnumParameters mtype
instance SwaggerPetstore.MimeTypes.MimeType mtype => SwaggerPetstore.MimeTypes.Produces SwaggerPetstore.API.Fake.TestEnumParameters mtype
instance SwaggerPetstore.Core.HasOptionalParam SwaggerPetstore.API.Fake.TestEndpointParameters SwaggerPetstore.Model.ParamInteger
instance SwaggerPetstore.Core.HasOptionalParam SwaggerPetstore.API.Fake.TestEndpointParameters SwaggerPetstore.Model.Int32
instance SwaggerPetstore.Core.HasOptionalParam SwaggerPetstore.API.Fake.TestEndpointParameters SwaggerPetstore.Model.Int64
instance SwaggerPetstore.Core.HasOptionalParam SwaggerPetstore.API.Fake.TestEndpointParameters SwaggerPetstore.Model.ParamFloat
instance SwaggerPetstore.Core.HasOptionalParam SwaggerPetstore.API.Fake.TestEndpointParameters SwaggerPetstore.Model.ParamString
instance SwaggerPetstore.Core.HasOptionalParam SwaggerPetstore.API.Fake.TestEndpointParameters SwaggerPetstore.Model.ParamBinary
instance SwaggerPetstore.Core.HasOptionalParam SwaggerPetstore.API.Fake.TestEndpointParameters SwaggerPetstore.Model.ParamDate
instance SwaggerPetstore.Core.HasOptionalParam SwaggerPetstore.API.Fake.TestEndpointParameters SwaggerPetstore.Model.ParamDateTime
instance SwaggerPetstore.Core.HasOptionalParam SwaggerPetstore.API.Fake.TestEndpointParameters SwaggerPetstore.Model.Password
instance SwaggerPetstore.Core.HasOptionalParam SwaggerPetstore.API.Fake.TestEndpointParameters SwaggerPetstore.Model.Callback
instance SwaggerPetstore.MimeTypes.Consumes SwaggerPetstore.API.Fake.TestEndpointParameters SwaggerPetstore.MimeTypes.MimeXmlCharsetutf8
instance SwaggerPetstore.MimeTypes.Consumes SwaggerPetstore.API.Fake.TestEndpointParameters SwaggerPetstore.MimeTypes.MimeJsonCharsetutf8
instance SwaggerPetstore.MimeTypes.Produces SwaggerPetstore.API.Fake.TestEndpointParameters SwaggerPetstore.MimeTypes.MimeXmlCharsetutf8
instance SwaggerPetstore.MimeTypes.Produces SwaggerPetstore.API.Fake.TestEndpointParameters SwaggerPetstore.MimeTypes.MimeJsonCharsetutf8
instance SwaggerPetstore.Core.HasBodyParam SwaggerPetstore.API.Fake.TestClientModel SwaggerPetstore.Model.Client
instance SwaggerPetstore.MimeTypes.Consumes SwaggerPetstore.API.Fake.TestClientModel SwaggerPetstore.MimeTypes.MimeJSON
instance SwaggerPetstore.MimeTypes.Produces SwaggerPetstore.API.Fake.TestClientModel SwaggerPetstore.MimeTypes.MimeJSON
instance SwaggerPetstore.Core.HasBodyParam SwaggerPetstore.API.Fake.FakeOuterStringSerialize SwaggerPetstore.Model.OuterString
instance SwaggerPetstore.Core.HasBodyParam SwaggerPetstore.API.Fake.FakeOuterNumberSerialize SwaggerPetstore.Model.OuterNumber
instance SwaggerPetstore.Core.HasBodyParam SwaggerPetstore.API.Fake.FakeOuterCompositeSerialize SwaggerPetstore.Model.OuterComposite
instance SwaggerPetstore.Core.HasBodyParam SwaggerPetstore.API.Fake.FakeOuterBooleanSerialize SwaggerPetstore.Model.OuterBoolean


module SwaggerPetstore.API.AnotherFake

-- | <pre>
--   PATCH /another-fake/dummy
--   </pre>
--   
--   To test special tags
--   
--   To test special tags
testSpecialTags :: (Consumes TestSpecialTags MimeJSON, MimeRender MimeJSON Client) => Client -> SwaggerPetstoreRequest TestSpecialTags MimeJSON Client MimeJSON
data TestSpecialTags

-- | <i>Body Param</i> "body" - client model

-- | <pre>
--   application/json
--   </pre>

-- | <pre>
--   application/json
--   </pre>
instance SwaggerPetstore.Core.HasBodyParam SwaggerPetstore.API.AnotherFake.TestSpecialTags SwaggerPetstore.Model.Client
instance SwaggerPetstore.MimeTypes.Consumes SwaggerPetstore.API.AnotherFake.TestSpecialTags SwaggerPetstore.MimeTypes.MimeJSON
instance SwaggerPetstore.MimeTypes.Produces SwaggerPetstore.API.AnotherFake.TestSpecialTags SwaggerPetstore.MimeTypes.MimeJSON


module SwaggerPetstore.API


module SwaggerPetstore.ModelLens

-- | <a>additionalPropertiesClassMapProperty</a> Lens
additionalPropertiesClassMapPropertyL :: Lens_' AdditionalPropertiesClass (Maybe (Map String Text))

-- | <a>additionalPropertiesClassMapOfMapProperty</a> Lens
additionalPropertiesClassMapOfMapPropertyL :: Lens_' AdditionalPropertiesClass (Maybe (Map String (Map String Text)))

-- | <a>animalClassName</a> Lens
animalClassNameL :: Lens_' Animal (Text)

-- | <a>animalColor</a> Lens
animalColorL :: Lens_' Animal (Maybe Text)

-- | <a>apiResponseCode</a> Lens
apiResponseCodeL :: Lens_' ApiResponse (Maybe Int)

-- | <a>apiResponseType</a> Lens
apiResponseTypeL :: Lens_' ApiResponse (Maybe Text)

-- | <a>apiResponseMessage</a> Lens
apiResponseMessageL :: Lens_' ApiResponse (Maybe Text)

-- | <a>arrayOfArrayOfNumberOnlyArrayArrayNumber</a> Lens
arrayOfArrayOfNumberOnlyArrayArrayNumberL :: Lens_' ArrayOfArrayOfNumberOnly (Maybe [[Double]])

-- | <a>arrayOfNumberOnlyArrayNumber</a> Lens
arrayOfNumberOnlyArrayNumberL :: Lens_' ArrayOfNumberOnly (Maybe [Double])

-- | <a>arrayTestArrayOfString</a> Lens
arrayTestArrayOfStringL :: Lens_' ArrayTest (Maybe [Text])

-- | <a>arrayTestArrayArrayOfInteger</a> Lens
arrayTestArrayArrayOfIntegerL :: Lens_' ArrayTest (Maybe [[Integer]])

-- | <a>arrayTestArrayArrayOfModel</a> Lens
arrayTestArrayArrayOfModelL :: Lens_' ArrayTest (Maybe [[ReadOnlyFirst]])

-- | <a>capitalizationSmallCamel</a> Lens
capitalizationSmallCamelL :: Lens_' Capitalization (Maybe Text)

-- | <a>capitalizationCapitalCamel</a> Lens
capitalizationCapitalCamelL :: Lens_' Capitalization (Maybe Text)

-- | <a>capitalizationSmallSnake</a> Lens
capitalizationSmallSnakeL :: Lens_' Capitalization (Maybe Text)

-- | <a>capitalizationCapitalSnake</a> Lens
capitalizationCapitalSnakeL :: Lens_' Capitalization (Maybe Text)

-- | <a>capitalizationScaEthFlowPoints</a> Lens
capitalizationScaEthFlowPointsL :: Lens_' Capitalization (Maybe Text)

-- | <a>capitalizationAttName</a> Lens
capitalizationAttNameL :: Lens_' Capitalization (Maybe Text)

-- | <a>categoryId</a> Lens
categoryIdL :: Lens_' Category (Maybe Integer)

-- | <a>categoryName</a> Lens
categoryNameL :: Lens_' Category (Maybe Text)

-- | <a>classModelClass</a> Lens
classModelClassL :: Lens_' ClassModel (Maybe Text)

-- | <a>clientClient</a> Lens
clientClientL :: Lens_' Client (Maybe Text)

-- | <a>enumArraysJustSymbol</a> Lens
enumArraysJustSymbolL :: Lens_' EnumArrays (Maybe E'JustSymbol)

-- | <a>enumArraysArrayEnum</a> Lens
enumArraysArrayEnumL :: Lens_' EnumArrays (Maybe [E'ArrayEnum])

-- | <a>enumTestEnumString</a> Lens
enumTestEnumStringL :: Lens_' EnumTest (Maybe E'EnumString)

-- | <a>enumTestEnumInteger</a> Lens
enumTestEnumIntegerL :: Lens_' EnumTest (Maybe E'EnumInteger)

-- | <a>enumTestEnumNumber</a> Lens
enumTestEnumNumberL :: Lens_' EnumTest (Maybe E'EnumNumber)

-- | <a>enumTestOuterEnum</a> Lens
enumTestOuterEnumL :: Lens_' EnumTest (Maybe OuterEnum)

-- | <a>formatTestInteger</a> Lens
formatTestIntegerL :: Lens_' FormatTest (Maybe Int)

-- | <a>formatTestInt32</a> Lens
formatTestInt32L :: Lens_' FormatTest (Maybe Int)

-- | <a>formatTestInt64</a> Lens
formatTestInt64L :: Lens_' FormatTest (Maybe Integer)

-- | <a>formatTestNumber</a> Lens
formatTestNumberL :: Lens_' FormatTest (Double)

-- | <a>formatTestFloat</a> Lens
formatTestFloatL :: Lens_' FormatTest (Maybe Float)

-- | <a>formatTestDouble</a> Lens
formatTestDoubleL :: Lens_' FormatTest (Maybe Double)

-- | <a>formatTestString</a> Lens
formatTestStringL :: Lens_' FormatTest (Maybe Text)

-- | <a>formatTestByte</a> Lens
formatTestByteL :: Lens_' FormatTest (ByteArray)

-- | <a>formatTestBinary</a> Lens
formatTestBinaryL :: Lens_' FormatTest (Maybe Binary)

-- | <a>formatTestDate</a> Lens
formatTestDateL :: Lens_' FormatTest (Date)

-- | <a>formatTestDateTime</a> Lens
formatTestDateTimeL :: Lens_' FormatTest (Maybe DateTime)

-- | <a>formatTestUuid</a> Lens
formatTestUuidL :: Lens_' FormatTest (Maybe Text)

-- | <a>formatTestPassword</a> Lens
formatTestPasswordL :: Lens_' FormatTest (Text)

-- | <a>hasOnlyReadOnlyBar</a> Lens
hasOnlyReadOnlyBarL :: Lens_' HasOnlyReadOnly (Maybe Text)

-- | <a>hasOnlyReadOnlyFoo</a> Lens
hasOnlyReadOnlyFooL :: Lens_' HasOnlyReadOnly (Maybe Text)

-- | <a>mapTestMapMapOfString</a> Lens
mapTestMapMapOfStringL :: Lens_' MapTest (Maybe (Map String (Map String Text)))

-- | <a>mapTestMapOfEnumString</a> Lens
mapTestMapOfEnumStringL :: Lens_' MapTest (Maybe (Map String E'Inner))

-- | <a>mixedPropertiesAndAdditionalPropertiesClassUuid</a> Lens
mixedPropertiesAndAdditionalPropertiesClassUuidL :: Lens_' MixedPropertiesAndAdditionalPropertiesClass (Maybe Text)

-- | <a>mixedPropertiesAndAdditionalPropertiesClassDateTime</a> Lens
mixedPropertiesAndAdditionalPropertiesClassDateTimeL :: Lens_' MixedPropertiesAndAdditionalPropertiesClass (Maybe DateTime)

-- | <a>mixedPropertiesAndAdditionalPropertiesClassMap</a> Lens
mixedPropertiesAndAdditionalPropertiesClassMapL :: Lens_' MixedPropertiesAndAdditionalPropertiesClass (Maybe (Map String Animal))

-- | <a>model200ResponseName</a> Lens
model200ResponseNameL :: Lens_' Model200Response (Maybe Int)

-- | <a>model200ResponseClass</a> Lens
model200ResponseClassL :: Lens_' Model200Response (Maybe Text)

-- | <a>modelList123List</a> Lens
modelList123ListL :: Lens_' ModelList (Maybe Text)

-- | <a>modelReturnReturn</a> Lens
modelReturnReturnL :: Lens_' ModelReturn (Maybe Int)

-- | <a>nameName</a> Lens
nameNameL :: Lens_' Name (Int)

-- | <a>nameSnakeCase</a> Lens
nameSnakeCaseL :: Lens_' Name (Maybe Int)

-- | <a>nameProperty</a> Lens
namePropertyL :: Lens_' Name (Maybe Text)

-- | <a>name123Number</a> Lens
name123NumberL :: Lens_' Name (Maybe Int)

-- | <a>numberOnlyJustNumber</a> Lens
numberOnlyJustNumberL :: Lens_' NumberOnly (Maybe Double)

-- | <a>orderId</a> Lens
orderIdL :: Lens_' Order (Maybe Integer)

-- | <a>orderPetId</a> Lens
orderPetIdL :: Lens_' Order (Maybe Integer)

-- | <a>orderQuantity</a> Lens
orderQuantityL :: Lens_' Order (Maybe Int)

-- | <a>orderShipDate</a> Lens
orderShipDateL :: Lens_' Order (Maybe DateTime)

-- | <a>orderStatus</a> Lens
orderStatusL :: Lens_' Order (Maybe E'Status)

-- | <a>orderComplete</a> Lens
orderCompleteL :: Lens_' Order (Maybe Bool)

-- | <a>outerCompositeMyNumber</a> Lens
outerCompositeMyNumberL :: Lens_' OuterComposite (Maybe OuterNumber)

-- | <a>outerCompositeMyString</a> Lens
outerCompositeMyStringL :: Lens_' OuterComposite (Maybe OuterString)

-- | <a>outerCompositeMyBoolean</a> Lens
outerCompositeMyBooleanL :: Lens_' OuterComposite (Maybe OuterBoolean)

-- | <a>petId</a> Lens
petIdL :: Lens_' Pet (Maybe Integer)

-- | <a>petCategory</a> Lens
petCategoryL :: Lens_' Pet (Maybe Category)

-- | <a>petName</a> Lens
petNameL :: Lens_' Pet (Text)

-- | <a>petPhotoUrls</a> Lens
petPhotoUrlsL :: Lens_' Pet ([Text])

-- | <a>petTags</a> Lens
petTagsL :: Lens_' Pet (Maybe [Tag])

-- | <a>petStatus</a> Lens
petStatusL :: Lens_' Pet (Maybe E'Status2)

-- | <a>readOnlyFirstBar</a> Lens
readOnlyFirstBarL :: Lens_' ReadOnlyFirst (Maybe Text)

-- | <a>readOnlyFirstBaz</a> Lens
readOnlyFirstBazL :: Lens_' ReadOnlyFirst (Maybe Text)

-- | <a>specialModelNameSpecialPropertyName</a> Lens
specialModelNameSpecialPropertyNameL :: Lens_' SpecialModelName (Maybe Integer)

-- | <a>tagId</a> Lens
tagIdL :: Lens_' Tag (Maybe Integer)

-- | <a>tagName</a> Lens
tagNameL :: Lens_' Tag (Maybe Text)

-- | <a>userId</a> Lens
userIdL :: Lens_' User (Maybe Integer)

-- | <a>userUsername</a> Lens
userUsernameL :: Lens_' User (Maybe Text)

-- | <a>userFirstName</a> Lens
userFirstNameL :: Lens_' User (Maybe Text)

-- | <a>userLastName</a> Lens
userLastNameL :: Lens_' User (Maybe Text)

-- | <a>userEmail</a> Lens
userEmailL :: Lens_' User (Maybe Text)

-- | <a>userPassword</a> Lens
userPasswordL :: Lens_' User (Maybe Text)

-- | <a>userPhone</a> Lens
userPhoneL :: Lens_' User (Maybe Text)

-- | <a>userUserStatus</a> Lens
userUserStatusL :: Lens_' User (Maybe Int)

-- | <a>catClassName</a> Lens
catClassNameL :: Lens_' Cat (Text)

-- | <a>catColor</a> Lens
catColorL :: Lens_' Cat (Maybe Text)

-- | <a>catDeclawed</a> Lens
catDeclawedL :: Lens_' Cat (Maybe Bool)

-- | <a>dogClassName</a> Lens
dogClassNameL :: Lens_' Dog (Text)

-- | <a>dogColor</a> Lens
dogColorL :: Lens_' Dog (Maybe Text)

-- | <a>dogBreed</a> Lens
dogBreedL :: Lens_' Dog (Maybe Text)


module SwaggerPetstore
