import { AccessorDeclaration, ArrayBindingElement, ArrayBindingPattern, BindingElement, BindingName, CallSignatureDeclaration, ClassDeclaration, ClassElement, ClassExpression, ConstructorDeclaration, ConstructSignatureDeclaration, Decorator, ExportSpecifier, FunctionLikeDeclaration, GetAccessorDeclaration, HeritageClause, Identifier, ImportClause, ImportSpecifier, IndexSignatureDeclaration, InterfaceDeclaration, MethodDeclaration, MethodSignature, ModifiersArray, ObjectBindingPattern, ParameterDeclaration, PropertyDeclaration, PropertySignature, SetAccessorDeclaration, SignatureDeclaration, TypeElement, TypeLiteralNode } from "typescript"; import { IImportClauseCtor } from "../light-ast/ctor/import-clause/i-import-clause-ctor"; import { INamedImportExportCtor } from "../light-ast/ctor/named-import-export/i-named-import-export-ctor"; import { ITypeLiteralCtor } from "../light-ast/ctor/type-literal/i-type-literal-ctor"; import { IInterfaceCtor } from "../light-ast/ctor/interface/i-interface-ctor"; import { ITypeElementCtor, TypeElementCtor } from "../light-ast/ctor/type-element/i-type-element-ctor"; import { HeritageCtor, IExtendsHeritageCtor, IImplementsHeritageCtor } from "../light-ast/ctor/heritage/i-heritage-ctor"; import { IPropertySignatureCtor } from "../light-ast/ctor/property-signature/i-property-signature-ctor"; import { ICallSignatureCtor } from "../light-ast/ctor/call-signature/i-call-signature-ctor"; import { IConstructSignatureCtor } from "../light-ast/ctor/construct-signature/i-construct-signature-ctor"; import { IMethodSignatureCtor } from "../light-ast/ctor/method-signature/i-method-signature-ctor"; import { IIndexSignatureCtor } from "../light-ast/ctor/index-signature/i-index-signature-ctor"; import { ISignatureCtor } from "../light-ast/ctor/signature/i-signature-ctor"; import { IParameterCtor } from "../light-ast/ctor/parameter/i-parameter-ctor"; import { BindingNameCtor, IArrayBindingNameCtor, INormalBindingNameCtor, IObjectBindingNameCtor } from "../light-ast/ctor/binding-name/binding-name-ctor"; import { IObjectBindingElementCtor } from "../light-ast/ctor/binding-element/i-object-binding-element-ctor"; import { ArrayBindingElementCtor, INormalArrayBindingElementCtor, IOmittedArrayBindingElementCtor } from "../light-ast/ctor/binding-element/array-binding-element-ctor"; import { IDecoratorCtor } from "../light-ast/ctor/decorator/i-decorator-ctor"; import { IAllModifiersCtor } from "../light-ast/ctor/modifier/i-all-modifiers-ctor"; import { IClassCtor } from "../light-ast/ctor/class/i-class-ctor"; import { ClassElementCtor } from "../light-ast/ctor/class-element/class-element-ctor"; import { ClassAccessorCtor } from "../light-ast/ctor/class-accessor/class-accessor-ctor"; import { IFunctionLikeCtor } from "../light-ast/ctor/function-like/i-function-like-ctor"; import { AccessorCtor, IAccessorCtor, IGetAccessorCtor, ISetAccessorCtor } from "../light-ast/ctor/accessor/accessor-ctor"; import { IClassPropertyCtor } from "../light-ast/ctor/class-property/i-class-property-ctor"; import { IClassMethodCtor } from "../light-ast/ctor/class-method/i-class-method-ctor"; import { IMethodCtor } from "../light-ast/ctor/method/i-method-ctor"; import { IFunctionLikeWithParametersCtor } from "../light-ast/ctor/function-like-with-parameters/i-function-like-with-parameters-ctor"; import { IConstructorCtor } from "../light-ast/ctor/constructor/i-constructor-ctor"; import { Optional } from "../optional/optional"; export interface INodeToCtorMapperBase { toIClassCtor(node: Optional): IClassCtor | null; toIImportClauseCtor(node: Optional): IImportClauseCtor | null; toINamedImportExportCtor(node: Optional): INamedImportExportCtor | null; toITypeLiteralCtor(node: Optional): ITypeLiteralCtor | null; toIInterfaceCtor(node: Optional): IInterfaceCtor | null; toITypeElementCtor(node: Optional): ITypeElementCtor | null; toTypeElementCtor(node: Optional): TypeElementCtor | null; toHeritageCtor(node: Optional): HeritageCtor | null; toIAllModifiersCtor(modifiers: Optional): IAllModifiersCtor | null; toIExtendsHeritageCtor(node: Optional): IExtendsHeritageCtor | null; toIImplementsHeritageCtor(node: Optional): IImplementsHeritageCtor | null; toIPropertySignatureCtor(node: Optional): IPropertySignatureCtor | null; toICallSignatureCtor(node: Optional): ICallSignatureCtor | null; toIConstructSignatureCtor(node: Optional): IConstructSignatureCtor | null; toIMethodSignatureCtor(node: Optional): IMethodSignatureCtor | null; toIIndexSignatureCtor(node: Optional): IIndexSignatureCtor | null; toISignatureCtor(node: Optional): ISignatureCtor | null; toIParameterCtor(node: Optional): IParameterCtor | null; toBindingNameCtor(node: Optional): BindingNameCtor | null; toINormalBindingNameCtor(node: Optional): INormalBindingNameCtor | null; toIObjectBindingNameCtor(node: Optional): IObjectBindingNameCtor | null; toIArrayBindingNameCtor(node: Optional): IArrayBindingNameCtor | null; toIObjectBindingElementCtor(node: Optional): IObjectBindingElementCtor | null; toINormalArrayBindingElementCtor(node: Optional): INormalArrayBindingElementCtor | null; toIOmittedArrayBindingElementCtor(node: Optional): IOmittedArrayBindingElementCtor | null; toArrayBindingElementCtor(node: Optional): ArrayBindingElementCtor | null; toIDecoratorCtor(node: Optional): IDecoratorCtor | null; toClassElementCtor(node: Optional): ClassElementCtor | null; toClassAccessorCtor(node: Optional): ClassAccessorCtor | null; toAccessorCtor(node: Optional): AccessorCtor | null; toIFunctionLikeCtor(node: Optional): IFunctionLikeCtor | null; toIGetAccessorCtor(node: Optional): IGetAccessorCtor | null; toISetAccessorCtor(node: Optional): ISetAccessorCtor | null; toIAccessorCtor(node: Optional): IAccessorCtor | null; toIClassPropertyCtor(node: Optional): IClassPropertyCtor | null; toIClassMethodCtor(node: Optional): IClassMethodCtor | null; toIMethodCtor(node: Optional): IMethodCtor | null; toIFunctionLikeWithParametersCtor(node: Optional): IFunctionLikeWithParametersCtor | null; toIConstructorCtor(node: Optional): IConstructorCtor | null; fallbackToNull(item: T | undefined): T | null; }