import { NumericInput } from "@blueprintjs/core";
import React from "react";
import { Vector3 } from "three";
import { Light } from "../../DatabaseServices/Lights/Light";
import { BoardModalType } from "../../UI/Components/Board/BoardModalType";
import { PropertiesStore } from "../../UI/Components/ToolBar/PropertiesStore";
import { LightStore } from "../../UI/Store/RightPanelStore/LightStore";
import './LightBoxModel.less';
interface LightBoxModelProps {
    store: PropertiesStore;
}
export declare class LightBoxModel extends React.Component<LightBoxModelProps, {}> {
    render(): JSX.Element;
}
interface LightConfigModelProps {
    store: LightStore;
    lightType: BoardModalType;
    lights: LightStore[];
}
interface ILightProperty {
    Target: Vector3;
    ShowHelper: boolean;
    CaseShadow: boolean;
    Color: string;
    Temperature: string;
}
export declare class LightModel extends React.Component<LightConfigModelProps, {}> {
    _Target: string;
    _Position: string;
    private removeFuncs;
    private coolTime;
    handleSelectTarget: (light: Light, isDirection?: boolean) => Promise<void>;
    private SyncLight;
    changeLightSettings: (propertyName: keyof ILightProperty, propertyValue: ILightProperty[keyof ILightProperty]) => void;
    render(): JSX.Element;
}
export declare class UseInputAndSlider extends React.Component<{
    pars: string[];
    store: LightStore;
    max: number;
    isFloat: boolean;
    min: number;
    scale: number;
    noLim: boolean;
    lights: LightStore[];
}, {}> {
    OldData: number;
    private coolTime;
    _InputRef: React.RefObject<NumericInput>;
    private SyncLight;
    handleLightDataUpdate(store: LightStore, value: string): void;
    SetValue(value: string): Promise<void>;
    changeLightSliderSettings: (propertyName: any, propertyValue: any) => void;
    render(): JSX.Element;
}
export {};
//# sourceMappingURL=LightBoxModal.d.ts.map