import type { CallbackObject as CallbackObjectBase, CookieParameterObject as CookieParameterObjectBase, DiscriminatorObject, EncodingObject as EncodingObjectBase, ExampleObject, ExternalDocumentationObject, HeaderParameterObject as HeaderParameterObjectBase, InfoObject, LinkObject, MediaTypeObject as MediaTypeObjectBase, OperationObject as OperationObjectBase, PathItemObject as PathItemObjectBase, PathParameterObject as PathParameterObjectBase, PathsObject as PathsObjectBase, QueryParameterObject as QueryParameterObjectBase, RequestBodyObject as RequestBodyObjectBase, ResponseObject as ResponseObjectBase, ResponsesObject as ResponsesObjectBase, SecurityRequirementObject, SecuritySchemeObject, ServerObject, SpecificationExtensions, TagObject, XMLObject } from '../shared/types'; import type { CommonMarkString, JSONValue, ObjectOrRef } from '@fresha/api-tools-core'; export type { APIKeySecuritySchemeObject, ContactObject, CookieParameterSerializationStyle, DiscriminatorObject, ExampleObject, ExternalDocumentationObject, HeaderParameterSerializationStyle, HTTPAuthSchema, HTTPSecuritySchemeObject, InfoObject, LicenseObject, LinkObject, OAuth2SecuritySchemeObject, OpenIdConnectSecuritySchemeObject, PathParameterSerializationStyle, QueryParameterSerializationStyle, SecurityRequirementObject, SecuritySchemeObject, SecuritySchemeType, ServerObject, ServerVariableObject, TagObject, XMLObject, } from '../shared/types'; /** * @see https://spec.openapis.org/oas/v3.0.3#openapi-object */ export type OpenAPIObject = { openapi: '3.0.3'; info: InfoObject; servers?: ServerObject[]; paths: PathsObject; components?: ComponentsObject; security?: SecurityRequirementObject[]; tags?: TagObject[]; externalDocs?: ExternalDocumentationObject; } & SpecificationExtensions; /** * @see https://spec.openapis.org/oas/v3.0.3#paths-object */ export type PathsObject = PathsObjectBase; /** * @see https://spec.openapis.org/oas/v3.0.3#path-item-object */ export type PathItemObject = PathItemObjectBase; /** * @see https://spec.openapis.org/oas/v3.0.3#operation-object */ export type OperationObject = OperationObjectBase; /** * @see https://spec.openapis.org/oas/v3.0.3#parameter-object */ export type PathParameterObject = PathParameterObjectBase; /** * @see https://spec.openapis.org/oas/v3.0.3#parameter-object */ export type QueryParameterObject = QueryParameterObjectBase; /** * @see https://spec.openapis.org/oas/v3.0.3#parameter-object */ export type CookieParameterObject = CookieParameterObjectBase; /** * @see https://spec.openapis.org/oas/v3.0.3#parameter-object */ export type HeaderParameterObject = HeaderParameterObjectBase; /** * @see https://spec.openapis.org/oas/v3.0.3#parameter-object */ export type ParameterObject = PathParameterObject | QueryParameterObject | HeaderParameterObject | CookieParameterObject; /** * @see https://spec.openapis.org/oas/v3.0.3#request-body-object */ export type RequestBodyObject = RequestBodyObjectBase; /** * @see https://spec.openapis.org/oas/v3.0.3#media-type-object */ export type MediaTypeObject = MediaTypeObjectBase; /** * @see https://spec.openapis.org/oas/v3.0.3#schema-object */ export type SchemaType = 'boolean' | 'object' | 'array' | 'integer' | 'number' | 'string'; /** * @see https://spec.openapis.org/oas/v3.0.3#schema-object */ export type SchemaFormat = 'int32' | 'int64' | 'float' | 'double' | 'byte' | 'binary' | 'date' | 'date-time' | 'password' | 'email' | 'decimal'; /** * @see https://spec.openapis.org/oas/v3.0.3#schema-object */ export type SchemaObject = { title?: string; multipleOf?: number; maximum?: number; exclusiveMaximum?: boolean; minimum?: number; exclusiveMinimum?: boolean; maxLength?: number; minLength?: number; pattern?: string; maxItems?: number; minItems?: number; uniqueItems?: boolean; maxProperties?: number; minProperties?: number; required?: string[]; enum?: JSONValue[]; type?: SchemaType; allOf?: ObjectOrRef[]; oneOf?: ObjectOrRef[]; anyOf?: ObjectOrRef[]; not?: ObjectOrRef; items?: ObjectOrRef; properties?: Record>; additionalProperties?: ObjectOrRef | boolean; description?: CommonMarkString; format?: SchemaFormat; default?: JSONValue; nullable?: boolean; discriminator?: DiscriminatorObject; readOnly?: boolean; writeOnly?: boolean; xml?: XMLObject; externalDocs?: ExternalDocumentationObject; example?: JSONValue; deprecated?: boolean; } & SpecificationExtensions; /** * @see https://spec.openapis.org/oas/v3.0.3#encoding-object */ export type EncodingObject = EncodingObjectBase; /** * @see https://spec.openapis.org/oas/v3.0.3#header-object */ export type HeaderObject = Omit, 'name' | 'in'>; /** * @see https://spec.openapis.org/oas/v3.0.3#responses-object */ export type ResponsesObject = ResponsesObjectBase; /** * @see https://spec.openapis.org/oas/v3.0.3#response-object */ export type ResponseObject = ResponseObjectBase; /** * @see https://spec.openapis.org/oas/v3.0.3#callback-object */ export type CallbackObject = CallbackObjectBase; /** * @see https://spec.openapis.org/oas/v3.0.3#components-object */ export type ComponentsObject = { schemas?: Record>; responses?: Record>; parameters?: Record>; examples?: Record>; requestBodies?: Record>; headers?: Record>; securitySchemes?: Record>; links?: Record>; callbacks?: Record>; } & SpecificationExtensions; //# sourceMappingURL=types.d.ts.map