export type AdminReportDailyProfitRow = {
  business_date: string;
  total_bet_minor: number;
  total_payout_minor: number;
  approx_house_gross_minor: number;
};

export type AdminReportPlayerWinLossRow = {
  player_id: number;
  agent_node_id?: number | null;
  agent_code?: string | null;
  agent_name?: string | null;
  username: string;
  total_bet_minor: number;
  total_payout_minor: number;
  net_win_loss_minor: number;
};

export type AdminReportPlayDimensionRow = {
  play_code: string;
  dimension: number;
  total_bet_minor: number;
  total_payout_minor: number;
  approx_house_gross_minor: number;
};

export type AdminReportListData<T> = {
  items: T[];
  meta: {
    current_page: number;
    per_page: number;
    total: number;
    last_page: number;
  };
  currency_code?: string | null;
  disclaimer?: string | null;
};

export type AdminReportQueryParams = {
  page?: number;
  per_page?: number;
  date_from?: string;
  date_to?: string;
  player_id?: number;
  play_code?: string;
  agent_node_id?: number;
};
