import Ardk from '../ardk'; import CryptoInterface from '../faces/utils/crypto'; import { SerializedUploader } from '../faces/utils/transactionUploader'; import Api from '../lib/api'; import Transaction from '../lib/transaction'; export declare class TransactionUploader { private chunkIndex; private txPosted; private transaction; private data; private lastRequestTimeEnd; private totalErrors; lastResponseStatus: number; lastResponseError: string; private ardk; private crypto; private merkle; get isComplete(): boolean; get totalChunks(): number; get uploadedChunks(): number; get pctComplete(): number; constructor(ardk: Ardk, transaction: Transaction | SerializedUploader | string, crypto: CryptoInterface); /** * Uploads the next part of the transaction. * On the first call this posts the transaction * itself and on any subsequent calls uploads the * next chunk until it completes. */ uploadChunk(): Promise; /** * Reconstructs an upload from its serialized state and data. * Checks if data matches the expected data_root. * * @param serialized * @param data */ static fromSerialized(ardk: Ardk, serialized: SerializedUploader, data: Uint8Array, crypto: CryptoInterface): Promise; /** * Reconstruct an upload from the tx metadata, ie /tx/. * * @param api * @param id * @param data */ static fromTransactionId(api: Api, id: string): Promise; toJSON(): { chunkIndex: number; transaction: Transaction; lastRequestTimeEnd: number; lastResponseStatus: number; lastResponseError: string; txPosted: boolean; }; private postTransaction; /** * Gets an uploader than can be used to upload a transaction chunk by chunk, giving progress * and the ability to resume. * * @param upload a Transaction object, a previously save progress object, or a transaction id. * @param data the data of the transaction. Required when resuming an upload. */ getUploader(upload: Transaction | SerializedUploader | string, data?: Uint8Array | ArrayBuffer): Promise; /** * Async generator version of uploader * @param {Transaction|SerializedUploader|string} upload a Transaction object, a previously save uploader, or a transaction id. * @param {Uint8Array} data the data of the transaction. Required when resuming an upload. */ upload(upload: Transaction | SerializedUploader | string, data?: Uint8Array): AsyncGenerator; }