UNPKG

@sailboat-computer/data-storage

Version:

Shared data storage library for sailboat computer v3

101 lines (87 loc) 3.15 kB
/** * Data Storage Package * * This package provides a unified storage solution for the sailboat computer system. * It includes: * - A unified storage manager with local storage fallback * - Support for multiple storage tiers (hot, warm, cold) * - Resilience features like circuit breakers, retries, and timeouts * - Synchronization between local and remote storage * - Configuration management with configuration service integration * - Lifecycle management for data migration, downsampling, and cleanup * * @module @sailboat-computer/data-storage */ // Import types from sailboat-types package import { common, data_manager } from '@sailboat-computer/sailboat-types'; // Re-export constants export const StorageTier = data_manager.StorageTier; export const StorageErrorCode = data_manager.StorageErrorCode; export const BatchPriority = data_manager.BatchPriority; // Re-export types from data_manager namespace export type StorageProviderHealth = data_manager.StorageProviderHealth; export type StorageProviderConfig = data_manager.StorageProviderConfig; export type RedisConfig = data_manager.RedisConfig; export type InfluxDBConfig = data_manager.InfluxDBConfig; export type PostgreSQLConfig = data_manager.PostgreSQLConfig; export type StorageConfig = data_manager.StorageConfig; export type DataMetadata = data_manager.DataMetadata; export type StoredData = data_manager.StoredData; export type DataQuery = data_manager.DataQuery; export type StorageOptions = data_manager.StorageOptions; export type CleanupResult = data_manager.CleanupResult; export type StorageStatus = data_manager.StorageStatus; export type LocalStorageStatus = data_manager.LocalStorageStatus; export type SyncResult = data_manager.SyncResult; export type ClearResult = data_manager.ClearResult; export type ResilienceMetrics = data_manager.ResilienceMetrics; export type StorageProvider = data_manager.StorageProvider; export type StorageManager = data_manager.StorageManager; export type DataCondition = data_manager.DataCondition; // Export implementation-specific types export { // Batch-related types BatchConfig, BatchingConfig, BatchManager, BatchStatus, // Storage-related types UnifiedStorageManagerOptions, UnifiedStorageManager, DataQueryResponse, // Lifecycle-related types LifecycleManager, LifecycleManagerConfig, LifecyclePolicy, DownsamplingRule, DownsamplingSchedule, MigrationHandler, DownsamplingHandler, // Downsampling-related types DownsamplingEngine, Downsampler, DownsamplingStrategy, TimeBasedStrategy, GeospatialStrategy, CycleBasedStrategy, GeotemporalStrategy, GeotemporalGridStrategy, MaintenanceBasedStrategy, AggregationConfig } from './types'; // Export storage implementations export * from './storage'; // Export configuration management export * from './config'; // Export event bus export * from './event-bus'; // Export lifecycle manager export { createLifecycleManager } from './lifecycle/manager'; // Export utility functions export * from './utils/errors'; export * from './utils/logger'; // Export version export const VERSION = '1.0.0';