import { Matrix4, Uniform, Vector2, BufferGeometry, Group, Object3D, OrthographicCamera, PerspectiveCamera, Scene, WebGLRenderer } from 'three';
import { AtmosphereMaterialBase, AtmosphereMaterialBaseParameters, AtmosphereMaterialBaseUniforms } from './AtmosphereMaterialBase';
declare module 'three' {
    interface Camera {
        isPerspectiveCamera?: boolean;
    }
}
export interface StarsMaterialParameters extends AtmosphereMaterialBaseParameters {
    pointSize?: number;
    radianceScale?: number;
    background?: boolean;
}
export declare const starsMaterialParametersDefaults: {
    pointSize: number;
    radianceScale: number;
    background: true;
    ellipsoid: import('@takram/three-geospatial').Ellipsoid;
    correctAltitude: true;
    photometric: true;
    renderTargetCount: number;
};
export interface StarsMaterialUniforms {
    [key: string]: Uniform<unknown>;
    projectionMatrix: Uniform<Matrix4>;
    modelViewMatrix: Uniform<Matrix4>;
    viewMatrix: Uniform<Matrix4>;
    matrixWorld: Uniform<Matrix4>;
    cameraFar: Uniform<number>;
    pointSize: Uniform<number>;
    magnitudeRange: Uniform<Vector2>;
    radianceScale: Uniform<number>;
}
export declare class StarsMaterial extends AtmosphereMaterialBase {
    uniforms: AtmosphereMaterialBaseUniforms & StarsMaterialUniforms;
    pointSize: number;
    constructor(params?: StarsMaterialParameters);
    onBeforeRender(renderer: WebGLRenderer, scene: Scene, camera: PerspectiveCamera | OrthographicCamera, geometry: BufferGeometry, object: Object3D, group: Group): void;
    get magnitudeRange(): Vector2;
    get radianceScale(): number;
    set radianceScale(value: number);
    background: boolean;
}
