/** Types of outputs */
export type ArrayTypes = Uint8ClampedArray | Uint8Array | Uint16Array | Uint32Array | Int8Array | Int16Array | Int32Array | Float32Array | Float64Array;
/** Types of output constructors */
export type ArrayTypesConstructors = Uint8ClampedArrayConstructor | Uint8ArrayConstructor | Uint16ArrayConstructor | Uint32ArrayConstructor | Int8ArrayConstructor | Int16ArrayConstructor | Int32ArrayConstructor | Float32ArrayConstructor | Float64ArrayConstructor;
/**
 * Convert the data format and bits per sample to an array type
 * @param raster - the data
 * @param format - the data format
 * @param bitsPerSample - the bits per sample
 * @returns - the array
 */
export declare function toArrayType(raster: number[], format: number, bitsPerSample: number): ArrayTypes;
/**
 * Create an array of the right type
 * @param format - the data format
 * @param bitsPerSample - the bits per sample
 * @param size - the size
 * @returns - the array
 */
export declare function arrayForType(format: number, bitsPerSample: number, size: number): ArrayTypes;
/**
 * @param array - An array of numbers
 * @param start - Start index
 * @param end - End index
 * @returns The sum
 */
export declare function sampleSum(array: number[], start: number, end: number): number;
/**
 * Check if the data needs normalization
 * @param format - the data format
 * @param bitsPerSample - the bits per sample
 * @returns - true if the data needs normalization
 */
export declare function needsNormalization(format: number, bitsPerSample: number): boolean;
/**
 * Normalize the array
 * @param inBuffer - the input buffer
 * @param format - the data format
 * @param planarConfiguration - the planar configuration
 * @param samplesPerPixel - the number of samples per pixel
 * @param bitsPerSample - the bits per sample
 * @param tileWidth - the tile width
 * @param tileHeight - the tile height
 * @returns - the normalized array
 */
export declare function normalizeArray(inBuffer: ArrayBufferLike, format: number, planarConfiguration: number, samplesPerPixel: number, bitsPerSample: number, tileWidth: number, tileHeight: number): ArrayBufferLike;
//# sourceMappingURL=imageUtil.d.ts.map