import * as THREE from 'three'; import CreateThreeMap from '../../../Lcz3dAreaMap/common/createThreeMap'; import { OutScatter, ScatterData, ScatterStyle } from '../../../Lcz3dAreaMap/type/child'; interface ScatterProps { scatter: OutScatter; threeMap: CreateThreeMap; level: number; stretchHeight?: number; scatterEvent?: (data: ScatterData) => void; } type ScatterSignElType = { [key in 'scatter' | 'sign']: { [key: string]: HTMLDivElement; }; }; export default class Scatter { scatter: OutScatter; mapInstance: CreateThreeMap; level: number; scatterObj: THREE.Object3D; stylesObj: { [key: string]: { data: ScatterData[]; style: ScatterStyle; }; }; show: boolean; linear?: (val: number) => number; scatterEvent?: (data: ScatterData) => void; scatterSignEl: ScatterSignElType; constructor(option: ScatterProps); initLevel(): void; updataView({ scatter, threeMap, level, stretchHeight }: ScatterProps): Promise; drawScatter(): void; signClick(param: ScatterData): void; getScatterStylesObj(): { [key: string]: { data: ScatterData[]; style: ScatterStyle; }; }; getLinear(): void; clearElement(type?: 'all' | 'sign' | 'scatter'): void; destroy(): void; } export {};