import { Camera, IUniform } from 'three';
import { ICamera, ICameraEventMap, ICameraSetDirtyOptions } from '../ICamera';
import { CameraView, ICameraView } from '../camera/CameraView';
export declare const iCameraCommons: {
    setDirty: (this: ICamera, options?: ICameraSetDirtyOptions) => void;
    activateMain: (this: ICamera, options?: Omit<ICameraEventMap["activateMain"], "bubbleToParent">, _internal?: boolean, _refresh?: boolean, canvas?: HTMLCanvasElement) => void;
    deactivateMain: (this: ICamera, options?: Omit<ICameraEventMap["activateMain"], "bubbleToParent">, _internal?: boolean, _refresh?: boolean, clearCanvas?: boolean) => void;
    refreshUi: (this: ICamera) => void;
    refreshTarget: (this: ICamera, distanceFromTarget?: number, setDirty?: boolean) => void;
    refreshAspect: (this: ICamera, setDirty?: boolean) => void;
    updateShaderProperties: (this: ICamera, material: {
        defines: Record<string, string | number | undefined>;
        uniforms: {
            [p: string]: IUniform;
        };
    }) => ICamera<ICameraEventMap>;
    upgradeCamera: typeof upgradeCamera;
    copy: (superCopy: ICamera["copy"]) => ICamera["copy"];
    getView: <T extends ICameraView = CameraView>(this: ICamera, worldSpace?: boolean, _view?: T) => T;
    setView: <T extends ICameraView = CameraView>(this: ICamera, view: T) => void;
    setViewFromCamera: (this: ICamera, camera: Camera | ICamera, distanceFromTarget?: number, worldSpace?: boolean) => void;
    setViewToMain: (this: ICamera, eventOptions: Omit<ICameraEventMap["setView"], "camera" | "bubbleToParent">) => void;
};
declare function upgradeCamera(this: ICamera): void;
export {};
//# sourceMappingURL=iCameraCommons.d.ts.map