import { AstNode, KNativePointer } from "../../src/reexport-for-generated";
import { Es2pandaAstNodeType } from "./../Es2pandaEnums";
import { Es2pandaImportKinds } from "./../Es2pandaEnums";
import { Statement } from "./Statement";
import { StringLiteral } from "./StringLiteral";
export declare class ImportDeclaration extends Statement {
    constructor(pointer: KNativePointer, astNodeType: Es2pandaAstNodeType);
    static createImportDeclaration(source: StringLiteral | undefined, specifiers: readonly AstNode[], importKinds: Es2pandaImportKinds): ImportDeclaration;
    static updateImportDeclaration(original: ImportDeclaration | undefined, source: StringLiteral | undefined, specifiers: readonly AstNode[], importKinds: Es2pandaImportKinds): ImportDeclaration;
    /** @deprecated */
    emplaceSpecifiers(source?: AstNode): this;
    /** @deprecated */
    clearSpecifiers(): this;
    /** @deprecated */
    setValueSpecifiers(source: AstNode | undefined, index: number): this;
    get specifiersForUpdate(): readonly AstNode[];
    get source(): StringLiteral | undefined;
    /** @deprecated */
    setSource(source?: StringLiteral): this;
    get specifiers(): readonly AstNode[];
    /** @deprecated */
    setSpecifiers(specifiersList: readonly AstNode[]): this;
    get isTypeKind(): boolean;
    protected readonly brandImportDeclaration: undefined;
}
export declare function isImportDeclaration(node: object | undefined): node is ImportDeclaration;
