import * as ts from 'typescript'; import { ClassDetails } from './common/class-details'; import { LegacyTypeEncoder } from './legacy-type-encoder'; import { RttiContext } from './rtti-context'; import { TypeEncoder } from './type-encoder'; /** * Extracts type metadata from various syntactic elements and outputs * arrays of Typescript decorators using the Typescript RTTI metadata * format. */ export declare class MetadataEncoder { readonly ctx: RttiContext; constructor(ctx: RttiContext); get emitStandardMetadata(): boolean; get checker(): ts.TypeChecker; get importMap(): Map; typeEncoder: TypeEncoder; legacyTypeEncoder: LegacyTypeEncoder; typeNode(typeNode: ts.TypeNode, standardName: string, allowStandardMetadata?: boolean): ts.Decorator[]; type(type: ts.Type, typeNode: ts.TypeNode, standardName: string, allowStandardMetadata?: boolean): ts.Decorator[]; private prepareElementNames; class(klass: ts.ClassDeclaration | ts.ClassExpression | ts.InterfaceDeclaration, details: ClassDetails): ts.Decorator[]; private getClassName; property(node: ts.PropertyDeclaration | ts.PropertySignature | ts.GetAccessorDeclaration | ts.SetAccessorDeclaration): ts.Decorator[]; methodFlags(node: ts.MethodDeclaration | ts.MethodSignature | ts.FunctionDeclaration | ts.FunctionExpression | ts.ArrowFunction): string; method(node: ts.MethodDeclaration | ts.MethodSignature | ts.FunctionDeclaration | ts.FunctionExpression | ts.ArrowFunction): ts.Decorator[]; params(node: ts.FunctionLikeDeclaration | ts.MethodSignature, containingNode?: ts.ClassDeclaration | ts.ClassExpression): ts.Decorator[]; } //# sourceMappingURL=metadata-encoder.d.ts.map