UNPKG

@toast-studios/asset-manager

Version:

A React Native asset management library with intelligent caching and loading strategies

25 lines (24 loc) 1.13 kB
import { AssetBundle, AssetQuality, IDownloadStrategy, NetworkConditions } from '../types/index'; /** * Configuration-driven network-aware strategy */ export declare class NetworkAwareStrategy implements IDownloadStrategy { readonly name = "network-aware"; private config; constructor(); getOptimalQuality(conditions: NetworkConditions): AssetQuality; prioritizeBundles(bundles: AssetBundle[], conditions: NetworkConditions): AssetBundle[]; shouldDownload(bundle: AssetBundle, conditions: NetworkConditions): boolean; getMaxConcurrentDownloads(conditions: NetworkConditions): number; /** * Update strategy configuration */ configure(newConfig: any): void; /** * Async methods for advanced usage */ getOptimalQualityAsync(conditions: NetworkConditions): Promise<AssetQuality>; prioritizeBundlesAsync(bundles: AssetBundle[], conditions: NetworkConditions): Promise<AssetBundle[]>; shouldDownloadAsync(bundle: AssetBundle, conditions: NetworkConditions): Promise<boolean>; getMaxConcurrentDownloadsAsync(conditions: NetworkConditions): Promise<number>; }