import { Uniform1i, Uniform1f, Uniform2f, UniformColor, UniformMatrix4f } from '../uniform_binding';
import type Painter from '../painter';
import type { UniformValues, UniformLocations } from '../uniform_binding';
import type Context from '../../gl/context';
import type Color from '../../style-spec/util/color';
import type { CrossFaded } from '../../style/properties';
import type { CrossfadeParameters } from '../../style/evaluation_parameters';
import type { OverscaledTileID } from '../../source/tile_id';
import type ResolvedImage from '../../style-spec/expression/types/resolved_image';
import { mat4 } from 'gl-matrix';
export declare type BackgroundUniformsType = {
    'u_matrix': UniformMatrix4f;
    'u_opacity': Uniform1f;
    'u_color': UniformColor;
};
export declare type BackgroundPatternUniformsType = {
    'u_matrix': UniformMatrix4f;
    'u_opacity': Uniform1f;
    'u_image': Uniform1i;
    'u_pattern_tl_a': Uniform2f;
    'u_pattern_br_a': Uniform2f;
    'u_pattern_tl_b': Uniform2f;
    'u_pattern_br_b': Uniform2f;
    'u_texsize': Uniform2f;
    'u_mix': Uniform1f;
    'u_pattern_size_a': Uniform2f;
    'u_pattern_size_b': Uniform2f;
    'u_scale_a': Uniform1f;
    'u_scale_b': Uniform1f;
    'u_pixel_coord_upper': Uniform2f;
    'u_pixel_coord_lower': Uniform2f;
    'u_tile_units_to_pixels': Uniform1f;
};
declare const backgroundUniforms: (context: Context, locations: UniformLocations) => BackgroundUniformsType;
declare const backgroundPatternUniforms: (context: Context, locations: UniformLocations) => BackgroundPatternUniformsType;
declare const backgroundUniformValues: (matrix: mat4, opacity: number, color: Color) => UniformValues<BackgroundUniformsType>;
declare const backgroundPatternUniformValues: (matrix: mat4, opacity: number, painter: Painter, image: CrossFaded<ResolvedImage>, tile: {
    tileID: OverscaledTileID;
    tileSize: number;
}, crossfade: CrossfadeParameters) => UniformValues<BackgroundPatternUniformsType>;
export { backgroundUniforms, backgroundPatternUniforms, backgroundUniformValues, backgroundPatternUniformValues };
//# sourceMappingURL=background_program.d.ts.map