export type RandomUserGender = "male" | "female"; export interface RandomUserName { title: string; first: string; last: string; } export interface RandomUserStreet { number: number; name: string; } export interface RandomUserCoordinates { latitude: string; longitude: string; } export interface RandomUserTimezone { offset: string; description: string; } export interface RandomUserLocation { street: RandomUserStreet; city: string; state: string; country: string; postcode: string | number; coordinates: RandomUserCoordinates; timezone: RandomUserTimezone; } export interface RandomUserLogin { uuid: string; username: string; password: string; salt: string; md5: string; sha1: string; sha256: string; } export interface RandomUserDateOfBirth { date: string; age: number; } export interface RandomUserRegistered { date: string; age: number; } export interface RandomUserId { name: string; value: string | null; } export interface RandomUserPicture { large: string; medium: string; thumbnail: string; } export interface RandomUser { gender: RandomUserGender; name: RandomUserName; location: RandomUserLocation; email: string; login: RandomUserLogin; dob: RandomUserDateOfBirth; registered: RandomUserRegistered; phone: string; cell: string; id: RandomUserId; picture: RandomUserPicture; nat: string; } export interface RandomUserApiInfo { seed: string; results: number; page: number; version: string; } export interface RandomUserApiResponse { results: RandomUser[]; info: RandomUserApiInfo; } export type RandomUserPictureSize = keyof RandomUserPicture;