import { type EnvironmentBackgroundEncoding, type EnvironmentBackgroundOptions } from "./EnvironmentBackgroundPass";
import { type TextureColorSpace, type TextureCubeFace, type TextureFormat, type TexturePixelData } from "./Texture";
export type EnvironmentBackgroundPixelFormat = Extract<TextureFormat, "rgba8" | "rgba16f" | "rgba32f">;
export interface EnvironmentBackgroundResourceOptions {
    readonly encoding?: EnvironmentBackgroundEncoding;
    readonly intensity?: number;
    readonly rotation?: number;
    readonly outputColorSpace?: "linear" | "srgb";
    readonly format?: EnvironmentBackgroundPixelFormat;
    readonly colorSpace?: TextureColorSpace;
    readonly textureLabel?: string;
    readonly bindingName?: string;
}
export interface EquirectEnvironmentBackgroundResourceOptions extends EnvironmentBackgroundResourceOptions {
    readonly width: number;
    readonly height: number;
    readonly data: TexturePixelData;
}
export interface CubemapEnvironmentBackgroundFacePixels {
    readonly face: TextureCubeFace;
    readonly data: TexturePixelData;
}
export interface CubemapEnvironmentBackgroundResourceOptions extends EnvironmentBackgroundResourceOptions {
    readonly size: number;
    readonly faces: readonly CubemapEnvironmentBackgroundFacePixels[];
}
export declare const ENVIRONMENT_BACKGROUND_CUBE_FACES: readonly TextureCubeFace[];
export declare function createEquirectEnvironmentBackgroundOptions(options: EquirectEnvironmentBackgroundResourceOptions): EnvironmentBackgroundOptions;
export declare function createCubemapEnvironmentBackgroundOptions(options: CubemapEnvironmentBackgroundResourceOptions): EnvironmentBackgroundOptions;
export declare function validateEnvironmentBackgroundResourceOptions(options: EnvironmentBackgroundOptions): EnvironmentBackgroundOptions;
//# sourceMappingURL=EnvironmentBackgroundResources.d.ts.map