import {z} from 'zod' export type ServiceLocationPlaceOfServiceEnum = 'Ambulance - Air or Water' | 'Ambulance - Land' | 'Ambulatory Surgical Center' | 'Assisted Living Facility' | 'Birthing Center' | 'Community Mental Health Center' | 'Comprehensive Inpatient Rehabilitation Facility' | 'Comprehensive Outpatient Rehabilitation Facility' | 'Custodial Care Facility' | 'Emergency Room - Hospital' | 'End-Stage Renal Disease Treatment Facility' | 'Federally Qualified Health Center' | 'Group Home' | 'Home' | 'Homeless Shelter' | 'Hospice' | 'Independent Clinic' | 'Independent Laboratory' | 'Indian Health ServiceFree-standing Facility' | 'Indian Health ServiceProvider-based Facility' | 'Inpatient Hospital' | 'Inpatient Psychiatric Facility' | 'Intermediate Care Facility/Individuals with Intellectual Disabilities' | 'Mass Immunization Center' | 'Military Treatment Facility' | 'Mobile Unit' | 'Non-residential Substance Abuse Treatment Facility' | 'Nursing Facility' | 'Off Campus Outpatient-Hospital' | 'Office' | 'On Campus-Outpatient Hospital' | 'Other Place of Service' | 'Outreach Site/Street' | 'Pharmacy' | 'Place of Employment-Worksite' | 'Prison/Correctional Facility' | 'Programs of All-Inclusive Care for the Elderly (PACE) Center' | 'Psychiatric Facility-Partial Hospitalization' | 'Psychiatric Residential Treatment Center' | 'Public Health Clinic' | 'Residential Substance Abuse Treatment Facility' | 'Rural Health Clinic' | 'School' | 'Skilled Nursing Facility' | 'Telehealth Provided Other than in Patient’s Home' | 'Telehealth Provided in Patient’s Home' | 'Temporary Lodging' | 'Tribal 638Free-standingFacility' | 'Tribal 638Provider-basedFacility' | 'Urgent Care Facility' | 'Walk-in Retail Health Clinic'; export type ServiceLocationStatusEnum = 'active' | 'inactive' | 'suspended'; export type TimezoneEnum = 'Africa/Abidjan' | 'Africa/Accra' | 'Africa/Addis_Ababa' | 'Africa/Algiers' | 'Africa/Asmara' | 'Africa/Bamako' | 'Africa/Bangui' | 'Africa/Banjul' | 'Africa/Bissau' | 'Africa/Blantyre' | 'Africa/Brazzaville' | 'Africa/Bujumbura' | 'Africa/Cairo' | 'Africa/Casablanca' | 'Africa/Ceuta' | 'Africa/Conakry' | 'Africa/Dakar' | 'Africa/Dar_es_Salaam' | 'Africa/Djibouti' | 'Africa/Douala' | 'Africa/El_Aaiun' | 'Africa/Freetown' | 'Africa/Gaborone' | 'Africa/Harare' | 'Africa/Johannesburg' | 'Africa/Juba' | 'Africa/Kampala' | 'Africa/Khartoum' | 'Africa/Kigali' | 'Africa/Kinshasa' | 'Africa/Lagos' | 'Africa/Libreville' | 'Africa/Lome' | 'Africa/Luanda' | 'Africa/Lubumbashi' | 'Africa/Lusaka' | 'Africa/Malabo' | 'Africa/Maputo' | 'Africa/Maseru' | 'Africa/Mbabane' | 'Africa/Mogadishu' | 'Africa/Monrovia' | 'Africa/Nairobi' | 'Africa/Ndjamena' | 'Africa/Niamey' | 'Africa/Nouakchott' | 'Africa/Ouagadougou' | 'Africa/Porto-Novo' | 'Africa/Sao_Tome' | 'Africa/Tripoli' | 'Africa/Tunis' | 'Africa/Windhoek' | 'America/Adak' | 'America/Anchorage' | 'America/Anguilla' | 'America/Antigua' | 'America/Araguaina' | 'America/Argentina/Buenos_Aires' | 'America/Argentina/Catamarca' | 'America/Argentina/Cordoba' | 'America/Argentina/Jujuy' | 'America/Argentina/La_Rioja' | 'America/Argentina/Mendoza' | 'America/Argentina/Rio_Gallegos' | 'America/Argentina/Salta' | 'America/Argentina/San_Juan' | 'America/Argentina/San_Luis' | 'America/Argentina/Tucuman' | 'America/Argentina/Ushuaia' | 'America/Aruba' | 'America/Asuncion' | 'America/Atikokan' | 'America/Bahia' | 'America/Bahia_Banderas' | 'America/Barbados' | 'America/Belem' | 'America/Belize' | 'America/Blanc-Sablon' | 'America/Boa_Vista' | 'America/Bogota' | 'America/Boise' | 'America/Cambridge_Bay' | 'America/Campo_Grande' | 'America/Cancun' | 'America/Caracas' | 'America/Cayenne' | 'America/Cayman' | 'America/Chicago' | 'America/Chihuahua' | 'America/Ciudad_Juarez' | 'America/Costa_Rica' | 'America/Creston' | 'America/Cuiaba' | 'America/Curacao' | 'America/Danmarkshavn' | 'America/Dawson' | 'America/Dawson_Creek' | 'America/Denver' | 'America/Detroit' | 'America/Dominica' | 'America/Edmonton' | 'America/Eirunepe' | 'America/El_Salvador' | 'America/Fort_Nelson' | 'America/Fortaleza' | 'America/Glace_Bay' | 'America/Goose_Bay' | 'America/Grand_Turk' | 'America/Grenada' | 'America/Guadeloupe' | 'America/Guatemala' | 'America/Guayaquil' | 'America/Guyana' | 'America/Halifax' | 'America/Havana' | 'America/Hermosillo' | 'America/Indiana/Indianapolis' | 'America/Indiana/Knox' | 'America/Indiana/Marengo' | 'America/Indiana/Petersburg' | 'America/Indiana/Tell_City' | 'America/Indiana/Vevay' | 'America/Indiana/Vincennes' | 'America/Indiana/Winamac' | 'America/Inuvik' | 'America/Iqaluit' | 'America/Jamaica' | 'America/Juneau' | 'America/Kentucky/Louisville' | 'America/Kentucky/Monticello' | 'America/Kralendijk' | 'America/La_Paz' | 'America/Lima' | 'America/Los_Angeles' | 'America/Lower_Princes' | 'America/Maceio' | 'America/Managua' | 'America/Manaus' | 'America/Marigot' | 'America/Martinique' | 'America/Matamoros' | 'America/Mazatlan' | 'America/Menominee' | 'America/Merida' | 'America/Metlakatla' | 'America/Mexico_City' | 'America/Miquelon' | 'America/Moncton' | 'America/Monterrey' | 'America/Montevideo' | 'America/Montserrat' | 'America/Nassau' | 'America/New_York' | 'America/Nome' | 'America/Noronha' | 'America/North_Dakota/Beulah' | 'America/North_Dakota/Center' | 'America/North_Dakota/New_Salem' | 'America/Nuuk' | 'America/Ojinaga' | 'America/Panama' | 'America/Paramaribo' | 'America/Phoenix' | 'America/Port-au-Prince' | 'America/Port_of_Spain' | 'America/Porto_Velho' | 'America/Puerto_Rico' | 'America/Punta_Arenas' | 'America/Rankin_Inlet' | 'America/Recife' | 'America/Regina' | 'America/Resolute' | 'America/Rio_Branco' | 'America/Santarem' | 'America/Santiago' | 'America/Santo_Domingo' | 'America/Sao_Paulo' | 'America/Scoresbysund' | 'America/Sitka' | 'America/St_Barthelemy' | 'America/St_Johns' | 'America/St_Kitts' | 'America/St_Lucia' | 'America/St_Thomas' | 'America/St_Vincent' | 'America/Swift_Current' | 'America/Tegucigalpa' | 'America/Thule' | 'America/Tijuana' | 'America/Toronto' | 'America/Tortola' | 'America/Vancouver' | 'America/Whitehorse' | 'America/Winnipeg' | 'America/Yakutat' | 'Antarctica/Casey' | 'Antarctica/Davis' | 'Antarctica/DumontDUrville' | 'Antarctica/Macquarie' | 'Antarctica/Mawson' | 'Antarctica/McMurdo' | 'Antarctica/Palmer' | 'Antarctica/Rothera' | 'Antarctica/Syowa' | 'Antarctica/Troll' | 'Antarctica/Vostok' | 'Arctic/Longyearbyen' | 'Asia/Aden' | 'Asia/Almaty' | 'Asia/Amman' | 'Asia/Anadyr' | 'Asia/Aqtau' | 'Asia/Aqtobe' | 'Asia/Ashgabat' | 'Asia/Atyrau' | 'Asia/Baghdad' | 'Asia/Bahrain' | 'Asia/Baku' | 'Asia/Bangkok' | 'Asia/Barnaul' | 'Asia/Beirut' | 'Asia/Bishkek' | 'Asia/Brunei' | 'Asia/Chita' | 'Asia/Choibalsan' | 'Asia/Colombo' | 'Asia/Damascus' | 'Asia/Dhaka' | 'Asia/Dili' | 'Asia/Dubai' | 'Asia/Dushanbe' | 'Asia/Famagusta' | 'Asia/Gaza' | 'Asia/Hebron' | 'Asia/Ho_Chi_Minh' | 'Asia/Hong_Kong' | 'Asia/Hovd' | 'Asia/Irkutsk' | 'Asia/Jakarta' | 'Asia/Jayapura' | 'Asia/Jerusalem' | 'Asia/Kabul' | 'Asia/Kamchatka' | 'Asia/Karachi' | 'Asia/Kathmandu' | 'Asia/Khandyga' | 'Asia/Kolkata' | 'Asia/Krasnoyarsk' | 'Asia/Kuala_Lumpur' | 'Asia/Kuching' | 'Asia/Kuwait' | 'Asia/Macau' | 'Asia/Magadan' | 'Asia/Makassar' | 'Asia/Manila' | 'Asia/Muscat' | 'Asia/Nicosia' | 'Asia/Novokuznetsk' | 'Asia/Novosibirsk' | 'Asia/Omsk' | 'Asia/Oral' | 'Asia/Phnom_Penh' | 'Asia/Pontianak' | 'Asia/Pyongyang' | 'Asia/Qatar' | 'Asia/Qostanay' | 'Asia/Qyzylorda' | 'Asia/Riyadh' | 'Asia/Sakhalin' | 'Asia/Samarkand' | 'Asia/Seoul' | 'Asia/Shanghai' | 'Asia/Singapore' | 'Asia/Srednekolymsk' | 'Asia/Taipei' | 'Asia/Tashkent' | 'Asia/Tbilisi' | 'Asia/Tehran' | 'Asia/Thimphu' | 'Asia/Tokyo' | 'Asia/Tomsk' | 'Asia/Ulaanbaatar' | 'Asia/Urumqi' | 'Asia/Ust-Nera' | 'Asia/Vientiane' | 'Asia/Vladivostok' | 'Asia/Yakutsk' | 'Asia/Yangon' | 'Asia/Yekaterinburg' | 'Asia/Yerevan' | 'Atlantic/Azores' | 'Atlantic/Bermuda' | 'Atlantic/Canary' | 'Atlantic/Cape_Verde' | 'Atlantic/Faroe' | 'Atlantic/Madeira' | 'Atlantic/Reykjavik' | 'Atlantic/South_Georgia' | 'Atlantic/St_Helena' | 'Atlantic/Stanley' | 'Australia/Adelaide' | 'Australia/Brisbane' | 'Australia/Broken_Hill' | 'Australia/Darwin' | 'Australia/Eucla' | 'Australia/Hobart' | 'Australia/Lindeman' | 'Australia/Lord_Howe' | 'Australia/Melbourne' | 'Australia/Perth' | 'Australia/Sydney' | 'Canada/Atlantic' | 'Canada/Central' | 'Canada/Eastern' | 'Canada/Mountain' | 'Canada/Newfoundland' | 'Canada/Pacific' | 'Europe/Amsterdam' | 'Europe/Andorra' | 'Europe/Astrakhan' | 'Europe/Athens' | 'Europe/Belgrade' | 'Europe/Berlin' | 'Europe/Bratislava' | 'Europe/Brussels' | 'Europe/Bucharest' | 'Europe/Budapest' | 'Europe/Busingen' | 'Europe/Chisinau' | 'Europe/Copenhagen' | 'Europe/Dublin' | 'Europe/Gibraltar' | 'Europe/Guernsey' | 'Europe/Helsinki' | 'Europe/Isle_of_Man' | 'Europe/Istanbul' | 'Europe/Jersey' | 'Europe/Kaliningrad' | 'Europe/Kirov' | 'Europe/Kyiv' | 'Europe/Lisbon' | 'Europe/Ljubljana' | 'Europe/London' | 'Europe/Luxembourg' | 'Europe/Madrid' | 'Europe/Malta' | 'Europe/Mariehamn' | 'Europe/Minsk' | 'Europe/Monaco' | 'Europe/Moscow' | 'Europe/Oslo' | 'Europe/Paris' | 'Europe/Podgorica' | 'Europe/Prague' | 'Europe/Riga' | 'Europe/Rome' | 'Europe/Samara' | 'Europe/San_Marino' | 'Europe/Sarajevo' | 'Europe/Saratov' | 'Europe/Simferopol' | 'Europe/Skopje' | 'Europe/Sofia' | 'Europe/Stockholm' | 'Europe/Tallinn' | 'Europe/Tirane' | 'Europe/Ulyanovsk' | 'Europe/Vaduz' | 'Europe/Vatican' | 'Europe/Vienna' | 'Europe/Vilnius' | 'Europe/Volgograd' | 'Europe/Warsaw' | 'Europe/Zagreb' | 'Europe/Zurich' | 'GMT' | 'Indian/Antananarivo' | 'Indian/Chagos' | 'Indian/Christmas' | 'Indian/Cocos' | 'Indian/Comoro' | 'Indian/Kerguelen' | 'Indian/Mahe' | 'Indian/Maldives' | 'Indian/Mauritius' | 'Indian/Mayotte' | 'Indian/Reunion' | 'Pacific/Apia' | 'Pacific/Auckland' | 'Pacific/Bougainville' | 'Pacific/Chatham' | 'Pacific/Chuuk' | 'Pacific/Easter' | 'Pacific/Efate' | 'Pacific/Fakaofo' | 'Pacific/Fiji' | 'Pacific/Funafuti' | 'Pacific/Galapagos' | 'Pacific/Gambier' | 'Pacific/Guadalcanal' | 'Pacific/Guam' | 'Pacific/Honolulu' | 'Pacific/Kanton' | 'Pacific/Kiritimati' | 'Pacific/Kosrae' | 'Pacific/Kwajalein' | 'Pacific/Majuro' | 'Pacific/Marquesas' | 'Pacific/Midway' | 'Pacific/Nauru' | 'Pacific/Niue' | 'Pacific/Norfolk' | 'Pacific/Noumea' | 'Pacific/Pago_Pago' | 'Pacific/Palau' | 'Pacific/Pitcairn' | 'Pacific/Pohnpei' | 'Pacific/Port_Moresby' | 'Pacific/Rarotonga' | 'Pacific/Saipan' | 'Pacific/Tahiti' | 'Pacific/Tarawa' | 'Pacific/Tongatapu' | 'Pacific/Wake' | 'Pacific/Wallis' | 'US/Alaska' | 'US/Arizona' | 'US/Central' | 'US/Eastern' | 'US/Hawaii' | 'US/Mountain' | 'US/Pacific' | 'UTC'; export type BlankEnum = ''; export type NullEnum = unknown; export type ServiceLocation = {address_line1: string, address_line2?: string | undefined, city?: string | undefined, created_date?: (string | null) | undefined, deleted_date?: (string | null) | undefined, email?: (string | null) | undefined, fax?: (string | null) | undefined, id?: number | undefined, is_primary?: boolean | undefined, name: string, phone?: (string | null) | undefined, place_of_service?: ServiceLocationPlaceOfServiceEnum | undefined, place_of_service_code?: number | undefined, practice: number, state: string, status?: ServiceLocationStatusEnum | undefined, timezone?: (TimezoneEnum | BlankEnum | NullEnum) | undefined, zip?: string | undefined}; export type FulfillmentTypeEnum = 'surescripts' | 'surescripts_cancel' | 'surescripts_change' | 'surescripts_nonfillable' | 'paper' | 'paper_nonfillable' | 'fax' | 'phone' | 'mdtoolboxepcs'; export type Fulfillment = {detail?: (string | null) | undefined, pharmacy_ncpdpid?: (string | null) | undefined, service_location: ServiceLocation, state?: string | undefined, time_completed: string, type: FulfillmentTypeEnum}; export type ICD10Code = {code: string, description?: (string | null) | undefined}; export type MedicationDrugType = 'user' | 'medispan' | 'ss' | 'disp'; export type MedicationType = 'otc' | 'prescription' | 'discontinued'; export type Medication = {active_ndcs?: Array | undefined, brand_name?: string | undefined, created_date?: (string | null) | undefined, creation_type?: MedicationDrugType | undefined, form?: string | undefined, generic_name?: string | undefined, id?: number | undefined, is_controlled?: boolean | undefined, market_end_date?: (string | null) | undefined, name?: string | undefined, ndcs?: Array | undefined, obsolete_date?: (string | null) | undefined, practice?: number | undefined, route?: string | undefined, rxnorm_cuis?: Array | undefined, strength?: (string | null) | undefined, type?: MedicationType | undefined}; export type MedicationTypeEnum = 'otc' | 'prescription'; export type OrderTypeEnum = 'New' | 'Refill' | 'DoseChange'; export type QtyUnitsEnum = 'BAG' | 'BOTTLE' | 'BOX' | 'CAPSULE' | 'CARTRIDGE' | 'CONTAINER' | 'DROP' | 'GRAM' | 'INHALER' | 'INTERNATIONAL UNITE' | 'KIT' | 'LITER' | 'LOZENGE' | 'MILLIGRAM' | 'MILLILITER' | 'MILLION UNITS' | 'MUTUALLY DEFINED' | 'FLUID OUNCE' | 'NOT SPECIFIED' | 'PACK' | 'PACKET' | 'PINT' | 'SUPPOSITORY' | 'SYRINGE' | 'TABLESPOON' | 'TABLET' | 'TEASPOON' | 'TRANSDERMAL PATCH' | 'TUBE' | 'UNIT' | 'VIAL' | 'EACH' | 'GUM' | 'AMPULE' | 'APPLICATOR' | 'APPLICATORFUL' | 'BAR' | 'BEAD' | 'BLISTER' | 'BLOCK' | 'BOLUS' | 'CAN' | 'CANISTER' | 'CAPLET' | 'CARTON' | 'CASE' | 'CASSETTE' | 'CYLINDER' | 'DISK' | 'DOSE PACK' | 'DUAL PACK' | 'FILM' | 'GALLON' | 'IMPLANT' | 'INHALATION' | 'INHALER REFILL' | 'INSERT' | 'INTRAVENOUS BAG' | 'KILOGRAM' | 'METRIC DROP' | 'MILLIMETER' | 'NEBULE' | 'NEEDLE FREE INJECTION' | 'OCULAR SYSTEM' | 'OUNCE' | 'PACKAGE' | 'PAD' | 'PAPER' | 'PATCH' | 'PEN NEEDLE' | 'POUCH' | 'POUND' | 'PRE-FILLED PEN SYRINGE' | 'PUFF' | 'QUART' | 'RING' | 'SACHET' | 'SCOOPFUL' | 'SPONGE' | 'SPRAY' | 'STICK' | 'STRIP' | 'SWAB' | 'TABMINDER' | 'TAMPON' | 'TRAY' | 'TROCHE' | 'WAFER'; export type Thread = {dc_date?: (string | null) | undefined, id?: number | undefined, is_permanent: boolean}; export type MedOrder = {allow_substitutions?: (boolean | null) | undefined, auth_refills: number | null, chart_date?: string | undefined, created_date?: (string | null) | undefined, days_supply?: (number | null) | undefined, deleted_date?: (string | null) | undefined, directions?: (string | null) | undefined, document_date?: string | undefined, documenting_personnel?: (number | null) | undefined, fulfillment?: (Fulfillment | null) | undefined, icd10_codes: Array, id?: number | undefined, is_doc_med: boolean, last_modified?: string | undefined, medication: Medication, medication_type: MedicationTypeEnum, notes?: (string | null) | undefined, num_samples?: (string | null) | undefined, order_type: OrderTypeEnum, patient: number, pharmacy_instructions?: (string | null) | undefined, practice: number, prescribing_physician: number, qty: unknown | null, qty_units: QtyUnitsEnum | BlankEnum, send_rx_reminder?: boolean | undefined, show_in_chart_feed?: boolean | undefined, signed_by?: (number | null) | undefined, signed_date?: (string | null) | undefined, start_date: string, thread: Thread}; export type CreateApiApi20MedicationsArgs = {body: MedOrder}; export type CreateApiApi20MedicationsOptions = {baseUrl?: string | undefined, oauth2?: string | undefined, fetch?: typeof fetch | undefined}; export const serviceLocationPlaceOfServiceEnum = z.enum(["Ambulance - Air or Water", "Ambulance - Land", "Ambulatory Surgical Center", "Assisted Living Facility", "Birthing Center", "Community Mental Health Center", "Comprehensive Inpatient Rehabilitation Facility", "Comprehensive Outpatient Rehabilitation Facility", "Custodial Care Facility", "Emergency Room - Hospital", "End-Stage Renal Disease Treatment Facility", "Federally Qualified Health Center", "Group Home", "Home", "Homeless Shelter", "Hospice", "Independent Clinic", "Independent Laboratory", "Indian Health ServiceFree-standing Facility", "Indian Health ServiceProvider-based Facility", "Inpatient Hospital", "Inpatient Psychiatric Facility", "Intermediate Care Facility/Individuals with Intellectual Disabilities", "Mass Immunization Center", "Military Treatment Facility", "Mobile Unit", "Non-residential Substance Abuse Treatment Facility", "Nursing Facility", "Off Campus Outpatient-Hospital", "Office", "On Campus-Outpatient Hospital", "Other Place of Service", "Outreach Site/Street", "Pharmacy", "Place of Employment-Worksite", "Prison/Correctional Facility", "Programs of All-Inclusive Care for the Elderly (PACE) Center", "Psychiatric Facility-Partial Hospitalization", "Psychiatric Residential Treatment Center", "Public Health Clinic", "Residential Substance Abuse Treatment Facility", "Rural Health Clinic", "School", "Skilled Nursing Facility", "Telehealth Provided Other than in Patient’s Home", "Telehealth Provided in Patient’s Home", "Temporary Lodging", "Tribal 638Free-standingFacility", "Tribal 638Provider-basedFacility", "Urgent Care Facility", "Walk-in Retail Health Clinic"]); export const serviceLocationStatusEnum = z.enum(["active", "inactive", "suspended"]); export const timezoneEnum = z.enum(["Africa/Abidjan", "Africa/Accra", "Africa/Addis_Ababa", "Africa/Algiers", "Africa/Asmara", "Africa/Bamako", "Africa/Bangui", "Africa/Banjul", "Africa/Bissau", "Africa/Blantyre", "Africa/Brazzaville", "Africa/Bujumbura", "Africa/Cairo", "Africa/Casablanca", "Africa/Ceuta", "Africa/Conakry", "Africa/Dakar", "Africa/Dar_es_Salaam", "Africa/Djibouti", "Africa/Douala", "Africa/El_Aaiun", "Africa/Freetown", "Africa/Gaborone", "Africa/Harare", "Africa/Johannesburg", "Africa/Juba", "Africa/Kampala", "Africa/Khartoum", "Africa/Kigali", "Africa/Kinshasa", "Africa/Lagos", "Africa/Libreville", "Africa/Lome", "Africa/Luanda", "Africa/Lubumbashi", "Africa/Lusaka", "Africa/Malabo", "Africa/Maputo", "Africa/Maseru", "Africa/Mbabane", "Africa/Mogadishu", "Africa/Monrovia", "Africa/Nairobi", "Africa/Ndjamena", "Africa/Niamey", "Africa/Nouakchott", "Africa/Ouagadougou", "Africa/Porto-Novo", "Africa/Sao_Tome", "Africa/Tripoli", "Africa/Tunis", "Africa/Windhoek", "America/Adak", "America/Anchorage", "America/Anguilla", "America/Antigua", "America/Araguaina", "America/Argentina/Buenos_Aires", "America/Argentina/Catamarca", "America/Argentina/Cordoba", "America/Argentina/Jujuy", "America/Argentina/La_Rioja", "America/Argentina/Mendoza", "America/Argentina/Rio_Gallegos", "America/Argentina/Salta", "America/Argentina/San_Juan", "America/Argentina/San_Luis", "America/Argentina/Tucuman", "America/Argentina/Ushuaia", "America/Aruba", "America/Asuncion", "America/Atikokan", "America/Bahia", "America/Bahia_Banderas", "America/Barbados", "America/Belem", "America/Belize", "America/Blanc-Sablon", "America/Boa_Vista", "America/Bogota", "America/Boise", "America/Cambridge_Bay", "America/Campo_Grande", "America/Cancun", "America/Caracas", "America/Cayenne", "America/Cayman", "America/Chicago", "America/Chihuahua", "America/Ciudad_Juarez", "America/Costa_Rica", "America/Creston", "America/Cuiaba", "America/Curacao", "America/Danmarkshavn", "America/Dawson", "America/Dawson_Creek", "America/Denver", "America/Detroit", "America/Dominica", "America/Edmonton", "America/Eirunepe", "America/El_Salvador", "America/Fort_Nelson", "America/Fortaleza", "America/Glace_Bay", "America/Goose_Bay", "America/Grand_Turk", "America/Grenada", "America/Guadeloupe", "America/Guatemala", "America/Guayaquil", "America/Guyana", "America/Halifax", "America/Havana", "America/Hermosillo", "America/Indiana/Indianapolis", "America/Indiana/Knox", "America/Indiana/Marengo", "America/Indiana/Petersburg", "America/Indiana/Tell_City", "America/Indiana/Vevay", "America/Indiana/Vincennes", "America/Indiana/Winamac", "America/Inuvik", "America/Iqaluit", "America/Jamaica", "America/Juneau", "America/Kentucky/Louisville", "America/Kentucky/Monticello", "America/Kralendijk", "America/La_Paz", "America/Lima", "America/Los_Angeles", "America/Lower_Princes", "America/Maceio", "America/Managua", "America/Manaus", "America/Marigot", "America/Martinique", "America/Matamoros", "America/Mazatlan", "America/Menominee", "America/Merida", "America/Metlakatla", "America/Mexico_City", "America/Miquelon", "America/Moncton", "America/Monterrey", "America/Montevideo", "America/Montserrat", "America/Nassau", "America/New_York", "America/Nome", "America/Noronha", "America/North_Dakota/Beulah", "America/North_Dakota/Center", "America/North_Dakota/New_Salem", "America/Nuuk", "America/Ojinaga", "America/Panama", "America/Paramaribo", "America/Phoenix", "America/Port-au-Prince", "America/Port_of_Spain", "America/Porto_Velho", "America/Puerto_Rico", "America/Punta_Arenas", "America/Rankin_Inlet", "America/Recife", "America/Regina", "America/Resolute", "America/Rio_Branco", "America/Santarem", "America/Santiago", "America/Santo_Domingo", "America/Sao_Paulo", "America/Scoresbysund", "America/Sitka", "America/St_Barthelemy", "America/St_Johns", "America/St_Kitts", "America/St_Lucia", "America/St_Thomas", "America/St_Vincent", "America/Swift_Current", "America/Tegucigalpa", "America/Thule", "America/Tijuana", "America/Toronto", "America/Tortola", "America/Vancouver", "America/Whitehorse", "America/Winnipeg", "America/Yakutat", "Antarctica/Casey", "Antarctica/Davis", "Antarctica/DumontDUrville", "Antarctica/Macquarie", "Antarctica/Mawson", "Antarctica/McMurdo", "Antarctica/Palmer", "Antarctica/Rothera", "Antarctica/Syowa", "Antarctica/Troll", "Antarctica/Vostok", "Arctic/Longyearbyen", "Asia/Aden", "Asia/Almaty", "Asia/Amman", "Asia/Anadyr", "Asia/Aqtau", "Asia/Aqtobe", "Asia/Ashgabat", "Asia/Atyrau", "Asia/Baghdad", "Asia/Bahrain", "Asia/Baku", "Asia/Bangkok", "Asia/Barnaul", "Asia/Beirut", "Asia/Bishkek", "Asia/Brunei", "Asia/Chita", "Asia/Choibalsan", "Asia/Colombo", "Asia/Damascus", "Asia/Dhaka", "Asia/Dili", "Asia/Dubai", "Asia/Dushanbe", "Asia/Famagusta", "Asia/Gaza", "Asia/Hebron", "Asia/Ho_Chi_Minh", "Asia/Hong_Kong", "Asia/Hovd", "Asia/Irkutsk", "Asia/Jakarta", "Asia/Jayapura", "Asia/Jerusalem", "Asia/Kabul", "Asia/Kamchatka", "Asia/Karachi", "Asia/Kathmandu", "Asia/Khandyga", "Asia/Kolkata", "Asia/Krasnoyarsk", "Asia/Kuala_Lumpur", "Asia/Kuching", "Asia/Kuwait", "Asia/Macau", "Asia/Magadan", "Asia/Makassar", "Asia/Manila", "Asia/Muscat", "Asia/Nicosia", "Asia/Novokuznetsk", "Asia/Novosibirsk", "Asia/Omsk", "Asia/Oral", "Asia/Phnom_Penh", "Asia/Pontianak", "Asia/Pyongyang", "Asia/Qatar", "Asia/Qostanay", "Asia/Qyzylorda", "Asia/Riyadh", "Asia/Sakhalin", "Asia/Samarkand", "Asia/Seoul", "Asia/Shanghai", "Asia/Singapore", "Asia/Srednekolymsk", "Asia/Taipei", "Asia/Tashkent", "Asia/Tbilisi", "Asia/Tehran", "Asia/Thimphu", "Asia/Tokyo", "Asia/Tomsk", "Asia/Ulaanbaatar", "Asia/Urumqi", "Asia/Ust-Nera", "Asia/Vientiane", "Asia/Vladivostok", "Asia/Yakutsk", "Asia/Yangon", "Asia/Yekaterinburg", "Asia/Yerevan", "Atlantic/Azores", "Atlantic/Bermuda", "Atlantic/Canary", "Atlantic/Cape_Verde", "Atlantic/Faroe", "Atlantic/Madeira", "Atlantic/Reykjavik", "Atlantic/South_Georgia", "Atlantic/St_Helena", "Atlantic/Stanley", "Australia/Adelaide", "Australia/Brisbane", "Australia/Broken_Hill", "Australia/Darwin", "Australia/Eucla", "Australia/Hobart", "Australia/Lindeman", "Australia/Lord_Howe", "Australia/Melbourne", "Australia/Perth", "Australia/Sydney", "Canada/Atlantic", "Canada/Central", "Canada/Eastern", "Canada/Mountain", "Canada/Newfoundland", "Canada/Pacific", "Europe/Amsterdam", "Europe/Andorra", "Europe/Astrakhan", "Europe/Athens", "Europe/Belgrade", "Europe/Berlin", "Europe/Bratislava", "Europe/Brussels", "Europe/Bucharest", "Europe/Budapest", "Europe/Busingen", "Europe/Chisinau", "Europe/Copenhagen", "Europe/Dublin", "Europe/Gibraltar", "Europe/Guernsey", "Europe/Helsinki", "Europe/Isle_of_Man", "Europe/Istanbul", "Europe/Jersey", "Europe/Kaliningrad", "Europe/Kirov", "Europe/Kyiv", "Europe/Lisbon", "Europe/Ljubljana", "Europe/London", "Europe/Luxembourg", "Europe/Madrid", "Europe/Malta", "Europe/Mariehamn", "Europe/Minsk", "Europe/Monaco", "Europe/Moscow", "Europe/Oslo", "Europe/Paris", "Europe/Podgorica", "Europe/Prague", "Europe/Riga", "Europe/Rome", "Europe/Samara", "Europe/San_Marino", "Europe/Sarajevo", "Europe/Saratov", "Europe/Simferopol", "Europe/Skopje", "Europe/Sofia", "Europe/Stockholm", "Europe/Tallinn", "Europe/Tirane", "Europe/Ulyanovsk", "Europe/Vaduz", "Europe/Vatican", "Europe/Vienna", "Europe/Vilnius", "Europe/Volgograd", "Europe/Warsaw", "Europe/Zagreb", "Europe/Zurich", "GMT", "Indian/Antananarivo", "Indian/Chagos", "Indian/Christmas", "Indian/Cocos", "Indian/Comoro", "Indian/Kerguelen", "Indian/Mahe", "Indian/Maldives", "Indian/Mauritius", "Indian/Mayotte", "Indian/Reunion", "Pacific/Apia", "Pacific/Auckland", "Pacific/Bougainville", "Pacific/Chatham", "Pacific/Chuuk", "Pacific/Easter", "Pacific/Efate", "Pacific/Fakaofo", "Pacific/Fiji", "Pacific/Funafuti", "Pacific/Galapagos", "Pacific/Gambier", "Pacific/Guadalcanal", "Pacific/Guam", "Pacific/Honolulu", "Pacific/Kanton", "Pacific/Kiritimati", "Pacific/Kosrae", "Pacific/Kwajalein", "Pacific/Majuro", "Pacific/Marquesas", "Pacific/Midway", "Pacific/Nauru", "Pacific/Niue", "Pacific/Norfolk", "Pacific/Noumea", "Pacific/Pago_Pago", "Pacific/Palau", "Pacific/Pitcairn", "Pacific/Pohnpei", "Pacific/Port_Moresby", "Pacific/Rarotonga", "Pacific/Saipan", "Pacific/Tahiti", "Pacific/Tarawa", "Pacific/Tongatapu", "Pacific/Wake", "Pacific/Wallis", "US/Alaska", "US/Arizona", "US/Central", "US/Eastern", "US/Hawaii", "US/Mountain", "US/Pacific", "UTC"]); export const blankEnum = z.literal(""); export const nullEnum = z.unknown(); export const serviceLocation = z.object({address_line1: z.string(), address_line2: z.string().optional(), city: z.string().max(50).optional(), created_date: z.string().nullable().optional(), deleted_date: z.string().nullable().optional(), email: z.string().max(254).nullable().optional(), fax: z.string().max(20).nullable().optional(), id: z.number().int().optional(), is_primary: z.boolean().optional(), name: z.string().max(200), phone: z.string().max(20).nullable().optional(), place_of_service: serviceLocationPlaceOfServiceEnum.optional(), place_of_service_code: z.number().int().optional(), practice: z.number().int(), state: z.string(), status: serviceLocationStatusEnum.optional(), timezone: z.union([timezoneEnum, blankEnum, nullEnum]).optional(), zip: z.string().max(10).optional()}); export const fulfillmentTypeEnum = z.enum(["surescripts", "surescripts_cancel", "surescripts_change", "surescripts_nonfillable", "paper", "paper_nonfillable", "fax", "phone", "mdtoolboxepcs"]); export const fulfillment = z.object({detail: z.string().nullable().optional(), pharmacy_ncpdpid: z.string().max(21).nullable().optional(), service_location: serviceLocation, state: z.string().max(128).optional(), time_completed: z.string(), type: fulfillmentTypeEnum}); export const iCD10Code = z.object({code: z.string().max(50), description: z.string().max(500).nullable().optional()}); export const medicationDrugType = z.enum(["user", "medispan", "ss", "disp"]); export const medicationType = z.enum(["otc", "prescription", "discontinued"]); export const medication = z.object({active_ndcs: z.array(z.string()).optional(), brand_name: z.string().optional(), created_date: z.string().nullable().optional(), creation_type: medicationDrugType.optional(), form: z.string().optional(), generic_name: z.string().optional(), id: z.number().int().optional(), is_controlled: z.boolean().optional(), market_end_date: z.string().nullable().optional(), name: z.string().optional(), ndcs: z.array(z.string()).optional(), obsolete_date: z.string().nullable().optional(), practice: z.number().int().optional(), route: z.string().optional(), rxnorm_cuis: z.array(z.string()).optional(), strength: z.string().max(255).nullable().optional(), type: medicationType.optional()}); export const medicationTypeEnum = z.enum(["otc", "prescription"]); export const orderTypeEnum = z.enum(["New", "Refill", "DoseChange"]); export const qtyUnitsEnum = z.enum(["BAG", "BOTTLE", "BOX", "CAPSULE", "CARTRIDGE", "CONTAINER", "DROP", "GRAM", "INHALER", "INTERNATIONAL UNITE", "KIT", "LITER", "LOZENGE", "MILLIGRAM", "MILLILITER", "MILLION UNITS", "MUTUALLY DEFINED", "FLUID OUNCE", "NOT SPECIFIED", "PACK", "PACKET", "PINT", "SUPPOSITORY", "SYRINGE", "TABLESPOON", "TABLET", "TEASPOON", "TRANSDERMAL PATCH", "TUBE", "UNIT", "VIAL", "EACH", "GUM", "AMPULE", "APPLICATOR", "APPLICATORFUL", "BAR", "BEAD", "BLISTER", "BLOCK", "BOLUS", "CAN", "CANISTER", "CAPLET", "CARTON", "CASE", "CASSETTE", "CYLINDER", "DISK", "DOSE PACK", "DUAL PACK", "FILM", "GALLON", "IMPLANT", "INHALATION", "INHALER REFILL", "INSERT", "INTRAVENOUS BAG", "KILOGRAM", "METRIC DROP", "MILLIMETER", "NEBULE", "NEEDLE FREE INJECTION", "OCULAR SYSTEM", "OUNCE", "PACKAGE", "PAD", "PAPER", "PATCH", "PEN NEEDLE", "POUCH", "POUND", "PRE-FILLED PEN SYRINGE", "PUFF", "QUART", "RING", "SACHET", "SCOOPFUL", "SPONGE", "SPRAY", "STICK", "STRIP", "SWAB", "TABMINDER", "TAMPON", "TRAY", "TROCHE", "WAFER"]); export const thread = z.object({dc_date: z.string().nullable().optional(), id: z.number().int().optional(), is_permanent: z.boolean()}); export const medOrder = z.object({allow_substitutions: z.boolean().nullable().optional(), auth_refills: z.number().int().gte(0).nullable(), chart_date: z.string().optional(), created_date: z.string().nullable().optional(), days_supply: z.number().int().gte(0).lte(65535).nullable().optional(), deleted_date: z.string().nullable().optional(), directions: z.string().max(1000).nullable().optional(), document_date: z.string().optional(), documenting_personnel: z.number().int().nullable().optional(), fulfillment: fulfillment.nullable().optional(), icd10_codes: z.array(iCD10Code), id: z.number().int().optional(), is_doc_med: z.boolean(), last_modified: z.string().optional(), medication: medication, medication_type: medicationTypeEnum, notes: z.string().nullable().optional(), num_samples: z.string().max(50).nullable().optional(), order_type: orderTypeEnum, patient: z.number().int(), pharmacy_instructions: z.string().nullable().optional(), practice: z.number().int(), prescribing_physician: z.number().int(), qty: z.string().nullable(), qty_units: z.union([qtyUnitsEnum, blankEnum]), send_rx_reminder: z.boolean().optional(), show_in_chart_feed: z.boolean().optional(), signed_by: z.number().int().nullable().optional(), signed_date: z.string().nullable().optional(), start_date: z.string(), thread: thread}); export const validateResponse = async ( schema: { readonly '~standard': { readonly validate: (value: unknown) => ({ readonly value: Output; readonly issues?: undefined } | { readonly issues: ReadonlyArray<{ readonly message: string; readonly path?: ReadonlyArray | undefined }> }) | Promise<{ readonly value: Output; readonly issues?: undefined } | { readonly issues: ReadonlyArray<{ readonly message: string; readonly path?: ReadonlyArray | undefined }> }> } }, value: unknown ): Promise => { const result = await schema['~standard'].validate(value) if (result.issues !== undefined) { const detail = result.issues .map(({ message, path }) => path?.length ? `${path.map((segment) => String(typeof segment === 'object' ? segment.key : segment)).join('.')}: ${message}` : message ) .join('; ') throw new Error(`Response does not match the schema: ${detail}`, { cause: { issues: result.issues } }) } return result.value }; /** * Create Medication * * POST /api/2.0/medications/ */ export const createApiApi20Medications = async (args: CreateApiApi20MedicationsArgs, options?: CreateApiApi20MedicationsOptions) => { const {baseUrl = "https://sandbox.elationemr.com/api/2.0", fetch: fetchFn = fetch, oauth2} = options ?? {} const query = new URLSearchParams() const headers = new Headers() headers.set('content-type', "application/json") headers.set('accept', "application/json") if (oauth2 !== undefined) headers.set('authorization', `Bearer ${oauth2}`) const url = `${baseUrl.replace(/\/+$/, '')}/api/2.0/medications/${query.size > 0 ? `?${query}` : ''}` const res = await fetchFn(url, {method: "POST", headers, body: JSON.stringify(args.body)}) if (!res.ok) throw new Error(`Request failed with status ${res.status}`, {cause: {status: res.status, body: await res.text()}}) return validateResponse(medOrder, await res.json()) };