import { KNativePointer } from "../../src/reexport-for-generated";
import { ClassDefinition } from "./ClassDefinition";
import { Es2pandaAstNodeType } from "./../Es2pandaEnums";
import { Es2pandaModifierFlags } from "./../Es2pandaEnums";
import { Statement } from "./Statement";
export declare class ClassDeclaration extends Statement {
    constructor(pointer: KNativePointer, astNodeType: Es2pandaAstNodeType);
    static createClassDeclaration(def?: ClassDefinition, modifierFlags?: Es2pandaModifierFlags): ClassDeclaration;
    static updateClassDeclaration(original?: ClassDeclaration, def?: ClassDefinition, modifierFlags?: Es2pandaModifierFlags): ClassDeclaration;
    get definition(): ClassDefinition;
    /** @deprecated */
    setDefinition(def?: ClassDefinition): this;
    protected readonly brandClassDeclaration: undefined;
}
export declare function isClassDeclaration(node: object | undefined): node is ClassDeclaration;
