import type { OpenApiCallback } from "./lib/OpenApiCallback.js";
import type { OpenApiComponent } from "./lib/OpenApiComponent.js";
import type { OpenApiContact } from "./lib/OpenApiContact.js";
import type { OpenApiDocumentation } from "./lib/OpenApiDocumentation.js";
import type { OpenApiEncoding } from "./lib/OpenApiEncoding.js";
import type { OpenApiExample } from "./lib/OpenApiExample.js";
import type { OpenApiHeader } from "./lib/OpenApiHeader.js";
import type { OpenApiInfo } from "./lib/OpenApiInfo.js";
import type { OpenApiLicense } from "./lib/OpenApiLicense.js";
import type { OpenApiLink } from "./lib/OpenApiLink.js";
import type { OpenApiMediaType } from "./lib/OpenApiMedia.js";
import type { OpenApiOAuthFlow } from "./lib/OpenApiOAuthFlow.js";
import type { OpenApiOAuthFlows } from "./lib/OpenApiOAuthFlows.js";
import type { OpenApiOperation } from "./lib/OpenApiOperation.js";
import type { OpenApiParameter } from "./lib/OpenApiParameter.js";
import type { OpenApiPath } from "./lib/OpenApiPath.js";
import type { OpenApiPathItem } from "./lib/OpenApiPathItem.js";
import type { OpenApiReferenceObject } from "./lib/OpenApiReferenceObject.js";
import type { OpenApiRequestBody } from "./lib/OpenApiRequestBody.js";
import type { OpenApiResponse } from "./lib/OpenApiResponse.js";
import type { OpenApiResponses } from "./lib/OpenApiResponses.js";
import type { OpenApiSecurityRequirement } from "./lib/OpenApiSecurityRequirement.js";
import type { OpenApiSecurityScheme } from "./lib/OpenApiSecurityScheme.js";
import type { OpenApiServer } from "./lib/OpenApiServer.js";
import type { OpenApiServerVariable } from "./lib/OpenApiServerVariable.js";
import type { OpenApiSchema } from "./schema/OpenApiSchema.js";
import type { GConstructor, OpenApiExtensionString, OpenApiHTTPMethod, OpenApiHTTPStatusCode, OpenApiMediaContentType } from "./types.ts";
/**
 * @fieldType string
 * @serializedName description
 * @methodName addDescription
 */
export declare function withDescription<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _description?: string;
        addDescription(val: string): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType string
 * @serializedName summary
 * @methodName addSummary
 */
export declare function withSummary<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _summary?: string;
        addSummary(val: string): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType boolean
 * @serializedName allowReserved
 * @methodName addAllowReserved
 */
export declare function withAllowReserved<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _allowReserved?: boolean;
        addAllowReserved(val: boolean): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType boolean
 * @serializedName deprecated
 * @methodName addDeprecated
 */
export declare function withDeprecated<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _deprecated?: boolean;
        addDeprecated(val: boolean): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType boolean
 * @serializedName required
 * @methodName addRequired
 */
export declare function withRequired<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _required?: boolean;
        addRequired(val: boolean): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType boolean
 * @serializedName nullable
 * @methodName addNullable
 */
export declare function withNullable<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _nullable?: boolean;
        addNullable(val: boolean): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType string
 * @serializedName name
 * @methodName addName
 */
export declare function withName<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _name?: string;
        addName(val: string): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType string
 * @serializedName namespace
 * @methodName addNamespace
 */
export declare function withNamespace<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _namespace?: string;
        addNamespace(val: string): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType string
 * @serializedName prefix
 * @methodName addPrefix
 */
export declare function withPrefix<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _prefix?: string;
        addPrefix(val: string): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType boolean
 * @serializedName wrapped
 * @methodName addWrapped
 */
export declare function withWrapped<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _wrapped?: boolean;
        addWrapped(val: boolean): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType boolean
 * @serializedName attribute
 * @methodName addAttribute
 */
