export interface ProfitLossFilters {
  from?: string;
  to?: string;
  product_sku?: string;
  category_name?: string;
  min_profit_loss_grams?: number;
  max_profit_loss_grams?: number;
  min_profit_loss_tomans?: number;
  max_profit_loss_tomans?: number;
}

export interface ProfitLossPeriod {
  from: string | null;
  to: string | null;
}

export interface ProductBreakdown {
  product_id: number;
  product_name: string;
  product_sku: string;
  profit_loss_grams: number;
  profit_loss_tomans: number;
  total_quantity: number;
  order_items_count: number;
}

export interface CategoryBreakdown {
  category_id: number;
  category_name: string;
  profit_loss_grams: number;
  profit_loss_tomans: number;
  total_quantity: number;
  products_count: number;
  order_items_count: number;
}

export interface ProfitLossResponse {
  profit_loss: {
    profit_loss_grams: number;
    profit_loss_tomans: number;
    period: ProfitLossPeriod;
    product_breakdown: ProductBreakdown[];
    category_breakdown: CategoryBreakdown[];
  };
}
