import * as tf from '@tensorflow/tfjs'; type TilerOptions = { tileSize?: number; overlap?: number; batchSize?: number; debugging?: boolean; srgb?: boolean; }; export declare class GPUTensorTiler { private model; private tileSize; private overlap; private batchSize; private blendingMasks; private debugging; private aborting; srgb: boolean; timers: { [key: string]: number; }; stats: { [key: string]: number; }; constructor(model: tf.LayersModel, options?: TilerOptions); private calculateBatchSize; private getTileDims; private logMemoryUsage; processLargeTensor(rawInput: tf.Tensor4D, statusCallback?: (progress: number) => void): Promise; private reassembleTilesWithBlending; private getBlendingMask; private createImprovedBlendingMask; private sigmoidBlend; startTimer(name: string): void; stopTimer(name: string): void; logResults(): void; dispose(): void; abort(): void; sRGBToLinear(inputTensor: tf.Tensor): tf.Tensor4D; linearToSRGB(inputTensor: tf.Tensor): tf.Tensor4D; addColoredBorder(tile: tf.Tensor4D, borderWidth: number, color: [number, number, number]): tf.Tensor4D; visualizeBlendRegions(output: tf.Tensor4D): Promise; visualizeTiles(tiles: tf.Tensor4D[], stage: 'before' | 'after'): Promise; static generateSampleInput(height: number, width: number): tf.Tensor4D; } export {};