export declare function withAttribute<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _attribute?: boolean;
        addAttribute(val: boolean): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType string|unknown
 * @serializedName value
 * @methodName addValue
 */
export declare function withValue<TBase extends GConstructor>(Base: TBase): <T extends string | unknown>() => {
    new (...args: any[]): {
        _value?: T;
        addValue(val: T): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType string
 * @serializedName format
 * @methodName addFormat
 */
export declare function withFormat<TBase extends GConstructor>(Base: TBase): <T extends string>() => {
    new (...args: any[]): {
        _format?: T;
        addFormat(val: T): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType T
 * @serializedName default
 * @methodName addDefault
 */
export declare function withDefault<TBase extends GConstructor>(Base: TBase): <T>() => {
    new (...args: any[]): {
        _default?: T;
        addDefault(val: T): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType "apiKey"|"http"|"mutualTLS"|"oauth2"|"openIdConnect"
 * @serializedName type
 * @methodName addType
 */
export declare function withType<TBase extends GConstructor>(Base: TBase): <T extends "apiKey" | "http" | "mutualTLS" | "oauth2" | "openIdConnect">() => {
    new (...args: any[]): {
        _type?: T;
        addType(val: T): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType T
 * @serializedName in
 * @methodName addIn
 */
export declare function withIn<TBase extends GConstructor>(Base: TBase): <T>() => {
    new (...args: any[]): {
        _in?: T;
        addIn(val: T): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType Map<string,string>
 * @serializedName mapping
 * @methodName addMappings
 */
export declare function withMapping<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _mapping?: Map<string, string>;
        addMappings(mappings: Partial<{ [K in string]: string; }>): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType Map<string,OpenApiExample|OpenApiReferenceObject>
 * @serializedName examples
 * @methodName addExamples
 */
export declare function withExamples<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _examples?: Map<string, OpenApiExample | OpenApiReferenceObject>;
        addExamples(mappings: Partial<{ [K in string]: OpenApiExample | OpenApiReferenceObject; }>): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType Map<OpenApiExtensionString,OpenApiSchema|OpenApiReferenceObject>
 * @serializedName extensions
 * @methodName addExtensions
 */
export declare function withExtensions<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _extensions?: Map<OpenApiExtensionString, OpenApiSchema | OpenApiReferenceObject>;
        addExtensions(mappings: Partial<{ [K in OpenApiExtensionString]: OpenApiSchema | OpenApiReferenceObject; }>): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType number
 * @serializedName maximum
 * @methodName addMaximum
 */
export declare function withMaximum<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _maximum?: number;
        addMaximum(val: number): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType number
 * @serializedName minimum
 * @methodName addMinimum
 */
export declare function withMinimum<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _minimum?: number;
        addMinimum(val: number): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType number
 * @serializedName exclusiveMinimum
 * @methodName addExclusiveMin
 */
export declare function withExclusiveMinimum<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _exclusiveMinimum?: number;
        addExclusiveMin(val: number): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType number
 * @serializedName exclusiveMaximum
 * @methodName addExclusiveMax
 */
export declare function withExclusiveMaximum<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _exclusiveMaximum?: number;
        addExclusiveMax(val: number): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType boolean
 * @serializedName exclusiveMinimum
 * @methodName addExclusiveMin
 */
export declare function withExclusiveMinimumBoolean<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _exclusiveMinimum?: boolean;
        addExclusiveMin(val: boolean): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType boolean
 * @serializedName exclusiveMaximum
 * @methodName addExclusiveMax
 */
export declare function withExclusiveMaximumBoolean<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _exclusiveMaximum?: boolean;
        addExclusiveMax(val: boolean): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType number
 * @serializedName multipleOf
 * @methodName addMultiple
 */
export declare function withMultipleOf<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _multipleOf?: number;
        addMultiple(val: number): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType RegExp
 * @serializedName pattern
 * @methodName addPattern
 */
export declare function withPattern<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _pattern?: RegExp;
        addPattern(val: RegExp): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType number
 * @serializedName minLength
 * @methodName addMinLength
 */
export declare function withMinLength<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _minLength?: number;
        addMinLength(val: number): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType number
 * @serializedName maxLength
 * @methodName addMaxLength
 */
export declare function withMaxLength<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _maxLength?: number;
        addMaxLength(val: number): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType string
 * @serializedName url
 * @methodName addUrl
 */
export declare function withURL<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _url?: string;
        addUrl(val: string): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType string
 * @serializedName propertyName
 * @methodName addPropertyName
 */
export declare function withPropertyName<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _propertyName?: string;
        addPropertyName(val: string): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType string
 * @serializedName scheme
 * @methodName addScheme
 */
export declare function withScheme<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _scheme?: string;
        addScheme(val: string): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType string
 * @serializedName bearerFormat
 * @methodName addBearerFormat
 */
export declare function withBearerFormat<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _bearerFormat?: string;
        addBearerFormat(val: string): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType string
 * @serializedName authorizationUrl
 * @methodName addAuthorizationUrl
 */
export declare function withAuthorizationURL<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _authorizationUrl?: string;
        addAuthorizationUrl(val: string): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType string
 * @serializedName tokenUrl
 * @methodName addTokenUrl
 */
export declare function withTokenURL<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _tokenUrl?: string;
        addTokenUrl(val: string): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType string
 * @serializedName refreshUrl
 * @methodName addRefreshUrl
 */
export declare function withRefreshURL<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _refreshUrl?: string;
        addRefreshUrl(val: string): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType Map<string,string>
 * @serializedName scopes
 * @methodName addScopes
 */
export declare function withScopes<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _scopes?: Map<string, string>;
        addScopes(mappings: Partial<{ [K in string]: string; }>): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType OpenApiDocumentation
 * @serializedName externalDocs
 * @methodName addExternalDocs
 */
export declare function withExternalDocs<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _externalDocs?: OpenApiDocumentation;
        addExternalDocs(val: OpenApiDocumentation): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType OpenApiOAuthFlow
 * @serializedName implicit
 * @methodName addImplicit
 */
export declare function withImplicit<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _implicit?: OpenApiOAuthFlow;
        addImplicit(val: OpenApiOAuthFlow): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType OpenApiOAuthFlow
 * @serializedName password
 * @methodName addPassword
 */
export declare function withPassword<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _password?: OpenApiOAuthFlow;
        addPassword(val: OpenApiOAuthFlow): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType OpenApiOAuthFlow
 * @serializedName clientCredentials
 * @methodName addClientCredentials
 */
export declare function withClientCredentials<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _clientCredentials?: OpenApiOAuthFlow;
        addClientCredentials(val: OpenApiOAuthFlow): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType OpenApiOAuthFlow
 * @serializedName authorizationCode
 * @methodName addAuthorizationCode
 */
export declare function withAuthorizationCode<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _authorizationCode?: OpenApiOAuthFlow;
        addAuthorizationCode(val: OpenApiOAuthFlow): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType OpenApiSchema|OpenApiReferenceObject
 * @serializedName schema
 * @methodName addSchema
 */
export declare function withSchema<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _schema?: OpenApiSchema | OpenApiReferenceObject;
        addSchema(val: OpenApiSchema | OpenApiReferenceObject): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType OpenApiOAuthFlows
 * @serializedName flows
 * @methodName addFlows
 */
export declare function withFlows<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _flows?: OpenApiOAuthFlows;
        addFlows(val: OpenApiOAuthFlows): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType any
 * @serializedName example
 * @methodName addExample
 */
export declare function withExample<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _example?: any;
        addExample(val: any): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType OpenApiSchema|OpenApiReferenceObject
 * @serializedName items
 * @methodName addItems
 */
export declare function withItems<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _items?: OpenApiSchema | OpenApiReferenceObject;
        addItems(val: OpenApiSchema | OpenApiReferenceObject): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType string
 * @serializedName openIdConnectUrl
 * @methodName addOpenIdConnectUrl
 */
export declare function withOpenIdConnectURL<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _openIdConnectUrl?: string;
        addOpenIdConnectUrl(val: string): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType string
 * @serializedName externalValue
 * @methodName addExternalValue
 */
export declare function withExternalValue<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _externalValue?: string;
        addExternalValue(val: string): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType string
 * @serializedName title
 * @methodName addTitle
 */
export declare function withTitle<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _title?: string;
        addTitle(val: string): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType string
 * @serializedName version
 * @methodName addVersion
 */
export declare function withVersion<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _version?: string;
        addVersion(val: string): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType number
 * @serializedName minItems
 * @methodName addMinItems
 */
export declare function withMinItems<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _minItems?: number;
        addMinItems(val: number): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType number
 * @serializedName maxItems
 * @methodName addMaxItems
 */
export declare function withMaxItems<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _maxItems?: number;
        addMaxItems(val: number): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType Map<string,OpenApiSchema|OpenApiReferenceObject>
 * @serializedName properties
 * @methodName addProperties
 */
export declare function withProperties<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _properties?: Map<string, OpenApiSchema | OpenApiReferenceObject>;
        addProperties(mappings: Partial<{ [K in string]: OpenApiSchema | OpenApiReferenceObject; }>): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType Map<string,OpenApiSchema|OpenApiReferenceObject>
 * @serializedName patternProperties
 * @methodName addPatternProperties
 */
export declare function withPatternProperties<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _patternProperties?: Map<string, OpenApiSchema | OpenApiReferenceObject>;
        addPatternProperties(mappings: Partial<{ [K in string]: OpenApiSchema | OpenApiReferenceObject; }>): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType T
 * @serializedName enum
 * @methodName addEnums
 */
export declare function withEnum<TBase extends GConstructor>(Base: TBase): <T>() => {
    new (...args: any[]): {
        _enum?: T[];
        addEnums(val: T[]): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType string
 * @serializedName style
 * @methodName addStyle
 */
export declare function withStyle<TBase extends GConstructor>(Base: TBase): <T extends string>() => {
    new (...args: any[]): {
        _style?: T;
        addStyle(val: T): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType boolean
 * @serializedName explode
 * @methodName addExplode
 */
export declare function withExplode<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _explode?: boolean;
        addExplode(val: boolean): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType string
 * @serializedName contentType
 * @methodName addContentType
 */
export declare function withContentType<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _contentType?: string;
        addContentType(val: string): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType string
 * @serializedName operationRef
 * @methodName addOperationRef
 */
export declare function withOperationRef<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _operationRef?: string;
        addOperationRef(val: string): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType string
 * @serializedName operationId
 * @methodName addOperationId
 */
export declare function withOperationId<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _operationId?: string;
        addOperationId(val: string): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType Map<string,OpenApiHeader|OpenApiReferenceObject>
 * @serializedName headers
 * @methodName addHeaders
 */
export declare function withHeaders<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _headers?: Map<string, OpenApiHeader | OpenApiReferenceObject>;
        addHeaders(mappings: Partial<{ [K in string]: OpenApiHeader | OpenApiReferenceObject; }>): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType Map<OpenApiMediaContentType,OpenApiMediaType>
 * @serializedName content
 * @methodName addContents
 */
export declare function withContent<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _content?: Map<OpenApiMediaContentType, OpenApiMediaType>;
        addContents(mappings: Partial<{ [K in OpenApiMediaContentType]: OpenApiMediaType; }>): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType Map<string,OpenApiEncoding>
 * @serializedName encoding
 * @methodName addEncodings
 */
export declare function withEncoding<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _encoding?: Map<string, OpenApiEncoding>;
        addEncodings(mappings: Partial<{ [K in string]: OpenApiEncoding; }>): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType Map<string,OpenApiPathItem>
 * @serializedName callback
 * @methodName addCallback
 */
export declare function withCallback<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _callback?: Map<string, OpenApiPathItem>;
        addCallback(mappings: Partial<{ [K in string]: OpenApiPathItem; }>): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType Map<string,OpenApiServerVariable>
 * @serializedName variables
 * @methodName addVariables
 */
export declare function withVariables<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _variables?: Map<string, OpenApiServerVariable>;
        addVariables(mappings: Partial<{ [K in string]: OpenApiServerVariable; }>): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType Map<string,OpenApiLink>
 * @serializedName links
 * @methodName addLinks
 */
export declare function withLinks<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _links?: Map<string, OpenApiLink>;
        addLinks(mappings: Partial<{ [K in string]: OpenApiLink; }>): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType OpenApiServer
 * @serializedName server
 * @methodName addServer
 */
export declare function withServer<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _server?: OpenApiServer;
        addServer(val: OpenApiServer): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType Map<string,OpenApiCallback|OpenApiReferenceObject>
 * @serializedName callbacks
 * @methodName addCallbacks
 */
export declare function withCallbacks<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _callbacks?: Map<string, OpenApiCallback | OpenApiReferenceObject>;
        addCallbacks(mappings: Partial<{ [K in string]: OpenApiCallback | OpenApiReferenceObject; }>): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType Map<string,string>
 * @serializedName parameters
 * @methodName addParametersLiteral
 */
export declare function withParametersPrimitive<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _parameters?: Map<string, string>;
        addParametersLiteral(mappings: Partial<{ [K in string]: string; }>): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType string
 * @serializedName requestBody
 * @methodName addRequestBodyLiteral
 */
export declare function withRequestBodyPrimitive<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _requestBody?: string;
        addRequestBodyLiteral(val: string): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType OpenApiRequestBody|OpenApiReferenceObject
 * @serializedName requestBody
 * @methodName addRequestBody
 */
export declare function withRequestBody<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _requestBody?: OpenApiRequestBody | OpenApiReferenceObject;
        addRequestBody(val: OpenApiRequestBody | OpenApiReferenceObject): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType Map<OpenApiHTTPStatusCode,OpenApiResponse|OpenApiReferenceObject>
 * @serializedName response
 * @methodName addResponses
 */
export declare function withResponses<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _response?: Map<OpenApiHTTPStatusCode, OpenApiResponse | OpenApiReferenceObject>;
        addResponses(mappings: Partial<{ [K in OpenApiHTTPStatusCode]: OpenApiResponse | OpenApiReferenceObject; }>): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType Map<OpenApiHTTPMethod,OpenApiOperation>
 * @serializedName method
 * @methodName addMethod
 */
export declare function withMethods<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _method?: Map<OpenApiHTTPMethod, OpenApiOperation>;
        addMethod(mappings: Partial<{ [K in OpenApiHTTPMethod]: OpenApiOperation; }>): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType Map<string,OpenApiPathItem>
 * @serializedName endpoint
 * @methodName addEndpoints
 */
export declare function withPath<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _endpoint?: Map<string, OpenApiPathItem>;
        addEndpoints(mappings: Partial<{ [K in string]: OpenApiPathItem; }>): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType OpenApiParameter|OpenApiReferenceObject
 * @serializedName parameters
 * @methodName addParameters
 */
export declare function withParametersArray<TBase extends GConstructor>(Base: TBase): <T extends OpenApiParameter | OpenApiReferenceObject>() => {
    new (...args: any[]): {
        _parameters?: T[];
        addParameters(val: T[]): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType OpenApiSecurityRequirement
 * @serializedName security
 * @methodName addSecurity
 */
export declare function withSecurityArray<TBase extends GConstructor>(Base: TBase): <T extends OpenApiSecurityRequirement>() => {
    new (...args: any[]): {
        _security?: T[];
        addSecurity(val: T[]): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType OpenApiServer
 * @serializedName servers
 * @methodName addServers
 */
export declare function withServersArray<TBase extends GConstructor>(Base: TBase): <T extends OpenApiServer>() => {
    new (...args: any[]): {
        _servers?: T[];
        addServers(val: T[]): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType OpenApiSchema|OpenApiReferenceObject
 * @serializedName type
 * @methodName ofTypes
 */
export declare function withUnionTypes<TBase extends GConstructor>(Base: TBase): <T extends OpenApiSchema | OpenApiReferenceObject>() => {
    new (...args: any[]): {
        _type?: T[];
        ofTypes(...val: T[]): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType T
 * @serializedName tags
 * @methodName addTags
 */
export declare function withTags<TBase extends GConstructor>(Base: TBase): <T>() => {
    new (...args: any[]): {
        _tags?: T[];
        addTags(val: T[]): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType T
 * @serializedName required
 * @methodName addRequired
 */
export declare function withRequiredEnumerable<TBase extends GConstructor>(Base: TBase): <T>() => {
    new (...args: any[]): {
        _required?: T[];
        addRequired(val: T[]): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType OpenApiSchema|OpenApiReferenceObject
 * @serializedName additionalProperties
 * @methodName addAdditionalProperties
 */
export declare function withAdditionalProperties<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _additionalProperties?: OpenApiSchema | OpenApiReferenceObject;
        addAdditionalProperties(val: OpenApiSchema | OpenApiReferenceObject): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType Map<string,string[]>
 * @serializedName field
 * @methodName addSecurityRequirement
 */
export declare function withSecurityRequirement<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _field?: Map<string, string[]>;
        addSecurityRequirement(mappings: Partial<{ [K in string]: string[]; }>): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType string
 * @serializedName openapi
 * @methodName addOpenApiVersion
 */
export declare function withOpenApi<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _openapi?: string;
        addOpenApiVersion(val: string): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType string
 * @serializedName termsOfService
 * @methodName addTermsOfService
 */
export declare function withTermsOfService<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _termsOfService?: string;
        addTermsOfService(val: string): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType string
 * @serializedName jsonSchemaDialect
 * @methodName addJsonSchemaDialect
 */
export declare function withJSONSchemaDialect<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _jsonSchemaDialect?: string;
        addJsonSchemaDialect(val: string): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType string
 * @serializedName email
 * @methodName addEmail
 */
export declare function withEmail<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _email?: string;
        addEmail(val: string): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType string
 * @serializedName identifier
 * @methodName addIdentifier
 */
export declare function withIdentifier<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _identifier?: string;
        addIdentifier(val: string): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType OpenApiInfo
 * @serializedName info
 * @methodName addInfo
 */
export declare function withInfo<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _info?: OpenApiInfo;
        addInfo(val: OpenApiInfo): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType OpenApiPath
 * @serializedName paths
 * @methodName addPaths
 */
export declare function withPaths<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _paths?: OpenApiPath;
        addPaths(val: OpenApiPath): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType OpenApiContact
 * @serializedName contact
 * @methodName addContact
 */
export declare function withContact<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _contact?: OpenApiContact;
        addContact(val: OpenApiContact): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType OpenApiResponses
 * @serializedName responses
 * @methodName addResponses
 */
export declare function withResponsesObject<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _responses?: OpenApiResponses;
        addResponses(val: OpenApiResponses): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType OpenApiLicense
 * @serializedName license
 * @methodName addLicense
 */
export declare function withLicense<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _license?: OpenApiLicense;
        addLicense(val: OpenApiLicense): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType boolean
 * @serializedName unevaluatedProperties
 * @methodName addUnevaluatedProperties
 */
export declare function withUnevaluatedProperties<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _unevaluatedProperties?: boolean;
        addUnevaluatedProperties(val: boolean): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType Map<string,OpenApiPathItem>
 * @serializedName webhooks
 * @methodName addWebhooks
 */
export declare function withWebhooks<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _webhooks?: Map<string, OpenApiPathItem>;
        addWebhooks(mappings: Partial<{ [K in string]: OpenApiPathItem; }>): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType Map<string,string>
 * @serializedName propertyNames
 * @methodName addPropertyNames
 */
export declare function withPropertyNames<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _propertyNames?: Map<string, string>;
        addPropertyNames(mappings: Partial<{ [K in string]: string; }>): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType number
 * @serializedName minProperties
 * @methodName addMinProperties
 */
export declare function withMinProperties<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _minProperties?: number;
        addMinProperties(val: number): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType number
 * @serializedName maxProperties
 * @methodName addMaxProperties
 */
export declare function withMaxProperties<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _maxProperties?: number;
        addMaxProperties(val: number): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType OpenApiSchema|OpenApiReferenceObject
 * @serializedName prefixItems
 * @methodName addPrefixItems
 */
export declare function withPrefixItems<TBase extends GConstructor>(Base: TBase): <T extends OpenApiSchema | OpenApiReferenceObject>() => {
    new (...args: any[]): {
        _prefixItems?: T[];
        addPrefixItems(val: T[]): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType OpenApiSchema|OpenApiReferenceObject
 * @serializedName additionalItems
 * @methodName addAdditionalItems
 */
export declare function withAdditionalItems<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _additionalItems?: OpenApiSchema | OpenApiReferenceObject;
        addAdditionalItems(val: OpenApiSchema | OpenApiReferenceObject): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType boolean
 * @serializedName readOnly
 * @methodName addReadOnly
 */
export declare function withReadOnly<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _readOnly?: boolean;
        addReadOnly(val: boolean): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType boolean
 * @serializedName writeOnly
 * @methodName addWriteOnly
 */
export declare function withWriteOnly<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _writeOnly?: boolean;
        addWriteOnly(val: boolean): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType Map<string,OpenApiSchema>
 * @serializedName schemas
 * @methodName addSchemas
 */
export declare function withSchemasComponent<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _schemas?: Map<string, OpenApiSchema>;
        addSchemas(mappings: Partial<{ [K in string]: OpenApiSchema; }>): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType Map<string,OpenApiResponses>
 * @serializedName responses
 * @methodName addResponses
 */
export declare function withResponsesComponent<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _responses?: Map<string, OpenApiResponses>;
        addResponses(mappings: Partial<{ [K in string]: OpenApiResponses; }>): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType Map<string,OpenApiParameter>
 * @serializedName parameters
 * @methodName addParameters
 */
export declare function withParametersComponent<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _parameters?: Map<string, OpenApiParameter>;
        addParameters(mappings: Partial<{ [K in string]: OpenApiParameter; }>): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType Map<string,OpenApiExample>
 * @serializedName examples
 * @methodName addExamples
 */
export declare function withExamplesComponent<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _examples?: Map<string, OpenApiExample>;
        addExamples(mappings: Partial<{ [K in string]: OpenApiExample; }>): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType Map<string,OpenApiRequestBody>
 * @serializedName requestBodies
 * @methodName addRequestBodies
 */
export declare function withRequestBodiesComponent<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _requestBodies?: Map<string, OpenApiRequestBody>;
        addRequestBodies(mappings: Partial<{ [K in string]: OpenApiRequestBody; }>): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType Map<string,OpenApiHeader|OpenApiReferenceObject>
 * @serializedName headers
 * @methodName addHeaders
 */
export declare function withHeadersComponent<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _headers?: Map<string, OpenApiHeader | OpenApiReferenceObject>;
        addHeaders(mappings: Partial<{ [K in string]: OpenApiHeader | OpenApiReferenceObject; }>): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType Map<string,OpenApiSecurityScheme|OpenApiReferenceObject>
 * @serializedName securitySchemes
 * @methodName addSecuritySchemes
 */
export declare function withSecuritySchemesComponent<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _securitySchemes?: Map<string, OpenApiSecurityScheme | OpenApiReferenceObject>;
        addSecuritySchemes(mappings: Partial<{ [K in string]: OpenApiSecurityScheme | OpenApiReferenceObject; }>): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType Map<string,OpenApiLink|OpenApiReferenceObject>
 * @serializedName links
 * @methodName addLinks
 */
export declare function withLinksComponent<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _links?: Map<string, OpenApiLink | OpenApiReferenceObject>;
        addLinks(mappings: Partial<{ [K in string]: OpenApiLink | OpenApiReferenceObject; }>): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType Map<string,OpenApiCallback|OpenApiReferenceObject>
 * @serializedName callbacks
 * @methodName addCallbacks
 */
export declare function withCallbacksComponent<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _callbacks?: Map<string, OpenApiCallback | OpenApiReferenceObject>;
        addCallbacks(mappings: Partial<{ [K in string]: OpenApiCallback | OpenApiReferenceObject; }>): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType Map<string,OpenApiPathItem|OpenApiReferenceObject>
 * @serializedName pathItems
 * @methodName addPathItems
 */
export declare function withPathItemsComponent<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _pathItems?: Map<string, OpenApiPathItem | OpenApiReferenceObject>;
        addPathItems(mappings: Partial<{ [K in string]: OpenApiPathItem | OpenApiReferenceObject; }>): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType OpenApiComponent
 * @serializedName components
 * @methodName addComponents
 */
export declare function withComponents<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _components?: OpenApiComponent;
        addComponents(val: OpenApiComponent): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType string
 * @serializedName $ref
 * @methodName add$Ref
 */
export declare function withRef<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _$ref?: string;
        add$Ref(val: string): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType OpenApiSchema|OpenApiReferenceObject
 * @serializedName oneOf
 * @methodName addOneOf
 */
export declare function withOneOf<TBase extends GConstructor>(Base: TBase): <T extends OpenApiSchema | OpenApiReferenceObject>() => {
    new (...args: any[]): {
        _oneOf?: T[];
        addOneOf(val: T[]): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType OpenApiSchema|OpenApiReferenceObject
 * @serializedName anyOf
 * @methodName addAnyOf
 */
export declare function withAnyOf<TBase extends GConstructor>(Base: TBase): <T extends OpenApiSchema | OpenApiReferenceObject>() => {
    new (...args: any[]): {
        _anyOf?: T[];
        addAnyOf(val: T[]): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType OpenApiSchema|OpenApiReferenceObject
 * @serializedName allOf
 * @methodName addAllOf
 */
export declare function withAllOf<TBase extends GConstructor>(Base: TBase): <T extends OpenApiSchema | OpenApiReferenceObject>() => {
    new (...args: any[]): {
        _allOf?: T[];
        addAllOf(val: T[]): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType OpenApiSchema|OpenApiReferenceObject
 * @serializedName not
 * @methodName addNot
 */
export declare function withNot<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _not?: OpenApiSchema | OpenApiReferenceObject;
        addNot(val: OpenApiSchema | OpenApiReferenceObject): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType OpenApiSchema|OpenApiReferenceObject
 * @serializedName if
 * @methodName addIf
 */
export declare function withIf<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _if?: OpenApiSchema | OpenApiReferenceObject;
        addIf(val: OpenApiSchema | OpenApiReferenceObject): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType OpenApiSchema|OpenApiReferenceObject
 * @serializedName then
 * @methodName addThen
 */
export declare function withThen<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _then?: OpenApiSchema | OpenApiReferenceObject;
        addThen(val: OpenApiSchema | OpenApiReferenceObject): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
/**
 * @fieldType OpenApiSchema|OpenApiReferenceObject
 * @serializedName else
 * @methodName addElse
 */
export declare function withElse<TBase extends GConstructor>(Base: TBase): {
    new (...args: any[]): {
        _else?: OpenApiSchema | OpenApiReferenceObject;
        addElse(val: OpenApiSchema | OpenApiReferenceObject): /*elided*/ any;
        toJSON(): unknown;
    };
} & TBase;
