/**
 * Custom Hooks
 * Barrel export for all custom hooks
 */

// ML Analysis Hooks
export { useMLAnalysis, useQuickSignals, DEFAULT_SYMBOLS } from './useMLAnalysis';

// Chart Overlay Hooks
export { useMlOverlayData } from './charts/useMlOverlayData';
export type { UseMlOverlayDataOptions, UseMlOverlayDataResult } from './charts/useMlOverlayData';

export { usePredictions } from './charts/usePredictions';
export type { UsePredictionsOptions, UsePredictionsResult, PredictionResponse } from './charts/usePredictions';

export { useSignals } from './charts/useSignals';
export type {
  UseSignalsOptions,
  UseSignalsResult,
  TradingSignal,
  SignalsResponse,
  SignalDirection,
  SignalStrength,
} from './charts/useSignals';

// Composite Chart Overlays Hook
export { useChartOverlays } from './charts/useChartOverlays';
export type {
  UseChartOverlaysOptions,
  UseChartOverlaysResult,
  ChartOverlayData,
} from './charts/useChartOverlays';

// Feature Flags
export { useFeatureFlags } from './useFeatureFlags';

// Payment Hooks (OQI-005)
export {
  useInvoices,
  useInvoice,
  useDownloadInvoice,
  usePaymentMethods,
  useAddPaymentMethod,
  useRemovePaymentMethod,
  useSetDefaultPaymentMethod,
  useRefunds,
  useRefund,
  useRefundEligibility,
  useRequestRefund,
  useCancelRefund,
  useBillingData,
  paymentKeys,
} from './usePayments';
export type { UseInvoicesOptions, UseRefundsOptions } from './usePayments';
