import { AsteriskToken, Block, CallExpression, ClassDeclaration, ClassElement, ClassExpression, ConstructorDeclaration, Decorator, ExportDeclaration, ExportSpecifier, Expression, GetAccessorDeclaration, HeritageClause, Identifier, ImportClause, ImportDeclaration, ImportSpecifier, LeftHandSideExpression, MethodDeclaration, ModifiersArray, NamedExports, NamedImports, NamespaceImport, Node, NodeArray, ParameterDeclaration, PropertyDeclaration, PropertyName, QuestionToken, SetAccessorDeclaration, SourceFile, Statement, TypeNode, TypeParameterDeclaration } from "typescript"; export interface IUpdaterBase { updateNodeDecorators(decorators: NodeArray | undefined, node: T): T; updateNodeModifiers(modifiers: ModifiersArray | undefined, node: T): T; updateClassDeclarationName(name: Identifier | undefined, classDeclaration: T): T; updateClassDeclarationHeritageClauses(heritageClauses: NodeArray | undefined, classDeclaration: T): T; updateClassDeclarationModifiers(modifiers: ModifiersArray | undefined, classDeclaration: T): T; updateClassDeclarationTypeParameters(typeParameters: NodeArray | undefined, classDeclaration: T): T; updateClassDeclarationMembers(members: NodeArray | undefined, classDeclaration: T): T; updateCallExpressionExpression(expression: LeftHandSideExpression, callExpression: CallExpression): CallExpression; updateCallExpressionTypeArguments(typeArguments: NodeArray | undefined, callExpression: CallExpression): CallExpression; updateCallExpressionArguments(args: NodeArray, callExpression: CallExpression): CallExpression; updateMethodDeclarationBody(body: Block | undefined, method: MethodDeclaration): MethodDeclaration; updateMethodDeclarationName(name: PropertyName, method: MethodDeclaration): MethodDeclaration; updateMethodDeclarationAsteriskToken(asteriskToken: AsteriskToken | undefined, method: MethodDeclaration): MethodDeclaration; updateMethodDeclarationQuestionToken(questionToken: QuestionToken | undefined, method: MethodDeclaration): MethodDeclaration; updateMethodDeclarationTypeParameters(typeParameters: NodeArray | undefined, method: MethodDeclaration): MethodDeclaration; updateMethodDeclarationParameters(parameters: NodeArray, method: MethodDeclaration): MethodDeclaration; updateMethodDeclarationType(type: TypeNode | undefined, method: MethodDeclaration): MethodDeclaration; updateMethodDeclarationModifiers(modifiers: ModifiersArray | undefined, method: MethodDeclaration): MethodDeclaration; updateGetAccessorDeclarationBody(body: Block | undefined, getter: GetAccessorDeclaration): GetAccessorDeclaration; updateGetAccessorDeclarationName(name: PropertyName, getter: GetAccessorDeclaration): GetAccessorDeclaration; updateGetAccessorDeclarationParameters(parameters: NodeArray, getter: GetAccessorDeclaration): GetAccessorDeclaration; updateGetAccessorDeclarationType(type: TypeNode | undefined, getter: GetAccessorDeclaration): GetAccessorDeclaration; updateGetAccessorDeclarationModifiers(modifiers: ModifiersArray | undefined, getter: GetAccessorDeclaration): GetAccessorDeclaration; updateSetAccessorDeclarationBody(body: Block | undefined, setter: SetAccessorDeclaration): SetAccessorDeclaration; updateSetAccessorDeclarationName(name: PropertyName, setter: SetAccessorDeclaration): SetAccessorDeclaration; updateSetAccessorDeclarationParameters(parameters: NodeArray, setter: SetAccessorDeclaration): SetAccessorDeclaration; updateSetAccessorDeclarationModifiers(modifiers: ModifiersArray | undefined, setter: SetAccessorDeclaration): SetAccessorDeclaration; updatePropertyDeclarationQuestionToken(questionToken: QuestionToken | undefined, property: PropertyDeclaration): PropertyDeclaration; updatePropertyDeclarationName(name: PropertyName, property: PropertyDeclaration): PropertyDeclaration; updatePropertyDeclarationType(type: TypeNode | undefined, property: PropertyDeclaration): PropertyDeclaration; updatePropertyDeclarationInitializer(initializer: Expression | undefined, property: PropertyDeclaration): PropertyDeclaration; updatePropertyDeclarationModifiers(modifiers: ModifiersArray | undefined, property: PropertyDeclaration): PropertyDeclaration; updateConstructorDeclarationBody(body: Block | undefined, constructor: ConstructorDeclaration): ConstructorDeclaration; updateConstructorDeclarationAsteriskToken(asteriskToken: AsteriskToken | undefined, constructor: ConstructorDeclaration): ConstructorDeclaration; updateConstructorDeclarationQuestionToken(questionToken: QuestionToken | undefined, constructor: ConstructorDeclaration): ConstructorDeclaration; updateConstructorDeclarationTypeParameters(typeParameters: NodeArray | undefined, constructor: ConstructorDeclaration): ConstructorDeclaration; updateConstructorDeclarationParameters(parameters: NodeArray, constructor: ConstructorDeclaration): ConstructorDeclaration; updateConstructorDeclarationType(type: TypeNode | undefined, constructor: ConstructorDeclaration): ConstructorDeclaration; updateConstructorDeclarationModifiers(modifiers: ModifiersArray | undefined, constructor: ConstructorDeclaration): ConstructorDeclaration; updateImportDeclarationImportClause(importClause: ImportClause | undefined, importDeclaration: ImportDeclaration): ImportDeclaration; updateImportDeclarationModuleSpecifier(moduleSpecifier: Expression | undefined, importDeclaration: ImportDeclaration): ImportDeclaration; updateImportDeclarationModifiers(modifiers: ModifiersArray | undefined, importDeclaration: ImportDeclaration): ImportDeclaration; updateExportDeclarationExportClause(exportClause: NamedExports | undefined, exportDeclaration: ExportDeclaration): ExportDeclaration; updateExportDeclarationModuleSpecifier(moduleSpecifier: Expression, exportDeclaration: ExportDeclaration): ExportDeclaration; updateExportDeclarationModifiers(modifiers: ModifiersArray | undefined, exportDeclaration: ExportDeclaration): ExportDeclaration; updateNamedImportsElements(elements: NodeArray, namedImports: NamedImports): NamedImports; updateNamedExportsElements(elements: NodeArray, namedExports: NamedExports): NamedExports; updateNamespaceImportName(name: Identifier, namespaceImport: NamespaceImport): NamespaceImport; updateSourceFileStatements(statements: NodeArray, sourceFile: SourceFile): SourceFile; replace(newNode: T, existing: T): T; }