import { AbstractCommand } from '../AbstractCommand'; import { Document } from '../../core/models/Document'; import { SecurityScheme } from '../../core/models/common/SecurityScheme'; /** * A command used to modify a security scheme. * @author eric.wittmann@gmail.com * @extends AbstractCommand * @class */ export declare abstract class ChangeSecuritySchemeCommand extends AbstractCommand { _schemeName: string; _schemeObj: any; _oldScheme: any; constructor(scheme?: any); /** * @see io.apicurio.datamodels.cmd.ICommand#execute(io.apicurio.datamodels.core.models.Document) * @param {Document} document */ execute(document: Document): void; /** * @see io.apicurio.datamodels.cmd.ICommand#undo(io.apicurio.datamodels.core.models.Document) * @param {Document} document */ undo(document: Document): void; /** * Gets the scheme from the document. * @param {Document} document * @return {SecurityScheme} */ abstract getSchemeFromDocument(document: Document): SecurityScheme; /** * Replaces the content of a scheme with the content from another scheme. * @param {SecurityScheme} toScheme * @param {*} fromScheme */ replaceSchemeWith(toScheme: SecurityScheme, fromScheme: any): void; /** * Null out all values in the given scheme. * @param {SecurityScheme} scheme */ nullScheme(scheme: SecurityScheme): void; }