import { ExtensibleNode } from '../ExtensibleNode';
import { IVisitor } from '../../visitors/IVisitor';
/**
 * Constructor.
 * @param {string} schemeName
 * @class
 * @extends ExtensibleNode
 * @author eric.wittmann@gmail.com
 */
export declare abstract class SecurityScheme extends ExtensibleNode implements INamed {
    _schemeName: string;
    type: string;
    description: string;
    name: string;
    in: string;
    constructor(schemeName: string);
    /**
     * Gets the scheme name.
     * @return {string}
     */
    getSchemeName(): string;
    /**
     * @see io.apicurio.datamodels.core.models.common.INamed#getName()
     * @return {string}
     */
    getName(): string;
    /**
     * @see io.apicurio.datamodels.core.models.common.INamed#rename(java.lang.String)
     * @param {string} newName
     */
    rename(newName: string): void;
    /**
     * @see io.apicurio.datamodels.core.models.Node#accept(io.apicurio.datamodels.core.visitors.IVisitor)
     * @param {*} visitor
     */
    accept(visitor: IVisitor): void;
}
import { INamed } from './INamed';
