import type { ethers } from 'ethers'; import type { PaymentsService } from '../payments/index.ts'; import type { ProviderInfo } from '../sp-registry/types.ts'; import type { Synapse } from '../synapse.ts'; import type { CreateContextsOptions, DownloadOptions, PieceCID, PieceStatus, PreflightInfo, StorageServiceOptions, UploadOptions, UploadResult } from '../types.ts'; import type { WarmStorageService } from '../warm-storage/index.ts'; export declare class StorageContext { private readonly _synapse; private readonly _provider; private readonly _pdpServer; private readonly _warmStorageService; private readonly _warmStorageAddress; private readonly _withCDN; private readonly _signer; private readonly _uploadBatchSize; private _dataSetId; private readonly _dataSetMetadata; private _pendingPieces; private _isProcessing; private _activeUploads; private readonly _uploadBatchWaitTimeout; readonly serviceProvider: string; get withCDN(): boolean; get provider(): ProviderInfo; get dataSetMetadata(): Record; get dataSetId(): number | undefined; private static validateRawSize; constructor(synapse: Synapse, warmStorageService: WarmStorageService, provider: ProviderInfo, dataSetId: number | undefined, options: StorageServiceOptions, dataSetMetadata: Record); static createContexts(synapse: Synapse, warmStorageService: WarmStorageService, options: CreateContextsOptions): Promise; static create(synapse: Synapse, warmStorageService: WarmStorageService, options?: StorageServiceOptions): Promise; private static createWithSelectedProvider; private static resolveProviderAndDataSet; private static resolveByDataSetId; private static validateDataSetConsistency; private static resolveByProviderId; private static resolveByProviderAddress; private static smartSelectProvider; private static selectRandomProvider; private static selectProviderWithPing; static performPreflightCheck(warmStorageService: WarmStorageService, paymentsService: PaymentsService, size: number, withCDN: boolean): Promise; preflightUpload(size: number): Promise; upload(data: Uint8Array | ArrayBuffer, options?: UploadOptions, pieceCid?: PieceCID): Promise; private _processPendingPieces; download(pieceCid: string | PieceCID, options?: DownloadOptions): Promise; providerDownload(pieceCid: string | PieceCID, options?: DownloadOptions): Promise; getProviderInfo(): Promise; getDataSetPieces(): Promise; getPieces(options?: { batchSize?: number; signal?: AbortSignal; }): AsyncGenerator<{ pieceCid: PieceCID; pieceId: number; }>; private _getPieceIdByCID; deletePiece(piece: string | PieceCID | number): Promise; hasPiece(pieceCid: string | PieceCID): Promise; pieceStatus(pieceCid: string | PieceCID): Promise; terminate(): Promise; } //# sourceMappingURL=context.d.ts.map