import { Object3D, Mesh, BufferGeometry, LineSegments, ShaderMaterial, ObjectLoader } from "three";
import { GraphicOptions } from "../types";
import { Context } from "../context/context";
import { GraphicOptionsParam } from "./graphic";
export declare class MergeAttributeGraphic extends Object3D {
    private context;
    geometry?: BufferGeometry;
    material?: ShaderMaterial;
    mesh?: Mesh;
    line?: LineSegments;
    lineMaterial?: ShaderMaterial;
    lineGeometry?: BufferGeometry;
    options: GraphicOptions;
    loader: ObjectLoader;
    constructor(context: Context, options: GraphicOptionsParam);
    init(): Promise<void>;
    initGeometry(): BufferGeometry<import("three").NormalBufferAttributes> | import("three").InstancedBufferGeometry;
    initMaterial(): void;
    initLineMaterial(): ShaderMaterial;
    initMesh(): void;
    initLineGeometry(): void;
    createBorder(): LineSegments<BufferGeometry<import("three").NormalBufferAttributes>, ShaderMaterial, import("three").Object3DEventMap>;
    dispose(): void;
}
