@umituz/react-native-design-system 4.25.86 → 4.25.87
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/atoms/AtomicAvatar.d.ts +44 -0
- package/dist/atoms/AtomicDatePicker.d.ts +42 -0
- package/dist/atoms/AtomicFab.d.ts +36 -0
- package/dist/atoms/AtomicInput.d.ts +4 -0
- package/dist/atoms/AtomicKeyboardAvoidingView.d.ts +17 -0
- package/dist/atoms/AtomicPicker.d.ts +9 -0
- package/dist/atoms/AtomicProgress.d.ts +42 -0
- package/dist/atoms/AtomicSpinner.d.ts +39 -0
- package/dist/atoms/AtomicSwitch.d.ts +18 -0
- package/dist/atoms/AtomicText.d.ts +31 -0
- package/dist/atoms/AtomicTextArea.d.ts +43 -0
- package/dist/atoms/AtomicTouchable.d.ts +29 -0
- package/dist/atoms/EmptyState.d.ts +22 -0
- package/dist/atoms/GlassView/GlassView.d.ts +17 -0
- package/dist/atoms/badge/AtomicBadge.d.ts +28 -0
- package/dist/atoms/button/AtomicButton.d.ts +8 -0
- package/dist/atoms/button/configs/buttonSizeConfig.d.ts +6 -0
- package/dist/atoms/button/styles/buttonStyles.d.ts +33 -0
- package/dist/atoms/button/styles/buttonVariantStyles.d.ts +6 -0
- package/dist/atoms/button/types/index.d.ts +38 -0
- package/dist/atoms/card/AtomicCard.d.ts +9 -0
- package/dist/atoms/card/configs/cardPaddingConfig.d.ts +6 -0
- package/dist/atoms/card/styles/cardStyles.d.ts +58 -0
- package/dist/atoms/card/types.d.ts +53 -0
- package/dist/atoms/chip/AtomicChip.d.ts +8 -0
- package/dist/atoms/chip/configs/chipColorConfig.d.ts +6 -0
- package/dist/atoms/chip/configs/chipSizeConfig.d.ts +6 -0
- package/dist/atoms/chip/styles/chipStyles.d.ts +16 -0
- package/dist/atoms/chip/types/index.d.ts +37 -0
- package/dist/atoms/datepicker/components/DatePickerButton.d.ts +17 -0
- package/dist/atoms/datepicker/components/DatePickerModal.d.ts +33 -0
- package/dist/atoms/datepicker/hooks/useDatePickerText.d.ts +16 -0
- package/dist/atoms/datepicker/styles/datePickerStyles.d.ts +22 -0
- package/dist/atoms/datepicker/types.d.ts +5 -0
- package/dist/atoms/fab/styles/fabStyles.d.ts +46 -0
- package/dist/atoms/fab/types.d.ts +75 -0
- package/dist/atoms/icon/AtomicIcon.d.ts +59 -0
- package/dist/atoms/icon/AtomicIcon.types.d.ts +32 -0
- package/dist/atoms/icon/components/iconRenderer.d.ts +43 -0
- package/dist/atoms/icon/iconStore.d.ts +73 -0
- package/dist/atoms/icon/index.d.ts +9 -0
- package/dist/atoms/icon/utils/iconUtils.d.ts +40 -0
- package/dist/atoms/image/AtomicImage.d.ts +11 -0
- package/dist/atoms/index.d.ts +31 -0
- package/dist/atoms/input/components/InputHelper.d.ts +12 -0
- package/dist/atoms/input/components/InputIcon.d.ts +11 -0
- package/dist/atoms/input/components/InputLabel.d.ts +8 -0
- package/dist/atoms/input/hooks/useInputState.d.ts +18 -0
- package/dist/atoms/input/styles/inputStyles.d.ts +15 -0
- package/dist/atoms/input/styles/inputStylesHelper.d.ts +48 -0
- package/dist/atoms/input/types.d.ts +71 -0
- package/dist/atoms/picker/components/PickerChips.d.ts +15 -0
- package/dist/atoms/picker/components/PickerIcons.d.ts +16 -0
- package/dist/atoms/picker/components/PickerModal.d.ts +24 -0
- package/dist/atoms/picker/hooks/usePickerState.d.ts +24 -0
- package/dist/atoms/picker/styles/pickerModalStyles.d.ts +9 -0
- package/dist/atoms/picker/styles/pickerOptionStyles.d.ts +8 -0
- package/dist/atoms/picker/styles/pickerSearchStyles.d.ts +7 -0
- package/dist/atoms/picker/styles/pickerStateStyles.d.ts +10 -0
- package/dist/atoms/picker/styles/pickerStyles.d.ts +35 -0
- package/dist/atoms/picker/types.d.ts +52 -0
- package/dist/atoms/skeleton/AtomicSkeleton.d.ts +39 -0
- package/dist/atoms/skeleton/AtomicSkeleton.types.d.ts +32 -0
- package/dist/atoms/status-bar/AtomicStatusBar.d.ts +11 -0
- package/dist/carousel/BannerCarousel.d.ts +13 -0
- package/dist/carousel/Carousel.d.ts +6 -0
- package/dist/carousel/CarouselDots.d.ts +3 -0
- package/dist/carousel/CarouselItem.d.ts +12 -0
- package/dist/carousel/CarouselScrollView.d.ts +13 -0
- package/dist/carousel/carouselCalculations.d.ts +3 -0
- package/dist/carousel/index.d.ts +9 -0
- package/dist/carousel/types.d.ts +27 -0
- package/dist/carousel/useCarouselScroll.d.ts +10 -0
- package/dist/device/detection/deviceDetection.d.ts +34 -0
- package/dist/device/detection/iPadBreakpoints.d.ts +51 -0
- package/dist/device/detection/iPadDetection.d.ts +24 -0
- package/dist/device/detection/iPadLayoutUtils.d.ts +38 -0
- package/dist/device/detection/iPadModalUtils.d.ts +27 -0
- package/dist/device/detection/index.d.ts +13 -0
- package/dist/device/domain/entities/Device.d.ts +79 -0
- package/dist/device/domain/entities/DeviceFeatureConfig.d.ts +21 -0
- package/dist/device/domain/entities/DeviceMemoryUtils.d.ts +30 -0
- package/dist/device/domain/entities/DeviceTypeUtils.d.ts +35 -0
- package/dist/device/domain/entities/DeviceUtils.d.ts +34 -0
- package/dist/device/domain/types/AnonymousUserTypes.d.ts +44 -0
- package/dist/device/index.d.ts +32 -0
- package/dist/device/infrastructure/repositories/SecureDeviceIdRepository.d.ts +18 -0
- package/dist/device/infrastructure/services/ApplicationInfoService.d.ts +21 -0
- package/dist/device/infrastructure/services/DeviceCapabilityService.d.ts +28 -0
- package/dist/device/infrastructure/services/DeviceExtrasCollector.d.ts +59 -0
- package/dist/device/infrastructure/services/DeviceFeatureService.d.ts +22 -0
- package/dist/device/infrastructure/services/DeviceIdService.d.ts +32 -0
- package/dist/device/infrastructure/services/DeviceInfoService.d.ts +11 -0
- package/dist/device/infrastructure/services/DeviceService.d.ts +66 -0
- package/dist/device/infrastructure/services/PersistentDeviceIdService.d.ts +36 -0
- package/dist/device/infrastructure/services/UserFriendlyIdService.d.ts +25 -0
- package/dist/device/infrastructure/utils/nativeModuleUtils.d.ts +27 -0
- package/dist/device/infrastructure/utils/stringUtils.d.ts +31 -0
- package/dist/device/presentation/hooks/useAnonymousUser.d.ts +34 -0
- package/dist/device/presentation/hooks/useDeviceFeatures.d.ts +16 -0
- package/dist/device/presentation/hooks/useDeviceInfo.d.ts +26 -0
- package/dist/exception/ErrorBoundary.d.ts +22 -0
- package/dist/exception/index.d.ts +6 -0
- package/dist/filesystem/domain/constants/FileConstants.d.ts +17 -0
- package/dist/filesystem/domain/entities/File.d.ts +8 -0
- package/dist/filesystem/domain/types/FileTypes.d.ts +38 -0
- package/dist/filesystem/domain/utils/FileUtils.d.ts +41 -0
- package/dist/filesystem/index.d.ts +14 -0
- package/dist/filesystem/infrastructure/services/FileSystemService.d.ts +34 -0
- package/dist/filesystem/infrastructure/services/cache.service.d.ts +12 -0
- package/dist/filesystem/infrastructure/services/directory.service.d.ts +25 -0
- package/dist/filesystem/infrastructure/services/download.constants.d.ts +5 -0
- package/dist/filesystem/infrastructure/services/download.service.d.ts +10 -0
- package/dist/filesystem/infrastructure/services/download.types.d.ts +5 -0
- package/dist/filesystem/infrastructure/services/encoding.service.d.ts +17 -0
- package/dist/filesystem/infrastructure/services/file-info.service.d.ts +17 -0
- package/dist/filesystem/infrastructure/services/file-manager.service.d.ts +17 -0
- package/dist/filesystem/infrastructure/services/file-path.service.d.ts +9 -0
- package/dist/filesystem/infrastructure/services/file-reader.service.d.ts +13 -0
- package/dist/filesystem/infrastructure/services/file-writer.service.d.ts +9 -0
- package/dist/filesystem/infrastructure/utils/blob.utils.d.ts +29 -0
- package/dist/gallery/gallery-download.service.d.ts +12 -0
- package/dist/gallery/gallery-save.service.d.ts +10 -0
- package/dist/gallery/index.d.ts +3 -0
- package/dist/gallery/types.d.ts +10 -0
- package/dist/haptics/domain/entities/Haptic.d.ts +45 -0
- package/dist/haptics/index.d.ts +156 -0
- package/dist/haptics/infrastructure/services/HapticService.d.ts +44 -0
- package/dist/haptics/presentation/hooks/useHaptics.d.ts +56 -0
- package/dist/image/domain/entities/ImageConstants.d.ts +21 -0
- package/dist/image/domain/entities/ImageFilterTypes.d.ts +69 -0
- package/dist/image/domain/entities/ImageTemplateTypes.d.ts +16 -0
- package/dist/image/domain/entities/ImageTypes.d.ts +73 -0
- package/dist/image/domain/entities/ValidationResult.d.ts +14 -0
- package/dist/image/domain/utils/ImageUtils.d.ts +16 -0
- package/dist/image/index.d.ts +43 -0
- package/dist/image/infrastructure/services/ImageBatchService.d.ts +32 -0
- package/dist/image/infrastructure/services/ImageConversionService.d.ts +11 -0
- package/dist/image/infrastructure/services/ImageEnhanceService.d.ts +27 -0
- package/dist/image/infrastructure/services/ImageMetadataService.d.ts +23 -0
- package/dist/image/infrastructure/services/ImageStorageService.d.ts +8 -0
- package/dist/image/infrastructure/services/ImageTemplateService.d.ts +20 -0
- package/dist/image/infrastructure/services/ImageTransformService.d.ts +15 -0
- package/dist/image/infrastructure/services/ImageViewerService.d.ts +19 -0
- package/dist/image/infrastructure/types/BatchTypes.d.ts +10 -0
- package/dist/image/infrastructure/utils/BatchProcessor.d.ts +15 -0
- package/dist/image/infrastructure/utils/FilterProcessor.d.ts +34 -0
- package/dist/image/infrastructure/utils/ImageErrorHandler.d.ts +22 -0
- package/dist/image/infrastructure/utils/ImageQualityPresets.d.ts +33 -0
- package/dist/image/infrastructure/utils/ImageTransformUtils.d.ts +11 -0
- package/dist/image/infrastructure/utils/ImageValidator.d.ts +14 -0
- package/dist/image/infrastructure/utils/MetadataExtractor.d.ts +30 -0
- package/dist/image/infrastructure/utils/filters/ColorAdjustmentFilters.d.ts +10 -0
- package/dist/image/infrastructure/utils/filters/FilterHelpers.d.ts +8 -0
- package/dist/image/infrastructure/utils/filters/StyleFilters.d.ts +9 -0
- package/dist/image/infrastructure/utils/validation/image-validator.d.ts +13 -0
- package/dist/image/infrastructure/utils/validation/mime-type-validator.d.ts +29 -0
- package/dist/image/infrastructure/utils/validation/mime-types.constants.d.ts +26 -0
- package/dist/image/presentation/components/GalleryHeader.d.ts +14 -0
- package/dist/image/presentation/components/ImageGallery.d.ts +18 -0
- package/dist/image/presentation/components/editor/FilterPickerSheet.d.ts +13 -0
- package/dist/image/presentation/components/editor/StickerPickerSheet.d.ts +13 -0
- package/dist/image/presentation/components/editor/TextEditorSheet.d.ts +26 -0
- package/dist/image/presentation/components/editor/text-editor/TextContentTab.d.ts +10 -0
- package/dist/image/presentation/components/editor/text-editor/TextEditorTabs.styles.d.ts +32 -0
- package/dist/image/presentation/components/editor/text-editor/TextStyleTab.d.ts +14 -0
- package/dist/image/presentation/components/editor/text-editor/TextTransformTab.d.ts +15 -0
- package/dist/image/presentation/components/editor/text-editor/components/TransformButtonRow.d.ts +27 -0
- package/dist/image/presentation/components/editor/text-editor/index.d.ts +10 -0
- package/dist/image/presentation/hooks/useImage.d.ts +49 -0
- package/dist/image/presentation/hooks/useImageBatch.d.ts +14 -0
- package/dist/image/presentation/hooks/useImageConversion.d.ts +9 -0
- package/dist/image/presentation/hooks/useImageEnhance.d.ts +12 -0
- package/dist/image/presentation/hooks/useImageGallery.d.ts +14 -0
- package/dist/image/presentation/hooks/useImageMetadata.d.ts +18 -0
- package/dist/image/presentation/hooks/useImageOperation.d.ts +10 -0
- package/dist/image/presentation/hooks/useImageTransform.d.ts +12 -0
- package/dist/index.d.ts +40 -0
- package/dist/infinite-scroll/domain/interfaces/infinite-scroll-list-props.d.ts +46 -0
- package/dist/infinite-scroll/domain/types/infinite-scroll-config.d.ts +92 -0
- package/dist/infinite-scroll/domain/types/infinite-scroll-return.d.ts +33 -0
- package/dist/infinite-scroll/domain/types/infinite-scroll-state.d.ts +48 -0
- package/dist/infinite-scroll/domain/utils/pagination-utils.d.ts +33 -0
- package/dist/infinite-scroll/domain/utils/type-guards.d.ts +30 -0
- package/dist/infinite-scroll/index.d.ts +27 -0
- package/dist/infinite-scroll/presentation/components/empty.d.ts +10 -0
- package/dist/infinite-scroll/presentation/components/error.d.ts +10 -0
- package/dist/infinite-scroll/presentation/components/infinite-scroll-list.d.ts +9 -0
- package/dist/infinite-scroll/presentation/components/loading-more.d.ts +10 -0
- package/dist/infinite-scroll/presentation/components/loading.d.ts +10 -0
- package/dist/infinite-scroll/presentation/components/types.d.ts +103 -0
- package/dist/infinite-scroll/presentation/hooks/pagination.helper.d.ts +20 -0
- package/dist/infinite-scroll/presentation/hooks/useInfiniteScroll.d.ts +8 -0
- package/dist/init/createAppInitializer.d.ts +27 -0
- package/dist/init/env/createEnvConfig.d.ts +28 -0
- package/dist/init/env/index.d.ts +5 -0
- package/dist/init/env/types.d.ts +79 -0
- package/dist/init/index.d.ts +12 -0
- package/dist/init/types.d.ts +58 -0
- package/dist/init/useAppInitialization.d.ts +19 -0
- package/dist/layouts/AppHeader/AppHeader.d.ts +32 -0
- package/dist/layouts/AppHeader/index.d.ts +1 -0
- package/dist/layouts/Container/Container.d.ts +33 -0
- package/dist/layouts/Container/index.d.ts +1 -0
- package/dist/layouts/FormLayout/FormLayout.d.ts +36 -0
- package/dist/layouts/FormLayout/index.d.ts +1 -0
- package/dist/layouts/Grid/Grid.d.ts +35 -0
- package/dist/layouts/Grid/index.d.ts +1 -0
- package/dist/layouts/ScreenHeader/ScreenHeader.d.ts +34 -0
- package/dist/layouts/ScreenHeader/index.d.ts +1 -0
- package/dist/layouts/ScreenLayout/ScreenLayout.d.ts +7 -0
- package/dist/layouts/ScreenLayout/index.d.ts +1 -0
- package/dist/layouts/ScreenLayout/styles/screenLayoutStyles.d.ts +31 -0
- package/dist/layouts/ScreenLayout/types/index.d.ts +27 -0
- package/dist/layouts/index.d.ts +6 -0
- package/dist/loading/domain/types/loading.types.d.ts +35 -0
- package/dist/loading/index.d.ts +9 -0
- package/dist/loading/infrastructure/store/LoadingStore.d.ts +6 -0
- package/dist/loading/presentation/components/LoadingOverlay.d.ts +7 -0
- package/dist/loading/presentation/hooks/useGlobalLoading.d.ts +13 -0
- package/dist/loading/presentation/providers/LoadingProvider.d.ts +7 -0
- package/dist/media/domain/entities/Media.d.ts +140 -0
- package/dist/media/domain/utils/FileValidator.d.ts +66 -0
- package/dist/media/domain/utils/MediaUtils.d.ts +28 -0
- package/dist/media/index.d.ts +25 -0
- package/dist/media/infrastructure/services/MediaPickerService.d.ts +19 -0
- package/dist/media/infrastructure/services/MediaSaveService.d.ts +38 -0
- package/dist/media/infrastructure/utils/PermissionManager.d.ts +43 -0
- package/dist/media/infrastructure/utils/file-media-utils.d.ts +42 -0
- package/dist/media/infrastructure/utils/media-collection-utils.d.ts +27 -0
- package/dist/media/infrastructure/utils/media-url-extractor.d.ts +7 -0
- package/dist/media/infrastructure/utils/mediaPickerMappers.d.ts +18 -0
- package/dist/media/infrastructure/utils/mime-type-detector.d.ts +5 -0
- package/dist/media/infrastructure/utils/url-media-detector.d.ts +5 -0
- package/dist/media/presentation/hooks/useMedia.d.ts +24 -0
- package/dist/molecules/BaseModal.d.ts +18 -0
- package/dist/molecules/ConfirmationModalContent.d.ts +22 -0
- package/dist/molecules/ConfirmationModalMain.d.ts +8 -0
- package/dist/molecules/Divider/Divider.d.ts +59 -0
- package/dist/molecules/Divider/index.d.ts +2 -0
- package/dist/molecules/Divider/types.d.ts +64 -0
- package/dist/molecules/FormField.d.ts +21 -0
- package/dist/molecules/IconContainer.d.ts +27 -0
- package/dist/molecules/List/List.d.ts +38 -0
- package/dist/molecules/List/index.d.ts +1 -0
- package/dist/molecules/ListItem.d.ts +4 -0
- package/dist/molecules/SearchBar/SearchBar.d.ts +3 -0
- package/dist/molecules/SearchBar/SearchHistory.d.ts +3 -0
- package/dist/molecules/SearchBar/SearchSuggestions.d.ts +8 -0
- package/dist/molecules/SearchBar/index.d.ts +4 -0
- package/dist/molecules/SearchBar/types.d.ts +41 -0
- package/dist/molecules/StepHeader/StepHeader.d.ts +27 -0
- package/dist/molecules/StepHeader/index.d.ts +2 -0
- package/dist/molecules/StepProgress/StepProgress.d.ts +8 -0
- package/dist/molecules/StepProgress/index.d.ts +1 -0
- package/dist/molecules/action-footer/ActionFooter.d.ts +3 -0
- package/dist/molecules/action-footer/index.d.ts +2 -0
- package/dist/molecules/action-footer/types.d.ts +10 -0
- package/dist/molecules/alerts/AlertBanner.d.ts +14 -0
- package/dist/molecules/alerts/AlertContainer.d.ts +5 -0
- package/dist/molecules/alerts/AlertInline.d.ts +10 -0
- package/dist/molecules/alerts/AlertModal.d.ts +10 -0
- package/dist/molecules/alerts/AlertProvider.d.ts +7 -0
- package/dist/molecules/alerts/AlertService.d.ts +14 -0
- package/dist/molecules/alerts/AlertStore.d.ts +14 -0
- package/dist/molecules/alerts/AlertToast.d.ts +13 -0
- package/dist/molecules/alerts/AlertTypes.d.ts +52 -0
- package/dist/molecules/alerts/components/AlertContent.d.ts +20 -0
- package/dist/molecules/alerts/components/AlertIcon.d.ts +14 -0
- package/dist/molecules/alerts/components/index.d.ts +5 -0
- package/dist/molecules/alerts/hooks/index.d.ts +5 -0
- package/dist/molecules/alerts/hooks/useAlertAutoDismiss.d.ts +8 -0
- package/dist/molecules/alerts/hooks/useAlertDismissHandler.d.ts +8 -0
- package/dist/molecules/alerts/index.d.ts +24 -0
- package/dist/molecules/alerts/useAlert.d.ts +14 -0
- package/dist/molecules/alerts/utils/alertUtils.d.ts +61 -0
- package/dist/molecules/avatar/Avatar.constants.d.ts +43 -0
- package/dist/molecules/avatar/Avatar.d.ts +23 -0
- package/dist/molecules/avatar/Avatar.types.d.ts +58 -0
- package/dist/molecules/avatar/Avatar.utils.d.ts +58 -0
- package/dist/molecules/avatar/AvatarGroup.d.ts +35 -0
- package/dist/molecules/avatar/index.d.ts +5 -0
- package/dist/molecules/bottom-sheet/components/BottomSheet.d.ts +3 -0
- package/dist/molecules/bottom-sheet/components/BottomSheetModal.d.ts +3 -0
- package/dist/molecules/bottom-sheet/components/filter/FilterBottomSheet.d.ts +16 -0
- package/dist/molecules/bottom-sheet/components/filter/FilterSheet.d.ts +14 -0
- package/dist/molecules/bottom-sheet/components/filter/FilterSheetComponents/FilterSheetHeader.d.ts +9 -0
- package/dist/molecules/bottom-sheet/components/filter/FilterSheetComponents/FilterSheetOption.d.ts +11 -0
- package/dist/molecules/bottom-sheet/hooks/useBottomSheet.d.ts +2 -0
- package/dist/molecules/bottom-sheet/hooks/useBottomSheetModal.d.ts +2 -0
- package/dist/molecules/bottom-sheet/hooks/useListFilters.d.ts +26 -0
- package/dist/molecules/bottom-sheet/index.d.ts +9 -0
- package/dist/molecules/bottom-sheet/types/BottomSheet.d.ts +72 -0
- package/dist/molecules/bottom-sheet/types/Filter.d.ts +20 -0
- package/dist/molecules/calendar/domain/entities/CalendarDay.entity.d.ts +98 -0
- package/dist/molecules/calendar/domain/entities/CalendarEvent.entity.d.ts +140 -0
- package/dist/molecules/calendar/domain/repositories/ICalendarRepository.d.ts +101 -0
- package/dist/molecules/calendar/index.d.ts +39 -0
- package/dist/molecules/calendar/infrastructure/services/CalendarGeneration.d.ts +70 -0
- package/dist/molecules/calendar/infrastructure/services/CalendarService.d.ts +60 -0
- package/dist/molecules/calendar/infrastructure/storage/CalendarStore.d.ts +64 -0
- package/dist/molecules/calendar/infrastructure/stores/storageAdapter.d.ts +9 -0
- package/dist/molecules/calendar/infrastructure/stores/useCalendarEvents.d.ts +24 -0
- package/dist/molecules/calendar/infrastructure/stores/useCalendarNavigation.d.ts +17 -0
- package/dist/molecules/calendar/infrastructure/stores/useCalendarView.d.ts +14 -0
- package/dist/molecules/calendar/infrastructure/utils/DateUtilities.d.ts +68 -0
- package/dist/molecules/calendar/presentation/components/AtomicCalendar.d.ts +82 -0
- package/dist/molecules/calendar/presentation/components/CalendarDayCell.d.ts +18 -0
- package/dist/molecules/calendar/presentation/components/CalendarWeekdayHeader.d.ts +9 -0
- package/dist/molecules/calendar/presentation/components/calendarStyles.d.ts +53 -0
- package/dist/molecules/circular-menu/CircularMenu.d.ts +13 -0
- package/dist/molecules/circular-menu/CircularMenuBackground.d.ts +2 -0
- package/dist/molecules/circular-menu/CircularMenuCloseButton.d.ts +5 -0
- package/dist/molecules/circular-menu/CircularMenuItem.d.ts +7 -0
- package/dist/molecules/circular-menu/constants.d.ts +24 -0
- package/dist/molecules/circular-menu/index.d.ts +4 -0
- package/dist/molecules/confirmation-modal/components.d.ts +31 -0
- package/dist/molecules/confirmation-modal/styles/confirmationModalStyles.d.ts +49 -0
- package/dist/molecules/confirmation-modal/types/index.d.ts +38 -0
- package/dist/molecules/confirmation-modal/useConfirmationModal.d.ts +18 -0
- package/dist/molecules/countdown/components/Countdown.d.ts +12 -0
- package/dist/molecules/countdown/components/CountdownHeader.d.ts +10 -0
- package/dist/molecules/countdown/components/TimeUnit.d.ts +7 -0
- package/dist/molecules/countdown/hooks/useCountdown.d.ts +17 -0
- package/dist/molecules/countdown/index.d.ts +10 -0
- package/dist/molecules/countdown/types/CountdownTypes.d.ts +32 -0
- package/dist/molecules/countdown/utils/TimeCalculator.d.ts +5 -0
- package/dist/molecules/emoji/domain/entities/Emoji.d.ts +107 -0
- package/dist/molecules/emoji/index.d.ts +163 -0
- package/dist/molecules/emoji/presentation/components/EmojiPicker.d.ts +62 -0
- package/dist/molecules/emoji/presentation/hooks/useEmojiPicker.d.ts +73 -0
- package/dist/molecules/filter-group/FilterGroup.d.ts +3 -0
- package/dist/molecules/filter-group/index.d.ts +2 -0
- package/dist/molecules/filter-group/types.d.ts +15 -0
- package/dist/molecules/hero-section/HeroSection.d.ts +3 -0
- package/dist/molecules/hero-section/index.d.ts +2 -0
- package/dist/molecules/hero-section/types.d.ts +8 -0
- package/dist/molecules/index.d.ts +31 -0
- package/dist/molecules/info-grid/InfoGrid.d.ts +3 -0
- package/dist/molecules/info-grid/index.d.ts +2 -0
- package/dist/molecules/info-grid/types.d.ts +14 -0
- package/dist/molecules/listitem/styles/listItemStyles.d.ts +13 -0
- package/dist/molecules/listitem/types/index.d.ts +20 -0
- package/dist/molecules/long-press-menu/domain/entities/MenuAction.d.ts +30 -0
- package/dist/molecules/long-press-menu/index.d.ts +12 -0
- package/dist/molecules/navigation/StackNavigator.d.ts +13 -0
- package/dist/molecules/navigation/TabsNavigator.d.ts +13 -0
- package/dist/molecules/navigation/components/FabButton.d.ts +13 -0
- package/dist/molecules/navigation/components/NavigationContainer.d.ts +10 -0
- package/dist/molecules/navigation/components/NavigationHeader.d.ts +7 -0
- package/dist/molecules/navigation/components/TabLabel.d.ts +14 -0
- package/dist/molecules/navigation/hooks/useAppFocusEffect.d.ts +15 -0
- package/dist/molecules/navigation/hooks/useAppIsFocused.d.ts +7 -0
- package/dist/molecules/navigation/hooks/useAppNavigation.d.ts +25 -0
- package/dist/molecules/navigation/hooks/useAppRoute.d.ts +9 -0
- package/dist/molecules/navigation/hooks/useTabBarStyles.d.ts +44 -0
- package/dist/molecules/navigation/hooks/useTabConfig.d.ts +6 -0
- package/dist/molecules/navigation/index.d.ts +21 -0
- package/dist/molecules/navigation/types.d.ts +93 -0
- package/dist/molecules/navigation/utils/AppNavigation.d.ts +76 -0
- package/dist/molecules/navigation/utils/IconRenderer.d.ts +9 -0
- package/dist/molecules/navigation/utils/LabelProcessor.d.ts +10 -0
- package/dist/molecules/navigation/utils/NavigationCleanup.d.ts +37 -0
- package/dist/molecules/navigation/utils/NavigationValidator.d.ts +5 -0
- package/dist/molecules/navigation/utils/ScreenFactory.d.ts +9 -0
- package/dist/molecules/navigation/utils/createScreenOptions.d.ts +20 -0
- package/dist/molecules/splash/components/SplashScreen.d.ts +3 -0
- package/dist/molecules/splash/constants.d.ts +8 -0
- package/dist/molecules/splash/hooks/useSplashFlow.d.ts +22 -0
- package/dist/molecules/splash/index.d.ts +8 -0
- package/dist/molecules/splash/types.d.ts +86 -0
- package/dist/molecules/swipe-actions/domain/entities/SwipeAction.d.ts +55 -0
- package/dist/molecules/swipe-actions/domain/utils/swipeActionHelpers.d.ts +53 -0
- package/dist/molecules/swipe-actions/domain/utils/swipeActionValidator.d.ts +18 -0
- package/dist/molecules/swipe-actions/index.d.ts +5 -0
- package/dist/molecules/swipe-actions/presentation/components/SwipeActionButton.d.ts +47 -0
- package/dist/offline/index.d.ts +16 -0
- package/dist/offline/infrastructure/events/NetworkEvents.d.ts +24 -0
- package/dist/offline/infrastructure/storage/OfflineConfigStore.d.ts +18 -0
- package/dist/offline/infrastructure/storage/OfflineStore.d.ts +7 -0
- package/dist/offline/infrastructure/utils/healthCheck.d.ts +27 -0
- package/dist/offline/presentation/components/OfflineBanner.d.ts +43 -0
- package/dist/offline/presentation/hooks/useOffline.d.ts +22 -0
- package/dist/offline/presentation/hooks/useOfflineState.d.ts +7 -0
- package/dist/offline/presentation/hooks/useOfflineWithMutations.d.ts +16 -0
- package/dist/offline/presentation/providers/NetworkProvider.d.ts +23 -0
- package/dist/offline/types/index.d.ts +62 -0
- package/dist/onboarding/domain/entities/OnboardingOptions.d.ts +85 -0
- package/dist/onboarding/domain/entities/OnboardingQuestion.d.ts +135 -0
- package/dist/onboarding/domain/entities/OnboardingSlide.d.ts +49 -0
- package/dist/onboarding/domain/entities/OnboardingUserData.d.ts +38 -0
- package/dist/onboarding/domain/types/ImageSourceType.d.ts +11 -0
- package/dist/onboarding/hooks/useOnboardingFlow.d.ts +9 -0
- package/dist/onboarding/index.d.ts +60 -0
- package/dist/onboarding/infrastructure/hooks/useOnboardingAnswers.d.ts +20 -0
- package/dist/onboarding/infrastructure/hooks/useOnboardingNavigation.d.ts +23 -0
- package/dist/onboarding/infrastructure/services/SlideManager.d.ts +27 -0
- package/dist/onboarding/infrastructure/services/ValidationManager.d.ts +35 -0
- package/dist/onboarding/infrastructure/storage/OnboardingStore.d.ts +45 -0
- package/dist/onboarding/infrastructure/storage/OnboardingStoreActions.d.ts +15 -0
- package/dist/onboarding/infrastructure/storage/OnboardingStoreSelectors.d.ts +11 -0
- package/dist/onboarding/infrastructure/storage/OnboardingStoreState.d.ts +13 -0
- package/dist/onboarding/infrastructure/storage/actions/answerActions.d.ts +8 -0
- package/dist/onboarding/infrastructure/storage/actions/completeAction.d.ts +6 -0
- package/dist/onboarding/infrastructure/storage/actions/index.d.ts +10 -0
- package/dist/onboarding/infrastructure/storage/actions/initializeAction.d.ts +6 -0
- package/dist/onboarding/infrastructure/storage/actions/resetAction.d.ts +6 -0
- package/dist/onboarding/infrastructure/storage/actions/skipAction.d.ts +6 -0
- package/dist/onboarding/infrastructure/storage/actions/storageHelpers.d.ts +14 -0
- package/dist/onboarding/infrastructure/utils/arrayUtils.d.ts +16 -0
- package/dist/onboarding/infrastructure/utils/backgroundUtils.d.ts +16 -0
- package/dist/onboarding/infrastructure/utils/layouts/collageLayout.d.ts +6 -0
- package/dist/onboarding/infrastructure/utils/layouts/gridLayouts.d.ts +7 -0
- package/dist/onboarding/infrastructure/utils/layouts/honeycombLayout.d.ts +6 -0
- package/dist/onboarding/infrastructure/utils/layouts/index.d.ts +10 -0
- package/dist/onboarding/infrastructure/utils/layouts/layoutTypes.d.ts +31 -0
- package/dist/onboarding/infrastructure/utils/layouts/masonryLayout.d.ts +6 -0
- package/dist/onboarding/infrastructure/utils/layouts/scatteredLayout.d.ts +6 -0
- package/dist/onboarding/infrastructure/utils/layouts/screenDimensions.d.ts +6 -0
- package/dist/onboarding/infrastructure/utils/layouts/tilesLayout.d.ts +6 -0
- package/dist/onboarding/presentation/components/BackgroundImageCollage.d.ts +17 -0
- package/dist/onboarding/presentation/components/BackgroundVideo.d.ts +11 -0
- package/dist/onboarding/presentation/components/BaseSlide.d.ts +11 -0
- package/dist/onboarding/presentation/components/OnboardingBackground.d.ts +32 -0
- package/dist/onboarding/presentation/components/OnboardingFooter.d.ts +12 -0
- package/dist/onboarding/presentation/components/OnboardingHeader.d.ts +10 -0
- package/dist/onboarding/presentation/components/OnboardingResetSetting.d.ts +12 -0
- package/dist/onboarding/presentation/components/OnboardingScreenContent.d.ts +7 -0
- package/dist/onboarding/presentation/components/OnboardingSlide.d.ts +11 -0
- package/dist/onboarding/presentation/components/QuestionRenderer.d.ts +12 -0
- package/dist/onboarding/presentation/components/QuestionSlide.d.ts +11 -0
- package/dist/onboarding/presentation/components/QuestionSlideHeader.d.ts +6 -0
- package/dist/onboarding/presentation/components/questions/DateQuestion.d.ts +8 -0
- package/dist/onboarding/presentation/components/questions/MultipleChoiceQuestion.d.ts +12 -0
- package/dist/onboarding/presentation/components/questions/QuestionOptionItem.d.ts +14 -0
- package/dist/onboarding/presentation/components/questions/RatingQuestion.d.ts +8 -0
- package/dist/onboarding/presentation/components/questions/SingleChoiceQuestion.d.ts +8 -0
- package/dist/onboarding/presentation/components/questions/TextInputQuestion.d.ts +8 -0
- package/dist/onboarding/presentation/hooks/useOnboardingContainerStyle.d.ts +12 -0
- package/dist/onboarding/presentation/hooks/useOnboardingGestures.d.ts +12 -0
- package/dist/onboarding/presentation/hooks/useOnboardingScreenHandlers.d.ts +23 -0
- package/dist/onboarding/presentation/hooks/useOnboardingScreenState.d.ts +30 -0
- package/dist/onboarding/presentation/providers/OnboardingProvider.d.ts +26 -0
- package/dist/onboarding/presentation/screens/OnboardingScreen.d.ts +69 -0
- package/dist/onboarding/presentation/types/OnboardingProps.d.ts +51 -0
- package/dist/onboarding/presentation/types/OnboardingTheme.d.ts +25 -0
- package/dist/organisms/FormContainer.d.ts +81 -0
- package/dist/organisms/index.d.ts +18 -0
- package/dist/presentation/utils/variants/core.d.ts +13 -0
- package/dist/presentation/utils/variants/helpers.d.ts +4 -0
- package/dist/presentation/utils/variants/index.d.ts +5 -0
- package/dist/responsive/compute/computeDeviceInfo.d.ts +15 -0
- package/dist/responsive/compute/computeResponsivePositioning.d.ts +24 -0
- package/dist/responsive/compute/computeResponsiveSizes.d.ts +26 -0
- package/dist/responsive/config.d.ts +130 -0
- package/dist/responsive/gridUtils.d.ts +35 -0
- package/dist/responsive/index.d.ts +12 -0
- package/dist/responsive/padding/paddingUtils.d.ts +11 -0
- package/dist/responsive/platformConstants.d.ts +74 -0
- package/dist/responsive/positioning/positioningUtils.d.ts +13 -0
- package/dist/responsive/responsive.d.ts +9 -0
- package/dist/responsive/responsiveLayout.d.ts +9 -0
- package/dist/responsive/responsiveModal.d.ts +36 -0
- package/dist/responsive/responsiveSizing.d.ts +49 -0
- package/dist/responsive/screen/screenLayoutConfig.d.ts +15 -0
- package/dist/responsive/tabbar/tabBarConfig.d.ts +17 -0
- package/dist/responsive/types/responsiveTypes.d.ts +54 -0
- package/dist/responsive/useResponsive.d.ts +7 -0
- package/dist/responsive/useScreenDimensions.d.ts +25 -0
- package/dist/responsive/validation.d.ts +68 -0
- package/dist/safe-area/constants/index.d.ts +22 -0
- package/dist/safe-area/hooks/useSafeAreaInsets.d.ts +6 -0
- package/dist/safe-area/index.d.ts +10 -0
- package/dist/storage/__tests__/mocks/asyncStorage.mock.d.ts +19 -0
- package/dist/storage/__tests__/setup.d.ts +16 -0
- package/dist/storage/application/ports/IStorageRepository.d.ts +49 -0
- package/dist/storage/cache/__tests__/setup.d.ts +3 -0
- package/dist/storage/cache/domain/Cache.d.ts +22 -0
- package/dist/storage/cache/domain/CacheManager.d.ts +17 -0
- package/dist/storage/cache/domain/CacheStatsTracker.d.ts +14 -0
- package/dist/storage/cache/domain/ErrorHandler.d.ts +11 -0
- package/dist/storage/cache/domain/PatternMatcher.d.ts +8 -0
- package/dist/storage/cache/domain/strategies/EvictionStrategy.d.ts +7 -0
- package/dist/storage/cache/domain/strategies/FIFOStrategy.d.ts +8 -0
- package/dist/storage/cache/domain/strategies/LFUStrategy.d.ts +8 -0
- package/dist/storage/cache/domain/strategies/LRUStrategy.d.ts +8 -0
- package/dist/storage/cache/domain/strategies/TTLStrategy.d.ts +8 -0
- package/dist/storage/cache/domain/types/Cache.d.ts +24 -0
- package/dist/storage/cache/infrastructure/TTLCache.d.ts +22 -0
- package/dist/storage/cache/presentation/useCache.d.ts +13 -0
- package/dist/storage/cache/presentation/useCachedValue.d.ts +14 -0
- package/dist/storage/domain/constants/CacheDefaults.d.ts +56 -0
- package/dist/storage/domain/entities/CachedValue.d.ts +51 -0
- package/dist/storage/domain/entities/StorageResult.d.ts +50 -0
- package/dist/storage/domain/errors/StorageError.d.ts +48 -0
- package/dist/storage/domain/factories/StoreFactory.d.ts +10 -0
- package/dist/storage/domain/types/Store.d.ts +43 -0
- package/dist/storage/domain/utils/CacheKeyGenerator.d.ts +40 -0
- package/dist/storage/domain/utils/ValidationUtils.d.ts +19 -0
- package/dist/storage/domain/utils/devUtils.d.ts +7 -0
- package/dist/storage/domain/value-objects/StorageKey.d.ts +49 -0
- package/dist/storage/index.d.ts +55 -0
- package/dist/storage/infrastructure/adapters/StorageService.d.ts +12 -0
- package/dist/storage/infrastructure/repositories/AsyncStorageRepository.d.ts +59 -0
- package/dist/storage/infrastructure/repositories/BaseStorageOperations.d.ts +31 -0
- package/dist/storage/infrastructure/repositories/BatchStorageOperations.d.ts +19 -0
- package/dist/storage/infrastructure/repositories/StringStorageOperations.d.ts +19 -0
- package/dist/storage/presentation/hooks/CacheStorageOperations.d.ts +37 -0
- package/dist/storage/presentation/hooks/useCacheState.d.ts +20 -0
- package/dist/storage/presentation/hooks/usePersistentCache.d.ts +73 -0
- package/dist/storage/presentation/hooks/useStorage.d.ts +22 -0
- package/dist/storage/presentation/hooks/useStorageState.d.ts +18 -0
- package/dist/storage/presentation/hooks/useStore.d.ts +6 -0
- package/dist/tanstack/domain/config/QueryClientAccessor.d.ts +41 -0
- package/dist/tanstack/domain/constants/CacheDefaults.d.ts +58 -0
- package/dist/tanstack/domain/repositories/BaseRepository.d.ts +126 -0
- package/dist/tanstack/domain/repositories/IBaseRepository.d.ts +25 -0
- package/dist/tanstack/domain/repositories/RepositoryFactory.d.ts +73 -0
- package/dist/tanstack/domain/repositories/RepositoryTypes.d.ts +32 -0
- package/dist/tanstack/domain/repositories/helpers/repositoryHelpers.d.ts +30 -0
- package/dist/tanstack/domain/repositories/mixins/repositoryInvalidationMethods.d.ts +47 -0
- package/dist/tanstack/domain/repositories/mixins/repositoryQueryMethods.d.ts +36 -0
- package/dist/tanstack/domain/types/CacheStrategy.d.ts +95 -0
- package/dist/tanstack/domain/utils/ErrorHelpers.d.ts +52 -0
- package/dist/tanstack/domain/utils/MetricsCalculator.d.ts +40 -0
- package/dist/tanstack/domain/utils/QueryKeyFactory.d.ts +99 -0
- package/dist/tanstack/domain/utils/TypeUtilities.d.ts +129 -0
- package/dist/tanstack/index.d.ts +26 -0
- package/dist/tanstack/infrastructure/config/PersisterConfig.d.ts +68 -0
- package/dist/tanstack/infrastructure/config/QueryClientConfig.d.ts +63 -0
- package/dist/tanstack/infrastructure/config/QueryClientSingleton.d.ts +5 -0
- package/dist/tanstack/infrastructure/monitoring/DevMonitor.d.ts +69 -0
- package/dist/tanstack/infrastructure/monitoring/DevMonitor.types.d.ts +35 -0
- package/dist/tanstack/infrastructure/monitoring/DevMonitorLogger.d.ts +13 -0
- package/dist/tanstack/infrastructure/providers/TanstackProvider.d.ts +56 -0
- package/dist/tanstack/presentation/hooks/types/prefetchTypes.d.ts +28 -0
- package/dist/tanstack/presentation/hooks/useInvalidateQueries.d.ts +63 -0
- package/dist/tanstack/presentation/hooks/useOptimisticUpdate.d.ts +24 -0
- package/dist/tanstack/presentation/hooks/usePaginatedQuery.d.ts +523 -0
- package/dist/tanstack/presentation/hooks/usePrefetch.d.ts +18 -0
- package/dist/tanstack/presentation/utils/RetryHelpers.d.ts +45 -0
- package/dist/theme/core/BaseTokens.d.ts +17 -0
- package/dist/theme/core/ColorPalette.d.ts +17 -0
- package/dist/theme/core/CustomColors.d.ts +81 -0
- package/dist/theme/core/NavigationTheme.d.ts +38 -0
- package/dist/theme/core/TokenFactory.d.ts +15 -0
- package/dist/theme/core/colors/ColorUtils.d.ts +18 -0
- package/dist/theme/core/colors/DarkColors.d.ts +103 -0
- package/dist/theme/core/colors/LightColors.d.ts +103 -0
- package/dist/theme/core/constants/DesignConstants.d.ts +17 -0
- package/dist/theme/core/themes.d.ts +47 -0
- package/dist/theme/core/tokens/BaseTokens.d.ts +123 -0
- package/dist/theme/core/tokens/Borders.d.ts +7 -0
- package/dist/theme/core/tokens/Sizes.d.ts +10 -0
- package/dist/theme/core/tokens/Spacing.d.ts +7 -0
- package/dist/theme/core/tokens/Typography.d.ts +7 -0
- package/dist/theme/hooks/commonStyles/formStyles.d.ts +9 -0
- package/dist/theme/hooks/commonStyles/layoutStyles.d.ts +12 -0
- package/dist/theme/hooks/commonStyles/paddingStyles.d.ts +10 -0
- package/dist/theme/hooks/commonStyles/screenContainerStyles.d.ts +10 -0
- package/dist/theme/hooks/commonStyles/scrollContainerStyles.d.ts +11 -0
- package/dist/theme/hooks/commonStyles/sectionStyles.d.ts +9 -0
- package/dist/theme/hooks/commonStyles/textStyles.d.ts +12 -0
- package/dist/theme/hooks/useAppDesignTokens.d.ts +7 -0
- package/dist/theme/hooks/useCommonStyles.d.ts +46 -0
- package/dist/theme/hooks/useThemedStyles.d.ts +34 -0
- package/dist/theme/index.d.ts +23 -0
- package/dist/theme/infrastructure/globalThemeStore.d.ts +48 -0
- package/dist/theme/infrastructure/providers/DesignSystemProvider.d.ts +22 -0
- package/dist/theme/infrastructure/storage/ThemeStorage.d.ts +14 -0
- package/dist/theme/infrastructure/stores/themeStore.d.ts +31 -0
- package/dist/theme/types/ThemeTypes.d.ts +88 -0
- package/dist/timezone/domain/entities/Timezone.d.ts +9 -0
- package/dist/timezone/domain/entities/TimezoneCapabilities.d.ts +116 -0
- package/dist/timezone/domain/entities/TimezoneTypes.d.ts +36 -0
- package/dist/timezone/index.d.ts +12 -0
- package/dist/timezone/infrastructure/services/BusinessCalendarManager.d.ts +30 -0
- package/dist/timezone/infrastructure/services/CalendarManager.d.ts +29 -0
- package/dist/timezone/infrastructure/services/DateComparisonUtils.d.ts +25 -0
- package/dist/timezone/infrastructure/services/DateFormatter.d.ts +12 -0
- package/dist/timezone/infrastructure/services/DateRangeUtils.d.ts +21 -0
- package/dist/timezone/infrastructure/services/TimezoneProvider.d.ts +33 -0
- package/dist/timezone/infrastructure/services/TimezoneService.d.ts +61 -0
- package/dist/timezone/infrastructure/utils/SimpleCache.d.ts +23 -0
- package/dist/timezone/infrastructure/utils/TimezoneParsers.d.ts +18 -0
- package/dist/timezone/presentation/hooks/useTimezone.d.ts +45 -0
- package/dist/typography/domain/entities/TypographyTypes.d.ts +41 -0
- package/dist/typography/index.d.ts +19 -0
- package/dist/typography/presentation/utils/colorValidationUtils.d.ts +60 -0
- package/dist/typography/presentation/utils/textColorUtils.d.ts +9 -0
- package/dist/typography/presentation/utils/textStyleUtils.d.ts +67 -0
- package/dist/utilities/clipboard/ClipboardUtils.d.ts +37 -0
- package/dist/utilities/clipboard/index.d.ts +4 -0
- package/dist/utilities/index.d.ts +5 -0
- package/dist/utilities/sharing/domain/entities/Share.d.ts +77 -0
- package/dist/utilities/sharing/domain/entities/SharingUtils.d.ts +19 -0
- package/dist/utilities/sharing/index.d.ts +9 -0
- package/dist/utilities/sharing/infrastructure/services/SharingService.d.ts +66 -0
- package/dist/utilities/sharing/presentation/hooks/useSharing.d.ts +21 -0
- package/dist/utils/async/index.d.ts +5 -0
- package/dist/utils/async/retryWithBackoff.d.ts +74 -0
- package/dist/utils/errors/DesignSystemError.d.ts +99 -0
- package/dist/utils/errors/ErrorHandler.d.ts +54 -0
- package/dist/utils/errors/index.d.ts +8 -0
- package/dist/utils/errors/types/Result.d.ts +39 -0
- package/dist/utils/formatters/stringFormatter.d.ts +78 -0
- package/dist/utils/hooks/index.d.ts +5 -0
- package/dist/utils/hooks/types/AsyncOperationTypes.d.ts +52 -0
- package/dist/utils/hooks/useAsyncOperation.d.ts +36 -0
- package/dist/utils/logger.d.ts +70 -0
- package/dist/uuid/index.d.ts +8 -0
- package/dist/uuid/infrastructure/utils/UUIDUtils.d.ts +20 -0
- package/dist/uuid/types/UUID.d.ts +34 -0
- package/package.json +35 -33
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Storage Repository Interface (Port)
|
|
3
|
+
*
|
|
4
|
+
* Domain-Driven Design: Application port for storage operations
|
|
5
|
+
* Infrastructure layer implements this interface
|
|
6
|
+
*/
|
|
7
|
+
import type { StorageResult } from '../../domain/entities/StorageResult';
|
|
8
|
+
/**
|
|
9
|
+
* Storage Repository Interface
|
|
10
|
+
* Defines contract for storage operations
|
|
11
|
+
*/
|
|
12
|
+
export interface IStorageRepository {
|
|
13
|
+
/**
|
|
14
|
+
* Get item from storage with JSON parsing
|
|
15
|
+
*/
|
|
16
|
+
getItem<T>(key: string, defaultValue: T): Promise<StorageResult<T>>;
|
|
17
|
+
/**
|
|
18
|
+
* Set item in storage with JSON serialization
|
|
19
|
+
*/
|
|
20
|
+
setItem<T>(key: string, value: T): Promise<StorageResult<T>>;
|
|
21
|
+
/**
|
|
22
|
+
* Get string value (no JSON parsing)
|
|
23
|
+
*/
|
|
24
|
+
getString(key: string, defaultValue: string): Promise<StorageResult<string>>;
|
|
25
|
+
/**
|
|
26
|
+
* Set string value (no JSON serialization)
|
|
27
|
+
*/
|
|
28
|
+
setString(key: string, value: string): Promise<StorageResult<string>>;
|
|
29
|
+
/**
|
|
30
|
+
* Remove item from storage
|
|
31
|
+
*/
|
|
32
|
+
removeItem(key: string): Promise<StorageResult<void>>;
|
|
33
|
+
/**
|
|
34
|
+
* Check if key exists in storage
|
|
35
|
+
*/
|
|
36
|
+
hasItem(key: string): Promise<boolean>;
|
|
37
|
+
/**
|
|
38
|
+
* Clear all storage data
|
|
39
|
+
*/
|
|
40
|
+
clearAll(): Promise<StorageResult<void>>;
|
|
41
|
+
/**
|
|
42
|
+
* Get multiple items at once
|
|
43
|
+
*/
|
|
44
|
+
getMultiple(keys: string[]): Promise<StorageResult<Record<string, string | null>>>;
|
|
45
|
+
/**
|
|
46
|
+
* Get all keys from storage
|
|
47
|
+
*/
|
|
48
|
+
getAllKeys(): Promise<StorageResult<string[]>>;
|
|
49
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* In-Memory Cache
|
|
3
|
+
*/
|
|
4
|
+
import type { CacheEntry, CacheConfig, CacheStats } from './types/Cache';
|
|
5
|
+
import { CacheStatsTracker } from './CacheStatsTracker';
|
|
6
|
+
export declare class Cache<T = unknown> {
|
|
7
|
+
protected store: Map<string, CacheEntry<T>>;
|
|
8
|
+
private config;
|
|
9
|
+
protected statsTracker: CacheStatsTracker;
|
|
10
|
+
private strategies;
|
|
11
|
+
constructor(config?: CacheConfig);
|
|
12
|
+
set(key: string, value: T, ttl?: number): void;
|
|
13
|
+
get(key: string): T | undefined;
|
|
14
|
+
has(key: string): boolean;
|
|
15
|
+
delete(key: string): boolean;
|
|
16
|
+
invalidatePattern(pattern: string): number;
|
|
17
|
+
clear(): void;
|
|
18
|
+
getStats(): CacheStats;
|
|
19
|
+
keys(): string[];
|
|
20
|
+
private isExpired;
|
|
21
|
+
private evictOne;
|
|
22
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Cache Manager
|
|
3
|
+
* Manages multiple cache instances
|
|
4
|
+
*/
|
|
5
|
+
import { Cache } from './Cache';
|
|
6
|
+
import type { CacheConfig } from './types/Cache';
|
|
7
|
+
export declare class CacheManager {
|
|
8
|
+
private static instance;
|
|
9
|
+
private caches;
|
|
10
|
+
private constructor();
|
|
11
|
+
static getInstance(): CacheManager;
|
|
12
|
+
getCache<T>(name: string, config?: CacheConfig): Cache<T>;
|
|
13
|
+
deleteCache(name: string): boolean;
|
|
14
|
+
clearAll(): void;
|
|
15
|
+
getCacheNames(): string[];
|
|
16
|
+
}
|
|
17
|
+
export declare const cacheManager: CacheManager;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Cache Statistics Tracker
|
|
3
|
+
*/
|
|
4
|
+
import type { CacheStats } from './types/Cache';
|
|
5
|
+
export declare class CacheStatsTracker {
|
|
6
|
+
private stats;
|
|
7
|
+
recordHit(): void;
|
|
8
|
+
recordMiss(): void;
|
|
9
|
+
recordEviction(): void;
|
|
10
|
+
recordExpiration(): void;
|
|
11
|
+
updateSize(size: number): void;
|
|
12
|
+
getStats(): CacheStats;
|
|
13
|
+
reset(): void;
|
|
14
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Error Handler for Cache Operations
|
|
3
|
+
*/
|
|
4
|
+
export declare class CacheError extends Error {
|
|
5
|
+
readonly code: string;
|
|
6
|
+
constructor(message: string, code: string);
|
|
7
|
+
}
|
|
8
|
+
export declare class ErrorHandler {
|
|
9
|
+
static handle(error: unknown, context: string): never;
|
|
10
|
+
static withTimeout<T>(promise: Promise<T>, timeoutMs: number, context: string): Promise<T>;
|
|
11
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* FIFO (First In First Out) Eviction Strategy
|
|
3
|
+
*/
|
|
4
|
+
import type { EvictionStrategy } from './EvictionStrategy';
|
|
5
|
+
import type { CacheEntry } from '../types/Cache';
|
|
6
|
+
export declare class FIFOStrategy<T> implements EvictionStrategy<T> {
|
|
7
|
+
findKeyToEvict(entries: Map<string, CacheEntry<T>>): string | undefined;
|
|
8
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* LFU (Least Frequently Used) Eviction Strategy
|
|
3
|
+
*/
|
|
4
|
+
import type { EvictionStrategy } from './EvictionStrategy';
|
|
5
|
+
import type { CacheEntry } from '../types/Cache';
|
|
6
|
+
export declare class LFUStrategy<T> implements EvictionStrategy<T> {
|
|
7
|
+
findKeyToEvict(entries: Map<string, CacheEntry<T>>): string | undefined;
|
|
8
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* LRU (Least Recently Used) Eviction Strategy
|
|
3
|
+
*/
|
|
4
|
+
import type { EvictionStrategy } from './EvictionStrategy';
|
|
5
|
+
import type { CacheEntry } from '../types/Cache';
|
|
6
|
+
export declare class LRUStrategy<T> implements EvictionStrategy<T> {
|
|
7
|
+
findKeyToEvict(entries: Map<string, CacheEntry<T>>): string | undefined;
|
|
8
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* TTL (Time To Live) Eviction Strategy
|
|
3
|
+
*/
|
|
4
|
+
import type { EvictionStrategy } from './EvictionStrategy';
|
|
5
|
+
import type { CacheEntry } from '../types/Cache';
|
|
6
|
+
export declare class TTLStrategy<T> implements EvictionStrategy<T> {
|
|
7
|
+
findKeyToEvict(entries: Map<string, CacheEntry<T>>): string | undefined;
|
|
8
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Cache Types
|
|
3
|
+
*/
|
|
4
|
+
export interface CacheEntry<T> {
|
|
5
|
+
value: T;
|
|
6
|
+
timestamp: number;
|
|
7
|
+
ttl: number;
|
|
8
|
+
accessCount: number;
|
|
9
|
+
lastAccess: number;
|
|
10
|
+
}
|
|
11
|
+
export interface CacheConfig {
|
|
12
|
+
maxSize?: number;
|
|
13
|
+
defaultTTL?: number;
|
|
14
|
+
onEvict?: (key: string, entry: CacheEntry<unknown>) => void;
|
|
15
|
+
onExpire?: (key: string, entry: CacheEntry<unknown>) => void;
|
|
16
|
+
}
|
|
17
|
+
export interface CacheStats {
|
|
18
|
+
size: number;
|
|
19
|
+
hits: number;
|
|
20
|
+
misses: number;
|
|
21
|
+
evictions: number;
|
|
22
|
+
expirations: number;
|
|
23
|
+
}
|
|
24
|
+
export type EvictionStrategy = 'lru' | 'lfu' | 'fifo' | 'ttl';
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* TTL Cache
|
|
3
|
+
* Time-to-live cache with automatic cleanup
|
|
4
|
+
*/
|
|
5
|
+
import { Cache } from '../domain/Cache';
|
|
6
|
+
import type { CacheConfig } from '../domain/types/Cache';
|
|
7
|
+
export declare class TTLCache<T = unknown> extends Cache<T> {
|
|
8
|
+
private cleanupInterval;
|
|
9
|
+
private isDestroyed;
|
|
10
|
+
private readonly cleanupIntervalMs;
|
|
11
|
+
constructor(config?: CacheConfig & {
|
|
12
|
+
cleanupIntervalMs?: number;
|
|
13
|
+
});
|
|
14
|
+
private startCleanup;
|
|
15
|
+
private cleanup;
|
|
16
|
+
destroy(): void;
|
|
17
|
+
set(key: string, value: T, ttl?: number): void;
|
|
18
|
+
get(key: string): T | undefined;
|
|
19
|
+
has(key: string): boolean;
|
|
20
|
+
delete(key: string): boolean;
|
|
21
|
+
clear(): void;
|
|
22
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* useCache Hook
|
|
3
|
+
*/
|
|
4
|
+
import type { CacheConfig } from '../domain/types/Cache';
|
|
5
|
+
export declare function useCache<T>(cacheName: string, config?: CacheConfig): {
|
|
6
|
+
set: (key: string, value: T, ttl?: number) => void;
|
|
7
|
+
get: (key: string) => T | undefined;
|
|
8
|
+
has: (key: string) => boolean;
|
|
9
|
+
remove: (key: string) => boolean;
|
|
10
|
+
clear: () => void;
|
|
11
|
+
invalidatePattern: (pattern: string) => number;
|
|
12
|
+
getStats: () => import("../..").CacheStats;
|
|
13
|
+
};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* useCachedValue Hook
|
|
3
|
+
*/
|
|
4
|
+
import type { CacheConfig } from '../domain/types/Cache';
|
|
5
|
+
export declare function useCachedValue<T>(cacheName: string, key: string, fetcher: () => Promise<T>, config?: CacheConfig & {
|
|
6
|
+
ttl?: number;
|
|
7
|
+
}): {
|
|
8
|
+
value: T | null | undefined;
|
|
9
|
+
isLoading: boolean;
|
|
10
|
+
error: Error | null;
|
|
11
|
+
invalidate: () => void;
|
|
12
|
+
invalidatePattern: (pattern: string) => number;
|
|
13
|
+
refetch: () => void;
|
|
14
|
+
};
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Cache Default Constants
|
|
3
|
+
* Domain layer - Default values for caching
|
|
4
|
+
*
|
|
5
|
+
* General-purpose constants for any app
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Time constants in milliseconds
|
|
9
|
+
*/
|
|
10
|
+
export declare const TIME_MS: {
|
|
11
|
+
readonly SECOND: 1000;
|
|
12
|
+
readonly MINUTE: number;
|
|
13
|
+
readonly HOUR: number;
|
|
14
|
+
readonly DAY: number;
|
|
15
|
+
readonly WEEK: number;
|
|
16
|
+
};
|
|
17
|
+
/**
|
|
18
|
+
* Default TTL values for different cache types
|
|
19
|
+
*/
|
|
20
|
+
export declare const DEFAULT_TTL: {
|
|
21
|
+
/**
|
|
22
|
+
* Very short cache (1 minute)
|
|
23
|
+
* Use for: Real-time data, live updates
|
|
24
|
+
*/
|
|
25
|
+
readonly VERY_SHORT: number;
|
|
26
|
+
/**
|
|
27
|
+
* Short cache (5 minutes)
|
|
28
|
+
* Use for: Frequently changing data
|
|
29
|
+
*/
|
|
30
|
+
readonly SHORT: number;
|
|
31
|
+
/**
|
|
32
|
+
* Medium cache (30 minutes)
|
|
33
|
+
* Use for: Moderately changing data, user-specific content
|
|
34
|
+
*/
|
|
35
|
+
readonly MEDIUM: number;
|
|
36
|
+
/**
|
|
37
|
+
* Long cache (2 hours)
|
|
38
|
+
* Use for: Slowly changing data, public content
|
|
39
|
+
*/
|
|
40
|
+
readonly LONG: number;
|
|
41
|
+
/**
|
|
42
|
+
* Very long cache (24 hours)
|
|
43
|
+
* Use for: Rarely changing data, master data
|
|
44
|
+
*/
|
|
45
|
+
readonly VERY_LONG: number;
|
|
46
|
+
/**
|
|
47
|
+
* Permanent cache (7 days)
|
|
48
|
+
* Use for: Static content, app configuration
|
|
49
|
+
*/
|
|
50
|
+
readonly PERMANENT: number;
|
|
51
|
+
};
|
|
52
|
+
/**
|
|
53
|
+
* Cache version for global invalidation
|
|
54
|
+
* Increment this to invalidate all caches across the app
|
|
55
|
+
*/
|
|
56
|
+
export declare const CACHE_VERSION = 1;
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Cached Value Entity
|
|
3
|
+
* Domain layer - Represents a cached value with TTL metadata
|
|
4
|
+
*
|
|
5
|
+
* General-purpose cache entity for any app that needs persistent caching
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Cached value with time-to-live metadata
|
|
9
|
+
* Generic type T can be any serializable data
|
|
10
|
+
*/
|
|
11
|
+
export interface CachedValue<T> {
|
|
12
|
+
/**
|
|
13
|
+
* The actual cached data
|
|
14
|
+
*/
|
|
15
|
+
value: T;
|
|
16
|
+
/**
|
|
17
|
+
* Timestamp when the value was cached (milliseconds)
|
|
18
|
+
*/
|
|
19
|
+
cachedAt: number;
|
|
20
|
+
/**
|
|
21
|
+
* Timestamp when the cache expires (milliseconds)
|
|
22
|
+
*/
|
|
23
|
+
expiresAt: number;
|
|
24
|
+
/**
|
|
25
|
+
* Optional version for cache invalidation
|
|
26
|
+
* Increment version to invalidate all caches
|
|
27
|
+
*/
|
|
28
|
+
version?: number;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Create a new cached value with TTL
|
|
32
|
+
* @param value - Data to cache
|
|
33
|
+
* @param ttlMs - Time-to-live in milliseconds
|
|
34
|
+
* @param version - Optional version number
|
|
35
|
+
*/
|
|
36
|
+
export declare function createCachedValue<T>(value: T, ttlMs: number, version?: number): CachedValue<T>;
|
|
37
|
+
/**
|
|
38
|
+
* Check if cached value is expired
|
|
39
|
+
* @param cached - Cached value to check
|
|
40
|
+
* @param currentVersion - Optional current version to check against
|
|
41
|
+
*/
|
|
42
|
+
export declare function isCacheExpired<T>(cached: CachedValue<T>, currentVersion?: number): boolean;
|
|
43
|
+
/**
|
|
44
|
+
* Get remaining TTL in milliseconds
|
|
45
|
+
* Returns 0 if expired
|
|
46
|
+
*/
|
|
47
|
+
export declare function getRemainingTTL<T>(cached: CachedValue<T>): number;
|
|
48
|
+
/**
|
|
49
|
+
* Get cache age in milliseconds
|
|
50
|
+
*/
|
|
51
|
+
export declare function getCacheAge<T>(cached: CachedValue<T>): number;
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Storage Result Entity
|
|
3
|
+
*
|
|
4
|
+
* Domain-Driven Design: Entity representing storage operation result
|
|
5
|
+
* Functional programming pattern for error handling (Result type)
|
|
6
|
+
*/
|
|
7
|
+
import type { StorageError } from '../errors/StorageError';
|
|
8
|
+
/**
|
|
9
|
+
* Storage Operation Result
|
|
10
|
+
* Success/Failure pattern for type-safe error handling
|
|
11
|
+
*/
|
|
12
|
+
export type StorageResult<T> = {
|
|
13
|
+
success: true;
|
|
14
|
+
data: T;
|
|
15
|
+
} | {
|
|
16
|
+
success: false;
|
|
17
|
+
error: StorageError;
|
|
18
|
+
fallback?: T;
|
|
19
|
+
};
|
|
20
|
+
/**
|
|
21
|
+
* Create success result
|
|
22
|
+
*/
|
|
23
|
+
export declare const success: <T>(data: T) => StorageResult<T>;
|
|
24
|
+
/**
|
|
25
|
+
* Create failure result
|
|
26
|
+
*/
|
|
27
|
+
export declare const failure: <T>(error: StorageError, fallback?: T) => StorageResult<T>;
|
|
28
|
+
/**
|
|
29
|
+
* Type guard for success result
|
|
30
|
+
*/
|
|
31
|
+
export declare const isSuccess: <T>(result: StorageResult<T>) => result is {
|
|
32
|
+
success: true;
|
|
33
|
+
data: T;
|
|
34
|
+
};
|
|
35
|
+
/**
|
|
36
|
+
* Type guard for failure result
|
|
37
|
+
*/
|
|
38
|
+
export declare const isFailure: <T>(result: StorageResult<T>) => result is {
|
|
39
|
+
success: false;
|
|
40
|
+
error: StorageError;
|
|
41
|
+
fallback?: T;
|
|
42
|
+
};
|
|
43
|
+
/**
|
|
44
|
+
* Unwrap result with default value
|
|
45
|
+
*/
|
|
46
|
+
export declare const unwrap: <T>(result: StorageResult<T>, defaultValue: T) => T;
|
|
47
|
+
/**
|
|
48
|
+
* Map result data
|
|
49
|
+
*/
|
|
50
|
+
export declare const map: <T, U>(result: StorageResult<T>, fn: (data: T) => U) => StorageResult<U>;
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Storage Error Types
|
|
3
|
+
*
|
|
4
|
+
* Domain-Driven Design: Domain errors for storage operations
|
|
5
|
+
* Typed errors for better error handling and debugging
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Base Storage Error
|
|
9
|
+
*/
|
|
10
|
+
export declare class StorageError extends Error {
|
|
11
|
+
readonly key?: string | undefined;
|
|
12
|
+
constructor(message: string, key?: string | undefined);
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Storage Read Error
|
|
16
|
+
*/
|
|
17
|
+
export declare class StorageReadError extends StorageError {
|
|
18
|
+
readonly cause?: unknown;
|
|
19
|
+
constructor(key: string, cause?: unknown);
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Storage Write Error
|
|
23
|
+
*/
|
|
24
|
+
export declare class StorageWriteError extends StorageError {
|
|
25
|
+
readonly cause?: unknown;
|
|
26
|
+
constructor(key: string, cause?: unknown);
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Storage Delete Error
|
|
30
|
+
*/
|
|
31
|
+
export declare class StorageDeleteError extends StorageError {
|
|
32
|
+
readonly cause?: unknown;
|
|
33
|
+
constructor(key: string, cause?: unknown);
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Storage Serialization Error
|
|
37
|
+
*/
|
|
38
|
+
export declare class StorageSerializationError extends StorageError {
|
|
39
|
+
readonly cause?: unknown;
|
|
40
|
+
constructor(key: string, cause?: unknown);
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Storage Deserialization Error
|
|
44
|
+
*/
|
|
45
|
+
export declare class StorageDeserializationError extends StorageError {
|
|
46
|
+
readonly cause?: unknown;
|
|
47
|
+
constructor(key: string, cause?: unknown);
|
|
48
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Store Factory
|
|
3
|
+
* Create Zustand stores with AsyncStorage persistence and actions
|
|
4
|
+
*/
|
|
5
|
+
import type { StoreApi } from 'zustand';
|
|
6
|
+
import type { StoreConfig } from '../types/Store';
|
|
7
|
+
/**
|
|
8
|
+
* Create a Zustand store with optional persistence and actions
|
|
9
|
+
*/
|
|
10
|
+
export declare function createStore<TState extends object, TActions extends object = object>(config: StoreConfig<TState, TActions>): import("zustand").UseBoundStore<StoreApi<TState & TActions>>;
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Store Types
|
|
3
|
+
* Zustand store configuration with actions support
|
|
4
|
+
*/
|
|
5
|
+
import type { StoreApi } from 'zustand';
|
|
6
|
+
/** StateStorage interface for Zustand persist middleware */
|
|
7
|
+
export interface StateStorage {
|
|
8
|
+
getItem: (name: string) => string | null | Promise<string | null>;
|
|
9
|
+
setItem: (name: string, value: string) => void | Promise<void>;
|
|
10
|
+
removeItem: (name: string) => void | Promise<void>;
|
|
11
|
+
}
|
|
12
|
+
/** Set function type for Zustand */
|
|
13
|
+
export type SetState<T> = StoreApi<T>['setState'];
|
|
14
|
+
/** Get function type for Zustand */
|
|
15
|
+
export type GetState<T> = StoreApi<T>['getState'];
|
|
16
|
+
/** Actions creator function */
|
|
17
|
+
export type ActionsCreator<TState, TActions> = (set: SetState<TState & TActions>, get: GetState<TState & TActions>) => TActions;
|
|
18
|
+
/** Store configuration */
|
|
19
|
+
export interface StoreConfig<TState extends object, TActions extends object = object> {
|
|
20
|
+
/** Unique store name (used as storage key) */
|
|
21
|
+
name: string;
|
|
22
|
+
/** Initial state */
|
|
23
|
+
initialState: TState;
|
|
24
|
+
/** Actions creator function */
|
|
25
|
+
actions?: ActionsCreator<TState, TActions>;
|
|
26
|
+
/** Enable AsyncStorage persistence */
|
|
27
|
+
persist?: boolean;
|
|
28
|
+
/** State version for migrations */
|
|
29
|
+
version?: number;
|
|
30
|
+
/** Select which state to persist */
|
|
31
|
+
partialize?: (state: TState & TActions) => Partial<TState>;
|
|
32
|
+
/** Callback after rehydration */
|
|
33
|
+
onRehydrate?: (state: TState & TActions) => void;
|
|
34
|
+
/** Migration function for version changes */
|
|
35
|
+
migrate?: (persistedState: unknown, version: number) => TState;
|
|
36
|
+
/** Custom storage adapter (required when persist is true) */
|
|
37
|
+
storage?: StateStorage;
|
|
38
|
+
}
|
|
39
|
+
/** Persisted state wrapper */
|
|
40
|
+
export interface PersistedState<T> {
|
|
41
|
+
state: T;
|
|
42
|
+
version: number;
|
|
43
|
+
}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Cache Key Generator
|
|
3
|
+
* Domain layer - Utility for generating consistent cache keys
|
|
4
|
+
*
|
|
5
|
+
* General-purpose key generation for any app
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Generate a cache key from prefix and identifier
|
|
9
|
+
* @param prefix - Cache key prefix (e.g., 'posts', 'products', 'user')
|
|
10
|
+
* @param id - Unique identifier
|
|
11
|
+
* @returns Formatted cache key
|
|
12
|
+
*
|
|
13
|
+
* @example
|
|
14
|
+
* generateCacheKey('posts', '123') // 'cache:posts:123'
|
|
15
|
+
* generateCacheKey('user', 'profile') // 'cache:user:profile'
|
|
16
|
+
*/
|
|
17
|
+
export declare function generateCacheKey(prefix: string, id: string | number): string;
|
|
18
|
+
/**
|
|
19
|
+
* Generate a cache key for a list/collection
|
|
20
|
+
* @param prefix - Cache key prefix
|
|
21
|
+
* @param params - Optional query parameters
|
|
22
|
+
*
|
|
23
|
+
* @example
|
|
24
|
+
* generateListCacheKey('posts') // 'cache:posts:list'
|
|
25
|
+
* generateListCacheKey('posts', { page: 1 }) // 'cache:posts:list:page=1'
|
|
26
|
+
*/
|
|
27
|
+
export declare function generateListCacheKey(prefix: string, params?: Record<string, string | number>): string;
|
|
28
|
+
/**
|
|
29
|
+
* Parse a cache key to extract prefix and id
|
|
30
|
+
* @param key - Cache key to parse
|
|
31
|
+
* @returns Object with prefix and id, or null if invalid
|
|
32
|
+
*/
|
|
33
|
+
export declare function parseCacheKey(key: string): {
|
|
34
|
+
prefix: string;
|
|
35
|
+
id: string;
|
|
36
|
+
} | null;
|
|
37
|
+
/**
|
|
38
|
+
* Check if a key is a cache key
|
|
39
|
+
*/
|
|
40
|
+
export declare function isCacheKey(key: string): boolean;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Runtime validation utilities for storage operations
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* Check if parsed value is a valid object (not null, not array)
|
|
6
|
+
*/
|
|
7
|
+
export declare function isValidObject(value: unknown): value is Record<string, unknown>;
|
|
8
|
+
/**
|
|
9
|
+
* Check if parsed value is a valid array
|
|
10
|
+
*/
|
|
11
|
+
export declare function isValidArray(value: unknown): value is unknown[];
|
|
12
|
+
/**
|
|
13
|
+
* Validate cached value structure
|
|
14
|
+
*/
|
|
15
|
+
export declare function isValidCachedValue(value: unknown): boolean;
|
|
16
|
+
/**
|
|
17
|
+
* Validate calendar event structure
|
|
18
|
+
*/
|
|
19
|
+
export declare function isValidCalendarEvent(value: unknown): boolean;
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Storage Key Value Object
|
|
3
|
+
*
|
|
4
|
+
* Domain-Driven Design: Value Object for storage keys
|
|
5
|
+
* Ensures type safety and prevents invalid key usage
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Storage key with dynamic suffix
|
|
9
|
+
*/
|
|
10
|
+
export type DynamicStorageKey = {
|
|
11
|
+
base: string;
|
|
12
|
+
suffix: string;
|
|
13
|
+
};
|
|
14
|
+
/**
|
|
15
|
+
* Helper to create user-specific storage key
|
|
16
|
+
*
|
|
17
|
+
* @param baseKey Base storage key
|
|
18
|
+
* @param userId User identifier
|
|
19
|
+
* @returns User-specific key
|
|
20
|
+
*/
|
|
21
|
+
export declare const createUserKey: (baseKey: string, userId: string) => string;
|
|
22
|
+
/**
|
|
23
|
+
* Helper to create app-specific storage key
|
|
24
|
+
*
|
|
25
|
+
* @param baseKey Base storage key
|
|
26
|
+
* @param appName App identifier
|
|
27
|
+
* @returns App-specific key
|
|
28
|
+
*/
|
|
29
|
+
export declare const createAppKey: (baseKey: string, appName: string) => string;
|
|
30
|
+
/**
|
|
31
|
+
* Helper to create namespaced storage key
|
|
32
|
+
*
|
|
33
|
+
* @param namespace Key namespace
|
|
34
|
+
* @param key Specific key
|
|
35
|
+
* @returns Namespaced key
|
|
36
|
+
*/
|
|
37
|
+
export declare const createNamespacedKey: (namespace: string, key: string) => string;
|
|
38
|
+
/**
|
|
39
|
+
* Common storage keys for cross-app usage
|
|
40
|
+
* Generic keys that can be used across multiple applications
|
|
41
|
+
*/
|
|
42
|
+
export declare enum StorageKey {
|
|
43
|
+
USER_PREFERENCES = "@user_preferences",
|
|
44
|
+
APP_SETTINGS = "@app_settings",
|
|
45
|
+
LANGUAGE = "@language",
|
|
46
|
+
UI_PREFERENCES = "@ui_preferences",
|
|
47
|
+
QUERY_CACHE = "@query_cache",
|
|
48
|
+
DATA_CACHE = "@data_cache"
|
|
49
|
+
}
|