import { KNativePointer } from "../../src/reexport-for-generated";
import { Es2pandaAstNodeType } from "./../Es2pandaEnums";
import { Es2pandaTypeRelationFlag } from "./../Es2pandaEnums";
import { Expression } from "./Expression";
import { TypeNode } from "./TypeNode";
import { checker } from "./checker";
export declare class ETSNewMultiDimArrayInstanceExpression extends Expression {
    constructor(pointer: KNativePointer, astNodeType: Es2pandaAstNodeType);
    static createETSNewMultiDimArrayInstanceExpression(typeReference: TypeNode | undefined, dimensions: readonly Expression[]): ETSNewMultiDimArrayInstanceExpression;
    static updateETSNewMultiDimArrayInstanceExpression(original: ETSNewMultiDimArrayInstanceExpression | undefined, typeReference: TypeNode | undefined, dimensions: readonly Expression[]): ETSNewMultiDimArrayInstanceExpression;
    static update1ETSNewMultiDimArrayInstanceExpression(original?: ETSNewMultiDimArrayInstanceExpression, other?: ETSNewMultiDimArrayInstanceExpression): ETSNewMultiDimArrayInstanceExpression;
    get typeReference(): TypeNode | undefined;
    get dimensions(): readonly Expression[];
    get signature(): checker.Signature | undefined;
    /** @deprecated */
    setSignature(signature?: checker.Signature): this;
    /** @deprecated */
    setPreferredTypeBasedOnFuncParam(param: checker.Type | undefined, flags: Es2pandaTypeRelationFlag): this;
    /** @deprecated */
    clearPreferredType(): this;
    protected readonly brandETSNewMultiDimArrayInstanceExpression: undefined;
}
export declare function isETSNewMultiDimArrayInstanceExpression(node: object | undefined): node is ETSNewMultiDimArrayInstanceExpression;
