import { DocumentType } from '../../../core/models/DocumentType';
import { ExternalDocumentation } from '../../../core/models/common/ExternalDocumentation';
import { Info } from '../../../core/models/common/Info';
import { Tag } from '../../../core/models/common/Tag';
import { OasDocument } from '../../models/OasDocument';
import { OasPaths } from '../../models/OasPaths';
import { OasSecurityRequirement } from '../../models/OasSecurityRequirement';
/**
 * Models the root document of the OpenAPI 2.0 (aka Swagger) data model.
 * @author eric.wittmann@gmail.com
 * @class
 * @extends OasDocument
 */
export declare class Oas20Document extends OasDocument {
    swagger: string;
    host: string;
    basePath: string;
    schemes: Array<string>;
    consumes: Array<string>;
    produces: Array<string>;
    definitions: Oas20Definitions;
    parameters: Oas20ParameterDefinitions;
    responses: Oas20ResponseDefinitions;
    securityDefinitions: Oas20SecurityDefinitions;
    /**
     * @see io.apicurio.datamodels.core.models.Document#getDocumentType()
     * @return {DocumentType}
     */
    getDocumentType(): DocumentType;
    /**
     * @see io.apicurio.datamodels.openapi.models.OasDocument#createPaths()
     * @return {OasPaths}
     */
    createPaths(): OasPaths;
    /**
     * Creates an OAS 2.0 Definitions object.
     * @return {Oas20Definitions}
     */
    createDefinitions(): Oas20Definitions;
    /**
     * @see io.apicurio.datamodels.openapi.models.OasDocument#createSecurityRequirement()
     * @return {OasSecurityRequirement}
     */
    createSecurityRequirement(): OasSecurityRequirement;
    /**
     * @see io.apicurio.datamodels.core.models.Document#createInfo()
     * @return {Info}
     */
    createInfo(): Info;
    /**
     * @see io.apicurio.datamodels.core.models.Document#createTag()
     * @return {Tag}
     */
    createTag(): Tag;
    /**
     * @see io.apicurio.datamodels.core.models.Document#createExternalDocumentation()
     * @return {ExternalDocumentation}
     */
    createExternalDocumentation(): ExternalDocumentation;
    /**
     * Creates a security definitions.
     * @return {Oas20SecurityDefinitions}
     */
    createSecurityDefinitions(): Oas20SecurityDefinitions;
    /**
     * Creates the parameter definitions model.
     * @return {Oas20ParameterDefinitions}
     */
    createParameterDefinitions(): Oas20ParameterDefinitions;
    /**
     * Creates the parameter definitions model.
     * @return {Oas20ResponseDefinitions}
     */
    createResponseDefinitions(): Oas20ResponseDefinitions;
    constructor();
}
import { Oas20SecurityDefinitions } from './Oas20SecurityDefinitions';
import { Oas20ResponseDefinitions } from './Oas20ResponseDefinitions';
import { Oas20ParameterDefinitions } from './Oas20ParameterDefinitions';
import { Oas20Definitions } from './Oas20Definitions';
