import * as ts from 'typescript';
/**
 * Checks if a given node is an abstract class declaration
 */
export declare function isAbstractClassDeclaration(node: ts.Node): node is ts.ClassDeclaration;
/**
 * Checks if a given node is an abstract method declaration
 */
export declare function isAbstractMethodDeclaration(node: ts.Node): node is ts.MethodDeclaration;
/**
 * Counts the number of declarations in a source file
 */
export declare function countDeclarations(sourceFile: ts.SourceFile): {
    total: number;
    interfaces: number;
    abstractClasses: number;
    abstractMethods: number;
    concreteClasses: number;
    functions: number;
    variables: number;
};
