/*
 * File: index.ts
 * Description: Settings module exports
 * Design & Developed by Tech4Biz Solutions
 * Copyright (c) Spurrin Innovations. All rights reserved.
 */

// ============================================================================
// SCREENS
// ============================================================================

export { default as SettingsScreen } from './screens/SettingsScreen';

// ============================================================================
// NAVIGATION
// ============================================================================

export {
  SettingsStackNavigator,
  SettingsStackParamList,
  SettingsNavigationProp,
  SettingsScreenProps,
  ProfileEditScreenProps,
  SecuritySettingsScreenProps,
  NotificationSettingsScreenProps,
  ClinicalPreferencesScreenProps,
  PrivacySettingsScreenProps,
  AccessibilitySettingsScreenProps,
  AboutScreenProps,
  HelpSupportScreenProps,
  navigateToSettings,
  navigateToProfileEdit,
  navigateToSecuritySettings,
  navigateToNotificationSettings,
  navigateToClinicalPreferences,
  navigateToPrivacySettings,
  navigateToAccessibilitySettings,
  navigateToAbout,
  navigateToHelpSupport,
  goBack,
  resetToSettings,
  replaceWithSettings,
  navigateToSettingsAndClearStack,
  navigateToProfileEditAndClearStack,
  navigateToSecuritySettingsAndClearStack,
} from './navigation';

// ============================================================================
// COMPONENTS
// ============================================================================

export { default as SettingsHeader } from './components/SettingsHeader';
export { default as ProfileCard } from './components/ProfileCard';
export { default as SettingsSectionComponent } from './components/SettingsSectionComponent';
export { default as SettingsItemComponent } from './components/SettingsItemComponent';

// ============================================================================
// REDUX
// ============================================================================

export {
  fetchUserProfile,
  updateUserProfile,
  fetchUserPreferences,
  updateUserPreferences,
  clearError,
  setProfileValidation,
  setPreferencesValidation,
  updateProfileField,
  updatePreferenceField,
  resetProfile,
  resetPreferences,
  clearSettingsCache,
} from './redux/settingsSlice';

/*
 * End of File: index.ts
 * Design & Developed by Tech4Biz Solutions
 * Copyright (c) Spurrin Innovations. All rights reserved.
 */ 