serinus_openapi library

Classes

ApiKeySecuritySchemeV3
API key security scheme representing an API key authentication scheme.
ApiRoute<Res, Params>
The ApiRoute class is used to define an API route.
ApiRouteV2
API Route implementation for OpenAPI v2.
ApiRouteV3
API Route implementation for OpenAPI v3.
ApiRouteV31
API Route implementation for OpenAPI v3.1.
AuthorizationCodeOAuthFlowV3
Authorization code OAuth flow representing the authorization code OAuth2 flow.
ClientCredentialsOAuthFlowV3
Client credentials OAuth flow representing the client credentials OAuth2 flow.
ComponentsObjectV3
Components object to hold reusable components for the OpenAPI document.
ComponentsObjectV31
Components object as per OpenAPI 3.1 specification.
ContactObject
Contact information for the API.
DiscriminatorObjectV3
Discriminator object to aid in serialization, deserialization, and validation.
DocumentV2<T extends Map<String, dynamic>>
OpenAPI 2.0 (Swagger) Document
DocumentV3
OpenAPI document representing the root document of the OpenAPI specification.
DocumentV31
OpenAPI 3.1 document as per the OpenAPI 3.1 specification.
EncodingObjectV3
Encoding object representing encoding information for a media type.
ExampleObjectV3
Example object representing an example in a media type or parameter.
ExternalDocumentationObjectV2
External documentation object representing additional external documentation.
ExternalDocumentationObjectV3
External documentation object representing additional external documentation.
HeaderObjectV2
Header object representing a single header in a response.
HeaderObjectV3
Header object representing a header in a response.
HttpSecuritySchemeV3
HTTP security scheme representing an HTTP authentication scheme.
ImplicitOAuthFlowV3
Implicit OAuth flow representing the implicit OAuth2 flow.
InfoObject
Common classes used across different OpenAPI versions.
InfoObjectV31
Info object as per OpenAPI 3.1 specification.
ItemsObjectV2
Items object representing the type of items in an array.
JsonSchema<T>
JSON Schema object representing a JSON schema definition.
LicenseObject
License information for the API.
LicenseObjectV31
License object as per OpenAPI 3.1 specification.
LinkObjectV3
Link object representing a link in a response.
MediaTypeObjectV3
Media type object representing a media type in a request or response.
OAuth2SecuritySchemeV3
OAuth2 security scheme representing an OAuth2 authentication scheme.
OAuthFlowObjectV3
OAuth flow object representing an OAuth2 flow.
OpenApiController
Controller to serve the OpenAPI UI
OpenAPIDocument<T extends Map<String, dynamic>>
Base class for the three OpenAPI document flavours exposed by the library.
OpenApiModule
The OpenApiModule class is used to generate the Swagger documentation.
OpenApiObject<T extends Map>
Base class for OpenAPI objects (e.g., SchemaObjectV3, ResponseObjectV31).
OpenApiOperation<T extends Map<String, dynamic>>
Base class for OpenAPI operations (e.g., OperationObjectV3, OperationObjectV31).
OpenApiParameter<T extends Map<String, dynamic>>
Base class for OpenAPI parameters (e.g., ParameterObjectV3, ParameterObjectV31).
OpenApiParser
A parser for OpenAPI documents supporting versions 2.0, 3.0.x, and 3.1.x.
OpenApiPathItem<T extends Map<String, dynamic>, P extends OpenApiObject<Map>, O extends OpenApiOperation<Map<String, dynamic>>>
Base class for OpenAPI path items (e.g., PathItemObjectV2, PathItemObjectV3, PathItemObjectV31).
OpenApiType
Base class for OpenAPI types (e.g., OpenApiType).
OpenIdSecuritySchemeV3
OpenID Connect security scheme representing an OpenID Connect authentication scheme.
OperationObjectV2
Operation object representing a single API operation on a path.
OperationObjectV3
Operation object representing an operation in a path.
OperationObjectV31
Operation object as per OpenAPI 3.1 specification.
ParameterBaseObjectV3
Media type object representing a media type in a content object.
ParameterObjectV2
Parameter object representing a single operation parameter.
ParameterObjectV3
Parameter object representing a parameter in an operation.
PasswordOAuthFlowV3
Password OAuth flow representing the password OAuth2 flow.
PathItemObjectV2
Path item object representing the operations available on a single path.
PathItemObjectV3
Path item object representing a path in the OpenAPI document.
PathItemObjectV31
Path item object as per OpenAPI 3.1 specification.
PathsWebhooksComponentsV31<T extends Map<String, dynamic>>
Structure to hold paths, webhooks, and components as per OpenAPI 3.1 specification.
ReferenceObject
A simple reference object to be used in various places.
Render<T extends RenderOptions>
Base class for renderers.
RenderOptions
Base class for render options.
RequestBodyV3
Request body object representing a request body in an operation.
ResponseObjectV2
Response object representing a single response from an API operation.
ResponseObjectV3
Response object representing a response in an operation.
ResponsesV3<T>
Responses object representing the responses of an operation.
ResponsesV31
Responses object as per OpenAPI 3.1 specification.
ScalarUIOptions
Options for configuring the Scalar UI render.
ScalarUIRender
The ScalarUIRender class is used to render the Scalar UI.
SchemaObjectV2
Schema object representing a data model in the API.
SchemaObjectV3<E extends Object>
Schema object representing a schema in the OpenAPI specification.
SchemaObjectV31
JSON Schema object as per OpenAPI 3.1 specification.
SecurityRequirementsV3
Security requirements object representing security requirements for an operation.
SecuritySchemeApiKeyV2
API key security scheme.
SecuritySchemeBasicV2
Basic authentication security scheme.
SecuritySchemeOAuth2AccessCodeV2
OAuth2 Authorization Code flow security scheme.
SecuritySchemeOAuth2ApplicationV2
OAuth2 Client Credentials (Application) flow security scheme.
SecuritySchemeOAuth2ImplicitV2
OAuth2 Implicit flow security scheme.
SecuritySchemeOAuth2PasswordV2
/ OAuth2 Password flow security scheme.
SecuritySchemeOAuth2V2
OAuth2 security scheme.
SecuritySchemeObjectV2
Represents a security scheme in the API.
SecuritySchemeObjectV3
Security scheme object representing a security scheme in the OpenAPI document.
ServerObjectV3
Server object representing a server.
ServerVariableObjectV3
Server variable object representing a server variable for server URL template substitution.
SwaggerUIOptions
Options for configuring the Swagger UI render.
SwaggerUIRender
The SwaggerUi class contains the needed information to generate the Swagger UI.
TagObjectV2
Tag object representing a tag for API documentation control.
TagObjectV3
Tag object representing a tag in the OpenAPI document.
ThemeOptions
Options for configuring the Swagger UI render.
XmlObjectV2
XML object representing additional XML metadata.
XMLObjectV3
XML object to represent XML metadata for a schema.

Enums

OpenApiParseType
Enum representing the OpenAPI versions.
OpenApiRender
Enum representing the available OpenAPI render types.
OpenApiVersion
Enum representing the supported OpenAPI versions.

Functions

getRenderer<T extends RenderOptions>(T options) Render<T>
Factory method to get the appropriate renderer based on the provided options.