import { Document } from '../models/Document'; import { Extension } from '../models/Extension'; import { ValidationProblem } from '../models/ValidationProblem'; import { Contact } from '../models/common/Contact'; import { ExternalDocumentation } from '../models/common/ExternalDocumentation'; import { IDefinition } from '../models/common/IDefinition'; import { Info } from '../models/common/Info'; import { License } from '../models/common/License'; import { Operation } from '../models/common/Operation'; import { Parameter } from '../models/common/Parameter'; import { Schema } from '../models/common/Schema'; import { SecurityRequirement } from '../models/common/SecurityRequirement'; import { SecurityScheme } from '../models/common/SecurityScheme'; import { Tag } from '../models/common/Tag'; /** * A basic visitor interface used to visit data model instances. * @author eric.wittmann@gmail.com * @class */ export interface IVisitor { visitContact(node: Contact): any; visitDocument(node: Document): any; visitExtension(node: Extension): any; visitExternalDocumentation(node: ExternalDocumentation): any; visitInfo(node: Info): any; visitLicense(node: License): any; visitOperation(node: Operation): any; visitParameterDefinition(node: IDefinition): any; visitParameter(node: Parameter): any; visitSchemaDefinition(node: IDefinition): any; visitSchema(node: Schema): any; visitSecurityRequirement(node: SecurityRequirement): any; visitSecurityScheme(node: SecurityScheme): any; visitTag(node: Tag): any; visitValidationProblem(problem: ValidationProblem): any; }