import type { DeviceCommands } from '../../device/DeviceCommands'; export type ProtocolV2FileWriteData = ArrayBuffer | Uint8Array | Blob | string; export type ProtocolV2FileWriteProgress = { progress: number; transferredBytes: number; totalBytes: number; rateBytesPerSecond?: number; elapsedMs: number; }; export type ProtocolV2FileWriteChunkContext = { offset: number; chunkLength: number; totalSize: number; }; export type ProtocolV2FileWriteOptions = { commands: Pick; path: string; data: ProtocolV2FileWriteData; offset?: number; totalSize?: number; chunkSize?: number; chunkLen?: number; chunkSizeLimit?: number; bleChunkSizeLimit?: number; overwrite?: boolean; append?: boolean; uiPercentage?: number; timeoutMs?: number; writeWithResponse?: boolean; maxChunkRetries?: number; paceMs?: number; throwIfAborted?: () => void; getUiPercentage?: (context: ProtocolV2FileWriteChunkContext) => number | undefined; onProgress?: (progress: ProtocolV2FileWriteProgress) => void; }; export declare function isProtocolV2ResponseTimeout(error: unknown): boolean; export declare function writeProtocolV2File(options: ProtocolV2FileWriteOptions): Promise<{ path: string; offset: number; total_size: number; processed_byte: number; chunks: number; }>; //# sourceMappingURL=protocolV2FileWrite.d.ts.map