import { isNumberFinite, isNumber } from "common/utils"; export interface UserMediaAdvancement { id: number; // Id of the media mediaId?: number; // Percent of advancement in the media percent?: number; // "Number of second of advancement in the media time?: number; // Number of time this media has been read count?: number; }; export function isUserMediaAdvancement(data: any): data is UserMediaAdvancement { if (!isNumberFinite(data.id)) { return false; } if (!isNumberFinite(data.mediaId)) { return false; } if (!isNumber(data.percent)) { return false; } if (!isNumberFinite(data.time)) { return false; } if (!isNumberFinite(data.count)) { return false; } return true; }