import { Object3D, BufferGeometry, LineSegments, ShaderMaterial, BoxGeometry, InstancedMesh } from "three";
import { GraphicOptions } from "../types";
import { Context } from "../context/context";
import { GraphicOptionsParam } from "./graphic";
export declare class InstancedParkingSpace extends Object3D {
    private context;
    geometry: BoxGeometry;
    material?: ShaderMaterial;
    mesh?: InstancedMesh;
    line?: LineSegments;
    lineMaterial?: ShaderMaterial;
    lineGeometry?: BufferGeometry;
    options: GraphicOptions[];
    originOpacity: number[];
    lineOriginOpacity: number[];
    constructor(context: Context, options: GraphicOptionsParam[]);
    setColorByIndex(index: number, color: string): void;
    init(): Promise<void>;
    initMaterial(): void;
    initLineMaterial(): void;
    initMesh(): void;
    initLineGeometry(): void;
    createBorder(): LineSegments<BufferGeometry<import("three").NormalBufferAttributes>, ShaderMaterial, import("three").Object3DEventMap>;
    setOpacity(opacity: number, force?: boolean): void;
    dispose(): void;
}
