import type { UploadPieceStreamingData } from '@filoz/synapse-core/sp'; import { type Address } from 'viem'; import type { Synapse } from '../synapse.ts'; import type { CreateContextsOptions, DownloadOptions, EnhancedDataSetInfo, GetUploadCostsOptions, PieceCID, PrepareOptions, PrepareResult, StorageContextCallbacks, StorageInfo, StorageServiceOptions, TerminateServiceOptions, TerminateServiceResult, UploadCallbacks, UploadCosts, UploadResult } from '../types.ts'; import type { WarmStorageService } from '../warm-storage/index.ts'; import { StorageContext } from './context.ts'; export type CombinedCallbacks = StorageContextCallbacks & UploadCallbacks; export interface StorageManagerUploadOptions extends CreateContextsOptions { contexts?: StorageContext[]; callbacks?: Partial; pieceCid?: PieceCID; signal?: AbortSignal; pieceMetadata?: Record; } export interface StorageManagerDownloadOptions extends DownloadOptions { context?: StorageContext; providerAddress?: Address; } export interface StorageManagerOptions { synapse: Synapse; warmStorageService: WarmStorageService; withCDN: boolean; source: string | null; } export declare class StorageManager { private readonly _synapse; private readonly _warmStorageService; private readonly _withCDN; private readonly _source; private _defaultContexts?; constructor(options: StorageManagerOptions); get source(): string | null; get withCDN(): boolean; upload(data: UploadPieceStreamingData, options?: StorageManagerUploadOptions): Promise; private _resolveUploadContexts; private _pullToSecondariesWithRetry; download(options: StorageManagerDownloadOptions): Promise; getUploadCosts(options: Omit): Promise; prepare(options: PrepareOptions): Promise; calculateMultiContextCosts(contexts: StorageContext[], options: Pick): Promise; createContexts(options?: CreateContextsOptions): Promise; createContext(options?: StorageServiceOptions): Promise; getDefaultContext(): Promise; findDataSets(options?: { address?: Address; }): Promise; terminateService(options: TerminateServiceOptions): Promise; private _resolveServiceURL; getStorageInfo(): Promise; } //# sourceMappingURL=manager.d.ts.map