/** A call-center entry */ export interface Clinic { /** Display name of the clinic. Also used for navigating */ name: string; contactNumber: string; lastModified: Date; /** base64 encoded JPEG data */ logo: string; requiresIntake: boolean; zoomNumber?: string; sipNumber?: string; description: string; type: 'Amwell' | 'Zoom Call'; } export interface Sensor { type: BuiltinSensorTypes | string; name: string; /** base64-encoded JPEG */ logo: string | null; } export interface User { firstName: string; lastName: string; email: string; phone: string; } export interface LoginInfo { password: string; email: string; } export interface PatientProfile { patientName: string; dateOfBirth: Date; } export interface SignUpInfo extends User { password: string; confirmPassword: string; } export interface UpdateUserInfo { password: string; newFirstName?: string; newLastName?: string; newDob?: string; newEmail?: string; newGender?: string; newPhone?: string; } export interface IntakeData { info?: { firstName: string; lastName: string; dateOfBirth: Date; gender: string; cardId: string; }; insurance?: { status: 'yes' | 'no' | 'unspecified'; id: string; guestVisitNotes: string; }; physique?: { height: string; heightUnit: 'cm' | 'feet' | 'inch'; weight: string; weightUnit: 'kg' | 'lbs'; }; sessionid?: string; } export interface HealthHistoryData { allergies: string; medications: string; conditions: string; medicalHistory: string; } export interface PdfDataSummary { patientVisitSummaries?: PdfFileData[]; patientPrescriptions?: PdfFileData[]; } export interface PdfFileData { filename: string; providerName: string; clinicName: string; timestamp: string; uri: string; } export interface PrescriptionText { patientDetails?: PrescriptionTextData[]; prescriptionNotes?: PrescriptionTextData[]; instructionNotes?: PrescriptionTextData[]; } export interface PrescriptionTextData { text: string; alignment: string; } export interface MeasurementFileDataSummary { stethoscope?: StethoscopeFileData[]; camera?: ImageFileData[]; otoscope?: ImageFileData[]; digitalCamera?: ImageFileData[]; } export interface ImageFileData { image: string; timestamp: string; uri: string; } export interface StethoscopeFileData { name: string; timestamp: string; uri: string; } export declare type SensorState = 'Disconnected' | 'Scanning' | 'Connected' | 'Active' | 'Connecting' | 'Setup'; export interface Location { latitude: number; longitude: number; } export interface MeasurementData { state?: SensorState; status?: number; type: string; } export interface WeightScaleData extends MeasurementDataWithTimestamp { weight: number; unit: 'kg' | 'lbs'; } export interface MeasurementDataWithTimestamp extends MeasurementData { time: string; timecomparitor: number; timestamp: string; } export interface BloodPressureMeasurementData extends MeasurementDataWithTimestamp { heartrate: number; highpressure: number; lowpressure: number; severity: string; } export interface ThermometerMeasurementData extends MeasurementDataWithTimestamp { temperature: string; } export interface CameraMeasurementData extends MeasurementData { } export interface OtoscopeImageData extends MeasurementData { imagecount: number; } export interface SingleMeasurementData extends MeasurementData { data: string; label: string; severity: string; status: number; unit: string; } export interface PulseOximeterData extends MeasurementDataWithTimestamp { PI: number; oxygen: number; plethysmograph?: number[]; respirationRate?: number; pulse: number; rssi?: number; severity: string; } export interface GlucometerData extends MeasurementDataWithTimestamp { unit: number; glucometerData: string; stringUnit?: string; } export interface StethoscopeMeasurementData extends MeasurementDataWithTimestamp { recordingtype: string; recordingname: string; duration: number; } /** Built-in sensors and their measurement data schemas */ export interface SensorTypes { 'Weight Scale': WeightScaleData; 'Thermometer': ThermometerMeasurementData; 'Glucometer': GlucometerData; 'Blood Pressure Monitor': BloodPressureMeasurementData; 'Camera': CameraMeasurementData; 'Otoscope': OtoscopeImageData; 'Pulse Oximeter': PulseOximeterData; 'Stethoscope': StethoscopeMeasurementData; } export interface MeasurementWithOptionalTimestamp extends MeasurementData { time: string; timecomparitor: number; timestamp?: string; } export interface DocumentData { type: string; url: string; source: string; timestamp?: string; } export interface GenericMeasurement extends MeasurementWithOptionalTimestamp { name: string; value: string; units: string; device: string; } export interface BloodPressureMeasurement extends MeasurementWithOptionalTimestamp { pulse: string; highPressure: string; lowPressure: string; } export interface PulseOxMeasurement extends MeasurementWithOptionalTimestamp { perfusion: string; oxygen: string; respirationRate?: string; pulse: string; } export interface ThermometerMeasurement extends MeasurementWithOptionalTimestamp { temperature: string; unit: 'celsius' | 'fahrenheit'; } export interface GlucometerMeasurement extends MeasurementWithOptionalTimestamp { bloodSugar: string; unit: 'mg/dL' | 'mmol/L'; } export interface WeightScaleMeaurement extends MeasurementWithOptionalTimestamp { weight: string; unit: 'lbs' | 'kg'; bmi?: string; } export interface SpirometerMeasurement extends MeasurementWithOptionalTimestamp { label: 'PEF' | 'FVC' | 'FEF2575' | 'FEV6' | 'FEV1' | 'FEV1_FVC'; unit: 'L/m' | 'L' | '%'; value: string; } export interface MultifunctionMeasurement extends MeasurementWithOptionalTimestamp { label: 'BLOOD_SUGAR' | 'KETONE' | 'LACTATE' | 'CHOLESTEROL' | 'URIC_ACID'; unit: 'mg/dL' | 'mmol/L'; value: string; } /** Screens that the page can navigate to using the navigate() command. */ export declare type ScreenName = 'login' | 'signup' | 'callcenter' | 'clinic' | 'wellness' | 'sensors' | 'summary' | 'newSession' | 'switchProfile' | 'sensor' | 'logout'; export declare type BuiltinSensorTypes = keyof SensorTypes; export declare type SensorMeasurementData = SensorTypes[keyof SensorTypes]; //# sourceMappingURL=types.d.ts.map