import { ApiResponse } from './api-response.interface';

export interface ApiPaginationMetaLink {
  url: string | null;
  label: string;
  active: boolean;
}

export interface ApiPaginationMeta {
  current_page: number;
  from: number | null;
  last_page: number;
  links: ApiPaginationMetaLink[];
  path: string;
  per_page: number;
  to: number | null;
  total: number;
}

export interface ApiPaginationLinks {
  first: string;
  last: string;
  prev: string | null;
  next: string | null;
}

export interface ApiPaginatedResponse<T> extends ApiResponse<T> {
  meta: ApiPaginationMeta;
  links: ApiPaginationLinks;
}
