import type { Image } from '../Image.js'; import type { BorderType } from '../utils/interpolateBorder.js'; interface GaussianBlurBaseOptions { /** * Specify how the borders should be handled. * @default `'reflect101'` */ borderType?: BorderType; /** * Image to which the resulting image has to be put. */ out?: Image; } export interface GaussianBlurSigmaOptions extends GaussianBlurBaseOptions { /** * The standard deviation. Specifies the width of the gaussian function in the case where it is the same for x and y. */ sigma: number; /** * Size of the kernel. * @default `2 * Math.ceil(2 * sigma) + 1` */ size?: number; } export interface GaussianBlurXYOptions extends GaussianBlurBaseOptions { /** * The standard deviation for the x axis. Specifies the width of the gaussian function along x. */ sigmaX: number; /** * The standard deviation for the y axis. Specifies the width of the gaussian function along y. */ sigmaY: number; /** * Size of the X axis kernel. * @default `2 * Math.ceil(2 * sigmaX) + 1` */ sizeX?: number; /** * Size of the Y axis kernel. * @default `2 * Math.ceil(2 * sigmaY) + 1` */ sizeY?: number; } export type GaussianBlurOptions = GaussianBlurSigmaOptions | GaussianBlurXYOptions; /** * Apply a gaussian filter to an image. * @param image - Image to blur. * @param options - Gaussian blur options. * @returns The blurred image. */ export declare function gaussianBlur(image: Image, options: GaussianBlurOptions): Image; export {}; //# sourceMappingURL=gaussianBlur.d.ts.map