/** * Bitmap blur filters - Gaussian and Box blur */ import { type Bitmap } from "./types.ts"; /** * Generate 1D Gaussian kernel * Uses Gaussian function: exp(-x²/(2σ²)) * * @param radius Blur radius (sigma value) * @returns Normalized Gaussian kernel weights */ export declare function createGaussianKernel(radius: number): Float32Array; /** * Gaussian blur implementation using separable 2-pass algorithm * Modifies bitmap in-place and returns it * * @param bitmap Bitmap to blur (modified in-place) * @param radius Blur radius in pixels * @returns The same bitmap after blur is applied */ export declare function gaussianBlur(bitmap: Bitmap, radius: number): Bitmap; /** * Box blur using running sum for O(1) per pixel * Modifies bitmap in-place and returns it * * @param bitmap Bitmap to blur (modified in-place) * @param radius Blur radius in pixels * @returns The same bitmap after blur is applied */ export declare function boxBlur(bitmap: Bitmap, radius: number): Bitmap; /** * Apply blur filter to a bitmap in-place * @param bitmap - Bitmap to blur (modified in-place) * @param radius - Blur radius in pixels (can be fractional) * @param type - Blur type: 'gaussian' (default) or 'box' * @returns The modified bitmap */ export declare function blurBitmap(bitmap: Bitmap, radius: number, type?: "gaussian" | "box"): Bitmap;