export interface WeightRange {
  min: number;
  max: number;
}

export interface Cost {
  weightRange: WeightRange;
  cost_first: number;
  cost_rest: number;
}

export interface Shipper {
  _id: number;
  name: string;
  description: string;
  costs: Cost[];
  deliveryType: "Standard" | "SameDay" | "Express";
  deliveryTime: number;
  deleted: boolean;
  createdAt: string;
  updatedAt: string;
}

export interface Pager {
  page: number;
  limit: number;
  totalItems: number;
  totalPages: number;
  prevPage: boolean | null;
  nextPage: string | null;
}

export interface CreateShipper {
  name: string;
  description: string;
  costs: Cost[];
  deliveryTime: number;
  deliveryType?: "Standard" | "SameDay" | "Express";
}

export interface ShipmentResponse {
  status: number;
  success: boolean;
  results: {
    pager: Pager;
    shipper: Shipper[];
  };
}
