import { z } from 'zod';

/**
 * Feature flags for the stock trading application
 */
export const featuresSchema = z.object({
  // Trading features
  realtime: z.boolean().default(true),
  backtesting: z.boolean().default(true),
  paperTrading: z.boolean().default(true),
  autoTrading: z.boolean().default(false),

  // Data features
  historicalData: z.boolean().default(true),
  realtimeData: z.boolean().default(true),
  fundamentalData: z.boolean().default(true),
  newsAnalysis: z.boolean().default(false),

  // Notification features
  notifications: z.boolean().default(false),
  emailAlerts: z.boolean().default(false),
  smsAlerts: z.boolean().default(false),
  webhookAlerts: z.boolean().default(false),

  // Analysis features
  technicalAnalysis: z.boolean().default(true),
  sentimentAnalysis: z.boolean().default(false),
  patternRecognition: z.boolean().default(false),

  // Risk management
  riskManagement: z.boolean().default(true),
  positionSizing: z.boolean().default(true),
  stopLoss: z.boolean().default(true),
  takeProfit: z.boolean().default(true),
});
