import { AstNode, KNativePointer } from "../../src/reexport-for-generated";
import { Es2pandaAstNodeType } from "./../Es2pandaEnums";
import { Statement } from "./Statement";
import { varbinder } from "./varbinder";
export declare class BlockStatement extends Statement {
    constructor(pointer: KNativePointer, astNodeType: Es2pandaAstNodeType);
    static createBlockStatement(statementList: readonly Statement[]): BlockStatement;
    static updateBlockStatement(original: BlockStatement | undefined, statementList: readonly Statement[]): BlockStatement;
    /** @deprecated */
    setScope(scope?: varbinder.Scope): this;
    get statementsForUpdates(): readonly Statement[];
    get statements(): readonly Statement[];
    /** @deprecated */
    setStatements(statementList: readonly Statement[]): this;
    /** @deprecated */
    addStatements(statementList: readonly Statement[]): this;
    /** @deprecated */
    clearStatements(): this;
    /** @deprecated */
    addStatement(statement?: Statement): this;
    /** @deprecated */
    addStatement1(idx: number, statement?: Statement): this;
    /** @deprecated */
    addTrailingBlock(stmt?: AstNode, trailingBlock?: BlockStatement): this;
    protected readonly brandBlockStatement: undefined;
}
export declare function isBlockStatement(node: object | undefined): node is BlockStatement;
