import { AaiDocument } from '../../asyncapi/models/AaiDocument'; import { AaiMessageTrait } from '../../asyncapi/models/AaiMessageTrait'; import { AbstractCommand } from '../AbstractCommand'; import { CombinedVisitorAdapter } from '../../combined/visitors/CombinedVisitorAdapter'; import { Document } from '../../core/models/Document'; import { NodePath } from '../../core/models/NodePath'; /** * A command used to rename a message trait definition item in an AsyncAPI document. * @author laurent.broudoux@gmail.com * @param {string} oldName * @param {string} newName * @class * @extends AbstractCommand */ export declare class RenameMessageTraitDefinitionCommand extends AbstractCommand { _oldName: string; _newName: string; _references: Array; constructor(oldName?: any, newName?: any); /** * * @param {Document} document */ execute(document: Document): void; /** * * @param {Document} document */ undo(document: Document): void; nameToReference(name: string): string; renameMessageTraitDefinition(document: AaiDocument, fromName: string, toName: string): boolean; } export declare namespace RenameMessageTraitDefinitionCommand { class MessageTraitRefFinder extends CombinedVisitorAdapter { reference: string; traits: Array; constructor(ref: string); findIn(document: Document): Array; /** * * @param {AaiMessageTrait} node */ visitMessageTrait(node: AaiMessageTrait): void; accept(trait: AaiMessageTrait): boolean; } }