managarten/packages/shared-storage/src/index.ts
Till JS 8c2aa261e8 perf(auth): replace bcrypt with bcryptjs (pure JS, no native build tools)
- Switch from bcrypt (native C++ addon) to bcryptjs (pure JavaScript)
- Remove python3/make/g++ build tools from Dockerfile builder stage
- bcryptjs is 100% hash-compatible with bcrypt
- Smaller builder image and faster Docker builds

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-20 19:46:16 +01:00

66 lines
1.3 KiB
TypeScript

// Main client
export { StorageClient } from './client';
// Factory functions
export {
createStorage,
createStorageClient,
getStorageConfig,
createManaCoreStorage,
createPictureStorage,
createChatStorage,
createManaDeckStorage,
createPresiStorage,
createCalendarStorage,
createContactsStorage,
createStorageStorage,
createMailStorage,
createInventoryStorage,
createMukkeStorage,
createPlantaStorage,
createProjectDocStorage,
} from './factory';
// Hooks
export { StorageHooks } from './hooks';
export type {
StorageEventType,
StorageEventMap,
StorageHook,
UploadEventPayload,
DeleteEventPayload,
DownloadEventPayload,
ErrorEventPayload,
} from './hooks';
// Metrics
export { InMemoryMetrics, attachMetrics, createPrometheusCollector } from './metrics';
export type { StorageMetricsCollector, MetricsFactory } from './metrics';
// Utilities
export {
generateFileKey,
generateUserFileKey,
getContentType,
validateFileSize,
validateFileExtension,
IMAGE_EXTENSIONS,
DOCUMENT_EXTENSIONS,
AUDIO_EXTENSIONS,
VIDEO_EXTENSIONS,
} from './utils';
// Types
export {
BUCKETS,
type StorageConfig,
type BucketConfig,
type BucketName,
type UploadOptions,
type PresignedUrlOptions,
type MultipartUploadInit,
type MultipartUploadPart,
type UploadResult,
type FileInfo,
type FileMetadata,
} from './types';