import { AstSourceFile } from './ast-source-file'; import { AstClassDeclaration } from './ast-class-declaration'; import { AstFunctionDeclaration } from './ast-function-declaration'; import { AstVariableDeclaration } from './ast-variable-declaration'; import { AstValue } from './ast-value'; import { BlockLike, Identifier, QualifiedName } from 'typescript'; import { AstType } from './ast-type'; import { AstEnumDeclaration } from './ast-enum-declaration'; import { AstExpressionStatement } from './ast-expression-statement'; import { AstTypeDeclaration } from './ast-type-declaration'; export declare class AstBlock { sourceFile: AstSourceFile; private block; constructor(sourceFile: AstSourceFile, block: BlockLike); get classes(): Generator; get functions(): Generator; get enums(): Generator; get variables(): Generator; get expressionStatements(): Generator; get types(): Generator; type(name: string): AstTypeDeclaration | null; enum(name: string): AstEnumDeclaration | null; variable(name: string): AstVariableDeclaration | null; function(name: string): AstFunctionDeclaration | null; class(name: string): AstClassDeclaration | null; getValue(identifier: Identifier | string): AstValue | null; getType(identifier: Identifier | QualifiedName | string): AstType | null; private getEnums; private getVariables; private getExpressionStatements; private getTypes; private getClasses; private getFunctions; }