import { UserRole } from '../enums';

export interface JwtPayload {
  sub: string;
  email: string;
  role: UserRole;
  iat?: number;
  exp?: number;
}

export interface JwtRefreshPayload {
  sub: string;
  iat?: number;
  exp?: number;
}

export interface ApiResponse<T = any> {
  data: T;
  message: string;
  statusCode: number;
}

export interface PaginatedResponse<T = any> {
  data: T[];
  total: number;
  page: number;
  limit: number;
  totalPages: number;
  message: string;
  statusCode: number;
}

export interface PaginationOptions {
  page: number;
  limit: number;
}
