import { Material, type RenderState } from "./Material";
import { TextureBinding } from "./TextureBinding";
export declare const MAX_INSTANCED_PBR_INSTANCES = 64;
export interface InstancedPBRMaterialOptions {
    readonly name?: string;
    readonly baseColor?: readonly [number, number, number, number];
    readonly renderState?: Partial<RenderState>;
    readonly metallic?: number;
    readonly roughness?: number;
    readonly environmentColor?: readonly [number, number, number];
    readonly environmentIntensity?: number;
    readonly proceduralEnvironmentMap?: InstancedPBRProceduralEnvironmentMapOptions;
    readonly environmentMapTexture?: TextureBinding;
    readonly environmentMapIntensity?: number;
    readonly environmentMapSpecularIntensity?: number;
    readonly environmentMapRotation?: number;
    readonly environmentMapMipCount?: number;
    readonly environmentBrdfLutTexture?: TextureBinding;
    readonly emissiveColor?: readonly [number, number, number];
    readonly emissiveStrength?: number;
}
export interface InstancedPBRProceduralEnvironmentMapOptions {
    readonly skyColor: readonly [number, number, number];
    readonly horizonColor: readonly [number, number, number];
    readonly groundColor: readonly [number, number, number];
    readonly specularColor: readonly [number, number, number];
    readonly intensity: number;
    readonly specularIntensity: number;
}
export declare class InstancedPBRMaterial extends Material {
    constructor(options?: InstancedPBRMaterialOptions);
}
//# sourceMappingURL=InstancedPBRMaterial.d.ts.map