import type { NumberArray } from "../../../types.js";
type LightSources = {
    ambientLight?: {
        color: Readonly<NumberArray>;
        intensity: number;
    };
    pointLights?: {
        color: Readonly<NumberArray>;
        intensity: number;
        position: NumberArray;
        attenuation: number;
    }[];
    directionalLights?: {
        color: Readonly<NumberArray>;
        intensity: number;
        position: NumberArray;
        direction: NumberArray;
    }[];
};
export type LightsOptions = {
    lightSources?: LightSources;
};
declare function getUniforms(opts?: LightsOptions): Record<string, any>;
/**
 * An implementation of PBR (Physically-Based Rendering).
 * Physically Based Shading of a microfacet surface defined by a glTF material.
 */
export declare const lights: {
    name: string;
    vs: string;
    fs: string;
    getUniforms: typeof getUniforms;
    defines: {
        MAX_LIGHTS: number;
    };
};
export {};
//# sourceMappingURL=lights.d.ts.map