UNPKG

strata-storage

Version:

Zero-dependency universal storage plugin providing a unified API for all storage operations across web, Android, and iOS platforms

55 lines 1.63 kB
/** * Storage strategy implementation for automatic adapter selection */ import type { StorageAdapter, StorageType, StorageCapabilities } from '@/types'; import { StorageStrategy } from '@/types'; import { AdapterRegistry } from './AdapterRegistry'; /** * Strategy manager for selecting appropriate storage adapters */ export declare class StrategyManager { private registry; private strategy; constructor(registry: AdapterRegistry, strategy?: StorageStrategy); /** * Get the best adapter based on current strategy */ getBestAdapter(preferredTypes?: StorageType[], requirements?: Partial<StorageCapabilities>): Promise<StorageAdapter | null>; /** * Get multiple adapters sorted by preference */ getAdapterChain(count: number, preferredTypes?: StorageType[], requirements?: Partial<StorageCapabilities>): Promise<StorageAdapter[]>; /** * Check if capabilities meet requirements */ private meetsRequirements; /** * Compare two adapters based on current strategy */ private compareAdapters; /** * Compare adapters by performance */ private comparePerformance; /** * Compare adapters by persistence */ private comparePersistence; /** * Compare adapters by security */ private compareSecurity; /** * Compare adapters by capacity */ private compareCapacity; /** * Update strategy */ setStrategy(strategy: StorageStrategy): void; /** * Get current strategy */ getStrategy(): StorageStrategy; } //# sourceMappingURL=StorageStrategy.d.ts.map