// AUTO-GENERATED from hl7v2/schema - do not edit manually // Generated for message types: BAR_P01 // Run: bun src/hl7v2/codegen.ts BAR_P01 import type { HL7v2Segment, FieldValue } from "./types"; import { getComponent } from "./types"; // ====== DataType Interfaces ====== /** AUI DataType */ export interface AUI { /** AUI.1 - Authorization Number */ authorization_1?: string; /** AUI.2 - Date */ date_2?: string; /** AUI.3 - Source */ source_3?: string; } /** CE DataType */ export interface CE { /** CE.1 - Identifier */ code_1?: string; /** CE.2 - Text */ text_2?: string; /** CE.3 - Name of Coding System */ system_3?: string; /** CE.4 - Alternate Identifier */ altCode_4?: string; /** CE.5 - Alternate Text */ altDisplay_5?: string; /** CE.6 - Name of Alternate Coding System */ altSystem_6?: string; } /** CNE DataType */ export interface CNE { /** CNE.1 - Identifier */ code_1?: string; /** CNE.2 - Text */ text_2?: string; /** CNE.3 - Name of Coding System */ system_3?: string; /** CNE.4 - Alternate Identifier */ altCode_4?: string; /** CNE.5 - Alternate Text */ altDisplay_5?: string; /** CNE.6 - Name of Alternate Coding System */ altSystem_6?: string; /** CNE.7 - Coding System Version ID */ version_7?: string; /** CNE.8 - Alternate Coding System Version ID */ altVersion_8?: string; /** CNE.9 - Original Text */ originalText_9?: string; } /** CP DataType */ export interface CP { /** CP.1 - Price */ amount_1?: MO; /** CP.2 - Price Type */ priceType_2?: string; /** CP.3 - From Value */ low_3?: string; /** CP.4 - To Value */ high_4?: string; /** CP.5 - Range Units */ unit_5?: CE; /** CP.6 - Range Type */ rangeType_6?: string; } /** CWE DataType */ export interface CWE { /** CWE.1 - Identifier */ code_1?: string; /** CWE.2 - Text */ text_2?: string; /** CWE.3 - Name of Coding System */ system_3?: string; /** CWE.4 - Alternate Identifier */ altCode_4?: string; /** CWE.5 - Alternate Text */ altDisplay_5?: string; /** CWE.6 - Name of Alternate Coding System */ altSystem_6?: string; /** CWE.7 - Coding System Version ID */ version_7?: string; /** CWE.8 - Alternate Coding System Version ID */ altVersion_8?: string; /** CWE.9 - Original Text */ originalText_9?: string; } /** CX DataType */ export interface CX { /** CX.1 - ID Number */ value_1?: string; /** CX.2 - Check Digit */ checkDigit_2?: string; /** CX.3 - Check Digit Scheme */ checkDigitScheme_3?: string; /** CX.4 - Assigning Authority */ system_4?: HD; /** CX.5 - Identifier Type Code */ type_5?: string; /** CX.6 - Assigning Facility */ assigner_6?: HD; /** CX.7 - Effective Date */ start_7?: string; /** CX.8 - Expiration Date */ end_8?: string; /** CX.9 - Assigning Jurisdiction */ jurisdiction_9?: CWE; /** CX.10 - Assigning Agency or Department */ department_10?: CWE; } /** DDI DataType */ export interface DDI { /** DDI.1 - Delay Days */ delay_1?: string; /** DDI.2 - Monetary Amount */ amount_2?: MO; /** DDI.3 - Number of Days */ days_3?: string; } /** DLD DataType */ export interface DLD { /** DLD.1 - Discharge Location */ location_1?: string; /** DLD.2 - Effective Date */ start_2?: string; } /** DLN DataType */ export interface DLN { /** DLN.1 - License Number */ license_1?: string; /** DLN.2 - Issuing State, Province, Country */ issuingAuthority_2?: string; /** DLN.3 - Expiration Date */ end_3?: string; } /** DR DataType */ export interface DR { /** DR.1 - Range Start Date/Time */ start_1?: string; /** DR.2 - Range End Date/Time */ end_2?: string; } /** DTN DataType */ export interface DTN { /** DTN.1 - Day Type */ dayType_1?: string; /** DTN.2 - Number of Days */ days_2?: string; } /** EI DataType */ export interface EI { /** EI.1 - Entity Identifier */ value_1?: string; /** EI.2 - Namespace ID */ namespace_2?: string; /** EI.3 - Universal ID */ system_3?: string; /** EI.4 - Universal ID Type */ systemType_4?: string; } /** FC DataType */ export interface FC { /** FC.1 - Financial Class Code */ code_1?: string; /** FC.2 - Effective Date */ start_2?: string; } /** FN DataType */ export interface FN { /** FN.1 - Surname */ family_1?: string; /** FN.2 - Own Surname Prefix */ ownPrefix_2?: string; /** FN.3 - Own Surname */ ownFamily_3?: string; /** FN.4 - Surname Prefix From Partner/Spouse */ partnerPrefix_4?: string; /** FN.5 - Surname From Partner/Spouse */ partnerFamily_5?: string; } /** HD DataType */ export interface HD { /** HD.1 - Namespace ID */ namespace_1?: string; /** HD.2 - Universal ID */ system_2?: string; /** HD.3 - Universal ID Type */ systemType_3?: string; } /** ICD DataType */ export interface ICD { /** ICD.1 - Certification Patient Type */ patientType_1?: string; /** ICD.2 - Certification Required */ required_2?: string; /** ICD.3 - Date/Time Certification Required */ requiredAt_3?: string; } /** JCC DataType */ export interface JCC { /** JCC.1 - Job Code */ jobCode_1?: string; /** JCC.2 - Job Class */ jobClass_2?: string; /** JCC.3 - Job Description Text */ jobDescription_3?: string; } /** MO DataType */ export interface MO { /** MO.1 - Quantity */ value_1?: string; /** MO.2 - Denomination */ currency_2?: string; } /** MOP DataType */ export interface MOP { /** MOP.1 - Money or Percentage Indicator */ indicator_1?: string; /** MOP.2 - Money or Percentage Quantity */ value_2?: string; /** MOP.3 - Currency Denomination */ currency_3?: string; } /** MSG DataType */ export interface MSG { /** MSG.1 - Message Code */ code_1?: string; /** MSG.2 - Trigger Event */ event_2?: string; /** MSG.3 - Message Structure */ structure_3?: string; } /** OCD DataType */ export interface OCD { /** OCD.1 - Occurrence Code */ code_1?: CNE; /** OCD.2 - Occurrence Date */ date_2?: string; } /** OSP DataType */ export interface OSP { /** OSP.1 - Occurrence Span Code */ code_1?: CNE; /** OSP.2 - Occurrence Span Start Date */ start_2?: string; /** OSP.3 - Occurrence Span Stop Date */ end_3?: string; } /** PL DataType */ export interface PL { /** PL.1 - Point of Care */ careSite_1?: string; /** PL.2 - Room */ room_2?: string; /** PL.3 - Bed */ bed_3?: string; /** PL.4 - Facility */ facility_4?: HD; /** PL.5 - Location Status */ status_5?: string; /** PL.6 - Person Location Type */ locationType_6?: string; /** PL.7 - Building */ building_7?: string; /** PL.8 - Floor */ floor_8?: string; /** PL.9 - Location Description */ description_9?: string; /** PL.10 - Comprehensive Location Identifier */ identifier_10?: EI; /** PL.11 - Assigning Authority for Location */ locationSystem_11?: HD; } /** PT DataType */ export interface PT { /** PT.1 - Processing ID */ processingId_1?: string; /** PT.2 - Processing Mode */ processingMode_2?: string; } /** PTA DataType */ export interface PTA { /** PTA.1 - Policy Type */ policyType_1?: string; /** PTA.2 - Amount Class */ amountClass_2?: string; /** PTA.3 - Money or Percentage Quantity */ value_3?: string; /** PTA.4 - Money or Percentage */ basis_4?: MOP; } /** RMC DataType */ export interface RMC { /** RMC.1 - Room Type */ roomType_1?: string; /** RMC.2 - Amount Type */ amountType_2?: string; /** RMC.3 - Coverage Amount */ coverage_3?: string; /** RMC.4 - Money or Percentage */ basis_4?: MOP; } /** SAD DataType */ export interface SAD { /** SAD.1 - Street or Mailing Address */ line_1?: string; /** SAD.2 - Street Name */ streetName_2?: string; /** SAD.3 - Dwelling Number */ houseNumber_3?: string; } /** UVC DataType */ export interface UVC { /** UVC.1 - Value Code */ code_1?: CNE; /** UVC.2 - Value Amount */ amount_2?: MO; } /** VID DataType */ export interface VID { /** VID.1 - Version ID */ version_1?: string; /** VID.2 - Internationalization Code */ locale_2?: CE; /** VID.3 - International Version ID */ internationalVersion_3?: CE; } /** XAD DataType */ export interface XAD { /** XAD.1 - Street Address */ line1_1?: SAD; /** XAD.2 - Other Designation */ line2_2?: string; /** XAD.3 - City */ city_3?: string; /** XAD.4 - State or Province */ state_4?: string; /** XAD.5 - Zip or Postal Code */ postalCode_5?: string; /** XAD.6 - Country */ country_6?: string; /** XAD.7 - Address Type */ type_7?: string; /** XAD.8 - Other Geographic Designation */ additionalLocator_8?: string; /** XAD.9 - County/Parish Code */ district_9?: string; /** XAD.10 - Census Tract */ censusTract_10?: string; /** XAD.11 - Address Representation Code */ representation_11?: string; /** XAD.12 - Address Validity Range */ period_12?: DR; /** XAD.13 - Effective Date */ start_13?: string; /** XAD.14 - Expiration Date */ end_14?: string; } /** XCN DataType */ export interface XCN { /** XCN.1 - ID Number */ value_1?: string; /** XCN.2 - Family Name */ family_2?: FN; /** XCN.3 - Given Name */ given_3?: string; /** XCN.4 - Second and Further Given Names or Initials Thereof */ additionalGiven_4?: string; /** XCN.5 - Suffix (e.g., JR or III) */ suffix_5?: string; /** XCN.6 - Prefix (e.g., DR) */ prefix_6?: string; /** XCN.7 - Degree (e.g., MD) */ qualification_7?: string; /** XCN.8 - Source Table */ sourceTable_8?: string; /** XCN.9 - Assigning Authority */ system_9?: HD; /** XCN.10 - Name Type Code */ use_10?: string; /** XCN.11 - Identifier Check Digit */ checkDigit_11?: string; /** XCN.12 - Check Digit Scheme */ checkDigitScheme_12?: string; /** XCN.13 - Identifier Type Code */ type_13?: string; /** XCN.14 - Assigning Facility */ assigner_14?: HD; /** XCN.15 - Name Representation Code */ representation_15?: string; /** XCN.16 - Name Context */ context_16?: CE; /** XCN.17 - Name Validity Range */ period_17?: DR; /** XCN.18 - Name Assembly Order */ order_18?: string; /** XCN.19 - Effective Date */ start_19?: string; /** XCN.20 - Expiration Date */ end_20?: string; /** XCN.21 - Professional Suffix */ credential_21?: string; /** XCN.22 - Assigning Jurisdiction */ jurisdiction_22?: CWE; /** XCN.23 - Assigning Agency or Department */ department_23?: CWE; } /** XON DataType */ export interface XON { /** XON.1 - Organization Name */ name_1?: string; /** XON.2 - Organization Name Type Code */ nameType_2?: string; /** XON.3 - ID Number */ value_3?: string; /** XON.4 - Check Digit */ checkDigit_4?: string; /** XON.5 - Check Digit Scheme */ checkDigitScheme_5?: string; /** XON.6 - Assigning Authority */ system_6?: HD; /** XON.7 - Identifier Type Code */ type_7?: string; /** XON.8 - Assigning Facility */ assigner_8?: HD; /** XON.9 - Name Representation Code */ representation_9?: string; /** XON.10 - Organization Identifier */ organizationId_10?: string; } /** XPN DataType */ export interface XPN { /** XPN.1 - Family Name */ family_1?: FN; /** XPN.2 - Given Name */ given_2?: string; /** XPN.3 - Second and Further Given Names or Initials Thereof */ additionalGiven_3?: string; /** XPN.4 - Suffix (e.g., JR or III) */ suffix_4?: string; /** XPN.5 - Prefix (e.g., DR) */ prefix_5?: string; /** XPN.6 - Degree (e.g., MD) */ qualification_6?: string; /** XPN.7 - Name Type Code */ use_7?: string; /** XPN.8 - Name Representation Code */ representation_8?: string; /** XPN.9 - Name Context */ context_9?: CE; /** XPN.10 - Name Validity Range */ period_10?: DR; /** XPN.11 - Name Assembly Order */ order_11?: string; /** XPN.12 - Effective Date */ start_12?: string; /** XPN.13 - Expiration Date */ end_13?: string; /** XPN.14 - Professional Suffix */ credential_14?: string; } /** XTN DataType */ export interface XTN { /** XTN.1 - Telephone Number */ value_1?: string; /** XTN.2 - Telecommunication Use Code */ use_2?: string; /** XTN.3 - Telecommunication Equipment Type */ system_3?: string; /** XTN.4 - Email Address */ email_4?: string; /** XTN.5 - Country Code */ countryCode_5?: string; /** XTN.6 - Area/City Code */ areaCode_6?: string; /** XTN.7 - Local Number */ localNumber_7?: string; /** XTN.8 - Extension */ extension_8?: string; /** XTN.9 - Any Text */ text_9?: string; /** XTN.10 - Extension Prefix */ extensionPrefix_10?: string; /** XTN.11 - Speed Dial Code */ speedDial_11?: string; /** XTN.12 - Unformatted Telephone number */ unformatted_12?: string; } // ====== Conversion Functions ====== /** Convert a record object to FieldValue */ function toFieldValue(obj: Record | null | undefined): FieldValue | undefined { if (obj == null) return undefined; const result: { [key: number]: FieldValue } = {}; for (const [key, value] of Object.entries(obj)) { if (value == null) continue; const match = key.match(/_(\d+)$/); if (!match || !match[1]) continue; const idx = parseInt(match[1], 10); if (typeof value === "string") { result[idx] = value; } else if (typeof value === "object") { const nested = toFieldValue(value as Record); if (nested !== undefined) result[idx] = nested; } } return Object.keys(result).length > 0 ? result : undefined; } // ====== FromFieldValue Converters ====== /** Convert FieldValue to AUI */ function fromAUI(fv: FieldValue | undefined): AUI | undefined { if (fv === undefined) return undefined; if (typeof fv === "string") return { authorization_1: fv }; if (Array.isArray(fv)) return fromAUI(fv[0]); const result: AUI = {}; if (fv[1] !== undefined) { const v1 = fv[1]; if (typeof v1 === "string") result.authorization_1 = v1; else if (typeof v1 === "object" && !Array.isArray(v1) && typeof (v1 as any)[1] === "string") result.authorization_1 = (v1 as any)[1]; } if (fv[2] !== undefined) { const v2 = fv[2]; if (typeof v2 === "string") result.date_2 = v2; else if (typeof v2 === "object" && !Array.isArray(v2) && typeof (v2 as any)[1] === "string") result.date_2 = (v2 as any)[1]; } if (fv[3] !== undefined) { const v3 = fv[3]; if (typeof v3 === "string") result.source_3 = v3; else if (typeof v3 === "object" && !Array.isArray(v3) && typeof (v3 as any)[1] === "string") result.source_3 = (v3 as any)[1]; } return result; } /** Convert FieldValue to CE */ function fromCE(fv: FieldValue | undefined): CE | undefined { if (fv === undefined) return undefined; if (typeof fv === "string") return { code_1: fv }; if (Array.isArray(fv)) return fromCE(fv[0]); const result: CE = {}; if (fv[1] !== undefined) { const v1 = fv[1]; if (typeof v1 === "string") result.code_1 = v1; else if (typeof v1 === "object" && !Array.isArray(v1) && typeof (v1 as any)[1] === "string") result.code_1 = (v1 as any)[1]; } if (fv[2] !== undefined) { const v2 = fv[2]; if (typeof v2 === "string") result.text_2 = v2; else if (typeof v2 === "object" && !Array.isArray(v2) && typeof (v2 as any)[1] === "string") result.text_2 = (v2 as any)[1]; } if (fv[3] !== undefined) { const v3 = fv[3]; if (typeof v3 === "string") result.system_3 = v3; else if (typeof v3 === "object" && !Array.isArray(v3) && typeof (v3 as any)[1] === "string") result.system_3 = (v3 as any)[1]; } if (fv[4] !== undefined) { const v4 = fv[4]; if (typeof v4 === "string") result.altCode_4 = v4; else if (typeof v4 === "object" && !Array.isArray(v4) && typeof (v4 as any)[1] === "string") result.altCode_4 = (v4 as any)[1]; } if (fv[5] !== undefined) { const v5 = fv[5]; if (typeof v5 === "string") result.altDisplay_5 = v5; else if (typeof v5 === "object" && !Array.isArray(v5) && typeof (v5 as any)[1] === "string") result.altDisplay_5 = (v5 as any)[1]; } if (fv[6] !== undefined) { const v6 = fv[6]; if (typeof v6 === "string") result.altSystem_6 = v6; else if (typeof v6 === "object" && !Array.isArray(v6) && typeof (v6 as any)[1] === "string") result.altSystem_6 = (v6 as any)[1]; } return result; } /** Convert FieldValue to CNE */ function fromCNE(fv: FieldValue | undefined): CNE | undefined { if (fv === undefined) return undefined; if (typeof fv === "string") return { code_1: fv }; if (Array.isArray(fv)) return fromCNE(fv[0]); const result: CNE = {}; if (fv[1] !== undefined) { const v1 = fv[1]; if (typeof v1 === "string") result.code_1 = v1; else if (typeof v1 === "object" && !Array.isArray(v1) && typeof (v1 as any)[1] === "string") result.code_1 = (v1 as any)[1]; } if (fv[2] !== undefined) { const v2 = fv[2]; if (typeof v2 === "string") result.text_2 = v2; else if (typeof v2 === "object" && !Array.isArray(v2) && typeof (v2 as any)[1] === "string") result.text_2 = (v2 as any)[1]; } if (fv[3] !== undefined) { const v3 = fv[3]; if (typeof v3 === "string") result.system_3 = v3; else if (typeof v3 === "object" && !Array.isArray(v3) && typeof (v3 as any)[1] === "string") result.system_3 = (v3 as any)[1]; } if (fv[4] !== undefined) { const v4 = fv[4]; if (typeof v4 === "string") result.altCode_4 = v4; else if (typeof v4 === "object" && !Array.isArray(v4) && typeof (v4 as any)[1] === "string") result.altCode_4 = (v4 as any)[1]; } if (fv[5] !== undefined) { const v5 = fv[5]; if (typeof v5 === "string") result.altDisplay_5 = v5; else if (typeof v5 === "object" && !Array.isArray(v5) && typeof (v5 as any)[1] === "string") result.altDisplay_5 = (v5 as any)[1]; } if (fv[6] !== undefined) { const v6 = fv[6]; if (typeof v6 === "string") result.altSystem_6 = v6; else if (typeof v6 === "object" && !Array.isArray(v6) && typeof (v6 as any)[1] === "string") result.altSystem_6 = (v6 as any)[1]; } if (fv[7] !== undefined) { const v7 = fv[7]; if (typeof v7 === "string") result.version_7 = v7; else if (typeof v7 === "object" && !Array.isArray(v7) && typeof (v7 as any)[1] === "string") result.version_7 = (v7 as any)[1]; } if (fv[8] !== undefined) { const v8 = fv[8]; if (typeof v8 === "string") result.altVersion_8 = v8; else if (typeof v8 === "object" && !Array.isArray(v8) && typeof (v8 as any)[1] === "string") result.altVersion_8 = (v8 as any)[1]; } if (fv[9] !== undefined) { const v9 = fv[9]; if (typeof v9 === "string") result.originalText_9 = v9; else if (typeof v9 === "object" && !Array.isArray(v9) && typeof (v9 as any)[1] === "string") result.originalText_9 = (v9 as any)[1]; } return result; } /** Convert FieldValue to CP */ function fromCP(fv: FieldValue | undefined): CP | undefined { if (fv === undefined) return undefined; if (typeof fv === "string") return { amount_1: fromMO(fv) }; if (Array.isArray(fv)) return fromCP(fv[0]); const result: CP = {}; if (fv[1] !== undefined) result.amount_1 = fromMO(fv[1]); if (fv[2] !== undefined) { const v2 = fv[2]; if (typeof v2 === "string") result.priceType_2 = v2; else if (typeof v2 === "object" && !Array.isArray(v2) && typeof (v2 as any)[1] === "string") result.priceType_2 = (v2 as any)[1]; } if (fv[3] !== undefined) { const v3 = fv[3]; if (typeof v3 === "string") result.low_3 = v3; else if (typeof v3 === "object" && !Array.isArray(v3) && typeof (v3 as any)[1] === "string") result.low_3 = (v3 as any)[1]; } if (fv[4] !== undefined) { const v4 = fv[4]; if (typeof v4 === "string") result.high_4 = v4; else if (typeof v4 === "object" && !Array.isArray(v4) && typeof (v4 as any)[1] === "string") result.high_4 = (v4 as any)[1]; } if (fv[5] !== undefined) result.unit_5 = fromCE(fv[5]); if (fv[6] !== undefined) { const v6 = fv[6]; if (typeof v6 === "string") result.rangeType_6 = v6; else if (typeof v6 === "object" && !Array.isArray(v6) && typeof (v6 as any)[1] === "string") result.rangeType_6 = (v6 as any)[1]; } return result; } /** Convert FieldValue to CWE */ function fromCWE(fv: FieldValue | undefined): CWE | undefined { if (fv === undefined) return undefined; if (typeof fv === "string") return { code_1: fv }; if (Array.isArray(fv)) return fromCWE(fv[0]); const result: CWE = {}; if (fv[1] !== undefined) { const v1 = fv[1]; if (typeof v1 === "string") result.code_1 = v1; else if (typeof v1 === "object" && !Array.isArray(v1) && typeof (v1 as any)[1] === "string") result.code_1 = (v1 as any)[1]; } if (fv[2] !== undefined) { const v2 = fv[2]; if (typeof v2 === "string") result.text_2 = v2; else if (typeof v2 === "object" && !Array.isArray(v2) && typeof (v2 as any)[1] === "string") result.text_2 = (v2 as any)[1]; } if (fv[3] !== undefined) { const v3 = fv[3]; if (typeof v3 === "string") result.system_3 = v3; else if (typeof v3 === "object" && !Array.isArray(v3) && typeof (v3 as any)[1] === "string") result.system_3 = (v3 as any)[1]; } if (fv[4] !== undefined) { const v4 = fv[4]; if (typeof v4 === "string") result.altCode_4 = v4; else if (typeof v4 === "object" && !Array.isArray(v4) && typeof (v4 as any)[1] === "string") result.altCode_4 = (v4 as any)[1]; } if (fv[5] !== undefined) { const v5 = fv[5]; if (typeof v5 === "string") result.altDisplay_5 = v5; else if (typeof v5 === "object" && !Array.isArray(v5) && typeof (v5 as any)[1] === "string") result.altDisplay_5 = (v5 as any)[1]; } if (fv[6] !== undefined) { const v6 = fv[6]; if (typeof v6 === "string") result.altSystem_6 = v6; else if (typeof v6 === "object" && !Array.isArray(v6) && typeof (v6 as any)[1] === "string") result.altSystem_6 = (v6 as any)[1]; } if (fv[7] !== undefined) { const v7 = fv[7]; if (typeof v7 === "string") result.version_7 = v7; else if (typeof v7 === "object" && !Array.isArray(v7) && typeof (v7 as any)[1] === "string") result.version_7 = (v7 as any)[1]; } if (fv[8] !== undefined) { const v8 = fv[8]; if (typeof v8 === "string") result.altVersion_8 = v8; else if (typeof v8 === "object" && !Array.isArray(v8) && typeof (v8 as any)[1] === "string") result.altVersion_8 = (v8 as any)[1]; } if (fv[9] !== undefined) { const v9 = fv[9]; if (typeof v9 === "string") result.originalText_9 = v9; else if (typeof v9 === "object" && !Array.isArray(v9) && typeof (v9 as any)[1] === "string") result.originalText_9 = (v9 as any)[1]; } return result; } /** Convert FieldValue to CX */ function fromCX(fv: FieldValue | undefined): CX | undefined { if (fv === undefined) return undefined; if (typeof fv === "string") return { value_1: fv }; if (Array.isArray(fv)) return fromCX(fv[0]); const result: CX = {}; if (fv[1] !== undefined) { const v1 = fv[1]; if (typeof v1 === "string") result.value_1 = v1; else if (typeof v1 === "object" && !Array.isArray(v1) && typeof (v1 as any)[1] === "string") result.value_1 = (v1 as any)[1]; } if (fv[2] !== undefined) { const v2 = fv[2]; if (typeof v2 === "string") result.checkDigit_2 = v2; else if (typeof v2 === "object" && !Array.isArray(v2) && typeof (v2 as any)[1] === "string") result.checkDigit_2 = (v2 as any)[1]; } if (fv[3] !== undefined) { const v3 = fv[3]; if (typeof v3 === "string") result.checkDigitScheme_3 = v3; else if (typeof v3 === "object" && !Array.isArray(v3) && typeof (v3 as any)[1] === "string") result.checkDigitScheme_3 = (v3 as any)[1]; } if (fv[4] !== undefined) result.system_4 = fromHD(fv[4]); if (fv[5] !== undefined) { const v5 = fv[5]; if (typeof v5 === "string") result.type_5 = v5; else if (typeof v5 === "object" && !Array.isArray(v5) && typeof (v5 as any)[1] === "string") result.type_5 = (v5 as any)[1]; } if (fv[6] !== undefined) result.assigner_6 = fromHD(fv[6]); if (fv[7] !== undefined) { const v7 = fv[7]; if (typeof v7 === "string") result.start_7 = v7; else if (typeof v7 === "object" && !Array.isArray(v7) && typeof (v7 as any)[1] === "string") result.start_7 = (v7 as any)[1]; } if (fv[8] !== undefined) { const v8 = fv[8]; if (typeof v8 === "string") result.end_8 = v8; else if (typeof v8 === "object" && !Array.isArray(v8) && typeof (v8 as any)[1] === "string") result.end_8 = (v8 as any)[1]; } if (fv[9] !== undefined) result.jurisdiction_9 = fromCWE(fv[9]); if (fv[10] !== undefined) result.department_10 = fromCWE(fv[10]); return result; } /** Convert FieldValue to DDI */ function fromDDI(fv: FieldValue | undefined): DDI | undefined { if (fv === undefined) return undefined; if (typeof fv === "string") return { delay_1: fv }; if (Array.isArray(fv)) return fromDDI(fv[0]); const result: DDI = {}; if (fv[1] !== undefined) { const v1 = fv[1]; if (typeof v1 === "string") result.delay_1 = v1; else if (typeof v1 === "object" && !Array.isArray(v1) && typeof (v1 as any)[1] === "string") result.delay_1 = (v1 as any)[1]; } if (fv[2] !== undefined) result.amount_2 = fromMO(fv[2]); if (fv[3] !== undefined) { const v3 = fv[3]; if (typeof v3 === "string") result.days_3 = v3; else if (typeof v3 === "object" && !Array.isArray(v3) && typeof (v3 as any)[1] === "string") result.days_3 = (v3 as any)[1]; } return result; } /** Convert FieldValue to DLD */ function fromDLD(fv: FieldValue | undefined): DLD | undefined { if (fv === undefined) return undefined; if (typeof fv === "string") return { location_1: fv }; if (Array.isArray(fv)) return fromDLD(fv[0]); const result: DLD = {}; if (fv[1] !== undefined) { const v1 = fv[1]; if (typeof v1 === "string") result.location_1 = v1; else if (typeof v1 === "object" && !Array.isArray(v1) && typeof (v1 as any)[1] === "string") result.location_1 = (v1 as any)[1]; } if (fv[2] !== undefined) { const v2 = fv[2]; if (typeof v2 === "string") result.start_2 = v2; else if (typeof v2 === "object" && !Array.isArray(v2) && typeof (v2 as any)[1] === "string") result.start_2 = (v2 as any)[1]; } return result; } /** Convert FieldValue to DLN */ function fromDLN(fv: FieldValue | undefined): DLN | undefined { if (fv === undefined) return undefined; if (typeof fv === "string") return { license_1: fv }; if (Array.isArray(fv)) return fromDLN(fv[0]); const result: DLN = {}; if (fv[1] !== undefined) { const v1 = fv[1]; if (typeof v1 === "string") result.license_1 = v1; else if (typeof v1 === "object" && !Array.isArray(v1) && typeof (v1 as any)[1] === "string") result.license_1 = (v1 as any)[1]; } if (fv[2] !== undefined) { const v2 = fv[2]; if (typeof v2 === "string") result.issuingAuthority_2 = v2; else if (typeof v2 === "object" && !Array.isArray(v2) && typeof (v2 as any)[1] === "string") result.issuingAuthority_2 = (v2 as any)[1]; } if (fv[3] !== undefined) { const v3 = fv[3]; if (typeof v3 === "string") result.end_3 = v3; else if (typeof v3 === "object" && !Array.isArray(v3) && typeof (v3 as any)[1] === "string") result.end_3 = (v3 as any)[1]; } return result; } /** Convert FieldValue to DR */ function fromDR(fv: FieldValue | undefined): DR | undefined { if (fv === undefined) return undefined; if (typeof fv === "string") return { start_1: fv }; if (Array.isArray(fv)) return fromDR(fv[0]); const result: DR = {}; if (fv[1] !== undefined) { const v1 = fv[1]; if (typeof v1 === "string") result.start_1 = v1; else if (typeof v1 === "object" && !Array.isArray(v1) && typeof (v1 as any)[1] === "string") result.start_1 = (v1 as any)[1]; } if (fv[2] !== undefined) { const v2 = fv[2]; if (typeof v2 === "string") result.end_2 = v2; else if (typeof v2 === "object" && !Array.isArray(v2) && typeof (v2 as any)[1] === "string") result.end_2 = (v2 as any)[1]; } return result; } /** Convert FieldValue to DTN */ function fromDTN(fv: FieldValue | undefined): DTN | undefined { if (fv === undefined) return undefined; if (typeof fv === "string") return { dayType_1: fv }; if (Array.isArray(fv)) return fromDTN(fv[0]); const result: DTN = {}; if (fv[1] !== undefined) { const v1 = fv[1]; if (typeof v1 === "string") result.dayType_1 = v1; else if (typeof v1 === "object" && !Array.isArray(v1) && typeof (v1 as any)[1] === "string") result.dayType_1 = (v1 as any)[1]; } if (fv[2] !== undefined) { const v2 = fv[2]; if (typeof v2 === "string") result.days_2 = v2; else if (typeof v2 === "object" && !Array.isArray(v2) && typeof (v2 as any)[1] === "string") result.days_2 = (v2 as any)[1]; } return result; } /** Convert FieldValue to EI */ function fromEI(fv: FieldValue | undefined): EI | undefined { if (fv === undefined) return undefined; if (typeof fv === "string") return { value_1: fv }; if (Array.isArray(fv)) return fromEI(fv[0]); const result: EI = {}; if (fv[1] !== undefined) { const v1 = fv[1]; if (typeof v1 === "string") result.value_1 = v1; else if (typeof v1 === "object" && !Array.isArray(v1) && typeof (v1 as any)[1] === "string") result.value_1 = (v1 as any)[1]; } if (fv[2] !== undefined) { const v2 = fv[2]; if (typeof v2 === "string") result.namespace_2 = v2; else if (typeof v2 === "object" && !Array.isArray(v2) && typeof (v2 as any)[1] === "string") result.namespace_2 = (v2 as any)[1]; } if (fv[3] !== undefined) { const v3 = fv[3]; if (typeof v3 === "string") result.system_3 = v3; else if (typeof v3 === "object" && !Array.isArray(v3) && typeof (v3 as any)[1] === "string") result.system_3 = (v3 as any)[1]; } if (fv[4] !== undefined) { const v4 = fv[4]; if (typeof v4 === "string") result.systemType_4 = v4; else if (typeof v4 === "object" && !Array.isArray(v4) && typeof (v4 as any)[1] === "string") result.systemType_4 = (v4 as any)[1]; } return result; } /** Convert FieldValue to FC */ function fromFC(fv: FieldValue | undefined): FC | undefined { if (fv === undefined) return undefined; if (typeof fv === "string") return { code_1: fv }; if (Array.isArray(fv)) return fromFC(fv[0]); const result: FC = {}; if (fv[1] !== undefined) { const v1 = fv[1]; if (typeof v1 === "string") result.code_1 = v1; else if (typeof v1 === "object" && !Array.isArray(v1) && typeof (v1 as any)[1] === "string") result.code_1 = (v1 as any)[1]; } if (fv[2] !== undefined) { const v2 = fv[2]; if (typeof v2 === "string") result.start_2 = v2; else if (typeof v2 === "object" && !Array.isArray(v2) && typeof (v2 as any)[1] === "string") result.start_2 = (v2 as any)[1]; } return result; } /** Convert FieldValue to FN */ function fromFN(fv: FieldValue | undefined): FN | undefined { if (fv === undefined) return undefined; if (typeof fv === "string") return { family_1: fv }; if (Array.isArray(fv)) return fromFN(fv[0]); const result: FN = {}; if (fv[1] !== undefined) { const v1 = fv[1]; if (typeof v1 === "string") result.family_1 = v1; else if (typeof v1 === "object" && !Array.isArray(v1) && typeof (v1 as any)[1] === "string") result.family_1 = (v1 as any)[1]; } if (fv[2] !== undefined) { const v2 = fv[2]; if (typeof v2 === "string") result.ownPrefix_2 = v2; else if (typeof v2 === "object" && !Array.isArray(v2) && typeof (v2 as any)[1] === "string") result.ownPrefix_2 = (v2 as any)[1]; } if (fv[3] !== undefined) { const v3 = fv[3]; if (typeof v3 === "string") result.ownFamily_3 = v3; else if (typeof v3 === "object" && !Array.isArray(v3) && typeof (v3 as any)[1] === "string") result.ownFamily_3 = (v3 as any)[1]; } if (fv[4] !== undefined) { const v4 = fv[4]; if (typeof v4 === "string") result.partnerPrefix_4 = v4; else if (typeof v4 === "object" && !Array.isArray(v4) && typeof (v4 as any)[1] === "string") result.partnerPrefix_4 = (v4 as any)[1]; } if (fv[5] !== undefined) { const v5 = fv[5]; if (typeof v5 === "string") result.partnerFamily_5 = v5; else if (typeof v5 === "object" && !Array.isArray(v5) && typeof (v5 as any)[1] === "string") result.partnerFamily_5 = (v5 as any)[1]; } return result; } /** Convert FieldValue to HD */ function fromHD(fv: FieldValue | undefined): HD | undefined { if (fv === undefined) return undefined; if (typeof fv === "string") return { namespace_1: fv }; if (Array.isArray(fv)) return fromHD(fv[0]); const result: HD = {}; if (fv[1] !== undefined) { const v1 = fv[1]; if (typeof v1 === "string") result.namespace_1 = v1; else if (typeof v1 === "object" && !Array.isArray(v1) && typeof (v1 as any)[1] === "string") result.namespace_1 = (v1 as any)[1]; } if (fv[2] !== undefined) { const v2 = fv[2]; if (typeof v2 === "string") result.system_2 = v2; else if (typeof v2 === "object" && !Array.isArray(v2) && typeof (v2 as any)[1] === "string") result.system_2 = (v2 as any)[1]; } if (fv[3] !== undefined) { const v3 = fv[3]; if (typeof v3 === "string") result.systemType_3 = v3; else if (typeof v3 === "object" && !Array.isArray(v3) && typeof (v3 as any)[1] === "string") result.systemType_3 = (v3 as any)[1]; } return result; } /** Convert FieldValue to ICD */ function fromICD(fv: FieldValue | undefined): ICD | undefined { if (fv === undefined) return undefined; if (typeof fv === "string") return { patientType_1: fv }; if (Array.isArray(fv)) return fromICD(fv[0]); const result: ICD = {}; if (fv[1] !== undefined) { const v1 = fv[1]; if (typeof v1 === "string") result.patientType_1 = v1; else if (typeof v1 === "object" && !Array.isArray(v1) && typeof (v1 as any)[1] === "string") result.patientType_1 = (v1 as any)[1]; } if (fv[2] !== undefined) { const v2 = fv[2]; if (typeof v2 === "string") result.required_2 = v2; else if (typeof v2 === "object" && !Array.isArray(v2) && typeof (v2 as any)[1] === "string") result.required_2 = (v2 as any)[1]; } if (fv[3] !== undefined) { const v3 = fv[3]; if (typeof v3 === "string") result.requiredAt_3 = v3; else if (typeof v3 === "object" && !Array.isArray(v3) && typeof (v3 as any)[1] === "string") result.requiredAt_3 = (v3 as any)[1]; } return result; } /** Convert FieldValue to JCC */ function fromJCC(fv: FieldValue | undefined): JCC | undefined { if (fv === undefined) return undefined; if (typeof fv === "string") return { jobCode_1: fv }; if (Array.isArray(fv)) return fromJCC(fv[0]); const result: JCC = {}; if (fv[1] !== undefined) { const v1 = fv[1]; if (typeof v1 === "string") result.jobCode_1 = v1; else if (typeof v1 === "object" && !Array.isArray(v1) && typeof (v1 as any)[1] === "string") result.jobCode_1 = (v1 as any)[1]; } if (fv[2] !== undefined) { const v2 = fv[2]; if (typeof v2 === "string") result.jobClass_2 = v2; else if (typeof v2 === "object" && !Array.isArray(v2) && typeof (v2 as any)[1] === "string") result.jobClass_2 = (v2 as any)[1]; } if (fv[3] !== undefined) { const v3 = fv[3]; if (typeof v3 === "string") result.jobDescription_3 = v3; else if (typeof v3 === "object" && !Array.isArray(v3) && typeof (v3 as any)[1] === "string") result.jobDescription_3 = (v3 as any)[1]; } return result; } /** Convert FieldValue to MO */ function fromMO(fv: FieldValue | undefined): MO | undefined { if (fv === undefined) return undefined; if (typeof fv === "string") return { value_1: fv }; if (Array.isArray(fv)) return fromMO(fv[0]); const result: MO = {}; if (fv[1] !== undefined) { const v1 = fv[1]; if (typeof v1 === "string") result.value_1 = v1; else if (typeof v1 === "object" && !Array.isArray(v1) && typeof (v1 as any)[1] === "string") result.value_1 = (v1 as any)[1]; } if (fv[2] !== undefined) { const v2 = fv[2]; if (typeof v2 === "string") result.currency_2 = v2; else if (typeof v2 === "object" && !Array.isArray(v2) && typeof (v2 as any)[1] === "string") result.currency_2 = (v2 as any)[1]; } return result; } /** Convert FieldValue to MOP */ function fromMOP(fv: FieldValue | undefined): MOP | undefined { if (fv === undefined) return undefined; if (typeof fv === "string") return { indicator_1: fv }; if (Array.isArray(fv)) return fromMOP(fv[0]); const result: MOP = {}; if (fv[1] !== undefined) { const v1 = fv[1]; if (typeof v1 === "string") result.indicator_1 = v1; else if (typeof v1 === "object" && !Array.isArray(v1) && typeof (v1 as any)[1] === "string") result.indicator_1 = (v1 as any)[1]; } if (fv[2] !== undefined) { const v2 = fv[2]; if (typeof v2 === "string") result.value_2 = v2; else if (typeof v2 === "object" && !Array.isArray(v2) && typeof (v2 as any)[1] === "string") result.value_2 = (v2 as any)[1]; } if (fv[3] !== undefined) { const v3 = fv[3]; if (typeof v3 === "string") result.currency_3 = v3; else if (typeof v3 === "object" && !Array.isArray(v3) && typeof (v3 as any)[1] === "string") result.currency_3 = (v3 as any)[1]; } return result; } /** Convert FieldValue to MSG */ function fromMSG(fv: FieldValue | undefined): MSG | undefined { if (fv === undefined) return undefined; if (typeof fv === "string") return { code_1: fv }; if (Array.isArray(fv)) return fromMSG(fv[0]); const result: MSG = {}; if (fv[1] !== undefined) { const v1 = fv[1]; if (typeof v1 === "string") result.code_1 = v1; else if (typeof v1 === "object" && !Array.isArray(v1) && typeof (v1 as any)[1] === "string") result.code_1 = (v1 as any)[1]; } if (fv[2] !== undefined) { const v2 = fv[2]; if (typeof v2 === "string") result.event_2 = v2; else if (typeof v2 === "object" && !Array.isArray(v2) && typeof (v2 as any)[1] === "string") result.event_2 = (v2 as any)[1]; } if (fv[3] !== undefined) { const v3 = fv[3]; if (typeof v3 === "string") result.structure_3 = v3; else if (typeof v3 === "object" && !Array.isArray(v3) && typeof (v3 as any)[1] === "string") result.structure_3 = (v3 as any)[1]; } return result; } /** Convert FieldValue to OCD */ function fromOCD(fv: FieldValue | undefined): OCD | undefined { if (fv === undefined) return undefined; if (typeof fv === "string") return { code_1: fromCNE(fv) }; if (Array.isArray(fv)) return fromOCD(fv[0]); const result: OCD = {}; if (fv[1] !== undefined) result.code_1 = fromCNE(fv[1]); if (fv[2] !== undefined) { const v2 = fv[2]; if (typeof v2 === "string") result.date_2 = v2; else if (typeof v2 === "object" && !Array.isArray(v2) && typeof (v2 as any)[1] === "string") result.date_2 = (v2 as any)[1]; } return result; } /** Convert FieldValue to OSP */ function fromOSP(fv: FieldValue | undefined): OSP | undefined { if (fv === undefined) return undefined; if (typeof fv === "string") return { code_1: fromCNE(fv) }; if (Array.isArray(fv)) return fromOSP(fv[0]); const result: OSP = {}; if (fv[1] !== undefined) result.code_1 = fromCNE(fv[1]); if (fv[2] !== undefined) { const v2 = fv[2]; if (typeof v2 === "string") result.start_2 = v2; else if (typeof v2 === "object" && !Array.isArray(v2) && typeof (v2 as any)[1] === "string") result.start_2 = (v2 as any)[1]; } if (fv[3] !== undefined) { const v3 = fv[3]; if (typeof v3 === "string") result.end_3 = v3; else if (typeof v3 === "object" && !Array.isArray(v3) && typeof (v3 as any)[1] === "string") result.end_3 = (v3 as any)[1]; } return result; } /** Convert FieldValue to PL */ function fromPL(fv: FieldValue | undefined): PL | undefined { if (fv === undefined) return undefined; if (typeof fv === "string") return { careSite_1: fv }; if (Array.isArray(fv)) return fromPL(fv[0]); const result: PL = {}; if (fv[1] !== undefined) { const v1 = fv[1]; if (typeof v1 === "string") result.careSite_1 = v1; else if (typeof v1 === "object" && !Array.isArray(v1) && typeof (v1 as any)[1] === "string") result.careSite_1 = (v1 as any)[1]; } if (fv[2] !== undefined) { const v2 = fv[2]; if (typeof v2 === "string") result.room_2 = v2; else if (typeof v2 === "object" && !Array.isArray(v2) && typeof (v2 as any)[1] === "string") result.room_2 = (v2 as any)[1]; } if (fv[3] !== undefined) { const v3 = fv[3]; if (typeof v3 === "string") result.bed_3 = v3; else if (typeof v3 === "object" && !Array.isArray(v3) && typeof (v3 as any)[1] === "string") result.bed_3 = (v3 as any)[1]; } if (fv[4] !== undefined) result.facility_4 = fromHD(fv[4]); if (fv[5] !== undefined) { const v5 = fv[5]; if (typeof v5 === "string") result.status_5 = v5; else if (typeof v5 === "object" && !Array.isArray(v5) && typeof (v5 as any)[1] === "string") result.status_5 = (v5 as any)[1]; } if (fv[6] !== undefined) { const v6 = fv[6]; if (typeof v6 === "string") result.locationType_6 = v6; else if (typeof v6 === "object" && !Array.isArray(v6) && typeof (v6 as any)[1] === "string") result.locationType_6 = (v6 as any)[1]; } if (fv[7] !== undefined) { const v7 = fv[7]; if (typeof v7 === "string") result.building_7 = v7; else if (typeof v7 === "object" && !Array.isArray(v7) && typeof (v7 as any)[1] === "string") result.building_7 = (v7 as any)[1]; } if (fv[8] !== undefined) { const v8 = fv[8]; if (typeof v8 === "string") result.floor_8 = v8; else if (typeof v8 === "object" && !Array.isArray(v8) && typeof (v8 as any)[1] === "string") result.floor_8 = (v8 as any)[1]; } if (fv[9] !== undefined) { const v9 = fv[9]; if (typeof v9 === "string") result.description_9 = v9; else if (typeof v9 === "object" && !Array.isArray(v9) && typeof (v9 as any)[1] === "string") result.description_9 = (v9 as any)[1]; } if (fv[10] !== undefined) result.identifier_10 = fromEI(fv[10]); if (fv[11] !== undefined) result.locationSystem_11 = fromHD(fv[11]); return result; } /** Convert FieldValue to PT */ function fromPT(fv: FieldValue | undefined): PT | undefined { if (fv === undefined) return undefined; if (typeof fv === "string") return { processingId_1: fv }; if (Array.isArray(fv)) return fromPT(fv[0]); const result: PT = {}; if (fv[1] !== undefined) { const v1 = fv[1]; if (typeof v1 === "string") result.processingId_1 = v1; else if (typeof v1 === "object" && !Array.isArray(v1) && typeof (v1 as any)[1] === "string") result.processingId_1 = (v1 as any)[1]; } if (fv[2] !== undefined) { const v2 = fv[2]; if (typeof v2 === "string") result.processingMode_2 = v2; else if (typeof v2 === "object" && !Array.isArray(v2) && typeof (v2 as any)[1] === "string") result.processingMode_2 = (v2 as any)[1]; } return result; } /** Convert FieldValue to PTA */ function fromPTA(fv: FieldValue | undefined): PTA | undefined { if (fv === undefined) return undefined; if (typeof fv === "string") return { policyType_1: fv }; if (Array.isArray(fv)) return fromPTA(fv[0]); const result: PTA = {}; if (fv[1] !== undefined) { const v1 = fv[1]; if (typeof v1 === "string") result.policyType_1 = v1; else if (typeof v1 === "object" && !Array.isArray(v1) && typeof (v1 as any)[1] === "string") result.policyType_1 = (v1 as any)[1]; } if (fv[2] !== undefined) { const v2 = fv[2]; if (typeof v2 === "string") result.amountClass_2 = v2; else if (typeof v2 === "object" && !Array.isArray(v2) && typeof (v2 as any)[1] === "string") result.amountClass_2 = (v2 as any)[1]; } if (fv[3] !== undefined) { const v3 = fv[3]; if (typeof v3 === "string") result.value_3 = v3; else if (typeof v3 === "object" && !Array.isArray(v3) && typeof (v3 as any)[1] === "string") result.value_3 = (v3 as any)[1]; } if (fv[4] !== undefined) result.basis_4 = fromMOP(fv[4]); return result; } /** Convert FieldValue to RMC */ function fromRMC(fv: FieldValue | undefined): RMC | undefined { if (fv === undefined) return undefined; if (typeof fv === "string") return { roomType_1: fv }; if (Array.isArray(fv)) return fromRMC(fv[0]); const result: RMC = {}; if (fv[1] !== undefined) { const v1 = fv[1]; if (typeof v1 === "string") result.roomType_1 = v1; else if (typeof v1 === "object" && !Array.isArray(v1) && typeof (v1 as any)[1] === "string") result.roomType_1 = (v1 as any)[1]; } if (fv[2] !== undefined) { const v2 = fv[2]; if (typeof v2 === "string") result.amountType_2 = v2; else if (typeof v2 === "object" && !Array.isArray(v2) && typeof (v2 as any)[1] === "string") result.amountType_2 = (v2 as any)[1]; } if (fv[3] !== undefined) { const v3 = fv[3]; if (typeof v3 === "string") result.coverage_3 = v3; else if (typeof v3 === "object" && !Array.isArray(v3) && typeof (v3 as any)[1] === "string") result.coverage_3 = (v3 as any)[1]; } if (fv[4] !== undefined) result.basis_4 = fromMOP(fv[4]); return result; } /** Convert FieldValue to SAD */ function fromSAD(fv: FieldValue | undefined): SAD | undefined { if (fv === undefined) return undefined; if (typeof fv === "string") return { line_1: fv }; if (Array.isArray(fv)) return fromSAD(fv[0]); const result: SAD = {}; if (fv[1] !== undefined) { const v1 = fv[1]; if (typeof v1 === "string") result.line_1 = v1; else if (typeof v1 === "object" && !Array.isArray(v1) && typeof (v1 as any)[1] === "string") result.line_1 = (v1 as any)[1]; } if (fv[2] !== undefined) { const v2 = fv[2]; if (typeof v2 === "string") result.streetName_2 = v2; else if (typeof v2 === "object" && !Array.isArray(v2) && typeof (v2 as any)[1] === "string") result.streetName_2 = (v2 as any)[1]; } if (fv[3] !== undefined) { const v3 = fv[3]; if (typeof v3 === "string") result.houseNumber_3 = v3; else if (typeof v3 === "object" && !Array.isArray(v3) && typeof (v3 as any)[1] === "string") result.houseNumber_3 = (v3 as any)[1]; } return result; } /** Convert FieldValue to UVC */ function fromUVC(fv: FieldValue | undefined): UVC | undefined { if (fv === undefined) return undefined; if (typeof fv === "string") return { code_1: fromCNE(fv) }; if (Array.isArray(fv)) return fromUVC(fv[0]); const result: UVC = {}; if (fv[1] !== undefined) result.code_1 = fromCNE(fv[1]); if (fv[2] !== undefined) result.amount_2 = fromMO(fv[2]); return result; } /** Convert FieldValue to VID */ function fromVID(fv: FieldValue | undefined): VID | undefined { if (fv === undefined) return undefined; if (typeof fv === "string") return { version_1: fv }; if (Array.isArray(fv)) return fromVID(fv[0]); const result: VID = {}; if (fv[1] !== undefined) { const v1 = fv[1]; if (typeof v1 === "string") result.version_1 = v1; else if (typeof v1 === "object" && !Array.isArray(v1) && typeof (v1 as any)[1] === "string") result.version_1 = (v1 as any)[1]; } if (fv[2] !== undefined) result.locale_2 = fromCE(fv[2]); if (fv[3] !== undefined) result.internationalVersion_3 = fromCE(fv[3]); return result; } /** Convert FieldValue to XAD */ function fromXAD(fv: FieldValue | undefined): XAD | undefined { if (fv === undefined) return undefined; if (typeof fv === "string") return { line1_1: fromSAD(fv) }; if (Array.isArray(fv)) return fromXAD(fv[0]); const result: XAD = {}; if (fv[1] !== undefined) result.line1_1 = fromSAD(fv[1]); if (fv[2] !== undefined) { const v2 = fv[2]; if (typeof v2 === "string") result.line2_2 = v2; else if (typeof v2 === "object" && !Array.isArray(v2) && typeof (v2 as any)[1] === "string") result.line2_2 = (v2 as any)[1]; } if (fv[3] !== undefined) { const v3 = fv[3]; if (typeof v3 === "string") result.city_3 = v3; else if (typeof v3 === "object" && !Array.isArray(v3) && typeof (v3 as any)[1] === "string") result.city_3 = (v3 as any)[1]; } if (fv[4] !== undefined) { const v4 = fv[4]; if (typeof v4 === "string") result.state_4 = v4; else if (typeof v4 === "object" && !Array.isArray(v4) && typeof (v4 as any)[1] === "string") result.state_4 = (v4 as any)[1]; } if (fv[5] !== undefined) { const v5 = fv[5]; if (typeof v5 === "string") result.postalCode_5 = v5; else if (typeof v5 === "object" && !Array.isArray(v5) && typeof (v5 as any)[1] === "string") result.postalCode_5 = (v5 as any)[1]; } if (fv[6] !== undefined) { const v6 = fv[6]; if (typeof v6 === "string") result.country_6 = v6; else if (typeof v6 === "object" && !Array.isArray(v6) && typeof (v6 as any)[1] === "string") result.country_6 = (v6 as any)[1]; } if (fv[7] !== undefined) { const v7 = fv[7]; if (typeof v7 === "string") result.type_7 = v7; else if (typeof v7 === "object" && !Array.isArray(v7) && typeof (v7 as any)[1] === "string") result.type_7 = (v7 as any)[1]; } if (fv[8] !== undefined) { const v8 = fv[8]; if (typeof v8 === "string") result.additionalLocator_8 = v8; else if (typeof v8 === "object" && !Array.isArray(v8) && typeof (v8 as any)[1] === "string") result.additionalLocator_8 = (v8 as any)[1]; } if (fv[9] !== undefined) { const v9 = fv[9]; if (typeof v9 === "string") result.district_9 = v9; else if (typeof v9 === "object" && !Array.isArray(v9) && typeof (v9 as any)[1] === "string") result.district_9 = (v9 as any)[1]; } if (fv[10] !== undefined) { const v10 = fv[10]; if (typeof v10 === "string") result.censusTract_10 = v10; else if (typeof v10 === "object" && !Array.isArray(v10) && typeof (v10 as any)[1] === "string") result.censusTract_10 = (v10 as any)[1]; } if (fv[11] !== undefined) { const v11 = fv[11]; if (typeof v11 === "string") result.representation_11 = v11; else if (typeof v11 === "object" && !Array.isArray(v11) && typeof (v11 as any)[1] === "string") result.representation_11 = (v11 as any)[1]; } if (fv[12] !== undefined) result.period_12 = fromDR(fv[12]); if (fv[13] !== undefined) { const v13 = fv[13]; if (typeof v13 === "string") result.start_13 = v13; else if (typeof v13 === "object" && !Array.isArray(v13) && typeof (v13 as any)[1] === "string") result.start_13 = (v13 as any)[1]; } if (fv[14] !== undefined) { const v14 = fv[14]; if (typeof v14 === "string") result.end_14 = v14; else if (typeof v14 === "object" && !Array.isArray(v14) && typeof (v14 as any)[1] === "string") result.end_14 = (v14 as any)[1]; } return result; } /** Convert FieldValue to XCN */ function fromXCN(fv: FieldValue | undefined): XCN | undefined { if (fv === undefined) return undefined; if (typeof fv === "string") return { value_1: fv }; if (Array.isArray(fv)) return fromXCN(fv[0]); const result: XCN = {}; if (fv[1] !== undefined) { const v1 = fv[1]; if (typeof v1 === "string") result.value_1 = v1; else if (typeof v1 === "object" && !Array.isArray(v1) && typeof (v1 as any)[1] === "string") result.value_1 = (v1 as any)[1]; } if (fv[2] !== undefined) result.family_2 = fromFN(fv[2]); if (fv[3] !== undefined) { const v3 = fv[3]; if (typeof v3 === "string") result.given_3 = v3; else if (typeof v3 === "object" && !Array.isArray(v3) && typeof (v3 as any)[1] === "string") result.given_3 = (v3 as any)[1]; } if (fv[4] !== undefined) { const v4 = fv[4]; if (typeof v4 === "string") result.additionalGiven_4 = v4; else if (typeof v4 === "object" && !Array.isArray(v4) && typeof (v4 as any)[1] === "string") result.additionalGiven_4 = (v4 as any)[1]; } if (fv[5] !== undefined) { const v5 = fv[5]; if (typeof v5 === "string") result.suffix_5 = v5; else if (typeof v5 === "object" && !Array.isArray(v5) && typeof (v5 as any)[1] === "string") result.suffix_5 = (v5 as any)[1]; } if (fv[6] !== undefined) { const v6 = fv[6]; if (typeof v6 === "string") result.prefix_6 = v6; else if (typeof v6 === "object" && !Array.isArray(v6) && typeof (v6 as any)[1] === "string") result.prefix_6 = (v6 as any)[1]; } if (fv[7] !== undefined) { const v7 = fv[7]; if (typeof v7 === "string") result.qualification_7 = v7; else if (typeof v7 === "object" && !Array.isArray(v7) && typeof (v7 as any)[1] === "string") result.qualification_7 = (v7 as any)[1]; } if (fv[8] !== undefined) { const v8 = fv[8]; if (typeof v8 === "string") result.sourceTable_8 = v8; else if (typeof v8 === "object" && !Array.isArray(v8) && typeof (v8 as any)[1] === "string") result.sourceTable_8 = (v8 as any)[1]; } if (fv[9] !== undefined) result.system_9 = fromHD(fv[9]); if (fv[10] !== undefined) { const v10 = fv[10]; if (typeof v10 === "string") result.use_10 = v10; else if (typeof v10 === "object" && !Array.isArray(v10) && typeof (v10 as any)[1] === "string") result.use_10 = (v10 as any)[1]; } if (fv[11] !== undefined) { const v11 = fv[11]; if (typeof v11 === "string") result.checkDigit_11 = v11; else if (typeof v11 === "object" && !Array.isArray(v11) && typeof (v11 as any)[1] === "string") result.checkDigit_11 = (v11 as any)[1]; } if (fv[12] !== undefined) { const v12 = fv[12]; if (typeof v12 === "string") result.checkDigitScheme_12 = v12; else if (typeof v12 === "object" && !Array.isArray(v12) && typeof (v12 as any)[1] === "string") result.checkDigitScheme_12 = (v12 as any)[1]; } if (fv[13] !== undefined) { const v13 = fv[13]; if (typeof v13 === "string") result.type_13 = v13; else if (typeof v13 === "object" && !Array.isArray(v13) && typeof (v13 as any)[1] === "string") result.type_13 = (v13 as any)[1]; } if (fv[14] !== undefined) result.assigner_14 = fromHD(fv[14]); if (fv[15] !== undefined) { const v15 = fv[15]; if (typeof v15 === "string") result.representation_15 = v15; else if (typeof v15 === "object" && !Array.isArray(v15) && typeof (v15 as any)[1] === "string") result.representation_15 = (v15 as any)[1]; } if (fv[16] !== undefined) result.context_16 = fromCE(fv[16]); if (fv[17] !== undefined) result.period_17 = fromDR(fv[17]); if (fv[18] !== undefined) { const v18 = fv[18]; if (typeof v18 === "string") result.order_18 = v18; else if (typeof v18 === "object" && !Array.isArray(v18) && typeof (v18 as any)[1] === "string") result.order_18 = (v18 as any)[1]; } if (fv[19] !== undefined) { const v19 = fv[19]; if (typeof v19 === "string") result.start_19 = v19; else if (typeof v19 === "object" && !Array.isArray(v19) && typeof (v19 as any)[1] === "string") result.start_19 = (v19 as any)[1]; } if (fv[20] !== undefined) { const v20 = fv[20]; if (typeof v20 === "string") result.end_20 = v20; else if (typeof v20 === "object" && !Array.isArray(v20) && typeof (v20 as any)[1] === "string") result.end_20 = (v20 as any)[1]; } if (fv[21] !== undefined) { const v21 = fv[21]; if (typeof v21 === "string") result.credential_21 = v21; else if (typeof v21 === "object" && !Array.isArray(v21) && typeof (v21 as any)[1] === "string") result.credential_21 = (v21 as any)[1]; } if (fv[22] !== undefined) result.jurisdiction_22 = fromCWE(fv[22]); if (fv[23] !== undefined) result.department_23 = fromCWE(fv[23]); return result; } /** Convert FieldValue to XON */ function fromXON(fv: FieldValue | undefined): XON | undefined { if (fv === undefined) return undefined; if (typeof fv === "string") return { name_1: fv }; if (Array.isArray(fv)) return fromXON(fv[0]); const result: XON = {}; if (fv[1] !== undefined) { const v1 = fv[1]; if (typeof v1 === "string") result.name_1 = v1; else if (typeof v1 === "object" && !Array.isArray(v1) && typeof (v1 as any)[1] === "string") result.name_1 = (v1 as any)[1]; } if (fv[2] !== undefined) { const v2 = fv[2]; if (typeof v2 === "string") result.nameType_2 = v2; else if (typeof v2 === "object" && !Array.isArray(v2) && typeof (v2 as any)[1] === "string") result.nameType_2 = (v2 as any)[1]; } if (fv[3] !== undefined) { const v3 = fv[3]; if (typeof v3 === "string") result.value_3 = v3; else if (typeof v3 === "object" && !Array.isArray(v3) && typeof (v3 as any)[1] === "string") result.value_3 = (v3 as any)[1]; } if (fv[4] !== undefined) { const v4 = fv[4]; if (typeof v4 === "string") result.checkDigit_4 = v4; else if (typeof v4 === "object" && !Array.isArray(v4) && typeof (v4 as any)[1] === "string") result.checkDigit_4 = (v4 as any)[1]; } if (fv[5] !== undefined) { const v5 = fv[5]; if (typeof v5 === "string") result.checkDigitScheme_5 = v5; else if (typeof v5 === "object" && !Array.isArray(v5) && typeof (v5 as any)[1] === "string") result.checkDigitScheme_5 = (v5 as any)[1]; } if (fv[6] !== undefined) result.system_6 = fromHD(fv[6]); if (fv[7] !== undefined) { const v7 = fv[7]; if (typeof v7 === "string") result.type_7 = v7; else if (typeof v7 === "object" && !Array.isArray(v7) && typeof (v7 as any)[1] === "string") result.type_7 = (v7 as any)[1]; } if (fv[8] !== undefined) result.assigner_8 = fromHD(fv[8]); if (fv[9] !== undefined) { const v9 = fv[9]; if (typeof v9 === "string") result.representation_9 = v9; else if (typeof v9 === "object" && !Array.isArray(v9) && typeof (v9 as any)[1] === "string") result.representation_9 = (v9 as any)[1]; } if (fv[10] !== undefined) { const v10 = fv[10]; if (typeof v10 === "string") result.organizationId_10 = v10; else if (typeof v10 === "object" && !Array.isArray(v10) && typeof (v10 as any)[1] === "string") result.organizationId_10 = (v10 as any)[1]; } return result; } /** Convert FieldValue to XPN */ function fromXPN(fv: FieldValue | undefined): XPN | undefined { if (fv === undefined) return undefined; if (typeof fv === "string") return { family_1: fromFN(fv) }; if (Array.isArray(fv)) return fromXPN(fv[0]); const result: XPN = {}; if (fv[1] !== undefined) result.family_1 = fromFN(fv[1]); if (fv[2] !== undefined) { const v2 = fv[2]; if (typeof v2 === "string") result.given_2 = v2; else if (typeof v2 === "object" && !Array.isArray(v2) && typeof (v2 as any)[1] === "string") result.given_2 = (v2 as any)[1]; } if (fv[3] !== undefined) { const v3 = fv[3]; if (typeof v3 === "string") result.additionalGiven_3 = v3; else if (typeof v3 === "object" && !Array.isArray(v3) && typeof (v3 as any)[1] === "string") result.additionalGiven_3 = (v3 as any)[1]; } if (fv[4] !== undefined) { const v4 = fv[4]; if (typeof v4 === "string") result.suffix_4 = v4; else if (typeof v4 === "object" && !Array.isArray(v4) && typeof (v4 as any)[1] === "string") result.suffix_4 = (v4 as any)[1]; } if (fv[5] !== undefined) { const v5 = fv[5]; if (typeof v5 === "string") result.prefix_5 = v5; else if (typeof v5 === "object" && !Array.isArray(v5) && typeof (v5 as any)[1] === "string") result.prefix_5 = (v5 as any)[1]; } if (fv[6] !== undefined) { const v6 = fv[6]; if (typeof v6 === "string") result.qualification_6 = v6; else if (typeof v6 === "object" && !Array.isArray(v6) && typeof (v6 as any)[1] === "string") result.qualification_6 = (v6 as any)[1]; } if (fv[7] !== undefined) { const v7 = fv[7]; if (typeof v7 === "string") result.use_7 = v7; else if (typeof v7 === "object" && !Array.isArray(v7) && typeof (v7 as any)[1] === "string") result.use_7 = (v7 as any)[1]; } if (fv[8] !== undefined) { const v8 = fv[8]; if (typeof v8 === "string") result.representation_8 = v8; else if (typeof v8 === "object" && !Array.isArray(v8) && typeof (v8 as any)[1] === "string") result.representation_8 = (v8 as any)[1]; } if (fv[9] !== undefined) result.context_9 = fromCE(fv[9]); if (fv[10] !== undefined) result.period_10 = fromDR(fv[10]); if (fv[11] !== undefined) { const v11 = fv[11]; if (typeof v11 === "string") result.order_11 = v11; else if (typeof v11 === "object" && !Array.isArray(v11) && typeof (v11 as any)[1] === "string") result.order_11 = (v11 as any)[1]; } if (fv[12] !== undefined) { const v12 = fv[12]; if (typeof v12 === "string") result.start_12 = v12; else if (typeof v12 === "object" && !Array.isArray(v12) && typeof (v12 as any)[1] === "string") result.start_12 = (v12 as any)[1]; } if (fv[13] !== undefined) { const v13 = fv[13]; if (typeof v13 === "string") result.end_13 = v13; else if (typeof v13 === "object" && !Array.isArray(v13) && typeof (v13 as any)[1] === "string") result.end_13 = (v13 as any)[1]; } if (fv[14] !== undefined) { const v14 = fv[14]; if (typeof v14 === "string") result.credential_14 = v14; else if (typeof v14 === "object" && !Array.isArray(v14) && typeof (v14 as any)[1] === "string") result.credential_14 = (v14 as any)[1]; } return result; } /** Convert FieldValue to XTN */ function fromXTN(fv: FieldValue | undefined): XTN | undefined { if (fv === undefined) return undefined; if (typeof fv === "string") return { value_1: fv }; if (Array.isArray(fv)) return fromXTN(fv[0]); const result: XTN = {}; if (fv[1] !== undefined) { const v1 = fv[1]; if (typeof v1 === "string") result.value_1 = v1; else if (typeof v1 === "object" && !Array.isArray(v1) && typeof (v1 as any)[1] === "string") result.value_1 = (v1 as any)[1]; } if (fv[2] !== undefined) { const v2 = fv[2]; if (typeof v2 === "string") result.use_2 = v2; else if (typeof v2 === "object" && !Array.isArray(v2) && typeof (v2 as any)[1] === "string") result.use_2 = (v2 as any)[1]; } if (fv[3] !== undefined) { const v3 = fv[3]; if (typeof v3 === "string") result.system_3 = v3; else if (typeof v3 === "object" && !Array.isArray(v3) && typeof (v3 as any)[1] === "string") result.system_3 = (v3 as any)[1]; } if (fv[4] !== undefined) { const v4 = fv[4]; if (typeof v4 === "string") result.email_4 = v4; else if (typeof v4 === "object" && !Array.isArray(v4) && typeof (v4 as any)[1] === "string") result.email_4 = (v4 as any)[1]; } if (fv[5] !== undefined) { const v5 = fv[5]; if (typeof v5 === "string") result.countryCode_5 = v5; else if (typeof v5 === "object" && !Array.isArray(v5) && typeof (v5 as any)[1] === "string") result.countryCode_5 = (v5 as any)[1]; } if (fv[6] !== undefined) { const v6 = fv[6]; if (typeof v6 === "string") result.areaCode_6 = v6; else if (typeof v6 === "object" && !Array.isArray(v6) && typeof (v6 as any)[1] === "string") result.areaCode_6 = (v6 as any)[1]; } if (fv[7] !== undefined) { const v7 = fv[7]; if (typeof v7 === "string") result.localNumber_7 = v7; else if (typeof v7 === "object" && !Array.isArray(v7) && typeof (v7 as any)[1] === "string") result.localNumber_7 = (v7 as any)[1]; } if (fv[8] !== undefined) { const v8 = fv[8]; if (typeof v8 === "string") result.extension_8 = v8; else if (typeof v8 === "object" && !Array.isArray(v8) && typeof (v8 as any)[1] === "string") result.extension_8 = (v8 as any)[1]; } if (fv[9] !== undefined) { const v9 = fv[9]; if (typeof v9 === "string") result.text_9 = v9; else if (typeof v9 === "object" && !Array.isArray(v9) && typeof (v9 as any)[1] === "string") result.text_9 = (v9 as any)[1]; } if (fv[10] !== undefined) { const v10 = fv[10]; if (typeof v10 === "string") result.extensionPrefix_10 = v10; else if (typeof v10 === "object" && !Array.isArray(v10) && typeof (v10 as any)[1] === "string") result.extensionPrefix_10 = (v10 as any)[1]; } if (fv[11] !== undefined) { const v11 = fv[11]; if (typeof v11 === "string") result.speedDial_11 = v11; else if (typeof v11 === "object" && !Array.isArray(v11) && typeof (v11 as any)[1] === "string") result.speedDial_11 = (v11 as any)[1]; } if (fv[12] !== undefined) { const v12 = fv[12]; if (typeof v12 === "string") result.unformatted_12 = v12; else if (typeof v12 === "object" && !Array.isArray(v12) && typeof (v12 as any)[1] === "string") result.unformatted_12 = (v12 as any)[1]; } return result; } // ====== ACC Segment ====== /** Get ACC.1 - Accident Date/Time */ export function ACC_1_accident_date_time(seg: HL7v2Segment): string | undefined { const val = seg.fields[1]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get ACC.2.1 - Identifier */ export function ACC_2_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 1); } /** Get ACC.2.2 - Text */ export function ACC_2_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 2); } /** Get ACC.2.3 - Name of Coding System */ export function ACC_2_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 3); } /** Get ACC.2.4 - Alternate Identifier */ export function ACC_2_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 4); } /** Get ACC.2.5 - Alternate Text */ export function ACC_2_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 5); } /** Get ACC.2.6 - Name of Alternate Coding System */ export function ACC_2_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 6); } /** Get ACC.3 - Accident Location */ export function ACC_3_accident_location(seg: HL7v2Segment): string | undefined { const val = seg.fields[3]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get ACC.4.1 - Identifier */ export function ACC_4_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 1); } /** Get ACC.4.2 - Text */ export function ACC_4_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 2); } /** Get ACC.4.3 - Name of Coding System */ export function ACC_4_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 3); } /** Get ACC.4.4 - Alternate Identifier */ export function ACC_4_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 4); } /** Get ACC.4.5 - Alternate Text */ export function ACC_4_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 5); } /** Get ACC.4.6 - Name of Alternate Coding System */ export function ACC_4_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 6); } /** Get ACC.5 - Accident Job Related Indicator */ export function ACC_5_accident_job_related_indicator(seg: HL7v2Segment): string | undefined { const val = seg.fields[5]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get ACC.6 - Accident Death Indicator */ export function ACC_6_accident_death_indicator(seg: HL7v2Segment): string | undefined { const val = seg.fields[6]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get ACC.7.1 - ID Number */ export function ACC_7_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 1); } /** Get ACC.7.2 - Family Name */ export function ACC_7_2_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 2); } /** Get ACC.7.2.1 - Surname */ export function ACC_7_2_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 2, 1); } /** Get ACC.7.2.2 - Own Surname Prefix */ export function ACC_7_2_2_own_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 2, 2); } /** Get ACC.7.2.3 - Own Surname */ export function ACC_7_2_3_own_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 2, 3); } /** Get ACC.7.2.4 - Surname Prefix From Partner/Spouse */ export function ACC_7_2_4_partner_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 2, 4); } /** Get ACC.7.2.5 - Surname From Partner/Spouse */ export function ACC_7_2_5_partner_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 2, 5); } /** Get ACC.7.3 - Given Name */ export function ACC_7_3_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 3); } /** Get ACC.7.4 - Second and Further Given Names or Initials Thereof */ export function ACC_7_4_additional_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 4); } /** Get ACC.7.5 - Suffix (e.g., JR or III) */ export function ACC_7_5_suffix(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 5); } /** Get ACC.7.6 - Prefix (e.g., DR) */ export function ACC_7_6_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 6); } /** Get ACC.7.7 - Degree (e.g., MD) */ export function ACC_7_7_qualification(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 7); } /** Get ACC.7.8 - Source Table */ export function ACC_7_8_source_table(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 8); } /** Get ACC.7.9 - Assigning Authority */ export function ACC_7_9_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 9); } /** Get ACC.7.9.1 - Namespace ID */ export function ACC_7_9_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 9, 1); } /** Get ACC.7.9.2 - Universal ID */ export function ACC_7_9_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 9, 2); } /** Get ACC.7.9.3 - Universal ID Type */ export function ACC_7_9_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 9, 3); } /** Get ACC.7.10 - Name Type Code */ export function ACC_7_10_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 10); } /** Get ACC.7.11 - Identifier Check Digit */ export function ACC_7_11_check_digit(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 11); } /** Get ACC.7.12 - Check Digit Scheme */ export function ACC_7_12_check_digit_scheme(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 12); } /** Get ACC.7.13 - Identifier Type Code */ export function ACC_7_13_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 13); } /** Get ACC.7.14 - Assigning Facility */ export function ACC_7_14_assigner(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 14); } /** Get ACC.7.14.1 - Namespace ID */ export function ACC_7_14_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 14, 1); } /** Get ACC.7.14.2 - Universal ID */ export function ACC_7_14_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 14, 2); } /** Get ACC.7.14.3 - Universal ID Type */ export function ACC_7_14_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 14, 3); } /** Get ACC.7.15 - Name Representation Code */ export function ACC_7_15_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 15); } /** Get ACC.7.16 - Name Context */ export function ACC_7_16_context(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 16); } /** Get ACC.7.16.1 - Identifier */ export function ACC_7_16_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 16, 1); } /** Get ACC.7.16.2 - Text */ export function ACC_7_16_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 16, 2); } /** Get ACC.7.16.3 - Name of Coding System */ export function ACC_7_16_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 16, 3); } /** Get ACC.7.16.4 - Alternate Identifier */ export function ACC_7_16_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 16, 4); } /** Get ACC.7.16.5 - Alternate Text */ export function ACC_7_16_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 16, 5); } /** Get ACC.7.16.6 - Name of Alternate Coding System */ export function ACC_7_16_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 16, 6); } /** Get ACC.7.17 - Name Validity Range */ export function ACC_7_17_period(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 17); } /** Get ACC.7.17.1 - Range Start Date/Time */ export function ACC_7_17_1_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 17, 1); } /** Get ACC.7.17.2 - Range End Date/Time */ export function ACC_7_17_2_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 17, 2); } /** Get ACC.7.18 - Name Assembly Order */ export function ACC_7_18_order(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 18); } /** Get ACC.7.19 - Effective Date */ export function ACC_7_19_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 19); } /** Get ACC.7.20 - Expiration Date */ export function ACC_7_20_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 20); } /** Get ACC.7.21 - Professional Suffix */ export function ACC_7_21_credential(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 21); } /** Get ACC.7.22 - Assigning Jurisdiction */ export function ACC_7_22_jurisdiction(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 22); } /** Get ACC.7.22.1 - Identifier */ export function ACC_7_22_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 22, 1); } /** Get ACC.7.22.2 - Text */ export function ACC_7_22_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 22, 2); } /** Get ACC.7.22.3 - Name of Coding System */ export function ACC_7_22_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 22, 3); } /** Get ACC.7.22.4 - Alternate Identifier */ export function ACC_7_22_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 22, 4); } /** Get ACC.7.22.5 - Alternate Text */ export function ACC_7_22_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 22, 5); } /** Get ACC.7.22.6 - Name of Alternate Coding System */ export function ACC_7_22_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 22, 6); } /** Get ACC.7.22.7 - Coding System Version ID */ export function ACC_7_22_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 22, 7); } /** Get ACC.7.22.8 - Alternate Coding System Version ID */ export function ACC_7_22_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 22, 8); } /** Get ACC.7.22.9 - Original Text */ export function ACC_7_22_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 22, 9); } /** Get ACC.7.23 - Assigning Agency or Department */ export function ACC_7_23_department(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 23); } /** Get ACC.7.23.1 - Identifier */ export function ACC_7_23_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 23, 1); } /** Get ACC.7.23.2 - Text */ export function ACC_7_23_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 23, 2); } /** Get ACC.7.23.3 - Name of Coding System */ export function ACC_7_23_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 23, 3); } /** Get ACC.7.23.4 - Alternate Identifier */ export function ACC_7_23_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 23, 4); } /** Get ACC.7.23.5 - Alternate Text */ export function ACC_7_23_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 23, 5); } /** Get ACC.7.23.6 - Name of Alternate Coding System */ export function ACC_7_23_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 23, 6); } /** Get ACC.7.23.7 - Coding System Version ID */ export function ACC_7_23_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 23, 7); } /** Get ACC.7.23.8 - Alternate Coding System Version ID */ export function ACC_7_23_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 23, 8); } /** Get ACC.7.23.9 - Original Text */ export function ACC_7_23_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 23, 9); } /** Get ACC.8 - Accident Description */ export function ACC_8_accident_description(seg: HL7v2Segment): string | undefined { const val = seg.fields[8]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get ACC.9 - Brought In By */ export function ACC_9_brought_in_by(seg: HL7v2Segment): string | undefined { const val = seg.fields[9]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get ACC.10 - Police Notified Indicator */ export function ACC_10_police_notified_indicator(seg: HL7v2Segment): string | undefined { const val = seg.fields[10]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get ACC.11.1 - Street Address */ export function ACC_11_1_line1(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 1); } /** Get ACC.11.1.1 - Street or Mailing Address */ export function ACC_11_1_1_line(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 1, 1); } /** Get ACC.11.1.2 - Street Name */ export function ACC_11_1_2_street_name(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 1, 2); } /** Get ACC.11.1.3 - Dwelling Number */ export function ACC_11_1_3_house_number(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 1, 3); } /** Get ACC.11.2 - Other Designation */ export function ACC_11_2_line2(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 2); } /** Get ACC.11.3 - City */ export function ACC_11_3_city(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 3); } /** Get ACC.11.4 - State or Province */ export function ACC_11_4_state(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 4); } /** Get ACC.11.5 - Zip or Postal Code */ export function ACC_11_5_postal_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 5); } /** Get ACC.11.6 - Country */ export function ACC_11_6_country(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 6); } /** Get ACC.11.7 - Address Type */ export function ACC_11_7_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 7); } /** Get ACC.11.8 - Other Geographic Designation */ export function ACC_11_8_additional_locator(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 8); } /** Get ACC.11.9 - County/Parish Code */ export function ACC_11_9_district(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 9); } /** Get ACC.11.10 - Census Tract */ export function ACC_11_10_census_tract(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 10); } /** Get ACC.11.11 - Address Representation Code */ export function ACC_11_11_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 11); } /** Get ACC.11.12 - Address Validity Range */ export function ACC_11_12_period(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 12); } /** Get ACC.11.12.1 - Range Start Date/Time */ export function ACC_11_12_1_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 12, 1); } /** Get ACC.11.12.2 - Range End Date/Time */ export function ACC_11_12_2_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 12, 2); } /** Get ACC.11.13 - Effective Date */ export function ACC_11_13_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 13); } /** Get ACC.11.14 - Expiration Date */ export function ACC_11_14_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 14); } export class ACCBuilder { private seg: HL7v2Segment = { segment: "ACC", fields: {} }; /** ACC.1 - Accident Date/Time */ set_acc_1_accidentDateTime(value: string | null | undefined): this { if (value != null) this.seg.fields[1] = value; return this; } /** ACC.1 - Accident Date/Time */ get_acc_1_accidentDateTime(): string | undefined { const val = this.seg.fields[1]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** ACC.2 - Accident Code */ set_acc_2_accidentCode(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[2] = fv; return this; } /** ACC.2 - Accident Code */ get_acc_2_accidentCode(): CE | undefined { return fromCE(this.seg.fields[2]); } /** ACC.3 - Accident Location */ set_acc_3_accidentLocation(value: string | null | undefined): this { if (value != null) this.seg.fields[3] = value; return this; } /** ACC.3 - Accident Location */ get_acc_3_accidentLocation(): string | undefined { const val = this.seg.fields[3]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** ACC.4 - Auto Accident State */ set_acc_4_autoAccidentState(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[4] = fv; return this; } /** ACC.4 - Auto Accident State */ get_acc_4_autoAccidentState(): CE | undefined { return fromCE(this.seg.fields[4]); } /** ACC.5 - Accident Job Related Indicator */ set_acc_5_accidentJobRelatedIndicator(value: string | null | undefined): this { if (value != null) this.seg.fields[5] = value; return this; } /** ACC.5 - Accident Job Related Indicator */ get_acc_5_accidentJobRelatedIndicator(): string | undefined { const val = this.seg.fields[5]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** ACC.6 - Accident Death Indicator */ set_acc_6_accidentDeathIndicator(value: string | null | undefined): this { if (value != null) this.seg.fields[6] = value; return this; } /** ACC.6 - Accident Death Indicator */ get_acc_6_accidentDeathIndicator(): string | undefined { const val = this.seg.fields[6]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** ACC.7 - Entered By */ set_acc_7_enteredBy(value: XCN | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[7] = fv; return this; } /** ACC.7 - Entered By */ get_acc_7_enteredBy(): XCN | undefined { return fromXCN(this.seg.fields[7]); } /** ACC.8 - Accident Description */ set_acc_8_accidentDescription(value: string | null | undefined): this { if (value != null) this.seg.fields[8] = value; return this; } /** ACC.8 - Accident Description */ get_acc_8_accidentDescription(): string | undefined { const val = this.seg.fields[8]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** ACC.9 - Brought In By */ set_acc_9_broughtInBy(value: string | null | undefined): this { if (value != null) this.seg.fields[9] = value; return this; } /** ACC.9 - Brought In By */ get_acc_9_broughtInBy(): string | undefined { const val = this.seg.fields[9]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** ACC.10 - Police Notified Indicator */ set_acc_10_policeNotifiedIndicator(value: string | null | undefined): this { if (value != null) this.seg.fields[10] = value; return this; } /** ACC.10 - Police Notified Indicator */ get_acc_10_policeNotifiedIndicator(): string | undefined { const val = this.seg.fields[10]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** ACC.11 - Accident Address */ set_acc_11_accidentAddress(value: XAD | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[11] = fv; return this; } /** ACC.11 - Accident Address */ get_acc_11_accidentAddress(): XAD | undefined { return fromXAD(this.seg.fields[11]); } build(): HL7v2Segment { return this.seg; } } // ====== AL1 Segment ====== /** Get AL1.1 - Set ID - AL1 */ export function AL1_1_set_id_al1(seg: HL7v2Segment): string | undefined { const val = seg.fields[1]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get AL1.2.1 - Identifier */ export function AL1_2_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 1); } /** Get AL1.2.2 - Text */ export function AL1_2_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 2); } /** Get AL1.2.3 - Name of Coding System */ export function AL1_2_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 3); } /** Get AL1.2.4 - Alternate Identifier */ export function AL1_2_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 4); } /** Get AL1.2.5 - Alternate Text */ export function AL1_2_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 5); } /** Get AL1.2.6 - Name of Alternate Coding System */ export function AL1_2_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 6); } /** Get AL1.3.1 - Identifier */ export function AL1_3_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 1); } /** Get AL1.3.2 - Text */ export function AL1_3_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 2); } /** Get AL1.3.3 - Name of Coding System */ export function AL1_3_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 3); } /** Get AL1.3.4 - Alternate Identifier */ export function AL1_3_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 4); } /** Get AL1.3.5 - Alternate Text */ export function AL1_3_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 5); } /** Get AL1.3.6 - Name of Alternate Coding System */ export function AL1_3_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 6); } /** Get AL1.4.1 - Identifier */ export function AL1_4_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 1); } /** Get AL1.4.2 - Text */ export function AL1_4_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 2); } /** Get AL1.4.3 - Name of Coding System */ export function AL1_4_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 3); } /** Get AL1.4.4 - Alternate Identifier */ export function AL1_4_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 4); } /** Get AL1.4.5 - Alternate Text */ export function AL1_4_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 5); } /** Get AL1.4.6 - Name of Alternate Coding System */ export function AL1_4_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 6); } /** Get AL1.5 - Allergy Reaction Code */ export function AL1_5_allergy_reaction_code(seg: HL7v2Segment): string | undefined { const val = seg.fields[5]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get AL1.6 - Identification Date */ export function AL1_6_identification_date(seg: HL7v2Segment): string | undefined { const val = seg.fields[6]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } export class AL1Builder { private seg: HL7v2Segment = { segment: "AL1", fields: {} }; /** AL1.1 - Set ID - AL1 */ set_al1_1_setIdAl1(value: string | null | undefined): this { if (value != null) this.seg.fields[1] = value; return this; } /** AL1.1 - Set ID - AL1 */ get_al1_1_setIdAl1(): string | undefined { const val = this.seg.fields[1]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** AL1.2 - Allergen Type Code */ set_al1_2_allergenTypeCode(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[2] = fv; return this; } /** AL1.2 - Allergen Type Code */ get_al1_2_allergenTypeCode(): CE | undefined { return fromCE(this.seg.fields[2]); } /** AL1.3 - Allergen Code/Mnemonic/Description */ set_al1_3_allergenCodeMnemonicDescription(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[3] = fv; return this; } /** AL1.3 - Allergen Code/Mnemonic/Description */ get_al1_3_allergenCodeMnemonicDescription(): CE | undefined { return fromCE(this.seg.fields[3]); } /** AL1.4 - Allergy Severity Code */ set_al1_4_allergySeverityCode(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[4] = fv; return this; } /** AL1.4 - Allergy Severity Code */ get_al1_4_allergySeverityCode(): CE | undefined { return fromCE(this.seg.fields[4]); } /** AL1.5 - Allergy Reaction Code */ set_al1_5_allergyReactionCode(value: string | null | undefined): this { if (value != null) this.seg.fields[5] = value; return this; } /** AL1.5 - Allergy Reaction Code */ get_al1_5_allergyReactionCode(): string | undefined { const val = this.seg.fields[5]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** AL1.6 - Identification Date */ set_al1_6_identificationDate(value: string | null | undefined): this { if (value != null) this.seg.fields[6] = value; return this; } /** AL1.6 - Identification Date */ get_al1_6_identificationDate(): string | undefined { const val = this.seg.fields[6]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } build(): HL7v2Segment { return this.seg; } } // ====== DB1 Segment ====== /** Get DB1.1 - Set ID - DB1 */ export function DB1_1_set_id_db1(seg: HL7v2Segment): string | undefined { const val = seg.fields[1]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get DB1.2 - Disabled Person Code */ export function DB1_2_disabled_person_code(seg: HL7v2Segment): string | undefined { const val = seg.fields[2]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get DB1.3.1 - ID Number */ export function DB1_3_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 1); } /** Get DB1.3.2 - Check Digit */ export function DB1_3_2_check_digit(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 2); } /** Get DB1.3.3 - Check Digit Scheme */ export function DB1_3_3_check_digit_scheme(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 3); } /** Get DB1.3.4 - Assigning Authority */ export function DB1_3_4_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 4); } /** Get DB1.3.4.1 - Namespace ID */ export function DB1_3_4_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 4, 1); } /** Get DB1.3.4.2 - Universal ID */ export function DB1_3_4_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 4, 2); } /** Get DB1.3.4.3 - Universal ID Type */ export function DB1_3_4_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 4, 3); } /** Get DB1.3.5 - Identifier Type Code */ export function DB1_3_5_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 5); } /** Get DB1.3.6 - Assigning Facility */ export function DB1_3_6_assigner(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 6); } /** Get DB1.3.6.1 - Namespace ID */ export function DB1_3_6_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 6, 1); } /** Get DB1.3.6.2 - Universal ID */ export function DB1_3_6_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 6, 2); } /** Get DB1.3.6.3 - Universal ID Type */ export function DB1_3_6_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 6, 3); } /** Get DB1.3.7 - Effective Date */ export function DB1_3_7_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 7); } /** Get DB1.3.8 - Expiration Date */ export function DB1_3_8_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 8); } /** Get DB1.3.9 - Assigning Jurisdiction */ export function DB1_3_9_jurisdiction(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 9); } /** Get DB1.3.9.1 - Identifier */ export function DB1_3_9_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 9, 1); } /** Get DB1.3.9.2 - Text */ export function DB1_3_9_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 9, 2); } /** Get DB1.3.9.3 - Name of Coding System */ export function DB1_3_9_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 9, 3); } /** Get DB1.3.9.4 - Alternate Identifier */ export function DB1_3_9_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 9, 4); } /** Get DB1.3.9.5 - Alternate Text */ export function DB1_3_9_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 9, 5); } /** Get DB1.3.9.6 - Name of Alternate Coding System */ export function DB1_3_9_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 9, 6); } /** Get DB1.3.9.7 - Coding System Version ID */ export function DB1_3_9_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 9, 7); } /** Get DB1.3.9.8 - Alternate Coding System Version ID */ export function DB1_3_9_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 9, 8); } /** Get DB1.3.9.9 - Original Text */ export function DB1_3_9_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 9, 9); } /** Get DB1.3.10 - Assigning Agency or Department */ export function DB1_3_10_department(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 10); } /** Get DB1.3.10.1 - Identifier */ export function DB1_3_10_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 10, 1); } /** Get DB1.3.10.2 - Text */ export function DB1_3_10_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 10, 2); } /** Get DB1.3.10.3 - Name of Coding System */ export function DB1_3_10_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 10, 3); } /** Get DB1.3.10.4 - Alternate Identifier */ export function DB1_3_10_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 10, 4); } /** Get DB1.3.10.5 - Alternate Text */ export function DB1_3_10_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 10, 5); } /** Get DB1.3.10.6 - Name of Alternate Coding System */ export function DB1_3_10_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 10, 6); } /** Get DB1.3.10.7 - Coding System Version ID */ export function DB1_3_10_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 10, 7); } /** Get DB1.3.10.8 - Alternate Coding System Version ID */ export function DB1_3_10_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 10, 8); } /** Get DB1.3.10.9 - Original Text */ export function DB1_3_10_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 10, 9); } /** Get DB1.4 - Disabled Indicator */ export function DB1_4_disabled_indicator(seg: HL7v2Segment): string | undefined { const val = seg.fields[4]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get DB1.5 - Disability Start Date */ export function DB1_5_disability_start_date(seg: HL7v2Segment): string | undefined { const val = seg.fields[5]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get DB1.6 - Disability End Date */ export function DB1_6_disability_end_date(seg: HL7v2Segment): string | undefined { const val = seg.fields[6]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get DB1.7 - Disability Return to Work Date */ export function DB1_7_disability_return_to_work_date(seg: HL7v2Segment): string | undefined { const val = seg.fields[7]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get DB1.8 - Disability Unable to Work Date */ export function DB1_8_disability_unable_to_work_date(seg: HL7v2Segment): string | undefined { const val = seg.fields[8]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } export class DB1Builder { private seg: HL7v2Segment = { segment: "DB1", fields: {} }; /** DB1.1 - Set ID - DB1 */ set_db1_1_setIdDb1(value: string | null | undefined): this { if (value != null) this.seg.fields[1] = value; return this; } /** DB1.1 - Set ID - DB1 */ get_db1_1_setIdDb1(): string | undefined { const val = this.seg.fields[1]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** DB1.2 - Disabled Person Code */ set_db1_2_disabledPersonCode(value: string | null | undefined): this { if (value != null) this.seg.fields[2] = value; return this; } /** DB1.2 - Disabled Person Code */ get_db1_2_disabledPersonCode(): string | undefined { const val = this.seg.fields[2]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** DB1.3 - Disabled Person Identifier (set all values) */ set_db1_3_disabledPersonIdentifier(values: CX[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[3] = arr; return this; } /** DB1.3 - Disabled Person Identifier (add single value) */ add_db1_3_disabledPersonIdentifier(value: CX | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[3]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[3] = [fv]; } } return this; } /** DB1.3 - Disabled Person Identifier */ get_db1_3_disabledPersonIdentifier(): CX[] | undefined { const val = this.seg.fields[3]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromCX(v)).filter((v): v is CX => v !== undefined); } /** DB1.4 - Disabled Indicator */ set_db1_4_disabledIndicator(value: string | null | undefined): this { if (value != null) this.seg.fields[4] = value; return this; } /** DB1.4 - Disabled Indicator */ get_db1_4_disabledIndicator(): string | undefined { const val = this.seg.fields[4]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** DB1.5 - Disability Start Date */ set_db1_5_disabilityStartDate(value: string | null | undefined): this { if (value != null) this.seg.fields[5] = value; return this; } /** DB1.5 - Disability Start Date */ get_db1_5_disabilityStartDate(): string | undefined { const val = this.seg.fields[5]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** DB1.6 - Disability End Date */ set_db1_6_disabilityEndDate(value: string | null | undefined): this { if (value != null) this.seg.fields[6] = value; return this; } /** DB1.6 - Disability End Date */ get_db1_6_disabilityEndDate(): string | undefined { const val = this.seg.fields[6]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** DB1.7 - Disability Return to Work Date */ set_db1_7_disabilityReturnToWorkDate(value: string | null | undefined): this { if (value != null) this.seg.fields[7] = value; return this; } /** DB1.7 - Disability Return to Work Date */ get_db1_7_disabilityReturnToWorkDate(): string | undefined { const val = this.seg.fields[7]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** DB1.8 - Disability Unable to Work Date */ set_db1_8_disabilityUnableToWorkDate(value: string | null | undefined): this { if (value != null) this.seg.fields[8] = value; return this; } /** DB1.8 - Disability Unable to Work Date */ get_db1_8_disabilityUnableToWorkDate(): string | undefined { const val = this.seg.fields[8]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } build(): HL7v2Segment { return this.seg; } } // ====== DG1 Segment ====== /** Get DG1.1 - Set ID - DG1 */ export function DG1_1_set_id_dg1(seg: HL7v2Segment): string | undefined { const val = seg.fields[1]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get DG1.2 - Diagnosis Coding Method */ export function DG1_2_diagnosis_coding_method(seg: HL7v2Segment): string | undefined { const val = seg.fields[2]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get DG1.3.1 - Identifier */ export function DG1_3_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 1); } /** Get DG1.3.2 - Text */ export function DG1_3_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 2); } /** Get DG1.3.3 - Name of Coding System */ export function DG1_3_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 3); } /** Get DG1.3.4 - Alternate Identifier */ export function DG1_3_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 4); } /** Get DG1.3.5 - Alternate Text */ export function DG1_3_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 5); } /** Get DG1.3.6 - Name of Alternate Coding System */ export function DG1_3_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 6); } /** Get DG1.4 - Diagnosis Description */ export function DG1_4_diagnosis_description(seg: HL7v2Segment): string | undefined { const val = seg.fields[4]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get DG1.5 - Diagnosis Date/Time */ export function DG1_5_diagnosis_date_time(seg: HL7v2Segment): string | undefined { const val = seg.fields[5]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get DG1.6 - Diagnosis Type */ export function DG1_6_diagnosis_type(seg: HL7v2Segment): string | undefined { const val = seg.fields[6]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get DG1.7.1 - Identifier */ export function DG1_7_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 1); } /** Get DG1.7.2 - Text */ export function DG1_7_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 2); } /** Get DG1.7.3 - Name of Coding System */ export function DG1_7_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 3); } /** Get DG1.7.4 - Alternate Identifier */ export function DG1_7_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 4); } /** Get DG1.7.5 - Alternate Text */ export function DG1_7_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 5); } /** Get DG1.7.6 - Name of Alternate Coding System */ export function DG1_7_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 6); } /** Get DG1.8.1 - Identifier */ export function DG1_8_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 1); } /** Get DG1.8.2 - Text */ export function DG1_8_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 2); } /** Get DG1.8.3 - Name of Coding System */ export function DG1_8_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 3); } /** Get DG1.8.4 - Alternate Identifier */ export function DG1_8_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 4); } /** Get DG1.8.5 - Alternate Text */ export function DG1_8_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 5); } /** Get DG1.8.6 - Name of Alternate Coding System */ export function DG1_8_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 6); } /** Get DG1.9 - DRG Approval Indicator */ export function DG1_9_drg_approval(seg: HL7v2Segment): string | undefined { const val = seg.fields[9]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get DG1.10 - DRG Grouper Review Code */ export function DG1_10_drg_grouper_review_code(seg: HL7v2Segment): string | undefined { const val = seg.fields[10]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get DG1.11.1 - Identifier */ export function DG1_11_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 1); } /** Get DG1.11.2 - Text */ export function DG1_11_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 2); } /** Get DG1.11.3 - Name of Coding System */ export function DG1_11_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 3); } /** Get DG1.11.4 - Alternate Identifier */ export function DG1_11_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 4); } /** Get DG1.11.5 - Alternate Text */ export function DG1_11_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 5); } /** Get DG1.11.6 - Name of Alternate Coding System */ export function DG1_11_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 6); } /** Get DG1.12 - Outlier Days */ export function DG1_12_outlier_days(seg: HL7v2Segment): string | undefined { const val = seg.fields[12]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get DG1.13.1 - Price */ export function DG1_13_1_amount(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 1); } /** Get DG1.13.1.1 - Quantity */ export function DG1_13_1_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 1, 1); } /** Get DG1.13.1.2 - Denomination */ export function DG1_13_1_2_currency(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 1, 2); } /** Get DG1.13.2 - Price Type */ export function DG1_13_2_price_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 2); } /** Get DG1.13.3 - From Value */ export function DG1_13_3_low(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 3); } /** Get DG1.13.4 - To Value */ export function DG1_13_4_high(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 4); } /** Get DG1.13.5 - Range Units */ export function DG1_13_5_unit(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 5); } /** Get DG1.13.5.1 - Identifier */ export function DG1_13_5_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 5, 1); } /** Get DG1.13.5.2 - Text */ export function DG1_13_5_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 5, 2); } /** Get DG1.13.5.3 - Name of Coding System */ export function DG1_13_5_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 5, 3); } /** Get DG1.13.5.4 - Alternate Identifier */ export function DG1_13_5_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 5, 4); } /** Get DG1.13.5.5 - Alternate Text */ export function DG1_13_5_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 5, 5); } /** Get DG1.13.5.6 - Name of Alternate Coding System */ export function DG1_13_5_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 5, 6); } /** Get DG1.13.6 - Range Type */ export function DG1_13_6_range_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 6); } /** Get DG1.14 - Grouper Version And Type */ export function DG1_14_grouper_version_and_type(seg: HL7v2Segment): string | undefined { const val = seg.fields[14]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get DG1.15 - Diagnosis Priority */ export function DG1_15_diagnosis_priority(seg: HL7v2Segment): string | undefined { const val = seg.fields[15]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get DG1.16.1 - ID Number */ export function DG1_16_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 1); } /** Get DG1.16.2 - Family Name */ export function DG1_16_2_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 2); } /** Get DG1.16.2.1 - Surname */ export function DG1_16_2_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 2, 1); } /** Get DG1.16.2.2 - Own Surname Prefix */ export function DG1_16_2_2_own_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 2, 2); } /** Get DG1.16.2.3 - Own Surname */ export function DG1_16_2_3_own_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 2, 3); } /** Get DG1.16.2.4 - Surname Prefix From Partner/Spouse */ export function DG1_16_2_4_partner_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 2, 4); } /** Get DG1.16.2.5 - Surname From Partner/Spouse */ export function DG1_16_2_5_partner_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 2, 5); } /** Get DG1.16.3 - Given Name */ export function DG1_16_3_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 3); } /** Get DG1.16.4 - Second and Further Given Names or Initials Thereof */ export function DG1_16_4_additional_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 4); } /** Get DG1.16.5 - Suffix (e.g., JR or III) */ export function DG1_16_5_suffix(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 5); } /** Get DG1.16.6 - Prefix (e.g., DR) */ export function DG1_16_6_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 6); } /** Get DG1.16.7 - Degree (e.g., MD) */ export function DG1_16_7_qualification(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 7); } /** Get DG1.16.8 - Source Table */ export function DG1_16_8_source_table(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 8); } /** Get DG1.16.9 - Assigning Authority */ export function DG1_16_9_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 9); } /** Get DG1.16.9.1 - Namespace ID */ export function DG1_16_9_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 9, 1); } /** Get DG1.16.9.2 - Universal ID */ export function DG1_16_9_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 9, 2); } /** Get DG1.16.9.3 - Universal ID Type */ export function DG1_16_9_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 9, 3); } /** Get DG1.16.10 - Name Type Code */ export function DG1_16_10_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 10); } /** Get DG1.16.11 - Identifier Check Digit */ export function DG1_16_11_check_digit(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 11); } /** Get DG1.16.12 - Check Digit Scheme */ export function DG1_16_12_check_digit_scheme(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 12); } /** Get DG1.16.13 - Identifier Type Code */ export function DG1_16_13_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 13); } /** Get DG1.16.14 - Assigning Facility */ export function DG1_16_14_assigner(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 14); } /** Get DG1.16.14.1 - Namespace ID */ export function DG1_16_14_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 14, 1); } /** Get DG1.16.14.2 - Universal ID */ export function DG1_16_14_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 14, 2); } /** Get DG1.16.14.3 - Universal ID Type */ export function DG1_16_14_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 14, 3); } /** Get DG1.16.15 - Name Representation Code */ export function DG1_16_15_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 15); } /** Get DG1.16.16 - Name Context */ export function DG1_16_16_context(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 16); } /** Get DG1.16.16.1 - Identifier */ export function DG1_16_16_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 16, 1); } /** Get DG1.16.16.2 - Text */ export function DG1_16_16_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 16, 2); } /** Get DG1.16.16.3 - Name of Coding System */ export function DG1_16_16_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 16, 3); } /** Get DG1.16.16.4 - Alternate Identifier */ export function DG1_16_16_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 16, 4); } /** Get DG1.16.16.5 - Alternate Text */ export function DG1_16_16_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 16, 5); } /** Get DG1.16.16.6 - Name of Alternate Coding System */ export function DG1_16_16_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 16, 6); } /** Get DG1.16.17 - Name Validity Range */ export function DG1_16_17_period(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 17); } /** Get DG1.16.17.1 - Range Start Date/Time */ export function DG1_16_17_1_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 17, 1); } /** Get DG1.16.17.2 - Range End Date/Time */ export function DG1_16_17_2_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 17, 2); } /** Get DG1.16.18 - Name Assembly Order */ export function DG1_16_18_order(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 18); } /** Get DG1.16.19 - Effective Date */ export function DG1_16_19_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 19); } /** Get DG1.16.20 - Expiration Date */ export function DG1_16_20_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 20); } /** Get DG1.16.21 - Professional Suffix */ export function DG1_16_21_credential(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 21); } /** Get DG1.16.22 - Assigning Jurisdiction */ export function DG1_16_22_jurisdiction(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 22); } /** Get DG1.16.22.1 - Identifier */ export function DG1_16_22_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 22, 1); } /** Get DG1.16.22.2 - Text */ export function DG1_16_22_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 22, 2); } /** Get DG1.16.22.3 - Name of Coding System */ export function DG1_16_22_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 22, 3); } /** Get DG1.16.22.4 - Alternate Identifier */ export function DG1_16_22_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 22, 4); } /** Get DG1.16.22.5 - Alternate Text */ export function DG1_16_22_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 22, 5); } /** Get DG1.16.22.6 - Name of Alternate Coding System */ export function DG1_16_22_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 22, 6); } /** Get DG1.16.22.7 - Coding System Version ID */ export function DG1_16_22_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 22, 7); } /** Get DG1.16.22.8 - Alternate Coding System Version ID */ export function DG1_16_22_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 22, 8); } /** Get DG1.16.22.9 - Original Text */ export function DG1_16_22_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 22, 9); } /** Get DG1.16.23 - Assigning Agency or Department */ export function DG1_16_23_department(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 23); } /** Get DG1.16.23.1 - Identifier */ export function DG1_16_23_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 23, 1); } /** Get DG1.16.23.2 - Text */ export function DG1_16_23_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 23, 2); } /** Get DG1.16.23.3 - Name of Coding System */ export function DG1_16_23_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 23, 3); } /** Get DG1.16.23.4 - Alternate Identifier */ export function DG1_16_23_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 23, 4); } /** Get DG1.16.23.5 - Alternate Text */ export function DG1_16_23_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 23, 5); } /** Get DG1.16.23.6 - Name of Alternate Coding System */ export function DG1_16_23_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 23, 6); } /** Get DG1.16.23.7 - Coding System Version ID */ export function DG1_16_23_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 23, 7); } /** Get DG1.16.23.8 - Alternate Coding System Version ID */ export function DG1_16_23_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 23, 8); } /** Get DG1.16.23.9 - Original Text */ export function DG1_16_23_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 23, 9); } /** Get DG1.17 - Diagnosis Classification */ export function DG1_17_diagnosis_classification(seg: HL7v2Segment): string | undefined { const val = seg.fields[17]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get DG1.18 - Confidential Indicator */ export function DG1_18_confidential_indicator(seg: HL7v2Segment): string | undefined { const val = seg.fields[18]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get DG1.19 - Attestation Date/Time */ export function DG1_19_attestation_date_time(seg: HL7v2Segment): string | undefined { const val = seg.fields[19]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get DG1.20.1 - Entity Identifier */ export function DG1_20_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[20]; return getComponent(field, 1); } /** Get DG1.20.2 - Namespace ID */ export function DG1_20_2_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[20]; return getComponent(field, 2); } /** Get DG1.20.3 - Universal ID */ export function DG1_20_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[20]; return getComponent(field, 3); } /** Get DG1.20.4 - Universal ID Type */ export function DG1_20_4_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[20]; return getComponent(field, 4); } /** Get DG1.21 - Diagnosis Action Code */ export function DG1_21_diagnosis_action_code(seg: HL7v2Segment): string | undefined { const val = seg.fields[21]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } export class DG1Builder { private seg: HL7v2Segment = { segment: "DG1", fields: {} }; /** DG1.1 - Set ID - DG1 */ set_dg1_1_setIdDg1(value: string | null | undefined): this { if (value != null) this.seg.fields[1] = value; return this; } /** DG1.1 - Set ID - DG1 */ get_dg1_1_setIdDg1(): string | undefined { const val = this.seg.fields[1]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** DG1.2 - Diagnosis Coding Method */ set_dg1_2_diagnosisCodingMethod(value: string | null | undefined): this { if (value != null) this.seg.fields[2] = value; return this; } /** DG1.2 - Diagnosis Coding Method */ get_dg1_2_diagnosisCodingMethod(): string | undefined { const val = this.seg.fields[2]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** DG1.3 - Diagnosis Code - DG1 */ set_dg1_3_diagnosisCodeDg1(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[3] = fv; return this; } /** DG1.3 - Diagnosis Code - DG1 */ get_dg1_3_diagnosisCodeDg1(): CE | undefined { return fromCE(this.seg.fields[3]); } /** DG1.4 - Diagnosis Description */ set_dg1_4_diagnosisDescription(value: string | null | undefined): this { if (value != null) this.seg.fields[4] = value; return this; } /** DG1.4 - Diagnosis Description */ get_dg1_4_diagnosisDescription(): string | undefined { const val = this.seg.fields[4]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** DG1.5 - Diagnosis Date/Time */ set_dg1_5_diagnosisDateTime(value: string | null | undefined): this { if (value != null) this.seg.fields[5] = value; return this; } /** DG1.5 - Diagnosis Date/Time */ get_dg1_5_diagnosisDateTime(): string | undefined { const val = this.seg.fields[5]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** DG1.6 - Diagnosis Type */ set_dg1_6_diagnosisType(value: string | null | undefined): this { if (value != null) this.seg.fields[6] = value; return this; } /** DG1.6 - Diagnosis Type */ get_dg1_6_diagnosisType(): string | undefined { const val = this.seg.fields[6]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** DG1.7 - Major Diagnostic Category */ set_dg1_7_majorDiagnosticCategory(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[7] = fv; return this; } /** DG1.7 - Major Diagnostic Category */ get_dg1_7_majorDiagnosticCategory(): CE | undefined { return fromCE(this.seg.fields[7]); } /** DG1.8 - Diagnostic Related Group */ set_dg1_8_diagnosticRelatedGroup(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[8] = fv; return this; } /** DG1.8 - Diagnostic Related Group */ get_dg1_8_diagnosticRelatedGroup(): CE | undefined { return fromCE(this.seg.fields[8]); } /** DG1.9 - DRG Approval Indicator */ set_dg1_9_drgApproval(value: string | null | undefined): this { if (value != null) this.seg.fields[9] = value; return this; } /** DG1.9 - DRG Approval Indicator */ get_dg1_9_drgApproval(): string | undefined { const val = this.seg.fields[9]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** DG1.10 - DRG Grouper Review Code */ set_dg1_10_drgGrouperReviewCode(value: string | null | undefined): this { if (value != null) this.seg.fields[10] = value; return this; } /** DG1.10 - DRG Grouper Review Code */ get_dg1_10_drgGrouperReviewCode(): string | undefined { const val = this.seg.fields[10]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** DG1.11 - Outlier Type */ set_dg1_11_outlierType(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[11] = fv; return this; } /** DG1.11 - Outlier Type */ get_dg1_11_outlierType(): CE | undefined { return fromCE(this.seg.fields[11]); } /** DG1.12 - Outlier Days */ set_dg1_12_outlierDays(value: string | null | undefined): this { if (value != null) this.seg.fields[12] = value; return this; } /** DG1.12 - Outlier Days */ get_dg1_12_outlierDays(): string | undefined { const val = this.seg.fields[12]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** DG1.13 - Outlier Cost */ set_dg1_13_outlierCost(value: CP | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[13] = fv; return this; } /** DG1.13 - Outlier Cost */ get_dg1_13_outlierCost(): CP | undefined { return fromCP(this.seg.fields[13]); } /** DG1.14 - Grouper Version And Type */ set_dg1_14_grouperVersionAndType(value: string | null | undefined): this { if (value != null) this.seg.fields[14] = value; return this; } /** DG1.14 - Grouper Version And Type */ get_dg1_14_grouperVersionAndType(): string | undefined { const val = this.seg.fields[14]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** DG1.15 - Diagnosis Priority */ set_dg1_15_diagnosisPriority(value: string | null | undefined): this { if (value != null) this.seg.fields[15] = value; return this; } /** DG1.15 - Diagnosis Priority */ get_dg1_15_diagnosisPriority(): string | undefined { const val = this.seg.fields[15]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** DG1.16 - Diagnosing Clinician (set all values) */ set_dg1_16_diagnosingClinician(values: XCN[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[16] = arr; return this; } /** DG1.16 - Diagnosing Clinician (add single value) */ add_dg1_16_diagnosingClinician(value: XCN | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[16]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[16] = [fv]; } } return this; } /** DG1.16 - Diagnosing Clinician */ get_dg1_16_diagnosingClinician(): XCN[] | undefined { const val = this.seg.fields[16]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXCN(v)).filter((v): v is XCN => v !== undefined); } /** DG1.17 - Diagnosis Classification */ set_dg1_17_diagnosisClassification(value: string | null | undefined): this { if (value != null) this.seg.fields[17] = value; return this; } /** DG1.17 - Diagnosis Classification */ get_dg1_17_diagnosisClassification(): string | undefined { const val = this.seg.fields[17]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** DG1.18 - Confidential Indicator */ set_dg1_18_confidentialIndicator(value: string | null | undefined): this { if (value != null) this.seg.fields[18] = value; return this; } /** DG1.18 - Confidential Indicator */ get_dg1_18_confidentialIndicator(): string | undefined { const val = this.seg.fields[18]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** DG1.19 - Attestation Date/Time */ set_dg1_19_attestationDateTime(value: string | null | undefined): this { if (value != null) this.seg.fields[19] = value; return this; } /** DG1.19 - Attestation Date/Time */ get_dg1_19_attestationDateTime(): string | undefined { const val = this.seg.fields[19]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** DG1.20 - Diagnosis Identifier */ set_dg1_20_diagnosisIdentifier(value: EI | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[20] = fv; return this; } /** DG1.20 - Diagnosis Identifier */ get_dg1_20_diagnosisIdentifier(): EI | undefined { return fromEI(this.seg.fields[20]); } /** DG1.21 - Diagnosis Action Code */ set_dg1_21_diagnosisActionCode(value: string | null | undefined): this { if (value != null) this.seg.fields[21] = value; return this; } /** DG1.21 - Diagnosis Action Code */ get_dg1_21_diagnosisActionCode(): string | undefined { const val = this.seg.fields[21]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } build(): HL7v2Segment { return this.seg; } } // ====== DRG Segment ====== /** Get DRG.1.1 - Identifier */ export function DRG_1_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 1); } /** Get DRG.1.2 - Text */ export function DRG_1_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 2); } /** Get DRG.1.3 - Name of Coding System */ export function DRG_1_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 3); } /** Get DRG.1.4 - Alternate Identifier */ export function DRG_1_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 4); } /** Get DRG.1.5 - Alternate Text */ export function DRG_1_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 5); } /** Get DRG.1.6 - Name of Alternate Coding System */ export function DRG_1_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 6); } /** Get DRG.2 - DRG Assigned Date/Time */ export function DRG_2_drg_assigned_date_time(seg: HL7v2Segment): string | undefined { const val = seg.fields[2]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get DRG.3 - DRG Approval Indicator */ export function DRG_3_drg_approval(seg: HL7v2Segment): string | undefined { const val = seg.fields[3]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get DRG.4 - DRG Grouper Review Code */ export function DRG_4_drg_grouper_review_code(seg: HL7v2Segment): string | undefined { const val = seg.fields[4]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get DRG.5.1 - Identifier */ export function DRG_5_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 1); } /** Get DRG.5.2 - Text */ export function DRG_5_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 2); } /** Get DRG.5.3 - Name of Coding System */ export function DRG_5_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 3); } /** Get DRG.5.4 - Alternate Identifier */ export function DRG_5_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 4); } /** Get DRG.5.5 - Alternate Text */ export function DRG_5_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 5); } /** Get DRG.5.6 - Name of Alternate Coding System */ export function DRG_5_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 6); } /** Get DRG.6 - Outlier Days */ export function DRG_6_outlier_days(seg: HL7v2Segment): string | undefined { const val = seg.fields[6]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get DRG.7.1 - Price */ export function DRG_7_1_amount(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 1); } /** Get DRG.7.1.1 - Quantity */ export function DRG_7_1_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 1, 1); } /** Get DRG.7.1.2 - Denomination */ export function DRG_7_1_2_currency(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 1, 2); } /** Get DRG.7.2 - Price Type */ export function DRG_7_2_price_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 2); } /** Get DRG.7.3 - From Value */ export function DRG_7_3_low(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 3); } /** Get DRG.7.4 - To Value */ export function DRG_7_4_high(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 4); } /** Get DRG.7.5 - Range Units */ export function DRG_7_5_unit(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 5); } /** Get DRG.7.5.1 - Identifier */ export function DRG_7_5_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 5, 1); } /** Get DRG.7.5.2 - Text */ export function DRG_7_5_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 5, 2); } /** Get DRG.7.5.3 - Name of Coding System */ export function DRG_7_5_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 5, 3); } /** Get DRG.7.5.4 - Alternate Identifier */ export function DRG_7_5_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 5, 4); } /** Get DRG.7.5.5 - Alternate Text */ export function DRG_7_5_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 5, 5); } /** Get DRG.7.5.6 - Name of Alternate Coding System */ export function DRG_7_5_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 5, 6); } /** Get DRG.7.6 - Range Type */ export function DRG_7_6_range_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 6); } /** Get DRG.8 - DRG Payor */ export function DRG_8_drg_payor(seg: HL7v2Segment): string | undefined { const val = seg.fields[8]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get DRG.9.1 - Price */ export function DRG_9_1_amount(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 1); } /** Get DRG.9.1.1 - Quantity */ export function DRG_9_1_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 1, 1); } /** Get DRG.9.1.2 - Denomination */ export function DRG_9_1_2_currency(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 1, 2); } /** Get DRG.9.2 - Price Type */ export function DRG_9_2_price_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 2); } /** Get DRG.9.3 - From Value */ export function DRG_9_3_low(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 3); } /** Get DRG.9.4 - To Value */ export function DRG_9_4_high(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 4); } /** Get DRG.9.5 - Range Units */ export function DRG_9_5_unit(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 5); } /** Get DRG.9.5.1 - Identifier */ export function DRG_9_5_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 5, 1); } /** Get DRG.9.5.2 - Text */ export function DRG_9_5_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 5, 2); } /** Get DRG.9.5.3 - Name of Coding System */ export function DRG_9_5_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 5, 3); } /** Get DRG.9.5.4 - Alternate Identifier */ export function DRG_9_5_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 5, 4); } /** Get DRG.9.5.5 - Alternate Text */ export function DRG_9_5_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 5, 5); } /** Get DRG.9.5.6 - Name of Alternate Coding System */ export function DRG_9_5_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 5, 6); } /** Get DRG.9.6 - Range Type */ export function DRG_9_6_range_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 6); } /** Get DRG.10 - Confidential Indicator */ export function DRG_10_confidential_indicator(seg: HL7v2Segment): string | undefined { const val = seg.fields[10]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get DRG.11 - DRG Transfer Type */ export function DRG_11_drg_transfer_type(seg: HL7v2Segment): string | undefined { const val = seg.fields[11]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } export class DRGBuilder { private seg: HL7v2Segment = { segment: "DRG", fields: {} }; /** DRG.1 - Diagnostic Related Group */ set_drg_1_diagnosticRelatedGroup(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[1] = fv; return this; } /** DRG.1 - Diagnostic Related Group */ get_drg_1_diagnosticRelatedGroup(): CE | undefined { return fromCE(this.seg.fields[1]); } /** DRG.2 - DRG Assigned Date/Time */ set_drg_2_drgAssignedDateTime(value: string | null | undefined): this { if (value != null) this.seg.fields[2] = value; return this; } /** DRG.2 - DRG Assigned Date/Time */ get_drg_2_drgAssignedDateTime(): string | undefined { const val = this.seg.fields[2]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** DRG.3 - DRG Approval Indicator */ set_drg_3_drgApproval(value: string | null | undefined): this { if (value != null) this.seg.fields[3] = value; return this; } /** DRG.3 - DRG Approval Indicator */ get_drg_3_drgApproval(): string | undefined { const val = this.seg.fields[3]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** DRG.4 - DRG Grouper Review Code */ set_drg_4_drgGrouperReviewCode(value: string | null | undefined): this { if (value != null) this.seg.fields[4] = value; return this; } /** DRG.4 - DRG Grouper Review Code */ get_drg_4_drgGrouperReviewCode(): string | undefined { const val = this.seg.fields[4]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** DRG.5 - Outlier Type */ set_drg_5_outlierType(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[5] = fv; return this; } /** DRG.5 - Outlier Type */ get_drg_5_outlierType(): CE | undefined { return fromCE(this.seg.fields[5]); } /** DRG.6 - Outlier Days */ set_drg_6_outlierDays(value: string | null | undefined): this { if (value != null) this.seg.fields[6] = value; return this; } /** DRG.6 - Outlier Days */ get_drg_6_outlierDays(): string | undefined { const val = this.seg.fields[6]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** DRG.7 - Outlier Cost */ set_drg_7_outlierCost(value: CP | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[7] = fv; return this; } /** DRG.7 - Outlier Cost */ get_drg_7_outlierCost(): CP | undefined { return fromCP(this.seg.fields[7]); } /** DRG.8 - DRG Payor */ set_drg_8_drgPayor(value: string | null | undefined): this { if (value != null) this.seg.fields[8] = value; return this; } /** DRG.8 - DRG Payor */ get_drg_8_drgPayor(): string | undefined { const val = this.seg.fields[8]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** DRG.9 - Outlier Reimbursement */ set_drg_9_outlierReimbursement(value: CP | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[9] = fv; return this; } /** DRG.9 - Outlier Reimbursement */ get_drg_9_outlierReimbursement(): CP | undefined { return fromCP(this.seg.fields[9]); } /** DRG.10 - Confidential Indicator */ set_drg_10_confidentialIndicator(value: string | null | undefined): this { if (value != null) this.seg.fields[10] = value; return this; } /** DRG.10 - Confidential Indicator */ get_drg_10_confidentialIndicator(): string | undefined { const val = this.seg.fields[10]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** DRG.11 - DRG Transfer Type */ set_drg_11_drgTransferType(value: string | null | undefined): this { if (value != null) this.seg.fields[11] = value; return this; } /** DRG.11 - DRG Transfer Type */ get_drg_11_drgTransferType(): string | undefined { const val = this.seg.fields[11]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } build(): HL7v2Segment { return this.seg; } } // ====== EVN Segment ====== /** Get EVN.1 - Event Type Code */ export function EVN_1_event_type_code(seg: HL7v2Segment): string | undefined { const val = seg.fields[1]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get EVN.2 - Recorded Date/Time */ export function EVN_2_recorded_date_time(seg: HL7v2Segment): string | undefined { const val = seg.fields[2]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get EVN.3 - Date/Time Planned Event */ export function EVN_3_planned_event_date_time(seg: HL7v2Segment): string | undefined { const val = seg.fields[3]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get EVN.4 - Event Reason Code */ export function EVN_4_event_reason_code(seg: HL7v2Segment): string | undefined { const val = seg.fields[4]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get EVN.5.1 - ID Number */ export function EVN_5_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 1); } /** Get EVN.5.2 - Family Name */ export function EVN_5_2_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 2); } /** Get EVN.5.2.1 - Surname */ export function EVN_5_2_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 2, 1); } /** Get EVN.5.2.2 - Own Surname Prefix */ export function EVN_5_2_2_own_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 2, 2); } /** Get EVN.5.2.3 - Own Surname */ export function EVN_5_2_3_own_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 2, 3); } /** Get EVN.5.2.4 - Surname Prefix From Partner/Spouse */ export function EVN_5_2_4_partner_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 2, 4); } /** Get EVN.5.2.5 - Surname From Partner/Spouse */ export function EVN_5_2_5_partner_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 2, 5); } /** Get EVN.5.3 - Given Name */ export function EVN_5_3_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 3); } /** Get EVN.5.4 - Second and Further Given Names or Initials Thereof */ export function EVN_5_4_additional_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 4); } /** Get EVN.5.5 - Suffix (e.g., JR or III) */ export function EVN_5_5_suffix(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 5); } /** Get EVN.5.6 - Prefix (e.g., DR) */ export function EVN_5_6_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 6); } /** Get EVN.5.7 - Degree (e.g., MD) */ export function EVN_5_7_qualification(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 7); } /** Get EVN.5.8 - Source Table */ export function EVN_5_8_source_table(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 8); } /** Get EVN.5.9 - Assigning Authority */ export function EVN_5_9_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 9); } /** Get EVN.5.9.1 - Namespace ID */ export function EVN_5_9_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 9, 1); } /** Get EVN.5.9.2 - Universal ID */ export function EVN_5_9_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 9, 2); } /** Get EVN.5.9.3 - Universal ID Type */ export function EVN_5_9_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 9, 3); } /** Get EVN.5.10 - Name Type Code */ export function EVN_5_10_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 10); } /** Get EVN.5.11 - Identifier Check Digit */ export function EVN_5_11_check_digit(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 11); } /** Get EVN.5.12 - Check Digit Scheme */ export function EVN_5_12_check_digit_scheme(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 12); } /** Get EVN.5.13 - Identifier Type Code */ export function EVN_5_13_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 13); } /** Get EVN.5.14 - Assigning Facility */ export function EVN_5_14_assigner(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 14); } /** Get EVN.5.14.1 - Namespace ID */ export function EVN_5_14_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 14, 1); } /** Get EVN.5.14.2 - Universal ID */ export function EVN_5_14_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 14, 2); } /** Get EVN.5.14.3 - Universal ID Type */ export function EVN_5_14_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 14, 3); } /** Get EVN.5.15 - Name Representation Code */ export function EVN_5_15_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 15); } /** Get EVN.5.16 - Name Context */ export function EVN_5_16_context(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 16); } /** Get EVN.5.16.1 - Identifier */ export function EVN_5_16_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 16, 1); } /** Get EVN.5.16.2 - Text */ export function EVN_5_16_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 16, 2); } /** Get EVN.5.16.3 - Name of Coding System */ export function EVN_5_16_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 16, 3); } /** Get EVN.5.16.4 - Alternate Identifier */ export function EVN_5_16_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 16, 4); } /** Get EVN.5.16.5 - Alternate Text */ export function EVN_5_16_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 16, 5); } /** Get EVN.5.16.6 - Name of Alternate Coding System */ export function EVN_5_16_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 16, 6); } /** Get EVN.5.17 - Name Validity Range */ export function EVN_5_17_period(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 17); } /** Get EVN.5.17.1 - Range Start Date/Time */ export function EVN_5_17_1_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 17, 1); } /** Get EVN.5.17.2 - Range End Date/Time */ export function EVN_5_17_2_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 17, 2); } /** Get EVN.5.18 - Name Assembly Order */ export function EVN_5_18_order(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 18); } /** Get EVN.5.19 - Effective Date */ export function EVN_5_19_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 19); } /** Get EVN.5.20 - Expiration Date */ export function EVN_5_20_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 20); } /** Get EVN.5.21 - Professional Suffix */ export function EVN_5_21_credential(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 21); } /** Get EVN.5.22 - Assigning Jurisdiction */ export function EVN_5_22_jurisdiction(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 22); } /** Get EVN.5.22.1 - Identifier */ export function EVN_5_22_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 22, 1); } /** Get EVN.5.22.2 - Text */ export function EVN_5_22_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 22, 2); } /** Get EVN.5.22.3 - Name of Coding System */ export function EVN_5_22_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 22, 3); } /** Get EVN.5.22.4 - Alternate Identifier */ export function EVN_5_22_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 22, 4); } /** Get EVN.5.22.5 - Alternate Text */ export function EVN_5_22_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 22, 5); } /** Get EVN.5.22.6 - Name of Alternate Coding System */ export function EVN_5_22_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 22, 6); } /** Get EVN.5.22.7 - Coding System Version ID */ export function EVN_5_22_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 22, 7); } /** Get EVN.5.22.8 - Alternate Coding System Version ID */ export function EVN_5_22_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 22, 8); } /** Get EVN.5.22.9 - Original Text */ export function EVN_5_22_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 22, 9); } /** Get EVN.5.23 - Assigning Agency or Department */ export function EVN_5_23_department(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 23); } /** Get EVN.5.23.1 - Identifier */ export function EVN_5_23_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 23, 1); } /** Get EVN.5.23.2 - Text */ export function EVN_5_23_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 23, 2); } /** Get EVN.5.23.3 - Name of Coding System */ export function EVN_5_23_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 23, 3); } /** Get EVN.5.23.4 - Alternate Identifier */ export function EVN_5_23_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 23, 4); } /** Get EVN.5.23.5 - Alternate Text */ export function EVN_5_23_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 23, 5); } /** Get EVN.5.23.6 - Name of Alternate Coding System */ export function EVN_5_23_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 23, 6); } /** Get EVN.5.23.7 - Coding System Version ID */ export function EVN_5_23_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 23, 7); } /** Get EVN.5.23.8 - Alternate Coding System Version ID */ export function EVN_5_23_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 23, 8); } /** Get EVN.5.23.9 - Original Text */ export function EVN_5_23_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 23, 9); } /** Get EVN.6 - Event Occurred */ export function EVN_6_event_occurred(seg: HL7v2Segment): string | undefined { const val = seg.fields[6]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get EVN.7.1 - Namespace ID */ export function EVN_7_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 1); } /** Get EVN.7.2 - Universal ID */ export function EVN_7_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 2); } /** Get EVN.7.3 - Universal ID Type */ export function EVN_7_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 3); } export class EVNBuilder { private seg: HL7v2Segment = { segment: "EVN", fields: {} }; /** EVN.1 - Event Type Code */ set_evn_1_eventTypeCode(value: string | null | undefined): this { if (value != null) this.seg.fields[1] = value; return this; } /** EVN.1 - Event Type Code */ get_evn_1_eventTypeCode(): string | undefined { const val = this.seg.fields[1]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** EVN.2 - Recorded Date/Time */ set_evn_2_recordedDateTime(value: string | null | undefined): this { if (value != null) this.seg.fields[2] = value; return this; } /** EVN.2 - Recorded Date/Time */ get_evn_2_recordedDateTime(): string | undefined { const val = this.seg.fields[2]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** EVN.3 - Date/Time Planned Event */ set_evn_3_plannedEventDateTime(value: string | null | undefined): this { if (value != null) this.seg.fields[3] = value; return this; } /** EVN.3 - Date/Time Planned Event */ get_evn_3_plannedEventDateTime(): string | undefined { const val = this.seg.fields[3]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** EVN.4 - Event Reason Code */ set_evn_4_eventReasonCode(value: string | null | undefined): this { if (value != null) this.seg.fields[4] = value; return this; } /** EVN.4 - Event Reason Code */ get_evn_4_eventReasonCode(): string | undefined { const val = this.seg.fields[4]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** EVN.5 - Operator ID (set all values) */ set_evn_5_operatorId(values: XCN[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[5] = arr; return this; } /** EVN.5 - Operator ID (add single value) */ add_evn_5_operatorId(value: XCN | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[5]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[5] = [fv]; } } return this; } /** EVN.5 - Operator ID */ get_evn_5_operatorId(): XCN[] | undefined { const val = this.seg.fields[5]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXCN(v)).filter((v): v is XCN => v !== undefined); } /** EVN.6 - Event Occurred */ set_evn_6_eventOccurred(value: string | null | undefined): this { if (value != null) this.seg.fields[6] = value; return this; } /** EVN.6 - Event Occurred */ get_evn_6_eventOccurred(): string | undefined { const val = this.seg.fields[6]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** EVN.7 - Event Facility */ set_evn_7_eventFacility(value: HD | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[7] = fv; return this; } /** EVN.7 - Event Facility */ get_evn_7_eventFacility(): HD | undefined { return fromHD(this.seg.fields[7]); } build(): HL7v2Segment { return this.seg; } } // ====== GT1 Segment ====== /** Get GT1.1 - Set ID - GT1 */ export function GT1_1_set_id_gt1(seg: HL7v2Segment): string | undefined { const val = seg.fields[1]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get GT1.2.1 - ID Number */ export function GT1_2_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 1); } /** Get GT1.2.2 - Check Digit */ export function GT1_2_2_check_digit(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 2); } /** Get GT1.2.3 - Check Digit Scheme */ export function GT1_2_3_check_digit_scheme(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 3); } /** Get GT1.2.4 - Assigning Authority */ export function GT1_2_4_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 4); } /** Get GT1.2.4.1 - Namespace ID */ export function GT1_2_4_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 4, 1); } /** Get GT1.2.4.2 - Universal ID */ export function GT1_2_4_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 4, 2); } /** Get GT1.2.4.3 - Universal ID Type */ export function GT1_2_4_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 4, 3); } /** Get GT1.2.5 - Identifier Type Code */ export function GT1_2_5_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 5); } /** Get GT1.2.6 - Assigning Facility */ export function GT1_2_6_assigner(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 6); } /** Get GT1.2.6.1 - Namespace ID */ export function GT1_2_6_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 6, 1); } /** Get GT1.2.6.2 - Universal ID */ export function GT1_2_6_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 6, 2); } /** Get GT1.2.6.3 - Universal ID Type */ export function GT1_2_6_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 6, 3); } /** Get GT1.2.7 - Effective Date */ export function GT1_2_7_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 7); } /** Get GT1.2.8 - Expiration Date */ export function GT1_2_8_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 8); } /** Get GT1.2.9 - Assigning Jurisdiction */ export function GT1_2_9_jurisdiction(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 9); } /** Get GT1.2.9.1 - Identifier */ export function GT1_2_9_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 9, 1); } /** Get GT1.2.9.2 - Text */ export function GT1_2_9_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 9, 2); } /** Get GT1.2.9.3 - Name of Coding System */ export function GT1_2_9_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 9, 3); } /** Get GT1.2.9.4 - Alternate Identifier */ export function GT1_2_9_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 9, 4); } /** Get GT1.2.9.5 - Alternate Text */ export function GT1_2_9_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 9, 5); } /** Get GT1.2.9.6 - Name of Alternate Coding System */ export function GT1_2_9_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 9, 6); } /** Get GT1.2.9.7 - Coding System Version ID */ export function GT1_2_9_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 9, 7); } /** Get GT1.2.9.8 - Alternate Coding System Version ID */ export function GT1_2_9_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 9, 8); } /** Get GT1.2.9.9 - Original Text */ export function GT1_2_9_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 9, 9); } /** Get GT1.2.10 - Assigning Agency or Department */ export function GT1_2_10_department(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 10); } /** Get GT1.2.10.1 - Identifier */ export function GT1_2_10_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 10, 1); } /** Get GT1.2.10.2 - Text */ export function GT1_2_10_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 10, 2); } /** Get GT1.2.10.3 - Name of Coding System */ export function GT1_2_10_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 10, 3); } /** Get GT1.2.10.4 - Alternate Identifier */ export function GT1_2_10_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 10, 4); } /** Get GT1.2.10.5 - Alternate Text */ export function GT1_2_10_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 10, 5); } /** Get GT1.2.10.6 - Name of Alternate Coding System */ export function GT1_2_10_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 10, 6); } /** Get GT1.2.10.7 - Coding System Version ID */ export function GT1_2_10_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 10, 7); } /** Get GT1.2.10.8 - Alternate Coding System Version ID */ export function GT1_2_10_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 10, 8); } /** Get GT1.2.10.9 - Original Text */ export function GT1_2_10_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 10, 9); } /** Get GT1.3.1 - Family Name */ export function GT1_3_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 1); } /** Get GT1.3.1.1 - Surname */ export function GT1_3_1_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 1, 1); } /** Get GT1.3.1.2 - Own Surname Prefix */ export function GT1_3_1_2_own_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 1, 2); } /** Get GT1.3.1.3 - Own Surname */ export function GT1_3_1_3_own_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 1, 3); } /** Get GT1.3.1.4 - Surname Prefix From Partner/Spouse */ export function GT1_3_1_4_partner_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 1, 4); } /** Get GT1.3.1.5 - Surname From Partner/Spouse */ export function GT1_3_1_5_partner_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 1, 5); } /** Get GT1.3.2 - Given Name */ export function GT1_3_2_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 2); } /** Get GT1.3.3 - Second and Further Given Names or Initials Thereof */ export function GT1_3_3_additional_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 3); } /** Get GT1.3.4 - Suffix (e.g., JR or III) */ export function GT1_3_4_suffix(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 4); } /** Get GT1.3.5 - Prefix (e.g., DR) */ export function GT1_3_5_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 5); } /** Get GT1.3.6 - Degree (e.g., MD) */ export function GT1_3_6_qualification(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 6); } /** Get GT1.3.7 - Name Type Code */ export function GT1_3_7_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 7); } /** Get GT1.3.8 - Name Representation Code */ export function GT1_3_8_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 8); } /** Get GT1.3.9 - Name Context */ export function GT1_3_9_context(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 9); } /** Get GT1.3.9.1 - Identifier */ export function GT1_3_9_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 9, 1); } /** Get GT1.3.9.2 - Text */ export function GT1_3_9_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 9, 2); } /** Get GT1.3.9.3 - Name of Coding System */ export function GT1_3_9_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 9, 3); } /** Get GT1.3.9.4 - Alternate Identifier */ export function GT1_3_9_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 9, 4); } /** Get GT1.3.9.5 - Alternate Text */ export function GT1_3_9_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 9, 5); } /** Get GT1.3.9.6 - Name of Alternate Coding System */ export function GT1_3_9_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 9, 6); } /** Get GT1.3.10 - Name Validity Range */ export function GT1_3_10_period(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 10); } /** Get GT1.3.10.1 - Range Start Date/Time */ export function GT1_3_10_1_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 10, 1); } /** Get GT1.3.10.2 - Range End Date/Time */ export function GT1_3_10_2_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 10, 2); } /** Get GT1.3.11 - Name Assembly Order */ export function GT1_3_11_order(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 11); } /** Get GT1.3.12 - Effective Date */ export function GT1_3_12_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 12); } /** Get GT1.3.13 - Expiration Date */ export function GT1_3_13_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 13); } /** Get GT1.3.14 - Professional Suffix */ export function GT1_3_14_credential(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 14); } /** Get GT1.4.1 - Family Name */ export function GT1_4_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 1); } /** Get GT1.4.1.1 - Surname */ export function GT1_4_1_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 1, 1); } /** Get GT1.4.1.2 - Own Surname Prefix */ export function GT1_4_1_2_own_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 1, 2); } /** Get GT1.4.1.3 - Own Surname */ export function GT1_4_1_3_own_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 1, 3); } /** Get GT1.4.1.4 - Surname Prefix From Partner/Spouse */ export function GT1_4_1_4_partner_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 1, 4); } /** Get GT1.4.1.5 - Surname From Partner/Spouse */ export function GT1_4_1_5_partner_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 1, 5); } /** Get GT1.4.2 - Given Name */ export function GT1_4_2_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 2); } /** Get GT1.4.3 - Second and Further Given Names or Initials Thereof */ export function GT1_4_3_additional_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 3); } /** Get GT1.4.4 - Suffix (e.g., JR or III) */ export function GT1_4_4_suffix(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 4); } /** Get GT1.4.5 - Prefix (e.g., DR) */ export function GT1_4_5_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 5); } /** Get GT1.4.6 - Degree (e.g., MD) */ export function GT1_4_6_qualification(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 6); } /** Get GT1.4.7 - Name Type Code */ export function GT1_4_7_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 7); } /** Get GT1.4.8 - Name Representation Code */ export function GT1_4_8_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 8); } /** Get GT1.4.9 - Name Context */ export function GT1_4_9_context(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 9); } /** Get GT1.4.9.1 - Identifier */ export function GT1_4_9_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 9, 1); } /** Get GT1.4.9.2 - Text */ export function GT1_4_9_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 9, 2); } /** Get GT1.4.9.3 - Name of Coding System */ export function GT1_4_9_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 9, 3); } /** Get GT1.4.9.4 - Alternate Identifier */ export function GT1_4_9_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 9, 4); } /** Get GT1.4.9.5 - Alternate Text */ export function GT1_4_9_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 9, 5); } /** Get GT1.4.9.6 - Name of Alternate Coding System */ export function GT1_4_9_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 9, 6); } /** Get GT1.4.10 - Name Validity Range */ export function GT1_4_10_period(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 10); } /** Get GT1.4.10.1 - Range Start Date/Time */ export function GT1_4_10_1_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 10, 1); } /** Get GT1.4.10.2 - Range End Date/Time */ export function GT1_4_10_2_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 10, 2); } /** Get GT1.4.11 - Name Assembly Order */ export function GT1_4_11_order(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 11); } /** Get GT1.4.12 - Effective Date */ export function GT1_4_12_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 12); } /** Get GT1.4.13 - Expiration Date */ export function GT1_4_13_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 13); } /** Get GT1.4.14 - Professional Suffix */ export function GT1_4_14_credential(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 14); } /** Get GT1.5.1 - Street Address */ export function GT1_5_1_line1(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 1); } /** Get GT1.5.1.1 - Street or Mailing Address */ export function GT1_5_1_1_line(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 1, 1); } /** Get GT1.5.1.2 - Street Name */ export function GT1_5_1_2_street_name(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 1, 2); } /** Get GT1.5.1.3 - Dwelling Number */ export function GT1_5_1_3_house_number(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 1, 3); } /** Get GT1.5.2 - Other Designation */ export function GT1_5_2_line2(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 2); } /** Get GT1.5.3 - City */ export function GT1_5_3_city(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 3); } /** Get GT1.5.4 - State or Province */ export function GT1_5_4_state(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 4); } /** Get GT1.5.5 - Zip or Postal Code */ export function GT1_5_5_postal_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 5); } /** Get GT1.5.6 - Country */ export function GT1_5_6_country(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 6); } /** Get GT1.5.7 - Address Type */ export function GT1_5_7_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 7); } /** Get GT1.5.8 - Other Geographic Designation */ export function GT1_5_8_additional_locator(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 8); } /** Get GT1.5.9 - County/Parish Code */ export function GT1_5_9_district(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 9); } /** Get GT1.5.10 - Census Tract */ export function GT1_5_10_census_tract(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 10); } /** Get GT1.5.11 - Address Representation Code */ export function GT1_5_11_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 11); } /** Get GT1.5.12 - Address Validity Range */ export function GT1_5_12_period(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 12); } /** Get GT1.5.12.1 - Range Start Date/Time */ export function GT1_5_12_1_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 12, 1); } /** Get GT1.5.12.2 - Range End Date/Time */ export function GT1_5_12_2_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 12, 2); } /** Get GT1.5.13 - Effective Date */ export function GT1_5_13_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 13); } /** Get GT1.5.14 - Expiration Date */ export function GT1_5_14_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 14); } /** Get GT1.6.1 - Telephone Number */ export function GT1_6_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 1); } /** Get GT1.6.2 - Telecommunication Use Code */ export function GT1_6_2_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 2); } /** Get GT1.6.3 - Telecommunication Equipment Type */ export function GT1_6_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 3); } /** Get GT1.6.4 - Email Address */ export function GT1_6_4_email(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 4); } /** Get GT1.6.5 - Country Code */ export function GT1_6_5_country_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 5); } /** Get GT1.6.6 - Area/City Code */ export function GT1_6_6_area_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 6); } /** Get GT1.6.7 - Local Number */ export function GT1_6_7_local_number(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 7); } /** Get GT1.6.8 - Extension */ export function GT1_6_8_extension(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 8); } /** Get GT1.6.9 - Any Text */ export function GT1_6_9_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 9); } /** Get GT1.6.10 - Extension Prefix */ export function GT1_6_10_extension_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 10); } /** Get GT1.6.11 - Speed Dial Code */ export function GT1_6_11_speed_dial(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 11); } /** Get GT1.6.12 - Unformatted Telephone number */ export function GT1_6_12_unformatted(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 12); } /** Get GT1.7.1 - Telephone Number */ export function GT1_7_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 1); } /** Get GT1.7.2 - Telecommunication Use Code */ export function GT1_7_2_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 2); } /** Get GT1.7.3 - Telecommunication Equipment Type */ export function GT1_7_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 3); } /** Get GT1.7.4 - Email Address */ export function GT1_7_4_email(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 4); } /** Get GT1.7.5 - Country Code */ export function GT1_7_5_country_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 5); } /** Get GT1.7.6 - Area/City Code */ export function GT1_7_6_area_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 6); } /** Get GT1.7.7 - Local Number */ export function GT1_7_7_local_number(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 7); } /** Get GT1.7.8 - Extension */ export function GT1_7_8_extension(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 8); } /** Get GT1.7.9 - Any Text */ export function GT1_7_9_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 9); } /** Get GT1.7.10 - Extension Prefix */ export function GT1_7_10_extension_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 10); } /** Get GT1.7.11 - Speed Dial Code */ export function GT1_7_11_speed_dial(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 11); } /** Get GT1.7.12 - Unformatted Telephone number */ export function GT1_7_12_unformatted(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 12); } /** Get GT1.8 - Guarantor Date/Time Of Birth */ export function GT1_8_birth_date(seg: HL7v2Segment): string | undefined { const val = seg.fields[8]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get GT1.9 - Guarantor Administrative Sex */ export function GT1_9_guarantor_administrative_gender(seg: HL7v2Segment): string | undefined { const val = seg.fields[9]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get GT1.10 - Guarantor Type */ export function GT1_10_guarantor_type(seg: HL7v2Segment): string | undefined { const val = seg.fields[10]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get GT1.11.1 - Identifier */ export function GT1_11_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 1); } /** Get GT1.11.2 - Text */ export function GT1_11_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 2); } /** Get GT1.11.3 - Name of Coding System */ export function GT1_11_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 3); } /** Get GT1.11.4 - Alternate Identifier */ export function GT1_11_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 4); } /** Get GT1.11.5 - Alternate Text */ export function GT1_11_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 5); } /** Get GT1.11.6 - Name of Alternate Coding System */ export function GT1_11_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 6); } /** Get GT1.12 - Guarantor SSN */ export function GT1_12_guarantor_ssn(seg: HL7v2Segment): string | undefined { const val = seg.fields[12]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get GT1.13 - Guarantor Date - Begin */ export function GT1_13_guarantor_date_begin(seg: HL7v2Segment): string | undefined { const val = seg.fields[13]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get GT1.14 - Guarantor Date - End */ export function GT1_14_guarantor_date_end(seg: HL7v2Segment): string | undefined { const val = seg.fields[14]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get GT1.15 - Guarantor Priority */ export function GT1_15_guarantor_priority(seg: HL7v2Segment): string | undefined { const val = seg.fields[15]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get GT1.16.1 - Family Name */ export function GT1_16_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 1); } /** Get GT1.16.1.1 - Surname */ export function GT1_16_1_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 1, 1); } /** Get GT1.16.1.2 - Own Surname Prefix */ export function GT1_16_1_2_own_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 1, 2); } /** Get GT1.16.1.3 - Own Surname */ export function GT1_16_1_3_own_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 1, 3); } /** Get GT1.16.1.4 - Surname Prefix From Partner/Spouse */ export function GT1_16_1_4_partner_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 1, 4); } /** Get GT1.16.1.5 - Surname From Partner/Spouse */ export function GT1_16_1_5_partner_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 1, 5); } /** Get GT1.16.2 - Given Name */ export function GT1_16_2_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 2); } /** Get GT1.16.3 - Second and Further Given Names or Initials Thereof */ export function GT1_16_3_additional_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 3); } /** Get GT1.16.4 - Suffix (e.g., JR or III) */ export function GT1_16_4_suffix(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 4); } /** Get GT1.16.5 - Prefix (e.g., DR) */ export function GT1_16_5_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 5); } /** Get GT1.16.6 - Degree (e.g., MD) */ export function GT1_16_6_qualification(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 6); } /** Get GT1.16.7 - Name Type Code */ export function GT1_16_7_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 7); } /** Get GT1.16.8 - Name Representation Code */ export function GT1_16_8_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 8); } /** Get GT1.16.9 - Name Context */ export function GT1_16_9_context(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 9); } /** Get GT1.16.9.1 - Identifier */ export function GT1_16_9_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 9, 1); } /** Get GT1.16.9.2 - Text */ export function GT1_16_9_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 9, 2); } /** Get GT1.16.9.3 - Name of Coding System */ export function GT1_16_9_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 9, 3); } /** Get GT1.16.9.4 - Alternate Identifier */ export function GT1_16_9_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 9, 4); } /** Get GT1.16.9.5 - Alternate Text */ export function GT1_16_9_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 9, 5); } /** Get GT1.16.9.6 - Name of Alternate Coding System */ export function GT1_16_9_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 9, 6); } /** Get GT1.16.10 - Name Validity Range */ export function GT1_16_10_period(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 10); } /** Get GT1.16.10.1 - Range Start Date/Time */ export function GT1_16_10_1_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 10, 1); } /** Get GT1.16.10.2 - Range End Date/Time */ export function GT1_16_10_2_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 10, 2); } /** Get GT1.16.11 - Name Assembly Order */ export function GT1_16_11_order(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 11); } /** Get GT1.16.12 - Effective Date */ export function GT1_16_12_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 12); } /** Get GT1.16.13 - Expiration Date */ export function GT1_16_13_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 13); } /** Get GT1.16.14 - Professional Suffix */ export function GT1_16_14_credential(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 14); } /** Get GT1.17.1 - Street Address */ export function GT1_17_1_line1(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 1); } /** Get GT1.17.1.1 - Street or Mailing Address */ export function GT1_17_1_1_line(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 1, 1); } /** Get GT1.17.1.2 - Street Name */ export function GT1_17_1_2_street_name(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 1, 2); } /** Get GT1.17.1.3 - Dwelling Number */ export function GT1_17_1_3_house_number(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 1, 3); } /** Get GT1.17.2 - Other Designation */ export function GT1_17_2_line2(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 2); } /** Get GT1.17.3 - City */ export function GT1_17_3_city(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 3); } /** Get GT1.17.4 - State or Province */ export function GT1_17_4_state(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 4); } /** Get GT1.17.5 - Zip or Postal Code */ export function GT1_17_5_postal_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 5); } /** Get GT1.17.6 - Country */ export function GT1_17_6_country(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 6); } /** Get GT1.17.7 - Address Type */ export function GT1_17_7_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 7); } /** Get GT1.17.8 - Other Geographic Designation */ export function GT1_17_8_additional_locator(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 8); } /** Get GT1.17.9 - County/Parish Code */ export function GT1_17_9_district(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 9); } /** Get GT1.17.10 - Census Tract */ export function GT1_17_10_census_tract(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 10); } /** Get GT1.17.11 - Address Representation Code */ export function GT1_17_11_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 11); } /** Get GT1.17.12 - Address Validity Range */ export function GT1_17_12_period(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 12); } /** Get GT1.17.12.1 - Range Start Date/Time */ export function GT1_17_12_1_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 12, 1); } /** Get GT1.17.12.2 - Range End Date/Time */ export function GT1_17_12_2_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 12, 2); } /** Get GT1.17.13 - Effective Date */ export function GT1_17_13_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 13); } /** Get GT1.17.14 - Expiration Date */ export function GT1_17_14_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 14); } /** Get GT1.18.1 - Telephone Number */ export function GT1_18_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 1); } /** Get GT1.18.2 - Telecommunication Use Code */ export function GT1_18_2_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 2); } /** Get GT1.18.3 - Telecommunication Equipment Type */ export function GT1_18_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 3); } /** Get GT1.18.4 - Email Address */ export function GT1_18_4_email(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 4); } /** Get GT1.18.5 - Country Code */ export function GT1_18_5_country_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 5); } /** Get GT1.18.6 - Area/City Code */ export function GT1_18_6_area_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 6); } /** Get GT1.18.7 - Local Number */ export function GT1_18_7_local_number(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 7); } /** Get GT1.18.8 - Extension */ export function GT1_18_8_extension(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 8); } /** Get GT1.18.9 - Any Text */ export function GT1_18_9_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 9); } /** Get GT1.18.10 - Extension Prefix */ export function GT1_18_10_extension_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 10); } /** Get GT1.18.11 - Speed Dial Code */ export function GT1_18_11_speed_dial(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 11); } /** Get GT1.18.12 - Unformatted Telephone number */ export function GT1_18_12_unformatted(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 12); } /** Get GT1.19.1 - ID Number */ export function GT1_19_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 1); } /** Get GT1.19.2 - Check Digit */ export function GT1_19_2_check_digit(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 2); } /** Get GT1.19.3 - Check Digit Scheme */ export function GT1_19_3_check_digit_scheme(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 3); } /** Get GT1.19.4 - Assigning Authority */ export function GT1_19_4_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 4); } /** Get GT1.19.4.1 - Namespace ID */ export function GT1_19_4_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 4, 1); } /** Get GT1.19.4.2 - Universal ID */ export function GT1_19_4_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 4, 2); } /** Get GT1.19.4.3 - Universal ID Type */ export function GT1_19_4_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 4, 3); } /** Get GT1.19.5 - Identifier Type Code */ export function GT1_19_5_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 5); } /** Get GT1.19.6 - Assigning Facility */ export function GT1_19_6_assigner(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 6); } /** Get GT1.19.6.1 - Namespace ID */ export function GT1_19_6_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 6, 1); } /** Get GT1.19.6.2 - Universal ID */ export function GT1_19_6_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 6, 2); } /** Get GT1.19.6.3 - Universal ID Type */ export function GT1_19_6_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 6, 3); } /** Get GT1.19.7 - Effective Date */ export function GT1_19_7_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 7); } /** Get GT1.19.8 - Expiration Date */ export function GT1_19_8_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 8); } /** Get GT1.19.9 - Assigning Jurisdiction */ export function GT1_19_9_jurisdiction(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 9); } /** Get GT1.19.9.1 - Identifier */ export function GT1_19_9_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 9, 1); } /** Get GT1.19.9.2 - Text */ export function GT1_19_9_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 9, 2); } /** Get GT1.19.9.3 - Name of Coding System */ export function GT1_19_9_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 9, 3); } /** Get GT1.19.9.4 - Alternate Identifier */ export function GT1_19_9_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 9, 4); } /** Get GT1.19.9.5 - Alternate Text */ export function GT1_19_9_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 9, 5); } /** Get GT1.19.9.6 - Name of Alternate Coding System */ export function GT1_19_9_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 9, 6); } /** Get GT1.19.9.7 - Coding System Version ID */ export function GT1_19_9_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 9, 7); } /** Get GT1.19.9.8 - Alternate Coding System Version ID */ export function GT1_19_9_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 9, 8); } /** Get GT1.19.9.9 - Original Text */ export function GT1_19_9_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 9, 9); } /** Get GT1.19.10 - Assigning Agency or Department */ export function GT1_19_10_department(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 10); } /** Get GT1.19.10.1 - Identifier */ export function GT1_19_10_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 10, 1); } /** Get GT1.19.10.2 - Text */ export function GT1_19_10_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 10, 2); } /** Get GT1.19.10.3 - Name of Coding System */ export function GT1_19_10_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 10, 3); } /** Get GT1.19.10.4 - Alternate Identifier */ export function GT1_19_10_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 10, 4); } /** Get GT1.19.10.5 - Alternate Text */ export function GT1_19_10_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 10, 5); } /** Get GT1.19.10.6 - Name of Alternate Coding System */ export function GT1_19_10_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 10, 6); } /** Get GT1.19.10.7 - Coding System Version ID */ export function GT1_19_10_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 10, 7); } /** Get GT1.19.10.8 - Alternate Coding System Version ID */ export function GT1_19_10_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 10, 8); } /** Get GT1.19.10.9 - Original Text */ export function GT1_19_10_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 10, 9); } /** Get GT1.20 - Guarantor Employment Status */ export function GT1_20_guarantor_employment_status(seg: HL7v2Segment): string | undefined { const val = seg.fields[20]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get GT1.21.1 - Organization Name */ export function GT1_21_1_name(seg: HL7v2Segment): string | undefined { const field = seg.fields[21]; return getComponent(field, 1); } /** Get GT1.21.2 - Organization Name Type Code */ export function GT1_21_2_name_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[21]; return getComponent(field, 2); } /** Get GT1.21.3 - ID Number */ export function GT1_21_3_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[21]; return getComponent(field, 3); } /** Get GT1.21.4 - Check Digit */ export function GT1_21_4_check_digit(seg: HL7v2Segment): string | undefined { const field = seg.fields[21]; return getComponent(field, 4); } /** Get GT1.21.5 - Check Digit Scheme */ export function GT1_21_5_check_digit_scheme(seg: HL7v2Segment): string | undefined { const field = seg.fields[21]; return getComponent(field, 5); } /** Get GT1.21.6 - Assigning Authority */ export function GT1_21_6_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[21]; return getComponent(field, 6); } /** Get GT1.21.6.1 - Namespace ID */ export function GT1_21_6_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[21]; return getComponent(field, 6, 1); } /** Get GT1.21.6.2 - Universal ID */ export function GT1_21_6_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[21]; return getComponent(field, 6, 2); } /** Get GT1.21.6.3 - Universal ID Type */ export function GT1_21_6_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[21]; return getComponent(field, 6, 3); } /** Get GT1.21.7 - Identifier Type Code */ export function GT1_21_7_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[21]; return getComponent(field, 7); } /** Get GT1.21.8 - Assigning Facility */ export function GT1_21_8_assigner(seg: HL7v2Segment): string | undefined { const field = seg.fields[21]; return getComponent(field, 8); } /** Get GT1.21.8.1 - Namespace ID */ export function GT1_21_8_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[21]; return getComponent(field, 8, 1); } /** Get GT1.21.8.2 - Universal ID */ export function GT1_21_8_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[21]; return getComponent(field, 8, 2); } /** Get GT1.21.8.3 - Universal ID Type */ export function GT1_21_8_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[21]; return getComponent(field, 8, 3); } /** Get GT1.21.9 - Name Representation Code */ export function GT1_21_9_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[21]; return getComponent(field, 9); } /** Get GT1.21.10 - Organization Identifier */ export function GT1_21_10_organization_id(seg: HL7v2Segment): string | undefined { const field = seg.fields[21]; return getComponent(field, 10); } /** Get GT1.22 - Guarantor Billing Hold Flag */ export function GT1_22_guarantor_billing_hold_flag(seg: HL7v2Segment): string | undefined { const val = seg.fields[22]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get GT1.23.1 - Identifier */ export function GT1_23_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[23]; return getComponent(field, 1); } /** Get GT1.23.2 - Text */ export function GT1_23_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[23]; return getComponent(field, 2); } /** Get GT1.23.3 - Name of Coding System */ export function GT1_23_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[23]; return getComponent(field, 3); } /** Get GT1.23.4 - Alternate Identifier */ export function GT1_23_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[23]; return getComponent(field, 4); } /** Get GT1.23.5 - Alternate Text */ export function GT1_23_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[23]; return getComponent(field, 5); } /** Get GT1.23.6 - Name of Alternate Coding System */ export function GT1_23_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[23]; return getComponent(field, 6); } /** Get GT1.24 - Guarantor Death Date And Time */ export function GT1_24_guarantor_death_date_and_time(seg: HL7v2Segment): string | undefined { const val = seg.fields[24]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get GT1.25 - Guarantor Death Flag */ export function GT1_25_guarantor_death_flag(seg: HL7v2Segment): string | undefined { const val = seg.fields[25]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get GT1.26.1 - Identifier */ export function GT1_26_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 1); } /** Get GT1.26.2 - Text */ export function GT1_26_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 2); } /** Get GT1.26.3 - Name of Coding System */ export function GT1_26_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 3); } /** Get GT1.26.4 - Alternate Identifier */ export function GT1_26_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 4); } /** Get GT1.26.5 - Alternate Text */ export function GT1_26_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 5); } /** Get GT1.26.6 - Name of Alternate Coding System */ export function GT1_26_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 6); } /** Get GT1.27.1 - Price */ export function GT1_27_1_amount(seg: HL7v2Segment): string | undefined { const field = seg.fields[27]; return getComponent(field, 1); } /** Get GT1.27.1.1 - Quantity */ export function GT1_27_1_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[27]; return getComponent(field, 1, 1); } /** Get GT1.27.1.2 - Denomination */ export function GT1_27_1_2_currency(seg: HL7v2Segment): string | undefined { const field = seg.fields[27]; return getComponent(field, 1, 2); } /** Get GT1.27.2 - Price Type */ export function GT1_27_2_price_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[27]; return getComponent(field, 2); } /** Get GT1.27.3 - From Value */ export function GT1_27_3_low(seg: HL7v2Segment): string | undefined { const field = seg.fields[27]; return getComponent(field, 3); } /** Get GT1.27.4 - To Value */ export function GT1_27_4_high(seg: HL7v2Segment): string | undefined { const field = seg.fields[27]; return getComponent(field, 4); } /** Get GT1.27.5 - Range Units */ export function GT1_27_5_unit(seg: HL7v2Segment): string | undefined { const field = seg.fields[27]; return getComponent(field, 5); } /** Get GT1.27.5.1 - Identifier */ export function GT1_27_5_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[27]; return getComponent(field, 5, 1); } /** Get GT1.27.5.2 - Text */ export function GT1_27_5_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[27]; return getComponent(field, 5, 2); } /** Get GT1.27.5.3 - Name of Coding System */ export function GT1_27_5_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[27]; return getComponent(field, 5, 3); } /** Get GT1.27.5.4 - Alternate Identifier */ export function GT1_27_5_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[27]; return getComponent(field, 5, 4); } /** Get GT1.27.5.5 - Alternate Text */ export function GT1_27_5_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[27]; return getComponent(field, 5, 5); } /** Get GT1.27.5.6 - Name of Alternate Coding System */ export function GT1_27_5_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[27]; return getComponent(field, 5, 6); } /** Get GT1.27.6 - Range Type */ export function GT1_27_6_range_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[27]; return getComponent(field, 6); } /** Get GT1.28 - Guarantor Household Size */ export function GT1_28_guarantor_household_size(seg: HL7v2Segment): string | undefined { const val = seg.fields[28]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get GT1.29.1 - ID Number */ export function GT1_29_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[29]; return getComponent(field, 1); } /** Get GT1.29.2 - Check Digit */ export function GT1_29_2_check_digit(seg: HL7v2Segment): string | undefined { const field = seg.fields[29]; return getComponent(field, 2); } /** Get GT1.29.3 - Check Digit Scheme */ export function GT1_29_3_check_digit_scheme(seg: HL7v2Segment): string | undefined { const field = seg.fields[29]; return getComponent(field, 3); } /** Get GT1.29.4 - Assigning Authority */ export function GT1_29_4_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[29]; return getComponent(field, 4); } /** Get GT1.29.4.1 - Namespace ID */ export function GT1_29_4_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[29]; return getComponent(field, 4, 1); } /** Get GT1.29.4.2 - Universal ID */ export function GT1_29_4_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[29]; return getComponent(field, 4, 2); } /** Get GT1.29.4.3 - Universal ID Type */ export function GT1_29_4_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[29]; return getComponent(field, 4, 3); } /** Get GT1.29.5 - Identifier Type Code */ export function GT1_29_5_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[29]; return getComponent(field, 5); } /** Get GT1.29.6 - Assigning Facility */ export function GT1_29_6_assigner(seg: HL7v2Segment): string | undefined { const field = seg.fields[29]; return getComponent(field, 6); } /** Get GT1.29.6.1 - Namespace ID */ export function GT1_29_6_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[29]; return getComponent(field, 6, 1); } /** Get GT1.29.6.2 - Universal ID */ export function GT1_29_6_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[29]; return getComponent(field, 6, 2); } /** Get GT1.29.6.3 - Universal ID Type */ export function GT1_29_6_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[29]; return getComponent(field, 6, 3); } /** Get GT1.29.7 - Effective Date */ export function GT1_29_7_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[29]; return getComponent(field, 7); } /** Get GT1.29.8 - Expiration Date */ export function GT1_29_8_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[29]; return getComponent(field, 8); } /** Get GT1.29.9 - Assigning Jurisdiction */ export function GT1_29_9_jurisdiction(seg: HL7v2Segment): string | undefined { const field = seg.fields[29]; return getComponent(field, 9); } /** Get GT1.29.9.1 - Identifier */ export function GT1_29_9_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[29]; return getComponent(field, 9, 1); } /** Get GT1.29.9.2 - Text */ export function GT1_29_9_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[29]; return getComponent(field, 9, 2); } /** Get GT1.29.9.3 - Name of Coding System */ export function GT1_29_9_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[29]; return getComponent(field, 9, 3); } /** Get GT1.29.9.4 - Alternate Identifier */ export function GT1_29_9_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[29]; return getComponent(field, 9, 4); } /** Get GT1.29.9.5 - Alternate Text */ export function GT1_29_9_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[29]; return getComponent(field, 9, 5); } /** Get GT1.29.9.6 - Name of Alternate Coding System */ export function GT1_29_9_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[29]; return getComponent(field, 9, 6); } /** Get GT1.29.9.7 - Coding System Version ID */ export function GT1_29_9_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[29]; return getComponent(field, 9, 7); } /** Get GT1.29.9.8 - Alternate Coding System Version ID */ export function GT1_29_9_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[29]; return getComponent(field, 9, 8); } /** Get GT1.29.9.9 - Original Text */ export function GT1_29_9_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[29]; return getComponent(field, 9, 9); } /** Get GT1.29.10 - Assigning Agency or Department */ export function GT1_29_10_department(seg: HL7v2Segment): string | undefined { const field = seg.fields[29]; return getComponent(field, 10); } /** Get GT1.29.10.1 - Identifier */ export function GT1_29_10_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[29]; return getComponent(field, 10, 1); } /** Get GT1.29.10.2 - Text */ export function GT1_29_10_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[29]; return getComponent(field, 10, 2); } /** Get GT1.29.10.3 - Name of Coding System */ export function GT1_29_10_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[29]; return getComponent(field, 10, 3); } /** Get GT1.29.10.4 - Alternate Identifier */ export function GT1_29_10_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[29]; return getComponent(field, 10, 4); } /** Get GT1.29.10.5 - Alternate Text */ export function GT1_29_10_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[29]; return getComponent(field, 10, 5); } /** Get GT1.29.10.6 - Name of Alternate Coding System */ export function GT1_29_10_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[29]; return getComponent(field, 10, 6); } /** Get GT1.29.10.7 - Coding System Version ID */ export function GT1_29_10_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[29]; return getComponent(field, 10, 7); } /** Get GT1.29.10.8 - Alternate Coding System Version ID */ export function GT1_29_10_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[29]; return getComponent(field, 10, 8); } /** Get GT1.29.10.9 - Original Text */ export function GT1_29_10_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[29]; return getComponent(field, 10, 9); } /** Get GT1.30.1 - Identifier */ export function GT1_30_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 1); } /** Get GT1.30.2 - Text */ export function GT1_30_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 2); } /** Get GT1.30.3 - Name of Coding System */ export function GT1_30_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 3); } /** Get GT1.30.4 - Alternate Identifier */ export function GT1_30_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 4); } /** Get GT1.30.5 - Alternate Text */ export function GT1_30_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 5); } /** Get GT1.30.6 - Name of Alternate Coding System */ export function GT1_30_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 6); } /** Get GT1.31 - Guarantor Hire Effective Date */ export function GT1_31_guarantor_hire_effective_date(seg: HL7v2Segment): string | undefined { const val = seg.fields[31]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get GT1.32 - Employment Stop Date */ export function GT1_32_employment_end(seg: HL7v2Segment): string | undefined { const val = seg.fields[32]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get GT1.33 - Living Dependency */ export function GT1_33_living_dependency(seg: HL7v2Segment): string | undefined { const val = seg.fields[33]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get GT1.34 - Ambulatory Status */ export function GT1_34_ambulatory_status(seg: HL7v2Segment): string | undefined { const val = seg.fields[34]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get GT1.35.1 - Identifier */ export function GT1_35_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[35]; return getComponent(field, 1); } /** Get GT1.35.2 - Text */ export function GT1_35_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[35]; return getComponent(field, 2); } /** Get GT1.35.3 - Name of Coding System */ export function GT1_35_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[35]; return getComponent(field, 3); } /** Get GT1.35.4 - Alternate Identifier */ export function GT1_35_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[35]; return getComponent(field, 4); } /** Get GT1.35.5 - Alternate Text */ export function GT1_35_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[35]; return getComponent(field, 5); } /** Get GT1.35.6 - Name of Alternate Coding System */ export function GT1_35_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[35]; return getComponent(field, 6); } /** Get GT1.36.1 - Identifier */ export function GT1_36_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[36]; return getComponent(field, 1); } /** Get GT1.36.2 - Text */ export function GT1_36_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[36]; return getComponent(field, 2); } /** Get GT1.36.3 - Name of Coding System */ export function GT1_36_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[36]; return getComponent(field, 3); } /** Get GT1.36.4 - Alternate Identifier */ export function GT1_36_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[36]; return getComponent(field, 4); } /** Get GT1.36.5 - Alternate Text */ export function GT1_36_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[36]; return getComponent(field, 5); } /** Get GT1.36.6 - Name of Alternate Coding System */ export function GT1_36_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[36]; return getComponent(field, 6); } /** Get GT1.37 - Living Arrangement */ export function GT1_37_living_arrangement(seg: HL7v2Segment): string | undefined { const val = seg.fields[37]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get GT1.38.1 - Identifier */ export function GT1_38_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[38]; return getComponent(field, 1); } /** Get GT1.38.2 - Text */ export function GT1_38_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[38]; return getComponent(field, 2); } /** Get GT1.38.3 - Name of Coding System */ export function GT1_38_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[38]; return getComponent(field, 3); } /** Get GT1.38.4 - Alternate Identifier */ export function GT1_38_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[38]; return getComponent(field, 4); } /** Get GT1.38.5 - Alternate Text */ export function GT1_38_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[38]; return getComponent(field, 5); } /** Get GT1.38.6 - Name of Alternate Coding System */ export function GT1_38_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[38]; return getComponent(field, 6); } /** Get GT1.39 - Protection Indicator */ export function GT1_39_protection_indicator(seg: HL7v2Segment): string | undefined { const val = seg.fields[39]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get GT1.40 - Student Indicator */ export function GT1_40_student(seg: HL7v2Segment): string | undefined { const val = seg.fields[40]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get GT1.41.1 - Identifier */ export function GT1_41_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[41]; return getComponent(field, 1); } /** Get GT1.41.2 - Text */ export function GT1_41_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[41]; return getComponent(field, 2); } /** Get GT1.41.3 - Name of Coding System */ export function GT1_41_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[41]; return getComponent(field, 3); } /** Get GT1.41.4 - Alternate Identifier */ export function GT1_41_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[41]; return getComponent(field, 4); } /** Get GT1.41.5 - Alternate Text */ export function GT1_41_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[41]; return getComponent(field, 5); } /** Get GT1.41.6 - Name of Alternate Coding System */ export function GT1_41_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[41]; return getComponent(field, 6); } /** Get GT1.42.1 - Family Name */ export function GT1_42_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 1); } /** Get GT1.42.1.1 - Surname */ export function GT1_42_1_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 1, 1); } /** Get GT1.42.1.2 - Own Surname Prefix */ export function GT1_42_1_2_own_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 1, 2); } /** Get GT1.42.1.3 - Own Surname */ export function GT1_42_1_3_own_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 1, 3); } /** Get GT1.42.1.4 - Surname Prefix From Partner/Spouse */ export function GT1_42_1_4_partner_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 1, 4); } /** Get GT1.42.1.5 - Surname From Partner/Spouse */ export function GT1_42_1_5_partner_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 1, 5); } /** Get GT1.42.2 - Given Name */ export function GT1_42_2_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 2); } /** Get GT1.42.3 - Second and Further Given Names or Initials Thereof */ export function GT1_42_3_additional_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 3); } /** Get GT1.42.4 - Suffix (e.g., JR or III) */ export function GT1_42_4_suffix(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 4); } /** Get GT1.42.5 - Prefix (e.g., DR) */ export function GT1_42_5_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 5); } /** Get GT1.42.6 - Degree (e.g., MD) */ export function GT1_42_6_qualification(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 6); } /** Get GT1.42.7 - Name Type Code */ export function GT1_42_7_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 7); } /** Get GT1.42.8 - Name Representation Code */ export function GT1_42_8_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 8); } /** Get GT1.42.9 - Name Context */ export function GT1_42_9_context(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 9); } /** Get GT1.42.9.1 - Identifier */ export function GT1_42_9_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 9, 1); } /** Get GT1.42.9.2 - Text */ export function GT1_42_9_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 9, 2); } /** Get GT1.42.9.3 - Name of Coding System */ export function GT1_42_9_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 9, 3); } /** Get GT1.42.9.4 - Alternate Identifier */ export function GT1_42_9_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 9, 4); } /** Get GT1.42.9.5 - Alternate Text */ export function GT1_42_9_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 9, 5); } /** Get GT1.42.9.6 - Name of Alternate Coding System */ export function GT1_42_9_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 9, 6); } /** Get GT1.42.10 - Name Validity Range */ export function GT1_42_10_period(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 10); } /** Get GT1.42.10.1 - Range Start Date/Time */ export function GT1_42_10_1_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 10, 1); } /** Get GT1.42.10.2 - Range End Date/Time */ export function GT1_42_10_2_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 10, 2); } /** Get GT1.42.11 - Name Assembly Order */ export function GT1_42_11_order(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 11); } /** Get GT1.42.12 - Effective Date */ export function GT1_42_12_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 12); } /** Get GT1.42.13 - Expiration Date */ export function GT1_42_13_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 13); } /** Get GT1.42.14 - Professional Suffix */ export function GT1_42_14_credential(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 14); } /** Get GT1.43.1 - Identifier */ export function GT1_43_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[43]; return getComponent(field, 1); } /** Get GT1.43.2 - Text */ export function GT1_43_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[43]; return getComponent(field, 2); } /** Get GT1.43.3 - Name of Coding System */ export function GT1_43_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[43]; return getComponent(field, 3); } /** Get GT1.43.4 - Alternate Identifier */ export function GT1_43_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[43]; return getComponent(field, 4); } /** Get GT1.43.5 - Alternate Text */ export function GT1_43_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[43]; return getComponent(field, 5); } /** Get GT1.43.6 - Name of Alternate Coding System */ export function GT1_43_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[43]; return getComponent(field, 6); } /** Get GT1.44.1 - Identifier */ export function GT1_44_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[44]; return getComponent(field, 1); } /** Get GT1.44.2 - Text */ export function GT1_44_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[44]; return getComponent(field, 2); } /** Get GT1.44.3 - Name of Coding System */ export function GT1_44_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[44]; return getComponent(field, 3); } /** Get GT1.44.4 - Alternate Identifier */ export function GT1_44_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[44]; return getComponent(field, 4); } /** Get GT1.44.5 - Alternate Text */ export function GT1_44_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[44]; return getComponent(field, 5); } /** Get GT1.44.6 - Name of Alternate Coding System */ export function GT1_44_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[44]; return getComponent(field, 6); } /** Get GT1.45.1 - Family Name */ export function GT1_45_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[45]; return getComponent(field, 1); } /** Get GT1.45.1.1 - Surname */ export function GT1_45_1_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[45]; return getComponent(field, 1, 1); } /** Get GT1.45.1.2 - Own Surname Prefix */ export function GT1_45_1_2_own_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[45]; return getComponent(field, 1, 2); } /** Get GT1.45.1.3 - Own Surname */ export function GT1_45_1_3_own_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[45]; return getComponent(field, 1, 3); } /** Get GT1.45.1.4 - Surname Prefix From Partner/Spouse */ export function GT1_45_1_4_partner_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[45]; return getComponent(field, 1, 4); } /** Get GT1.45.1.5 - Surname From Partner/Spouse */ export function GT1_45_1_5_partner_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[45]; return getComponent(field, 1, 5); } /** Get GT1.45.2 - Given Name */ export function GT1_45_2_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[45]; return getComponent(field, 2); } /** Get GT1.45.3 - Second and Further Given Names or Initials Thereof */ export function GT1_45_3_additional_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[45]; return getComponent(field, 3); } /** Get GT1.45.4 - Suffix (e.g., JR or III) */ export function GT1_45_4_suffix(seg: HL7v2Segment): string | undefined { const field = seg.fields[45]; return getComponent(field, 4); } /** Get GT1.45.5 - Prefix (e.g., DR) */ export function GT1_45_5_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[45]; return getComponent(field, 5); } /** Get GT1.45.6 - Degree (e.g., MD) */ export function GT1_45_6_qualification(seg: HL7v2Segment): string | undefined { const field = seg.fields[45]; return getComponent(field, 6); } /** Get GT1.45.7 - Name Type Code */ export function GT1_45_7_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[45]; return getComponent(field, 7); } /** Get GT1.45.8 - Name Representation Code */ export function GT1_45_8_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[45]; return getComponent(field, 8); } /** Get GT1.45.9 - Name Context */ export function GT1_45_9_context(seg: HL7v2Segment): string | undefined { const field = seg.fields[45]; return getComponent(field, 9); } /** Get GT1.45.9.1 - Identifier */ export function GT1_45_9_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[45]; return getComponent(field, 9, 1); } /** Get GT1.45.9.2 - Text */ export function GT1_45_9_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[45]; return getComponent(field, 9, 2); } /** Get GT1.45.9.3 - Name of Coding System */ export function GT1_45_9_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[45]; return getComponent(field, 9, 3); } /** Get GT1.45.9.4 - Alternate Identifier */ export function GT1_45_9_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[45]; return getComponent(field, 9, 4); } /** Get GT1.45.9.5 - Alternate Text */ export function GT1_45_9_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[45]; return getComponent(field, 9, 5); } /** Get GT1.45.9.6 - Name of Alternate Coding System */ export function GT1_45_9_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[45]; return getComponent(field, 9, 6); } /** Get GT1.45.10 - Name Validity Range */ export function GT1_45_10_period(seg: HL7v2Segment): string | undefined { const field = seg.fields[45]; return getComponent(field, 10); } /** Get GT1.45.10.1 - Range Start Date/Time */ export function GT1_45_10_1_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[45]; return getComponent(field, 10, 1); } /** Get GT1.45.10.2 - Range End Date/Time */ export function GT1_45_10_2_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[45]; return getComponent(field, 10, 2); } /** Get GT1.45.11 - Name Assembly Order */ export function GT1_45_11_order(seg: HL7v2Segment): string | undefined { const field = seg.fields[45]; return getComponent(field, 11); } /** Get GT1.45.12 - Effective Date */ export function GT1_45_12_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[45]; return getComponent(field, 12); } /** Get GT1.45.13 - Expiration Date */ export function GT1_45_13_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[45]; return getComponent(field, 13); } /** Get GT1.45.14 - Professional Suffix */ export function GT1_45_14_credential(seg: HL7v2Segment): string | undefined { const field = seg.fields[45]; return getComponent(field, 14); } /** Get GT1.46.1 - Telephone Number */ export function GT1_46_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[46]; return getComponent(field, 1); } /** Get GT1.46.2 - Telecommunication Use Code */ export function GT1_46_2_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[46]; return getComponent(field, 2); } /** Get GT1.46.3 - Telecommunication Equipment Type */ export function GT1_46_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[46]; return getComponent(field, 3); } /** Get GT1.46.4 - Email Address */ export function GT1_46_4_email(seg: HL7v2Segment): string | undefined { const field = seg.fields[46]; return getComponent(field, 4); } /** Get GT1.46.5 - Country Code */ export function GT1_46_5_country_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[46]; return getComponent(field, 5); } /** Get GT1.46.6 - Area/City Code */ export function GT1_46_6_area_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[46]; return getComponent(field, 6); } /** Get GT1.46.7 - Local Number */ export function GT1_46_7_local_number(seg: HL7v2Segment): string | undefined { const field = seg.fields[46]; return getComponent(field, 7); } /** Get GT1.46.8 - Extension */ export function GT1_46_8_extension(seg: HL7v2Segment): string | undefined { const field = seg.fields[46]; return getComponent(field, 8); } /** Get GT1.46.9 - Any Text */ export function GT1_46_9_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[46]; return getComponent(field, 9); } /** Get GT1.46.10 - Extension Prefix */ export function GT1_46_10_extension_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[46]; return getComponent(field, 10); } /** Get GT1.46.11 - Speed Dial Code */ export function GT1_46_11_speed_dial(seg: HL7v2Segment): string | undefined { const field = seg.fields[46]; return getComponent(field, 11); } /** Get GT1.46.12 - Unformatted Telephone number */ export function GT1_46_12_unformatted(seg: HL7v2Segment): string | undefined { const field = seg.fields[46]; return getComponent(field, 12); } /** Get GT1.47.1 - Identifier */ export function GT1_47_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[47]; return getComponent(field, 1); } /** Get GT1.47.2 - Text */ export function GT1_47_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[47]; return getComponent(field, 2); } /** Get GT1.47.3 - Name of Coding System */ export function GT1_47_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[47]; return getComponent(field, 3); } /** Get GT1.47.4 - Alternate Identifier */ export function GT1_47_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[47]; return getComponent(field, 4); } /** Get GT1.47.5 - Alternate Text */ export function GT1_47_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[47]; return getComponent(field, 5); } /** Get GT1.47.6 - Name of Alternate Coding System */ export function GT1_47_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[47]; return getComponent(field, 6); } /** Get GT1.48 - Contact Relationship */ export function GT1_48_contact_relationship(seg: HL7v2Segment): string | undefined { const val = seg.fields[48]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get GT1.49 - Job Title */ export function GT1_49_job_title(seg: HL7v2Segment): string | undefined { const val = seg.fields[49]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get GT1.50.1 - Job Code */ export function GT1_50_1_job_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[50]; return getComponent(field, 1); } /** Get GT1.50.2 - Job Class */ export function GT1_50_2_job_class(seg: HL7v2Segment): string | undefined { const field = seg.fields[50]; return getComponent(field, 2); } /** Get GT1.50.3 - Job Description Text */ export function GT1_50_3_job_description(seg: HL7v2Segment): string | undefined { const field = seg.fields[50]; return getComponent(field, 3); } /** Get GT1.51.1 - Organization Name */ export function GT1_51_1_name(seg: HL7v2Segment): string | undefined { const field = seg.fields[51]; return getComponent(field, 1); } /** Get GT1.51.2 - Organization Name Type Code */ export function GT1_51_2_name_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[51]; return getComponent(field, 2); } /** Get GT1.51.3 - ID Number */ export function GT1_51_3_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[51]; return getComponent(field, 3); } /** Get GT1.51.4 - Check Digit */ export function GT1_51_4_check_digit(seg: HL7v2Segment): string | undefined { const field = seg.fields[51]; return getComponent(field, 4); } /** Get GT1.51.5 - Check Digit Scheme */ export function GT1_51_5_check_digit_scheme(seg: HL7v2Segment): string | undefined { const field = seg.fields[51]; return getComponent(field, 5); } /** Get GT1.51.6 - Assigning Authority */ export function GT1_51_6_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[51]; return getComponent(field, 6); } /** Get GT1.51.6.1 - Namespace ID */ export function GT1_51_6_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[51]; return getComponent(field, 6, 1); } /** Get GT1.51.6.2 - Universal ID */ export function GT1_51_6_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[51]; return getComponent(field, 6, 2); } /** Get GT1.51.6.3 - Universal ID Type */ export function GT1_51_6_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[51]; return getComponent(field, 6, 3); } /** Get GT1.51.7 - Identifier Type Code */ export function GT1_51_7_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[51]; return getComponent(field, 7); } /** Get GT1.51.8 - Assigning Facility */ export function GT1_51_8_assigner(seg: HL7v2Segment): string | undefined { const field = seg.fields[51]; return getComponent(field, 8); } /** Get GT1.51.8.1 - Namespace ID */ export function GT1_51_8_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[51]; return getComponent(field, 8, 1); } /** Get GT1.51.8.2 - Universal ID */ export function GT1_51_8_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[51]; return getComponent(field, 8, 2); } /** Get GT1.51.8.3 - Universal ID Type */ export function GT1_51_8_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[51]; return getComponent(field, 8, 3); } /** Get GT1.51.9 - Name Representation Code */ export function GT1_51_9_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[51]; return getComponent(field, 9); } /** Get GT1.51.10 - Organization Identifier */ export function GT1_51_10_organization_id(seg: HL7v2Segment): string | undefined { const field = seg.fields[51]; return getComponent(field, 10); } /** Get GT1.52 - Handicap */ export function GT1_52_disability(seg: HL7v2Segment): string | undefined { const val = seg.fields[52]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get GT1.53 - Job Status */ export function GT1_53_job_status(seg: HL7v2Segment): string | undefined { const val = seg.fields[53]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get GT1.54.1 - Financial Class Code */ export function GT1_54_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[54]; return getComponent(field, 1); } /** Get GT1.54.2 - Effective Date */ export function GT1_54_2_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[54]; return getComponent(field, 2); } /** Get GT1.55.1 - Identifier */ export function GT1_55_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[55]; return getComponent(field, 1); } /** Get GT1.55.2 - Text */ export function GT1_55_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[55]; return getComponent(field, 2); } /** Get GT1.55.3 - Name of Coding System */ export function GT1_55_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[55]; return getComponent(field, 3); } /** Get GT1.55.4 - Alternate Identifier */ export function GT1_55_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[55]; return getComponent(field, 4); } /** Get GT1.55.5 - Alternate Text */ export function GT1_55_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[55]; return getComponent(field, 5); } /** Get GT1.55.6 - Name of Alternate Coding System */ export function GT1_55_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[55]; return getComponent(field, 6); } /** Get GT1.56 - Guarantor Birth Place */ export function GT1_56_guarantor_birth_place(seg: HL7v2Segment): string | undefined { const val = seg.fields[56]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get GT1.57 - VIP Indicator */ export function GT1_57_vip(seg: HL7v2Segment): string | undefined { const val = seg.fields[57]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } export class GT1Builder { private seg: HL7v2Segment = { segment: "GT1", fields: {} }; /** GT1.1 - Set ID - GT1 */ set_gt1_1_setIdGt1(value: string | null | undefined): this { if (value != null) this.seg.fields[1] = value; return this; } /** GT1.1 - Set ID - GT1 */ get_gt1_1_setIdGt1(): string | undefined { const val = this.seg.fields[1]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** GT1.2 - Guarantor Number (set all values) */ set_gt1_2_guarantorNumber(values: CX[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[2] = arr; return this; } /** GT1.2 - Guarantor Number (add single value) */ add_gt1_2_guarantorNumber(value: CX | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[2]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[2] = [fv]; } } return this; } /** GT1.2 - Guarantor Number */ get_gt1_2_guarantorNumber(): CX[] | undefined { const val = this.seg.fields[2]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromCX(v)).filter((v): v is CX => v !== undefined); } /** GT1.3 - Guarantor Name (set all values) */ set_gt1_3_guarantorName(values: XPN[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[3] = arr; return this; } /** GT1.3 - Guarantor Name (add single value) */ add_gt1_3_guarantorName(value: XPN | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[3]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[3] = [fv]; } } return this; } /** GT1.3 - Guarantor Name */ get_gt1_3_guarantorName(): XPN[] | undefined { const val = this.seg.fields[3]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXPN(v)).filter((v): v is XPN => v !== undefined); } /** GT1.4 - Guarantor Spouse Name (set all values) */ set_gt1_4_guarantorSpouseName(values: XPN[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[4] = arr; return this; } /** GT1.4 - Guarantor Spouse Name (add single value) */ add_gt1_4_guarantorSpouseName(value: XPN | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[4]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[4] = [fv]; } } return this; } /** GT1.4 - Guarantor Spouse Name */ get_gt1_4_guarantorSpouseName(): XPN[] | undefined { const val = this.seg.fields[4]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXPN(v)).filter((v): v is XPN => v !== undefined); } /** GT1.5 - Guarantor Address (set all values) */ set_gt1_5_guarantorAddress(values: XAD[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[5] = arr; return this; } /** GT1.5 - Guarantor Address (add single value) */ add_gt1_5_guarantorAddress(value: XAD | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[5]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[5] = [fv]; } } return this; } /** GT1.5 - Guarantor Address */ get_gt1_5_guarantorAddress(): XAD[] | undefined { const val = this.seg.fields[5]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXAD(v)).filter((v): v is XAD => v !== undefined); } /** GT1.6 - Guarantor Ph Num - Home (set all values) */ set_gt1_6_guarantorPhNumHome(values: XTN[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[6] = arr; return this; } /** GT1.6 - Guarantor Ph Num - Home (add single value) */ add_gt1_6_guarantorPhNumHome(value: XTN | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[6]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[6] = [fv]; } } return this; } /** GT1.6 - Guarantor Ph Num - Home */ get_gt1_6_guarantorPhNumHome(): XTN[] | undefined { const val = this.seg.fields[6]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXTN(v)).filter((v): v is XTN => v !== undefined); } /** GT1.7 - Guarantor Ph Num - Business (set all values) */ set_gt1_7_guarantorPhNumBusiness(values: XTN[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[7] = arr; return this; } /** GT1.7 - Guarantor Ph Num - Business (add single value) */ add_gt1_7_guarantorPhNumBusiness(value: XTN | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[7]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[7] = [fv]; } } return this; } /** GT1.7 - Guarantor Ph Num - Business */ get_gt1_7_guarantorPhNumBusiness(): XTN[] | undefined { const val = this.seg.fields[7]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXTN(v)).filter((v): v is XTN => v !== undefined); } /** GT1.8 - Guarantor Date/Time Of Birth */ set_gt1_8_birthDate(value: string | null | undefined): this { if (value != null) this.seg.fields[8] = value; return this; } /** GT1.8 - Guarantor Date/Time Of Birth */ get_gt1_8_birthDate(): string | undefined { const val = this.seg.fields[8]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** GT1.9 - Guarantor Administrative Sex */ set_gt1_9_guarantorAdministrativeGender(value: string | null | undefined): this { if (value != null) this.seg.fields[9] = value; return this; } /** GT1.9 - Guarantor Administrative Sex */ get_gt1_9_guarantorAdministrativeGender(): string | undefined { const val = this.seg.fields[9]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** GT1.10 - Guarantor Type */ set_gt1_10_guarantorType(value: string | null | undefined): this { if (value != null) this.seg.fields[10] = value; return this; } /** GT1.10 - Guarantor Type */ get_gt1_10_guarantorType(): string | undefined { const val = this.seg.fields[10]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** GT1.11 - Guarantor Relationship */ set_gt1_11_guarantorRelationship(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[11] = fv; return this; } /** GT1.11 - Guarantor Relationship */ get_gt1_11_guarantorRelationship(): CE | undefined { return fromCE(this.seg.fields[11]); } /** GT1.12 - Guarantor SSN */ set_gt1_12_guarantorSsn(value: string | null | undefined): this { if (value != null) this.seg.fields[12] = value; return this; } /** GT1.12 - Guarantor SSN */ get_gt1_12_guarantorSsn(): string | undefined { const val = this.seg.fields[12]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** GT1.13 - Guarantor Date - Begin */ set_gt1_13_guarantorDateBegin(value: string | null | undefined): this { if (value != null) this.seg.fields[13] = value; return this; } /** GT1.13 - Guarantor Date - Begin */ get_gt1_13_guarantorDateBegin(): string | undefined { const val = this.seg.fields[13]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** GT1.14 - Guarantor Date - End */ set_gt1_14_guarantorDateEnd(value: string | null | undefined): this { if (value != null) this.seg.fields[14] = value; return this; } /** GT1.14 - Guarantor Date - End */ get_gt1_14_guarantorDateEnd(): string | undefined { const val = this.seg.fields[14]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** GT1.15 - Guarantor Priority */ set_gt1_15_guarantorPriority(value: string | null | undefined): this { if (value != null) this.seg.fields[15] = value; return this; } /** GT1.15 - Guarantor Priority */ get_gt1_15_guarantorPriority(): string | undefined { const val = this.seg.fields[15]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** GT1.16 - Guarantor Employer Name (set all values) */ set_gt1_16_guarantorEmployerName(values: XPN[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[16] = arr; return this; } /** GT1.16 - Guarantor Employer Name (add single value) */ add_gt1_16_guarantorEmployerName(value: XPN | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[16]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[16] = [fv]; } } return this; } /** GT1.16 - Guarantor Employer Name */ get_gt1_16_guarantorEmployerName(): XPN[] | undefined { const val = this.seg.fields[16]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXPN(v)).filter((v): v is XPN => v !== undefined); } /** GT1.17 - Guarantor Employer Address (set all values) */ set_gt1_17_guarantorEmployerAddress(values: XAD[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[17] = arr; return this; } /** GT1.17 - Guarantor Employer Address (add single value) */ add_gt1_17_guarantorEmployerAddress(value: XAD | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[17]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[17] = [fv]; } } return this; } /** GT1.17 - Guarantor Employer Address */ get_gt1_17_guarantorEmployerAddress(): XAD[] | undefined { const val = this.seg.fields[17]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXAD(v)).filter((v): v is XAD => v !== undefined); } /** GT1.18 - Guarantor Employer Phone Number (set all values) */ set_gt1_18_guarantorEmployerPhoneNumber(values: XTN[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[18] = arr; return this; } /** GT1.18 - Guarantor Employer Phone Number (add single value) */ add_gt1_18_guarantorEmployerPhoneNumber(value: XTN | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[18]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[18] = [fv]; } } return this; } /** GT1.18 - Guarantor Employer Phone Number */ get_gt1_18_guarantorEmployerPhoneNumber(): XTN[] | undefined { const val = this.seg.fields[18]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXTN(v)).filter((v): v is XTN => v !== undefined); } /** GT1.19 - Guarantor Employee ID Number (set all values) */ set_gt1_19_guarantorEmployeeIdNumber(values: CX[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[19] = arr; return this; } /** GT1.19 - Guarantor Employee ID Number (add single value) */ add_gt1_19_guarantorEmployeeIdNumber(value: CX | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[19]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[19] = [fv]; } } return this; } /** GT1.19 - Guarantor Employee ID Number */ get_gt1_19_guarantorEmployeeIdNumber(): CX[] | undefined { const val = this.seg.fields[19]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromCX(v)).filter((v): v is CX => v !== undefined); } /** GT1.20 - Guarantor Employment Status */ set_gt1_20_guarantorEmploymentStatus(value: string | null | undefined): this { if (value != null) this.seg.fields[20] = value; return this; } /** GT1.20 - Guarantor Employment Status */ get_gt1_20_guarantorEmploymentStatus(): string | undefined { const val = this.seg.fields[20]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** GT1.21 - Guarantor Organization Name (set all values) */ set_gt1_21_guarantorOrganizationName(values: XON[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[21] = arr; return this; } /** GT1.21 - Guarantor Organization Name (add single value) */ add_gt1_21_guarantorOrganizationName(value: XON | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[21]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[21] = [fv]; } } return this; } /** GT1.21 - Guarantor Organization Name */ get_gt1_21_guarantorOrganizationName(): XON[] | undefined { const val = this.seg.fields[21]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXON(v)).filter((v): v is XON => v !== undefined); } /** GT1.22 - Guarantor Billing Hold Flag */ set_gt1_22_guarantorBillingHoldFlag(value: string | null | undefined): this { if (value != null) this.seg.fields[22] = value; return this; } /** GT1.22 - Guarantor Billing Hold Flag */ get_gt1_22_guarantorBillingHoldFlag(): string | undefined { const val = this.seg.fields[22]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** GT1.23 - Guarantor Credit Rating Code */ set_gt1_23_guarantorCreditRatingCode(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[23] = fv; return this; } /** GT1.23 - Guarantor Credit Rating Code */ get_gt1_23_guarantorCreditRatingCode(): CE | undefined { return fromCE(this.seg.fields[23]); } /** GT1.24 - Guarantor Death Date And Time */ set_gt1_24_guarantorDeathDateAndTime(value: string | null | undefined): this { if (value != null) this.seg.fields[24] = value; return this; } /** GT1.24 - Guarantor Death Date And Time */ get_gt1_24_guarantorDeathDateAndTime(): string | undefined { const val = this.seg.fields[24]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** GT1.25 - Guarantor Death Flag */ set_gt1_25_guarantorDeathFlag(value: string | null | undefined): this { if (value != null) this.seg.fields[25] = value; return this; } /** GT1.25 - Guarantor Death Flag */ get_gt1_25_guarantorDeathFlag(): string | undefined { const val = this.seg.fields[25]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** GT1.26 - Guarantor Charge Adjustment Code */ set_gt1_26_guarantorChargeAdjustmentCode(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[26] = fv; return this; } /** GT1.26 - Guarantor Charge Adjustment Code */ get_gt1_26_guarantorChargeAdjustmentCode(): CE | undefined { return fromCE(this.seg.fields[26]); } /** GT1.27 - Guarantor Household Annual Income */ set_gt1_27_guarantorHouseholdAnnualIncome(value: CP | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[27] = fv; return this; } /** GT1.27 - Guarantor Household Annual Income */ get_gt1_27_guarantorHouseholdAnnualIncome(): CP | undefined { return fromCP(this.seg.fields[27]); } /** GT1.28 - Guarantor Household Size */ set_gt1_28_guarantorHouseholdSize(value: string | null | undefined): this { if (value != null) this.seg.fields[28] = value; return this; } /** GT1.28 - Guarantor Household Size */ get_gt1_28_guarantorHouseholdSize(): string | undefined { const val = this.seg.fields[28]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** GT1.29 - Guarantor Employer ID Number (set all values) */ set_gt1_29_guarantorEmployerIdNumber(values: CX[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[29] = arr; return this; } /** GT1.29 - Guarantor Employer ID Number (add single value) */ add_gt1_29_guarantorEmployerIdNumber(value: CX | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[29]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[29] = [fv]; } } return this; } /** GT1.29 - Guarantor Employer ID Number */ get_gt1_29_guarantorEmployerIdNumber(): CX[] | undefined { const val = this.seg.fields[29]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromCX(v)).filter((v): v is CX => v !== undefined); } /** GT1.30 - Guarantor Marital Status Code */ set_gt1_30_guarantorMaritalStatusCode(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[30] = fv; return this; } /** GT1.30 - Guarantor Marital Status Code */ get_gt1_30_guarantorMaritalStatusCode(): CE | undefined { return fromCE(this.seg.fields[30]); } /** GT1.31 - Guarantor Hire Effective Date */ set_gt1_31_guarantorHireEffectiveDate(value: string | null | undefined): this { if (value != null) this.seg.fields[31] = value; return this; } /** GT1.31 - Guarantor Hire Effective Date */ get_gt1_31_guarantorHireEffectiveDate(): string | undefined { const val = this.seg.fields[31]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** GT1.32 - Employment Stop Date */ set_gt1_32_employmentEnd(value: string | null | undefined): this { if (value != null) this.seg.fields[32] = value; return this; } /** GT1.32 - Employment Stop Date */ get_gt1_32_employmentEnd(): string | undefined { const val = this.seg.fields[32]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** GT1.33 - Living Dependency */ set_gt1_33_livingDependency(value: string | null | undefined): this { if (value != null) this.seg.fields[33] = value; return this; } /** GT1.33 - Living Dependency */ get_gt1_33_livingDependency(): string | undefined { const val = this.seg.fields[33]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** GT1.34 - Ambulatory Status */ set_gt1_34_ambulatoryStatus(value: string | null | undefined): this { if (value != null) this.seg.fields[34] = value; return this; } /** GT1.34 - Ambulatory Status */ get_gt1_34_ambulatoryStatus(): string | undefined { const val = this.seg.fields[34]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** GT1.35 - Citizenship (set all values) */ set_gt1_35_citizenship(values: CE[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[35] = arr; return this; } /** GT1.35 - Citizenship (add single value) */ add_gt1_35_citizenship(value: CE | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[35]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[35] = [fv]; } } return this; } /** GT1.35 - Citizenship */ get_gt1_35_citizenship(): CE[] | undefined { const val = this.seg.fields[35]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromCE(v)).filter((v): v is CE => v !== undefined); } /** GT1.36 - Primary Language */ set_gt1_36_language(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[36] = fv; return this; } /** GT1.36 - Primary Language */ get_gt1_36_language(): CE | undefined { return fromCE(this.seg.fields[36]); } /** GT1.37 - Living Arrangement */ set_gt1_37_livingArrangement(value: string | null | undefined): this { if (value != null) this.seg.fields[37] = value; return this; } /** GT1.37 - Living Arrangement */ get_gt1_37_livingArrangement(): string | undefined { const val = this.seg.fields[37]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** GT1.38 - Publicity Code */ set_gt1_38_publicityCode(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[38] = fv; return this; } /** GT1.38 - Publicity Code */ get_gt1_38_publicityCode(): CE | undefined { return fromCE(this.seg.fields[38]); } /** GT1.39 - Protection Indicator */ set_gt1_39_protectionIndicator(value: string | null | undefined): this { if (value != null) this.seg.fields[39] = value; return this; } /** GT1.39 - Protection Indicator */ get_gt1_39_protectionIndicator(): string | undefined { const val = this.seg.fields[39]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** GT1.40 - Student Indicator */ set_gt1_40_student(value: string | null | undefined): this { if (value != null) this.seg.fields[40] = value; return this; } /** GT1.40 - Student Indicator */ get_gt1_40_student(): string | undefined { const val = this.seg.fields[40]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** GT1.41 - Religion */ set_gt1_41_religion(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[41] = fv; return this; } /** GT1.41 - Religion */ get_gt1_41_religion(): CE | undefined { return fromCE(this.seg.fields[41]); } /** GT1.42 - Mother's Maiden Name (set all values) */ set_gt1_42_mothersMaidenName(values: XPN[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[42] = arr; return this; } /** GT1.42 - Mother's Maiden Name (add single value) */ add_gt1_42_mothersMaidenName(value: XPN | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[42]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[42] = [fv]; } } return this; } /** GT1.42 - Mother's Maiden Name */ get_gt1_42_mothersMaidenName(): XPN[] | undefined { const val = this.seg.fields[42]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXPN(v)).filter((v): v is XPN => v !== undefined); } /** GT1.43 - Nationality */ set_gt1_43_nationality(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[43] = fv; return this; } /** GT1.43 - Nationality */ get_gt1_43_nationality(): CE | undefined { return fromCE(this.seg.fields[43]); } /** GT1.44 - Ethnic Group (set all values) */ set_gt1_44_ethnicity(values: CE[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[44] = arr; return this; } /** GT1.44 - Ethnic Group (add single value) */ add_gt1_44_ethnicity(value: CE | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[44]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[44] = [fv]; } } return this; } /** GT1.44 - Ethnic Group */ get_gt1_44_ethnicity(): CE[] | undefined { const val = this.seg.fields[44]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromCE(v)).filter((v): v is CE => v !== undefined); } /** GT1.45 - Contact Person's Name (set all values) */ set_gt1_45_contactPersonsName(values: XPN[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[45] = arr; return this; } /** GT1.45 - Contact Person's Name (add single value) */ add_gt1_45_contactPersonsName(value: XPN | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[45]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[45] = [fv]; } } return this; } /** GT1.45 - Contact Person's Name */ get_gt1_45_contactPersonsName(): XPN[] | undefined { const val = this.seg.fields[45]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXPN(v)).filter((v): v is XPN => v !== undefined); } /** GT1.46 - Contact Person's Telephone Number (set all values) */ set_gt1_46_contactPhone(values: XTN[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[46] = arr; return this; } /** GT1.46 - Contact Person's Telephone Number (add single value) */ add_gt1_46_contactPhone(value: XTN | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[46]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[46] = [fv]; } } return this; } /** GT1.46 - Contact Person's Telephone Number */ get_gt1_46_contactPhone(): XTN[] | undefined { const val = this.seg.fields[46]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXTN(v)).filter((v): v is XTN => v !== undefined); } /** GT1.47 - Contact Reason */ set_gt1_47_contactReason(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[47] = fv; return this; } /** GT1.47 - Contact Reason */ get_gt1_47_contactReason(): CE | undefined { return fromCE(this.seg.fields[47]); } /** GT1.48 - Contact Relationship */ set_gt1_48_contactRelationship(value: string | null | undefined): this { if (value != null) this.seg.fields[48] = value; return this; } /** GT1.48 - Contact Relationship */ get_gt1_48_contactRelationship(): string | undefined { const val = this.seg.fields[48]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** GT1.49 - Job Title */ set_gt1_49_jobTitle(value: string | null | undefined): this { if (value != null) this.seg.fields[49] = value; return this; } /** GT1.49 - Job Title */ get_gt1_49_jobTitle(): string | undefined { const val = this.seg.fields[49]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** GT1.50 - Job Code/Class */ set_gt1_50_jobCodeClass(value: JCC | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[50] = fv; return this; } /** GT1.50 - Job Code/Class */ get_gt1_50_jobCodeClass(): JCC | undefined { return fromJCC(this.seg.fields[50]); } /** GT1.51 - Guarantor Employer's Organization Name (set all values) */ set_gt1_51_guarantorEmployersOrganizationName(values: XON[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[51] = arr; return this; } /** GT1.51 - Guarantor Employer's Organization Name (add single value) */ add_gt1_51_guarantorEmployersOrganizationName(value: XON | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[51]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[51] = [fv]; } } return this; } /** GT1.51 - Guarantor Employer's Organization Name */ get_gt1_51_guarantorEmployersOrganizationName(): XON[] | undefined { const val = this.seg.fields[51]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXON(v)).filter((v): v is XON => v !== undefined); } /** GT1.52 - Handicap */ set_gt1_52_disability(value: string | null | undefined): this { if (value != null) this.seg.fields[52] = value; return this; } /** GT1.52 - Handicap */ get_gt1_52_disability(): string | undefined { const val = this.seg.fields[52]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** GT1.53 - Job Status */ set_gt1_53_jobStatus(value: string | null | undefined): this { if (value != null) this.seg.fields[53] = value; return this; } /** GT1.53 - Job Status */ get_gt1_53_jobStatus(): string | undefined { const val = this.seg.fields[53]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** GT1.54 - Guarantor Financial Class */ set_gt1_54_guarantorFinancialClass(value: FC | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[54] = fv; return this; } /** GT1.54 - Guarantor Financial Class */ get_gt1_54_guarantorFinancialClass(): FC | undefined { return fromFC(this.seg.fields[54]); } /** GT1.55 - Guarantor Race (set all values) */ set_gt1_55_guarantorRace(values: CE[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[55] = arr; return this; } /** GT1.55 - Guarantor Race (add single value) */ add_gt1_55_guarantorRace(value: CE | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[55]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[55] = [fv]; } } return this; } /** GT1.55 - Guarantor Race */ get_gt1_55_guarantorRace(): CE[] | undefined { const val = this.seg.fields[55]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromCE(v)).filter((v): v is CE => v !== undefined); } /** GT1.56 - Guarantor Birth Place */ set_gt1_56_guarantorBirthPlace(value: string | null | undefined): this { if (value != null) this.seg.fields[56] = value; return this; } /** GT1.56 - Guarantor Birth Place */ get_gt1_56_guarantorBirthPlace(): string | undefined { const val = this.seg.fields[56]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** GT1.57 - VIP Indicator */ set_gt1_57_vip(value: string | null | undefined): this { if (value != null) this.seg.fields[57] = value; return this; } /** GT1.57 - VIP Indicator */ get_gt1_57_vip(): string | undefined { const val = this.seg.fields[57]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } build(): HL7v2Segment { return this.seg; } } // ====== IN1 Segment ====== /** Get IN1.1 - Set ID - IN1 */ export function IN1_1_set_id_in1(seg: HL7v2Segment): string | undefined { const val = seg.fields[1]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN1.2.1 - Identifier */ export function IN1_2_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 1); } /** Get IN1.2.2 - Text */ export function IN1_2_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 2); } /** Get IN1.2.3 - Name of Coding System */ export function IN1_2_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 3); } /** Get IN1.2.4 - Alternate Identifier */ export function IN1_2_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 4); } /** Get IN1.2.5 - Alternate Text */ export function IN1_2_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 5); } /** Get IN1.2.6 - Name of Alternate Coding System */ export function IN1_2_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 6); } /** Get IN1.3.1 - ID Number */ export function IN1_3_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 1); } /** Get IN1.3.2 - Check Digit */ export function IN1_3_2_check_digit(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 2); } /** Get IN1.3.3 - Check Digit Scheme */ export function IN1_3_3_check_digit_scheme(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 3); } /** Get IN1.3.4 - Assigning Authority */ export function IN1_3_4_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 4); } /** Get IN1.3.4.1 - Namespace ID */ export function IN1_3_4_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 4, 1); } /** Get IN1.3.4.2 - Universal ID */ export function IN1_3_4_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 4, 2); } /** Get IN1.3.4.3 - Universal ID Type */ export function IN1_3_4_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 4, 3); } /** Get IN1.3.5 - Identifier Type Code */ export function IN1_3_5_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 5); } /** Get IN1.3.6 - Assigning Facility */ export function IN1_3_6_assigner(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 6); } /** Get IN1.3.6.1 - Namespace ID */ export function IN1_3_6_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 6, 1); } /** Get IN1.3.6.2 - Universal ID */ export function IN1_3_6_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 6, 2); } /** Get IN1.3.6.3 - Universal ID Type */ export function IN1_3_6_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 6, 3); } /** Get IN1.3.7 - Effective Date */ export function IN1_3_7_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 7); } /** Get IN1.3.8 - Expiration Date */ export function IN1_3_8_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 8); } /** Get IN1.3.9 - Assigning Jurisdiction */ export function IN1_3_9_jurisdiction(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 9); } /** Get IN1.3.9.1 - Identifier */ export function IN1_3_9_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 9, 1); } /** Get IN1.3.9.2 - Text */ export function IN1_3_9_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 9, 2); } /** Get IN1.3.9.3 - Name of Coding System */ export function IN1_3_9_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 9, 3); } /** Get IN1.3.9.4 - Alternate Identifier */ export function IN1_3_9_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 9, 4); } /** Get IN1.3.9.5 - Alternate Text */ export function IN1_3_9_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 9, 5); } /** Get IN1.3.9.6 - Name of Alternate Coding System */ export function IN1_3_9_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 9, 6); } /** Get IN1.3.9.7 - Coding System Version ID */ export function IN1_3_9_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 9, 7); } /** Get IN1.3.9.8 - Alternate Coding System Version ID */ export function IN1_3_9_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 9, 8); } /** Get IN1.3.9.9 - Original Text */ export function IN1_3_9_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 9, 9); } /** Get IN1.3.10 - Assigning Agency or Department */ export function IN1_3_10_department(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 10); } /** Get IN1.3.10.1 - Identifier */ export function IN1_3_10_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 10, 1); } /** Get IN1.3.10.2 - Text */ export function IN1_3_10_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 10, 2); } /** Get IN1.3.10.3 - Name of Coding System */ export function IN1_3_10_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 10, 3); } /** Get IN1.3.10.4 - Alternate Identifier */ export function IN1_3_10_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 10, 4); } /** Get IN1.3.10.5 - Alternate Text */ export function IN1_3_10_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 10, 5); } /** Get IN1.3.10.6 - Name of Alternate Coding System */ export function IN1_3_10_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 10, 6); } /** Get IN1.3.10.7 - Coding System Version ID */ export function IN1_3_10_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 10, 7); } /** Get IN1.3.10.8 - Alternate Coding System Version ID */ export function IN1_3_10_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 10, 8); } /** Get IN1.3.10.9 - Original Text */ export function IN1_3_10_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 10, 9); } /** Get IN1.4.1 - Organization Name */ export function IN1_4_1_name(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 1); } /** Get IN1.4.2 - Organization Name Type Code */ export function IN1_4_2_name_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 2); } /** Get IN1.4.3 - ID Number */ export function IN1_4_3_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 3); } /** Get IN1.4.4 - Check Digit */ export function IN1_4_4_check_digit(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 4); } /** Get IN1.4.5 - Check Digit Scheme */ export function IN1_4_5_check_digit_scheme(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 5); } /** Get IN1.4.6 - Assigning Authority */ export function IN1_4_6_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 6); } /** Get IN1.4.6.1 - Namespace ID */ export function IN1_4_6_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 6, 1); } /** Get IN1.4.6.2 - Universal ID */ export function IN1_4_6_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 6, 2); } /** Get IN1.4.6.3 - Universal ID Type */ export function IN1_4_6_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 6, 3); } /** Get IN1.4.7 - Identifier Type Code */ export function IN1_4_7_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 7); } /** Get IN1.4.8 - Assigning Facility */ export function IN1_4_8_assigner(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 8); } /** Get IN1.4.8.1 - Namespace ID */ export function IN1_4_8_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 8, 1); } /** Get IN1.4.8.2 - Universal ID */ export function IN1_4_8_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 8, 2); } /** Get IN1.4.8.3 - Universal ID Type */ export function IN1_4_8_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 8, 3); } /** Get IN1.4.9 - Name Representation Code */ export function IN1_4_9_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 9); } /** Get IN1.4.10 - Organization Identifier */ export function IN1_4_10_organization_id(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 10); } /** Get IN1.5.1 - Street Address */ export function IN1_5_1_line1(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 1); } /** Get IN1.5.1.1 - Street or Mailing Address */ export function IN1_5_1_1_line(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 1, 1); } /** Get IN1.5.1.2 - Street Name */ export function IN1_5_1_2_street_name(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 1, 2); } /** Get IN1.5.1.3 - Dwelling Number */ export function IN1_5_1_3_house_number(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 1, 3); } /** Get IN1.5.2 - Other Designation */ export function IN1_5_2_line2(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 2); } /** Get IN1.5.3 - City */ export function IN1_5_3_city(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 3); } /** Get IN1.5.4 - State or Province */ export function IN1_5_4_state(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 4); } /** Get IN1.5.5 - Zip or Postal Code */ export function IN1_5_5_postal_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 5); } /** Get IN1.5.6 - Country */ export function IN1_5_6_country(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 6); } /** Get IN1.5.7 - Address Type */ export function IN1_5_7_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 7); } /** Get IN1.5.8 - Other Geographic Designation */ export function IN1_5_8_additional_locator(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 8); } /** Get IN1.5.9 - County/Parish Code */ export function IN1_5_9_district(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 9); } /** Get IN1.5.10 - Census Tract */ export function IN1_5_10_census_tract(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 10); } /** Get IN1.5.11 - Address Representation Code */ export function IN1_5_11_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 11); } /** Get IN1.5.12 - Address Validity Range */ export function IN1_5_12_period(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 12); } /** Get IN1.5.12.1 - Range Start Date/Time */ export function IN1_5_12_1_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 12, 1); } /** Get IN1.5.12.2 - Range End Date/Time */ export function IN1_5_12_2_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 12, 2); } /** Get IN1.5.13 - Effective Date */ export function IN1_5_13_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 13); } /** Get IN1.5.14 - Expiration Date */ export function IN1_5_14_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 14); } /** Get IN1.6.1 - Family Name */ export function IN1_6_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 1); } /** Get IN1.6.1.1 - Surname */ export function IN1_6_1_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 1, 1); } /** Get IN1.6.1.2 - Own Surname Prefix */ export function IN1_6_1_2_own_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 1, 2); } /** Get IN1.6.1.3 - Own Surname */ export function IN1_6_1_3_own_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 1, 3); } /** Get IN1.6.1.4 - Surname Prefix From Partner/Spouse */ export function IN1_6_1_4_partner_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 1, 4); } /** Get IN1.6.1.5 - Surname From Partner/Spouse */ export function IN1_6_1_5_partner_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 1, 5); } /** Get IN1.6.2 - Given Name */ export function IN1_6_2_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 2); } /** Get IN1.6.3 - Second and Further Given Names or Initials Thereof */ export function IN1_6_3_additional_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 3); } /** Get IN1.6.4 - Suffix (e.g., JR or III) */ export function IN1_6_4_suffix(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 4); } /** Get IN1.6.5 - Prefix (e.g., DR) */ export function IN1_6_5_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 5); } /** Get IN1.6.6 - Degree (e.g., MD) */ export function IN1_6_6_qualification(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 6); } /** Get IN1.6.7 - Name Type Code */ export function IN1_6_7_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 7); } /** Get IN1.6.8 - Name Representation Code */ export function IN1_6_8_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 8); } /** Get IN1.6.9 - Name Context */ export function IN1_6_9_context(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 9); } /** Get IN1.6.9.1 - Identifier */ export function IN1_6_9_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 9, 1); } /** Get IN1.6.9.2 - Text */ export function IN1_6_9_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 9, 2); } /** Get IN1.6.9.3 - Name of Coding System */ export function IN1_6_9_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 9, 3); } /** Get IN1.6.9.4 - Alternate Identifier */ export function IN1_6_9_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 9, 4); } /** Get IN1.6.9.5 - Alternate Text */ export function IN1_6_9_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 9, 5); } /** Get IN1.6.9.6 - Name of Alternate Coding System */ export function IN1_6_9_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 9, 6); } /** Get IN1.6.10 - Name Validity Range */ export function IN1_6_10_period(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 10); } /** Get IN1.6.10.1 - Range Start Date/Time */ export function IN1_6_10_1_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 10, 1); } /** Get IN1.6.10.2 - Range End Date/Time */ export function IN1_6_10_2_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 10, 2); } /** Get IN1.6.11 - Name Assembly Order */ export function IN1_6_11_order(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 11); } /** Get IN1.6.12 - Effective Date */ export function IN1_6_12_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 12); } /** Get IN1.6.13 - Expiration Date */ export function IN1_6_13_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 13); } /** Get IN1.6.14 - Professional Suffix */ export function IN1_6_14_credential(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 14); } /** Get IN1.7.1 - Telephone Number */ export function IN1_7_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 1); } /** Get IN1.7.2 - Telecommunication Use Code */ export function IN1_7_2_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 2); } /** Get IN1.7.3 - Telecommunication Equipment Type */ export function IN1_7_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 3); } /** Get IN1.7.4 - Email Address */ export function IN1_7_4_email(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 4); } /** Get IN1.7.5 - Country Code */ export function IN1_7_5_country_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 5); } /** Get IN1.7.6 - Area/City Code */ export function IN1_7_6_area_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 6); } /** Get IN1.7.7 - Local Number */ export function IN1_7_7_local_number(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 7); } /** Get IN1.7.8 - Extension */ export function IN1_7_8_extension(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 8); } /** Get IN1.7.9 - Any Text */ export function IN1_7_9_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 9); } /** Get IN1.7.10 - Extension Prefix */ export function IN1_7_10_extension_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 10); } /** Get IN1.7.11 - Speed Dial Code */ export function IN1_7_11_speed_dial(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 11); } /** Get IN1.7.12 - Unformatted Telephone number */ export function IN1_7_12_unformatted(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 12); } /** Get IN1.8 - Group Number */ export function IN1_8_group_number(seg: HL7v2Segment): string | undefined { const val = seg.fields[8]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN1.9.1 - Organization Name */ export function IN1_9_1_name(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 1); } /** Get IN1.9.2 - Organization Name Type Code */ export function IN1_9_2_name_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 2); } /** Get IN1.9.3 - ID Number */ export function IN1_9_3_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 3); } /** Get IN1.9.4 - Check Digit */ export function IN1_9_4_check_digit(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 4); } /** Get IN1.9.5 - Check Digit Scheme */ export function IN1_9_5_check_digit_scheme(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 5); } /** Get IN1.9.6 - Assigning Authority */ export function IN1_9_6_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 6); } /** Get IN1.9.6.1 - Namespace ID */ export function IN1_9_6_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 6, 1); } /** Get IN1.9.6.2 - Universal ID */ export function IN1_9_6_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 6, 2); } /** Get IN1.9.6.3 - Universal ID Type */ export function IN1_9_6_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 6, 3); } /** Get IN1.9.7 - Identifier Type Code */ export function IN1_9_7_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 7); } /** Get IN1.9.8 - Assigning Facility */ export function IN1_9_8_assigner(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 8); } /** Get IN1.9.8.1 - Namespace ID */ export function IN1_9_8_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 8, 1); } /** Get IN1.9.8.2 - Universal ID */ export function IN1_9_8_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 8, 2); } /** Get IN1.9.8.3 - Universal ID Type */ export function IN1_9_8_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 8, 3); } /** Get IN1.9.9 - Name Representation Code */ export function IN1_9_9_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 9); } /** Get IN1.9.10 - Organization Identifier */ export function IN1_9_10_organization_id(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 10); } /** Get IN1.10.1 - ID Number */ export function IN1_10_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 1); } /** Get IN1.10.2 - Check Digit */ export function IN1_10_2_check_digit(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 2); } /** Get IN1.10.3 - Check Digit Scheme */ export function IN1_10_3_check_digit_scheme(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 3); } /** Get IN1.10.4 - Assigning Authority */ export function IN1_10_4_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 4); } /** Get IN1.10.4.1 - Namespace ID */ export function IN1_10_4_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 4, 1); } /** Get IN1.10.4.2 - Universal ID */ export function IN1_10_4_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 4, 2); } /** Get IN1.10.4.3 - Universal ID Type */ export function IN1_10_4_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 4, 3); } /** Get IN1.10.5 - Identifier Type Code */ export function IN1_10_5_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 5); } /** Get IN1.10.6 - Assigning Facility */ export function IN1_10_6_assigner(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 6); } /** Get IN1.10.6.1 - Namespace ID */ export function IN1_10_6_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 6, 1); } /** Get IN1.10.6.2 - Universal ID */ export function IN1_10_6_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 6, 2); } /** Get IN1.10.6.3 - Universal ID Type */ export function IN1_10_6_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 6, 3); } /** Get IN1.10.7 - Effective Date */ export function IN1_10_7_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 7); } /** Get IN1.10.8 - Expiration Date */ export function IN1_10_8_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 8); } /** Get IN1.10.9 - Assigning Jurisdiction */ export function IN1_10_9_jurisdiction(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 9); } /** Get IN1.10.9.1 - Identifier */ export function IN1_10_9_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 9, 1); } /** Get IN1.10.9.2 - Text */ export function IN1_10_9_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 9, 2); } /** Get IN1.10.9.3 - Name of Coding System */ export function IN1_10_9_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 9, 3); } /** Get IN1.10.9.4 - Alternate Identifier */ export function IN1_10_9_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 9, 4); } /** Get IN1.10.9.5 - Alternate Text */ export function IN1_10_9_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 9, 5); } /** Get IN1.10.9.6 - Name of Alternate Coding System */ export function IN1_10_9_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 9, 6); } /** Get IN1.10.9.7 - Coding System Version ID */ export function IN1_10_9_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 9, 7); } /** Get IN1.10.9.8 - Alternate Coding System Version ID */ export function IN1_10_9_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 9, 8); } /** Get IN1.10.9.9 - Original Text */ export function IN1_10_9_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 9, 9); } /** Get IN1.10.10 - Assigning Agency or Department */ export function IN1_10_10_department(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 10); } /** Get IN1.10.10.1 - Identifier */ export function IN1_10_10_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 10, 1); } /** Get IN1.10.10.2 - Text */ export function IN1_10_10_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 10, 2); } /** Get IN1.10.10.3 - Name of Coding System */ export function IN1_10_10_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 10, 3); } /** Get IN1.10.10.4 - Alternate Identifier */ export function IN1_10_10_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 10, 4); } /** Get IN1.10.10.5 - Alternate Text */ export function IN1_10_10_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 10, 5); } /** Get IN1.10.10.6 - Name of Alternate Coding System */ export function IN1_10_10_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 10, 6); } /** Get IN1.10.10.7 - Coding System Version ID */ export function IN1_10_10_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 10, 7); } /** Get IN1.10.10.8 - Alternate Coding System Version ID */ export function IN1_10_10_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 10, 8); } /** Get IN1.10.10.9 - Original Text */ export function IN1_10_10_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 10, 9); } /** Get IN1.11.1 - Organization Name */ export function IN1_11_1_name(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 1); } /** Get IN1.11.2 - Organization Name Type Code */ export function IN1_11_2_name_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 2); } /** Get IN1.11.3 - ID Number */ export function IN1_11_3_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 3); } /** Get IN1.11.4 - Check Digit */ export function IN1_11_4_check_digit(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 4); } /** Get IN1.11.5 - Check Digit Scheme */ export function IN1_11_5_check_digit_scheme(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 5); } /** Get IN1.11.6 - Assigning Authority */ export function IN1_11_6_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 6); } /** Get IN1.11.6.1 - Namespace ID */ export function IN1_11_6_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 6, 1); } /** Get IN1.11.6.2 - Universal ID */ export function IN1_11_6_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 6, 2); } /** Get IN1.11.6.3 - Universal ID Type */ export function IN1_11_6_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 6, 3); } /** Get IN1.11.7 - Identifier Type Code */ export function IN1_11_7_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 7); } /** Get IN1.11.8 - Assigning Facility */ export function IN1_11_8_assigner(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 8); } /** Get IN1.11.8.1 - Namespace ID */ export function IN1_11_8_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 8, 1); } /** Get IN1.11.8.2 - Universal ID */ export function IN1_11_8_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 8, 2); } /** Get IN1.11.8.3 - Universal ID Type */ export function IN1_11_8_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 8, 3); } /** Get IN1.11.9 - Name Representation Code */ export function IN1_11_9_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 9); } /** Get IN1.11.10 - Organization Identifier */ export function IN1_11_10_organization_id(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 10); } /** Get IN1.12 - Plan Effective Date */ export function IN1_12_plan_effective_date(seg: HL7v2Segment): string | undefined { const val = seg.fields[12]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN1.13 - Plan Expiration Date */ export function IN1_13_plan_expiration_date(seg: HL7v2Segment): string | undefined { const val = seg.fields[13]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN1.14.1 - Authorization Number */ export function IN1_14_1_authorization(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 1); } /** Get IN1.14.2 - Date */ export function IN1_14_2_date(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 2); } /** Get IN1.14.3 - Source */ export function IN1_14_3_source(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 3); } /** Get IN1.15 - Plan Type */ export function IN1_15_plan_type(seg: HL7v2Segment): string | undefined { const val = seg.fields[15]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN1.16.1 - Family Name */ export function IN1_16_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 1); } /** Get IN1.16.1.1 - Surname */ export function IN1_16_1_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 1, 1); } /** Get IN1.16.1.2 - Own Surname Prefix */ export function IN1_16_1_2_own_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 1, 2); } /** Get IN1.16.1.3 - Own Surname */ export function IN1_16_1_3_own_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 1, 3); } /** Get IN1.16.1.4 - Surname Prefix From Partner/Spouse */ export function IN1_16_1_4_partner_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 1, 4); } /** Get IN1.16.1.5 - Surname From Partner/Spouse */ export function IN1_16_1_5_partner_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 1, 5); } /** Get IN1.16.2 - Given Name */ export function IN1_16_2_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 2); } /** Get IN1.16.3 - Second and Further Given Names or Initials Thereof */ export function IN1_16_3_additional_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 3); } /** Get IN1.16.4 - Suffix (e.g., JR or III) */ export function IN1_16_4_suffix(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 4); } /** Get IN1.16.5 - Prefix (e.g., DR) */ export function IN1_16_5_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 5); } /** Get IN1.16.6 - Degree (e.g., MD) */ export function IN1_16_6_qualification(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 6); } /** Get IN1.16.7 - Name Type Code */ export function IN1_16_7_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 7); } /** Get IN1.16.8 - Name Representation Code */ export function IN1_16_8_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 8); } /** Get IN1.16.9 - Name Context */ export function IN1_16_9_context(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 9); } /** Get IN1.16.9.1 - Identifier */ export function IN1_16_9_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 9, 1); } /** Get IN1.16.9.2 - Text */ export function IN1_16_9_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 9, 2); } /** Get IN1.16.9.3 - Name of Coding System */ export function IN1_16_9_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 9, 3); } /** Get IN1.16.9.4 - Alternate Identifier */ export function IN1_16_9_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 9, 4); } /** Get IN1.16.9.5 - Alternate Text */ export function IN1_16_9_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 9, 5); } /** Get IN1.16.9.6 - Name of Alternate Coding System */ export function IN1_16_9_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 9, 6); } /** Get IN1.16.10 - Name Validity Range */ export function IN1_16_10_period(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 10); } /** Get IN1.16.10.1 - Range Start Date/Time */ export function IN1_16_10_1_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 10, 1); } /** Get IN1.16.10.2 - Range End Date/Time */ export function IN1_16_10_2_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 10, 2); } /** Get IN1.16.11 - Name Assembly Order */ export function IN1_16_11_order(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 11); } /** Get IN1.16.12 - Effective Date */ export function IN1_16_12_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 12); } /** Get IN1.16.13 - Expiration Date */ export function IN1_16_13_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 13); } /** Get IN1.16.14 - Professional Suffix */ export function IN1_16_14_credential(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 14); } /** Get IN1.17.1 - Identifier */ export function IN1_17_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 1); } /** Get IN1.17.2 - Text */ export function IN1_17_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 2); } /** Get IN1.17.3 - Name of Coding System */ export function IN1_17_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 3); } /** Get IN1.17.4 - Alternate Identifier */ export function IN1_17_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 4); } /** Get IN1.17.5 - Alternate Text */ export function IN1_17_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 5); } /** Get IN1.17.6 - Name of Alternate Coding System */ export function IN1_17_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 6); } /** Get IN1.18 - Insured's Date Of Birth */ export function IN1_18_insureds_date_of_birth(seg: HL7v2Segment): string | undefined { const val = seg.fields[18]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN1.19.1 - Street Address */ export function IN1_19_1_line1(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 1); } /** Get IN1.19.1.1 - Street or Mailing Address */ export function IN1_19_1_1_line(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 1, 1); } /** Get IN1.19.1.2 - Street Name */ export function IN1_19_1_2_street_name(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 1, 2); } /** Get IN1.19.1.3 - Dwelling Number */ export function IN1_19_1_3_house_number(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 1, 3); } /** Get IN1.19.2 - Other Designation */ export function IN1_19_2_line2(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 2); } /** Get IN1.19.3 - City */ export function IN1_19_3_city(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 3); } /** Get IN1.19.4 - State or Province */ export function IN1_19_4_state(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 4); } /** Get IN1.19.5 - Zip or Postal Code */ export function IN1_19_5_postal_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 5); } /** Get IN1.19.6 - Country */ export function IN1_19_6_country(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 6); } /** Get IN1.19.7 - Address Type */ export function IN1_19_7_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 7); } /** Get IN1.19.8 - Other Geographic Designation */ export function IN1_19_8_additional_locator(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 8); } /** Get IN1.19.9 - County/Parish Code */ export function IN1_19_9_district(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 9); } /** Get IN1.19.10 - Census Tract */ export function IN1_19_10_census_tract(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 10); } /** Get IN1.19.11 - Address Representation Code */ export function IN1_19_11_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 11); } /** Get IN1.19.12 - Address Validity Range */ export function IN1_19_12_period(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 12); } /** Get IN1.19.12.1 - Range Start Date/Time */ export function IN1_19_12_1_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 12, 1); } /** Get IN1.19.12.2 - Range End Date/Time */ export function IN1_19_12_2_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 12, 2); } /** Get IN1.19.13 - Effective Date */ export function IN1_19_13_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 13); } /** Get IN1.19.14 - Expiration Date */ export function IN1_19_14_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 14); } /** Get IN1.20 - Assignment Of Benefits */ export function IN1_20_assignment_of_benefits(seg: HL7v2Segment): string | undefined { const val = seg.fields[20]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN1.21 - Coordination Of Benefits */ export function IN1_21_coordination_of_benefits(seg: HL7v2Segment): string | undefined { const val = seg.fields[21]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN1.22 - Coord Of Ben. Priority */ export function IN1_22_coord_of_ben_priority(seg: HL7v2Segment): string | undefined { const val = seg.fields[22]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN1.23 - Notice Of Admission Flag */ export function IN1_23_notice_of_admission_flag(seg: HL7v2Segment): string | undefined { const val = seg.fields[23]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN1.24 - Notice Of Admission Date */ export function IN1_24_notice_of_admission_date(seg: HL7v2Segment): string | undefined { const val = seg.fields[24]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN1.25 - Report Of Eligibility Flag */ export function IN1_25_report_of_eligibility_flag(seg: HL7v2Segment): string | undefined { const val = seg.fields[25]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN1.26 - Report Of Eligibility Date */ export function IN1_26_report_of_eligibility_date(seg: HL7v2Segment): string | undefined { const val = seg.fields[26]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN1.27 - Release Information Code */ export function IN1_27_release_information_code(seg: HL7v2Segment): string | undefined { const val = seg.fields[27]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN1.28 - Pre-Admit Cert (PAC) */ export function IN1_28_pre_admit_cert(seg: HL7v2Segment): string | undefined { const val = seg.fields[28]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN1.29 - Verification Date/Time */ export function IN1_29_verification_date_time(seg: HL7v2Segment): string | undefined { const val = seg.fields[29]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN1.30.1 - ID Number */ export function IN1_30_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 1); } /** Get IN1.30.2 - Family Name */ export function IN1_30_2_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 2); } /** Get IN1.30.2.1 - Surname */ export function IN1_30_2_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 2, 1); } /** Get IN1.30.2.2 - Own Surname Prefix */ export function IN1_30_2_2_own_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 2, 2); } /** Get IN1.30.2.3 - Own Surname */ export function IN1_30_2_3_own_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 2, 3); } /** Get IN1.30.2.4 - Surname Prefix From Partner/Spouse */ export function IN1_30_2_4_partner_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 2, 4); } /** Get IN1.30.2.5 - Surname From Partner/Spouse */ export function IN1_30_2_5_partner_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 2, 5); } /** Get IN1.30.3 - Given Name */ export function IN1_30_3_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 3); } /** Get IN1.30.4 - Second and Further Given Names or Initials Thereof */ export function IN1_30_4_additional_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 4); } /** Get IN1.30.5 - Suffix (e.g., JR or III) */ export function IN1_30_5_suffix(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 5); } /** Get IN1.30.6 - Prefix (e.g., DR) */ export function IN1_30_6_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 6); } /** Get IN1.30.7 - Degree (e.g., MD) */ export function IN1_30_7_qualification(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 7); } /** Get IN1.30.8 - Source Table */ export function IN1_30_8_source_table(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 8); } /** Get IN1.30.9 - Assigning Authority */ export function IN1_30_9_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 9); } /** Get IN1.30.9.1 - Namespace ID */ export function IN1_30_9_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 9, 1); } /** Get IN1.30.9.2 - Universal ID */ export function IN1_30_9_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 9, 2); } /** Get IN1.30.9.3 - Universal ID Type */ export function IN1_30_9_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 9, 3); } /** Get IN1.30.10 - Name Type Code */ export function IN1_30_10_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 10); } /** Get IN1.30.11 - Identifier Check Digit */ export function IN1_30_11_check_digit(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 11); } /** Get IN1.30.12 - Check Digit Scheme */ export function IN1_30_12_check_digit_scheme(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 12); } /** Get IN1.30.13 - Identifier Type Code */ export function IN1_30_13_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 13); } /** Get IN1.30.14 - Assigning Facility */ export function IN1_30_14_assigner(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 14); } /** Get IN1.30.14.1 - Namespace ID */ export function IN1_30_14_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 14, 1); } /** Get IN1.30.14.2 - Universal ID */ export function IN1_30_14_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 14, 2); } /** Get IN1.30.14.3 - Universal ID Type */ export function IN1_30_14_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 14, 3); } /** Get IN1.30.15 - Name Representation Code */ export function IN1_30_15_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 15); } /** Get IN1.30.16 - Name Context */ export function IN1_30_16_context(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 16); } /** Get IN1.30.16.1 - Identifier */ export function IN1_30_16_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 16, 1); } /** Get IN1.30.16.2 - Text */ export function IN1_30_16_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 16, 2); } /** Get IN1.30.16.3 - Name of Coding System */ export function IN1_30_16_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 16, 3); } /** Get IN1.30.16.4 - Alternate Identifier */ export function IN1_30_16_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 16, 4); } /** Get IN1.30.16.5 - Alternate Text */ export function IN1_30_16_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 16, 5); } /** Get IN1.30.16.6 - Name of Alternate Coding System */ export function IN1_30_16_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 16, 6); } /** Get IN1.30.17 - Name Validity Range */ export function IN1_30_17_period(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 17); } /** Get IN1.30.17.1 - Range Start Date/Time */ export function IN1_30_17_1_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 17, 1); } /** Get IN1.30.17.2 - Range End Date/Time */ export function IN1_30_17_2_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 17, 2); } /** Get IN1.30.18 - Name Assembly Order */ export function IN1_30_18_order(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 18); } /** Get IN1.30.19 - Effective Date */ export function IN1_30_19_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 19); } /** Get IN1.30.20 - Expiration Date */ export function IN1_30_20_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 20); } /** Get IN1.30.21 - Professional Suffix */ export function IN1_30_21_credential(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 21); } /** Get IN1.30.22 - Assigning Jurisdiction */ export function IN1_30_22_jurisdiction(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 22); } /** Get IN1.30.22.1 - Identifier */ export function IN1_30_22_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 22, 1); } /** Get IN1.30.22.2 - Text */ export function IN1_30_22_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 22, 2); } /** Get IN1.30.22.3 - Name of Coding System */ export function IN1_30_22_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 22, 3); } /** Get IN1.30.22.4 - Alternate Identifier */ export function IN1_30_22_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 22, 4); } /** Get IN1.30.22.5 - Alternate Text */ export function IN1_30_22_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 22, 5); } /** Get IN1.30.22.6 - Name of Alternate Coding System */ export function IN1_30_22_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 22, 6); } /** Get IN1.30.22.7 - Coding System Version ID */ export function IN1_30_22_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 22, 7); } /** Get IN1.30.22.8 - Alternate Coding System Version ID */ export function IN1_30_22_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 22, 8); } /** Get IN1.30.22.9 - Original Text */ export function IN1_30_22_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 22, 9); } /** Get IN1.30.23 - Assigning Agency or Department */ export function IN1_30_23_department(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 23); } /** Get IN1.30.23.1 - Identifier */ export function IN1_30_23_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 23, 1); } /** Get IN1.30.23.2 - Text */ export function IN1_30_23_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 23, 2); } /** Get IN1.30.23.3 - Name of Coding System */ export function IN1_30_23_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 23, 3); } /** Get IN1.30.23.4 - Alternate Identifier */ export function IN1_30_23_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 23, 4); } /** Get IN1.30.23.5 - Alternate Text */ export function IN1_30_23_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 23, 5); } /** Get IN1.30.23.6 - Name of Alternate Coding System */ export function IN1_30_23_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 23, 6); } /** Get IN1.30.23.7 - Coding System Version ID */ export function IN1_30_23_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 23, 7); } /** Get IN1.30.23.8 - Alternate Coding System Version ID */ export function IN1_30_23_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 23, 8); } /** Get IN1.30.23.9 - Original Text */ export function IN1_30_23_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 23, 9); } /** Get IN1.31 - Type Of Agreement Code */ export function IN1_31_type_of_agreement_code(seg: HL7v2Segment): string | undefined { const val = seg.fields[31]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN1.32 - Billing Status */ export function IN1_32_billing_status(seg: HL7v2Segment): string | undefined { const val = seg.fields[32]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN1.33 - Lifetime Reserve Days */ export function IN1_33_lifetime_reserve_days(seg: HL7v2Segment): string | undefined { const val = seg.fields[33]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN1.34 - Delay Before L.R. Day */ export function IN1_34_delay_before_l_r_day(seg: HL7v2Segment): string | undefined { const val = seg.fields[34]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN1.35 - Company Plan Code */ export function IN1_35_company_plan_code(seg: HL7v2Segment): string | undefined { const val = seg.fields[35]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN1.36 - Policy Number */ export function IN1_36_policy_number(seg: HL7v2Segment): string | undefined { const val = seg.fields[36]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN1.37.1 - Price */ export function IN1_37_1_amount(seg: HL7v2Segment): string | undefined { const field = seg.fields[37]; return getComponent(field, 1); } /** Get IN1.37.1.1 - Quantity */ export function IN1_37_1_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[37]; return getComponent(field, 1, 1); } /** Get IN1.37.1.2 - Denomination */ export function IN1_37_1_2_currency(seg: HL7v2Segment): string | undefined { const field = seg.fields[37]; return getComponent(field, 1, 2); } /** Get IN1.37.2 - Price Type */ export function IN1_37_2_price_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[37]; return getComponent(field, 2); } /** Get IN1.37.3 - From Value */ export function IN1_37_3_low(seg: HL7v2Segment): string | undefined { const field = seg.fields[37]; return getComponent(field, 3); } /** Get IN1.37.4 - To Value */ export function IN1_37_4_high(seg: HL7v2Segment): string | undefined { const field = seg.fields[37]; return getComponent(field, 4); } /** Get IN1.37.5 - Range Units */ export function IN1_37_5_unit(seg: HL7v2Segment): string | undefined { const field = seg.fields[37]; return getComponent(field, 5); } /** Get IN1.37.5.1 - Identifier */ export function IN1_37_5_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[37]; return getComponent(field, 5, 1); } /** Get IN1.37.5.2 - Text */ export function IN1_37_5_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[37]; return getComponent(field, 5, 2); } /** Get IN1.37.5.3 - Name of Coding System */ export function IN1_37_5_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[37]; return getComponent(field, 5, 3); } /** Get IN1.37.5.4 - Alternate Identifier */ export function IN1_37_5_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[37]; return getComponent(field, 5, 4); } /** Get IN1.37.5.5 - Alternate Text */ export function IN1_37_5_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[37]; return getComponent(field, 5, 5); } /** Get IN1.37.5.6 - Name of Alternate Coding System */ export function IN1_37_5_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[37]; return getComponent(field, 5, 6); } /** Get IN1.37.6 - Range Type */ export function IN1_37_6_range_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[37]; return getComponent(field, 6); } /** Get IN1.38.1 - Price */ export function IN1_38_1_amount(seg: HL7v2Segment): string | undefined { const field = seg.fields[38]; return getComponent(field, 1); } /** Get IN1.38.1.1 - Quantity */ export function IN1_38_1_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[38]; return getComponent(field, 1, 1); } /** Get IN1.38.1.2 - Denomination */ export function IN1_38_1_2_currency(seg: HL7v2Segment): string | undefined { const field = seg.fields[38]; return getComponent(field, 1, 2); } /** Get IN1.38.2 - Price Type */ export function IN1_38_2_price_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[38]; return getComponent(field, 2); } /** Get IN1.38.3 - From Value */ export function IN1_38_3_low(seg: HL7v2Segment): string | undefined { const field = seg.fields[38]; return getComponent(field, 3); } /** Get IN1.38.4 - To Value */ export function IN1_38_4_high(seg: HL7v2Segment): string | undefined { const field = seg.fields[38]; return getComponent(field, 4); } /** Get IN1.38.5 - Range Units */ export function IN1_38_5_unit(seg: HL7v2Segment): string | undefined { const field = seg.fields[38]; return getComponent(field, 5); } /** Get IN1.38.5.1 - Identifier */ export function IN1_38_5_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[38]; return getComponent(field, 5, 1); } /** Get IN1.38.5.2 - Text */ export function IN1_38_5_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[38]; return getComponent(field, 5, 2); } /** Get IN1.38.5.3 - Name of Coding System */ export function IN1_38_5_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[38]; return getComponent(field, 5, 3); } /** Get IN1.38.5.4 - Alternate Identifier */ export function IN1_38_5_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[38]; return getComponent(field, 5, 4); } /** Get IN1.38.5.5 - Alternate Text */ export function IN1_38_5_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[38]; return getComponent(field, 5, 5); } /** Get IN1.38.5.6 - Name of Alternate Coding System */ export function IN1_38_5_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[38]; return getComponent(field, 5, 6); } /** Get IN1.38.6 - Range Type */ export function IN1_38_6_range_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[38]; return getComponent(field, 6); } /** Get IN1.39 - Policy Limit - Days */ export function IN1_39_policy_limit_days(seg: HL7v2Segment): string | undefined { const val = seg.fields[39]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN1.40.1 - Price */ export function IN1_40_1_amount(seg: HL7v2Segment): string | undefined { const field = seg.fields[40]; return getComponent(field, 1); } /** Get IN1.40.1.1 - Quantity */ export function IN1_40_1_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[40]; return getComponent(field, 1, 1); } /** Get IN1.40.1.2 - Denomination */ export function IN1_40_1_2_currency(seg: HL7v2Segment): string | undefined { const field = seg.fields[40]; return getComponent(field, 1, 2); } /** Get IN1.40.2 - Price Type */ export function IN1_40_2_price_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[40]; return getComponent(field, 2); } /** Get IN1.40.3 - From Value */ export function IN1_40_3_low(seg: HL7v2Segment): string | undefined { const field = seg.fields[40]; return getComponent(field, 3); } /** Get IN1.40.4 - To Value */ export function IN1_40_4_high(seg: HL7v2Segment): string | undefined { const field = seg.fields[40]; return getComponent(field, 4); } /** Get IN1.40.5 - Range Units */ export function IN1_40_5_unit(seg: HL7v2Segment): string | undefined { const field = seg.fields[40]; return getComponent(field, 5); } /** Get IN1.40.5.1 - Identifier */ export function IN1_40_5_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[40]; return getComponent(field, 5, 1); } /** Get IN1.40.5.2 - Text */ export function IN1_40_5_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[40]; return getComponent(field, 5, 2); } /** Get IN1.40.5.3 - Name of Coding System */ export function IN1_40_5_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[40]; return getComponent(field, 5, 3); } /** Get IN1.40.5.4 - Alternate Identifier */ export function IN1_40_5_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[40]; return getComponent(field, 5, 4); } /** Get IN1.40.5.5 - Alternate Text */ export function IN1_40_5_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[40]; return getComponent(field, 5, 5); } /** Get IN1.40.5.6 - Name of Alternate Coding System */ export function IN1_40_5_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[40]; return getComponent(field, 5, 6); } /** Get IN1.40.6 - Range Type */ export function IN1_40_6_range_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[40]; return getComponent(field, 6); } /** Get IN1.41.1 - Price */ export function IN1_41_1_amount(seg: HL7v2Segment): string | undefined { const field = seg.fields[41]; return getComponent(field, 1); } /** Get IN1.41.1.1 - Quantity */ export function IN1_41_1_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[41]; return getComponent(field, 1, 1); } /** Get IN1.41.1.2 - Denomination */ export function IN1_41_1_2_currency(seg: HL7v2Segment): string | undefined { const field = seg.fields[41]; return getComponent(field, 1, 2); } /** Get IN1.41.2 - Price Type */ export function IN1_41_2_price_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[41]; return getComponent(field, 2); } /** Get IN1.41.3 - From Value */ export function IN1_41_3_low(seg: HL7v2Segment): string | undefined { const field = seg.fields[41]; return getComponent(field, 3); } /** Get IN1.41.4 - To Value */ export function IN1_41_4_high(seg: HL7v2Segment): string | undefined { const field = seg.fields[41]; return getComponent(field, 4); } /** Get IN1.41.5 - Range Units */ export function IN1_41_5_unit(seg: HL7v2Segment): string | undefined { const field = seg.fields[41]; return getComponent(field, 5); } /** Get IN1.41.5.1 - Identifier */ export function IN1_41_5_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[41]; return getComponent(field, 5, 1); } /** Get IN1.41.5.2 - Text */ export function IN1_41_5_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[41]; return getComponent(field, 5, 2); } /** Get IN1.41.5.3 - Name of Coding System */ export function IN1_41_5_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[41]; return getComponent(field, 5, 3); } /** Get IN1.41.5.4 - Alternate Identifier */ export function IN1_41_5_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[41]; return getComponent(field, 5, 4); } /** Get IN1.41.5.5 - Alternate Text */ export function IN1_41_5_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[41]; return getComponent(field, 5, 5); } /** Get IN1.41.5.6 - Name of Alternate Coding System */ export function IN1_41_5_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[41]; return getComponent(field, 5, 6); } /** Get IN1.41.6 - Range Type */ export function IN1_41_6_range_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[41]; return getComponent(field, 6); } /** Get IN1.42.1 - Identifier */ export function IN1_42_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 1); } /** Get IN1.42.2 - Text */ export function IN1_42_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 2); } /** Get IN1.42.3 - Name of Coding System */ export function IN1_42_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 3); } /** Get IN1.42.4 - Alternate Identifier */ export function IN1_42_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 4); } /** Get IN1.42.5 - Alternate Text */ export function IN1_42_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 5); } /** Get IN1.42.6 - Name of Alternate Coding System */ export function IN1_42_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 6); } /** Get IN1.43 - Insured's Administrative Sex */ export function IN1_43_insureds_administrative_gender(seg: HL7v2Segment): string | undefined { const val = seg.fields[43]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN1.44.1 - Street Address */ export function IN1_44_1_line1(seg: HL7v2Segment): string | undefined { const field = seg.fields[44]; return getComponent(field, 1); } /** Get IN1.44.1.1 - Street or Mailing Address */ export function IN1_44_1_1_line(seg: HL7v2Segment): string | undefined { const field = seg.fields[44]; return getComponent(field, 1, 1); } /** Get IN1.44.1.2 - Street Name */ export function IN1_44_1_2_street_name(seg: HL7v2Segment): string | undefined { const field = seg.fields[44]; return getComponent(field, 1, 2); } /** Get IN1.44.1.3 - Dwelling Number */ export function IN1_44_1_3_house_number(seg: HL7v2Segment): string | undefined { const field = seg.fields[44]; return getComponent(field, 1, 3); } /** Get IN1.44.2 - Other Designation */ export function IN1_44_2_line2(seg: HL7v2Segment): string | undefined { const field = seg.fields[44]; return getComponent(field, 2); } /** Get IN1.44.3 - City */ export function IN1_44_3_city(seg: HL7v2Segment): string | undefined { const field = seg.fields[44]; return getComponent(field, 3); } /** Get IN1.44.4 - State or Province */ export function IN1_44_4_state(seg: HL7v2Segment): string | undefined { const field = seg.fields[44]; return getComponent(field, 4); } /** Get IN1.44.5 - Zip or Postal Code */ export function IN1_44_5_postal_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[44]; return getComponent(field, 5); } /** Get IN1.44.6 - Country */ export function IN1_44_6_country(seg: HL7v2Segment): string | undefined { const field = seg.fields[44]; return getComponent(field, 6); } /** Get IN1.44.7 - Address Type */ export function IN1_44_7_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[44]; return getComponent(field, 7); } /** Get IN1.44.8 - Other Geographic Designation */ export function IN1_44_8_additional_locator(seg: HL7v2Segment): string | undefined { const field = seg.fields[44]; return getComponent(field, 8); } /** Get IN1.44.9 - County/Parish Code */ export function IN1_44_9_district(seg: HL7v2Segment): string | undefined { const field = seg.fields[44]; return getComponent(field, 9); } /** Get IN1.44.10 - Census Tract */ export function IN1_44_10_census_tract(seg: HL7v2Segment): string | undefined { const field = seg.fields[44]; return getComponent(field, 10); } /** Get IN1.44.11 - Address Representation Code */ export function IN1_44_11_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[44]; return getComponent(field, 11); } /** Get IN1.44.12 - Address Validity Range */ export function IN1_44_12_period(seg: HL7v2Segment): string | undefined { const field = seg.fields[44]; return getComponent(field, 12); } /** Get IN1.44.12.1 - Range Start Date/Time */ export function IN1_44_12_1_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[44]; return getComponent(field, 12, 1); } /** Get IN1.44.12.2 - Range End Date/Time */ export function IN1_44_12_2_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[44]; return getComponent(field, 12, 2); } /** Get IN1.44.13 - Effective Date */ export function IN1_44_13_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[44]; return getComponent(field, 13); } /** Get IN1.44.14 - Expiration Date */ export function IN1_44_14_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[44]; return getComponent(field, 14); } /** Get IN1.45 - Verification Status */ export function IN1_45_verification_status(seg: HL7v2Segment): string | undefined { const val = seg.fields[45]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN1.46 - Prior Insurance Plan ID */ export function IN1_46_prior_insurance_plan_id(seg: HL7v2Segment): string | undefined { const val = seg.fields[46]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN1.47 - Coverage Type */ export function IN1_47_coverage_type(seg: HL7v2Segment): string | undefined { const val = seg.fields[47]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN1.48 - Handicap */ export function IN1_48_disability(seg: HL7v2Segment): string | undefined { const val = seg.fields[48]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN1.49.1 - ID Number */ export function IN1_49_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 1); } /** Get IN1.49.2 - Check Digit */ export function IN1_49_2_check_digit(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 2); } /** Get IN1.49.3 - Check Digit Scheme */ export function IN1_49_3_check_digit_scheme(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 3); } /** Get IN1.49.4 - Assigning Authority */ export function IN1_49_4_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 4); } /** Get IN1.49.4.1 - Namespace ID */ export function IN1_49_4_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 4, 1); } /** Get IN1.49.4.2 - Universal ID */ export function IN1_49_4_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 4, 2); } /** Get IN1.49.4.3 - Universal ID Type */ export function IN1_49_4_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 4, 3); } /** Get IN1.49.5 - Identifier Type Code */ export function IN1_49_5_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 5); } /** Get IN1.49.6 - Assigning Facility */ export function IN1_49_6_assigner(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 6); } /** Get IN1.49.6.1 - Namespace ID */ export function IN1_49_6_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 6, 1); } /** Get IN1.49.6.2 - Universal ID */ export function IN1_49_6_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 6, 2); } /** Get IN1.49.6.3 - Universal ID Type */ export function IN1_49_6_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 6, 3); } /** Get IN1.49.7 - Effective Date */ export function IN1_49_7_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 7); } /** Get IN1.49.8 - Expiration Date */ export function IN1_49_8_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 8); } /** Get IN1.49.9 - Assigning Jurisdiction */ export function IN1_49_9_jurisdiction(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 9); } /** Get IN1.49.9.1 - Identifier */ export function IN1_49_9_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 9, 1); } /** Get IN1.49.9.2 - Text */ export function IN1_49_9_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 9, 2); } /** Get IN1.49.9.3 - Name of Coding System */ export function IN1_49_9_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 9, 3); } /** Get IN1.49.9.4 - Alternate Identifier */ export function IN1_49_9_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 9, 4); } /** Get IN1.49.9.5 - Alternate Text */ export function IN1_49_9_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 9, 5); } /** Get IN1.49.9.6 - Name of Alternate Coding System */ export function IN1_49_9_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 9, 6); } /** Get IN1.49.9.7 - Coding System Version ID */ export function IN1_49_9_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 9, 7); } /** Get IN1.49.9.8 - Alternate Coding System Version ID */ export function IN1_49_9_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 9, 8); } /** Get IN1.49.9.9 - Original Text */ export function IN1_49_9_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 9, 9); } /** Get IN1.49.10 - Assigning Agency or Department */ export function IN1_49_10_department(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 10); } /** Get IN1.49.10.1 - Identifier */ export function IN1_49_10_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 10, 1); } /** Get IN1.49.10.2 - Text */ export function IN1_49_10_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 10, 2); } /** Get IN1.49.10.3 - Name of Coding System */ export function IN1_49_10_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 10, 3); } /** Get IN1.49.10.4 - Alternate Identifier */ export function IN1_49_10_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 10, 4); } /** Get IN1.49.10.5 - Alternate Text */ export function IN1_49_10_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 10, 5); } /** Get IN1.49.10.6 - Name of Alternate Coding System */ export function IN1_49_10_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 10, 6); } /** Get IN1.49.10.7 - Coding System Version ID */ export function IN1_49_10_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 10, 7); } /** Get IN1.49.10.8 - Alternate Coding System Version ID */ export function IN1_49_10_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 10, 8); } /** Get IN1.49.10.9 - Original Text */ export function IN1_49_10_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 10, 9); } /** Get IN1.50 - Signature Code */ export function IN1_50_signature_code(seg: HL7v2Segment): string | undefined { const val = seg.fields[50]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN1.51 - Signature Code Date */ export function IN1_51_signature_code_date(seg: HL7v2Segment): string | undefined { const val = seg.fields[51]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN1.52 - Insured's Birth Place */ export function IN1_52_insureds_birth_place(seg: HL7v2Segment): string | undefined { const val = seg.fields[52]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN1.53 - VIP Indicator */ export function IN1_53_vip(seg: HL7v2Segment): string | undefined { const val = seg.fields[53]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } export class IN1Builder { private seg: HL7v2Segment = { segment: "IN1", fields: {} }; /** IN1.1 - Set ID - IN1 */ set_in1_1_setIdIn1(value: string | null | undefined): this { if (value != null) this.seg.fields[1] = value; return this; } /** IN1.1 - Set ID - IN1 */ get_in1_1_setIdIn1(): string | undefined { const val = this.seg.fields[1]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN1.2 - Insurance Plan ID */ set_in1_2_insurancePlanId(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[2] = fv; return this; } /** IN1.2 - Insurance Plan ID */ get_in1_2_insurancePlanId(): CE | undefined { return fromCE(this.seg.fields[2]); } /** IN1.3 - Insurance Company ID (set all values) */ set_in1_3_insuranceCompanyId(values: CX[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[3] = arr; return this; } /** IN1.3 - Insurance Company ID (add single value) */ add_in1_3_insuranceCompanyId(value: CX | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[3]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[3] = [fv]; } } return this; } /** IN1.3 - Insurance Company ID */ get_in1_3_insuranceCompanyId(): CX[] | undefined { const val = this.seg.fields[3]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromCX(v)).filter((v): v is CX => v !== undefined); } /** IN1.4 - Insurance Company Name (set all values) */ set_in1_4_insuranceCompanyName(values: XON[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[4] = arr; return this; } /** IN1.4 - Insurance Company Name (add single value) */ add_in1_4_insuranceCompanyName(value: XON | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[4]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[4] = [fv]; } } return this; } /** IN1.4 - Insurance Company Name */ get_in1_4_insuranceCompanyName(): XON[] | undefined { const val = this.seg.fields[4]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXON(v)).filter((v): v is XON => v !== undefined); } /** IN1.5 - Insurance Company Address (set all values) */ set_in1_5_insuranceCompanyAddress(values: XAD[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[5] = arr; return this; } /** IN1.5 - Insurance Company Address (add single value) */ add_in1_5_insuranceCompanyAddress(value: XAD | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[5]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[5] = [fv]; } } return this; } /** IN1.5 - Insurance Company Address */ get_in1_5_insuranceCompanyAddress(): XAD[] | undefined { const val = this.seg.fields[5]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXAD(v)).filter((v): v is XAD => v !== undefined); } /** IN1.6 - Insurance Co Contact Person (set all values) */ set_in1_6_insuranceCoContactPerson(values: XPN[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[6] = arr; return this; } /** IN1.6 - Insurance Co Contact Person (add single value) */ add_in1_6_insuranceCoContactPerson(value: XPN | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[6]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[6] = [fv]; } } return this; } /** IN1.6 - Insurance Co Contact Person */ get_in1_6_insuranceCoContactPerson(): XPN[] | undefined { const val = this.seg.fields[6]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXPN(v)).filter((v): v is XPN => v !== undefined); } /** IN1.7 - Insurance Co Phone Number (set all values) */ set_in1_7_insurancePhone(values: XTN[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[7] = arr; return this; } /** IN1.7 - Insurance Co Phone Number (add single value) */ add_in1_7_insurancePhone(value: XTN | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[7]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[7] = [fv]; } } return this; } /** IN1.7 - Insurance Co Phone Number */ get_in1_7_insurancePhone(): XTN[] | undefined { const val = this.seg.fields[7]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXTN(v)).filter((v): v is XTN => v !== undefined); } /** IN1.8 - Group Number */ set_in1_8_groupNumber(value: string | null | undefined): this { if (value != null) this.seg.fields[8] = value; return this; } /** IN1.8 - Group Number */ get_in1_8_groupNumber(): string | undefined { const val = this.seg.fields[8]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN1.9 - Group Name (set all values) */ set_in1_9_groupName(values: XON[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[9] = arr; return this; } /** IN1.9 - Group Name (add single value) */ add_in1_9_groupName(value: XON | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[9]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[9] = [fv]; } } return this; } /** IN1.9 - Group Name */ get_in1_9_groupName(): XON[] | undefined { const val = this.seg.fields[9]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXON(v)).filter((v): v is XON => v !== undefined); } /** IN1.10 - Insured's Group Emp ID (set all values) */ set_in1_10_insuredsGroupEmpId(values: CX[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[10] = arr; return this; } /** IN1.10 - Insured's Group Emp ID (add single value) */ add_in1_10_insuredsGroupEmpId(value: CX | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[10]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[10] = [fv]; } } return this; } /** IN1.10 - Insured's Group Emp ID */ get_in1_10_insuredsGroupEmpId(): CX[] | undefined { const val = this.seg.fields[10]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromCX(v)).filter((v): v is CX => v !== undefined); } /** IN1.11 - Insured's Group Emp Name (set all values) */ set_in1_11_insuredsGroupEmpName(values: XON[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[11] = arr; return this; } /** IN1.11 - Insured's Group Emp Name (add single value) */ add_in1_11_insuredsGroupEmpName(value: XON | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[11]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[11] = [fv]; } } return this; } /** IN1.11 - Insured's Group Emp Name */ get_in1_11_insuredsGroupEmpName(): XON[] | undefined { const val = this.seg.fields[11]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXON(v)).filter((v): v is XON => v !== undefined); } /** IN1.12 - Plan Effective Date */ set_in1_12_planEffectiveDate(value: string | null | undefined): this { if (value != null) this.seg.fields[12] = value; return this; } /** IN1.12 - Plan Effective Date */ get_in1_12_planEffectiveDate(): string | undefined { const val = this.seg.fields[12]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN1.13 - Plan Expiration Date */ set_in1_13_planExpirationDate(value: string | null | undefined): this { if (value != null) this.seg.fields[13] = value; return this; } /** IN1.13 - Plan Expiration Date */ get_in1_13_planExpirationDate(): string | undefined { const val = this.seg.fields[13]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN1.14 - Authorization Information */ set_in1_14_authorizationInformation(value: AUI | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[14] = fv; return this; } /** IN1.14 - Authorization Information */ get_in1_14_authorizationInformation(): AUI | undefined { return fromAUI(this.seg.fields[14]); } /** IN1.15 - Plan Type */ set_in1_15_planType(value: string | null | undefined): this { if (value != null) this.seg.fields[15] = value; return this; } /** IN1.15 - Plan Type */ get_in1_15_planType(): string | undefined { const val = this.seg.fields[15]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN1.16 - Name Of Insured (set all values) */ set_in1_16_nameOfInsured(values: XPN[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[16] = arr; return this; } /** IN1.16 - Name Of Insured (add single value) */ add_in1_16_nameOfInsured(value: XPN | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[16]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[16] = [fv]; } } return this; } /** IN1.16 - Name Of Insured */ get_in1_16_nameOfInsured(): XPN[] | undefined { const val = this.seg.fields[16]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXPN(v)).filter((v): v is XPN => v !== undefined); } /** IN1.17 - Insured's Relationship To Patient */ set_in1_17_insuredsRelationshipToPatient(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[17] = fv; return this; } /** IN1.17 - Insured's Relationship To Patient */ get_in1_17_insuredsRelationshipToPatient(): CE | undefined { return fromCE(this.seg.fields[17]); } /** IN1.18 - Insured's Date Of Birth */ set_in1_18_insuredsDateOfBirth(value: string | null | undefined): this { if (value != null) this.seg.fields[18] = value; return this; } /** IN1.18 - Insured's Date Of Birth */ get_in1_18_insuredsDateOfBirth(): string | undefined { const val = this.seg.fields[18]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN1.19 - Insured's Address (set all values) */ set_in1_19_insuredsAddress(values: XAD[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[19] = arr; return this; } /** IN1.19 - Insured's Address (add single value) */ add_in1_19_insuredsAddress(value: XAD | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[19]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[19] = [fv]; } } return this; } /** IN1.19 - Insured's Address */ get_in1_19_insuredsAddress(): XAD[] | undefined { const val = this.seg.fields[19]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXAD(v)).filter((v): v is XAD => v !== undefined); } /** IN1.20 - Assignment Of Benefits */ set_in1_20_assignmentOfBenefits(value: string | null | undefined): this { if (value != null) this.seg.fields[20] = value; return this; } /** IN1.20 - Assignment Of Benefits */ get_in1_20_assignmentOfBenefits(): string | undefined { const val = this.seg.fields[20]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN1.21 - Coordination Of Benefits */ set_in1_21_coordinationOfBenefits(value: string | null | undefined): this { if (value != null) this.seg.fields[21] = value; return this; } /** IN1.21 - Coordination Of Benefits */ get_in1_21_coordinationOfBenefits(): string | undefined { const val = this.seg.fields[21]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN1.22 - Coord Of Ben. Priority */ set_in1_22_coordOfBenPriority(value: string | null | undefined): this { if (value != null) this.seg.fields[22] = value; return this; } /** IN1.22 - Coord Of Ben. Priority */ get_in1_22_coordOfBenPriority(): string | undefined { const val = this.seg.fields[22]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN1.23 - Notice Of Admission Flag */ set_in1_23_noticeOfAdmissionFlag(value: string | null | undefined): this { if (value != null) this.seg.fields[23] = value; return this; } /** IN1.23 - Notice Of Admission Flag */ get_in1_23_noticeOfAdmissionFlag(): string | undefined { const val = this.seg.fields[23]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN1.24 - Notice Of Admission Date */ set_in1_24_noticeOfAdmissionDate(value: string | null | undefined): this { if (value != null) this.seg.fields[24] = value; return this; } /** IN1.24 - Notice Of Admission Date */ get_in1_24_noticeOfAdmissionDate(): string | undefined { const val = this.seg.fields[24]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN1.25 - Report Of Eligibility Flag */ set_in1_25_reportOfEligibilityFlag(value: string | null | undefined): this { if (value != null) this.seg.fields[25] = value; return this; } /** IN1.25 - Report Of Eligibility Flag */ get_in1_25_reportOfEligibilityFlag(): string | undefined { const val = this.seg.fields[25]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN1.26 - Report Of Eligibility Date */ set_in1_26_reportOfEligibilityDate(value: string | null | undefined): this { if (value != null) this.seg.fields[26] = value; return this; } /** IN1.26 - Report Of Eligibility Date */ get_in1_26_reportOfEligibilityDate(): string | undefined { const val = this.seg.fields[26]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN1.27 - Release Information Code */ set_in1_27_releaseInformationCode(value: string | null | undefined): this { if (value != null) this.seg.fields[27] = value; return this; } /** IN1.27 - Release Information Code */ get_in1_27_releaseInformationCode(): string | undefined { const val = this.seg.fields[27]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN1.28 - Pre-Admit Cert (PAC) */ set_in1_28_preAdmitCert(value: string | null | undefined): this { if (value != null) this.seg.fields[28] = value; return this; } /** IN1.28 - Pre-Admit Cert (PAC) */ get_in1_28_preAdmitCert(): string | undefined { const val = this.seg.fields[28]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN1.29 - Verification Date/Time */ set_in1_29_verificationDateTime(value: string | null | undefined): this { if (value != null) this.seg.fields[29] = value; return this; } /** IN1.29 - Verification Date/Time */ get_in1_29_verificationDateTime(): string | undefined { const val = this.seg.fields[29]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN1.30 - Verification By (set all values) */ set_in1_30_verificationBy(values: XCN[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[30] = arr; return this; } /** IN1.30 - Verification By (add single value) */ add_in1_30_verificationBy(value: XCN | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[30]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[30] = [fv]; } } return this; } /** IN1.30 - Verification By */ get_in1_30_verificationBy(): XCN[] | undefined { const val = this.seg.fields[30]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXCN(v)).filter((v): v is XCN => v !== undefined); } /** IN1.31 - Type Of Agreement Code */ set_in1_31_typeOfAgreementCode(value: string | null | undefined): this { if (value != null) this.seg.fields[31] = value; return this; } /** IN1.31 - Type Of Agreement Code */ get_in1_31_typeOfAgreementCode(): string | undefined { const val = this.seg.fields[31]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN1.32 - Billing Status */ set_in1_32_billingStatus(value: string | null | undefined): this { if (value != null) this.seg.fields[32] = value; return this; } /** IN1.32 - Billing Status */ get_in1_32_billingStatus(): string | undefined { const val = this.seg.fields[32]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN1.33 - Lifetime Reserve Days */ set_in1_33_lifetimeReserveDays(value: string | null | undefined): this { if (value != null) this.seg.fields[33] = value; return this; } /** IN1.33 - Lifetime Reserve Days */ get_in1_33_lifetimeReserveDays(): string | undefined { const val = this.seg.fields[33]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN1.34 - Delay Before L.R. Day */ set_in1_34_delayBeforeLRDay(value: string | null | undefined): this { if (value != null) this.seg.fields[34] = value; return this; } /** IN1.34 - Delay Before L.R. Day */ get_in1_34_delayBeforeLRDay(): string | undefined { const val = this.seg.fields[34]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN1.35 - Company Plan Code */ set_in1_35_companyPlanCode(value: string | null | undefined): this { if (value != null) this.seg.fields[35] = value; return this; } /** IN1.35 - Company Plan Code */ get_in1_35_companyPlanCode(): string | undefined { const val = this.seg.fields[35]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN1.36 - Policy Number */ set_in1_36_policyNumber(value: string | null | undefined): this { if (value != null) this.seg.fields[36] = value; return this; } /** IN1.36 - Policy Number */ get_in1_36_policyNumber(): string | undefined { const val = this.seg.fields[36]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN1.37 - Policy Deductible */ set_in1_37_policyDeductible(value: CP | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[37] = fv; return this; } /** IN1.37 - Policy Deductible */ get_in1_37_policyDeductible(): CP | undefined { return fromCP(this.seg.fields[37]); } /** IN1.38 - Policy Limit - Amount */ set_in1_38_policyLimitAmount(value: CP | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[38] = fv; return this; } /** IN1.38 - Policy Limit - Amount */ get_in1_38_policyLimitAmount(): CP | undefined { return fromCP(this.seg.fields[38]); } /** IN1.39 - Policy Limit - Days */ set_in1_39_policyLimitDays(value: string | null | undefined): this { if (value != null) this.seg.fields[39] = value; return this; } /** IN1.39 - Policy Limit - Days */ get_in1_39_policyLimitDays(): string | undefined { const val = this.seg.fields[39]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN1.40 - Room Rate - Semi-Private */ set_in1_40_roomRateSemiPrivate(value: CP | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[40] = fv; return this; } /** IN1.40 - Room Rate - Semi-Private */ get_in1_40_roomRateSemiPrivate(): CP | undefined { return fromCP(this.seg.fields[40]); } /** IN1.41 - Room Rate - Private */ set_in1_41_roomRatePrivate(value: CP | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[41] = fv; return this; } /** IN1.41 - Room Rate - Private */ get_in1_41_roomRatePrivate(): CP | undefined { return fromCP(this.seg.fields[41]); } /** IN1.42 - Insured's Employment Status */ set_in1_42_insuredsEmploymentStatus(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[42] = fv; return this; } /** IN1.42 - Insured's Employment Status */ get_in1_42_insuredsEmploymentStatus(): CE | undefined { return fromCE(this.seg.fields[42]); } /** IN1.43 - Insured's Administrative Sex */ set_in1_43_insuredsAdministrativeGender(value: string | null | undefined): this { if (value != null) this.seg.fields[43] = value; return this; } /** IN1.43 - Insured's Administrative Sex */ get_in1_43_insuredsAdministrativeGender(): string | undefined { const val = this.seg.fields[43]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN1.44 - Insured's Employer's Address (set all values) */ set_in1_44_insuredsEmployersAddress(values: XAD[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[44] = arr; return this; } /** IN1.44 - Insured's Employer's Address (add single value) */ add_in1_44_insuredsEmployersAddress(value: XAD | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[44]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[44] = [fv]; } } return this; } /** IN1.44 - Insured's Employer's Address */ get_in1_44_insuredsEmployersAddress(): XAD[] | undefined { const val = this.seg.fields[44]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXAD(v)).filter((v): v is XAD => v !== undefined); } /** IN1.45 - Verification Status */ set_in1_45_verificationStatus(value: string | null | undefined): this { if (value != null) this.seg.fields[45] = value; return this; } /** IN1.45 - Verification Status */ get_in1_45_verificationStatus(): string | undefined { const val = this.seg.fields[45]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN1.46 - Prior Insurance Plan ID */ set_in1_46_priorInsurancePlanId(value: string | null | undefined): this { if (value != null) this.seg.fields[46] = value; return this; } /** IN1.46 - Prior Insurance Plan ID */ get_in1_46_priorInsurancePlanId(): string | undefined { const val = this.seg.fields[46]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN1.47 - Coverage Type */ set_in1_47_coverageType(value: string | null | undefined): this { if (value != null) this.seg.fields[47] = value; return this; } /** IN1.47 - Coverage Type */ get_in1_47_coverageType(): string | undefined { const val = this.seg.fields[47]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN1.48 - Handicap */ set_in1_48_disability(value: string | null | undefined): this { if (value != null) this.seg.fields[48] = value; return this; } /** IN1.48 - Handicap */ get_in1_48_disability(): string | undefined { const val = this.seg.fields[48]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN1.49 - Insured's ID Number (set all values) */ set_in1_49_insuredsIdNumber(values: CX[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[49] = arr; return this; } /** IN1.49 - Insured's ID Number (add single value) */ add_in1_49_insuredsIdNumber(value: CX | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[49]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[49] = [fv]; } } return this; } /** IN1.49 - Insured's ID Number */ get_in1_49_insuredsIdNumber(): CX[] | undefined { const val = this.seg.fields[49]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromCX(v)).filter((v): v is CX => v !== undefined); } /** IN1.50 - Signature Code */ set_in1_50_signatureCode(value: string | null | undefined): this { if (value != null) this.seg.fields[50] = value; return this; } /** IN1.50 - Signature Code */ get_in1_50_signatureCode(): string | undefined { const val = this.seg.fields[50]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN1.51 - Signature Code Date */ set_in1_51_signatureCodeDate(value: string | null | undefined): this { if (value != null) this.seg.fields[51] = value; return this; } /** IN1.51 - Signature Code Date */ get_in1_51_signatureCodeDate(): string | undefined { const val = this.seg.fields[51]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN1.52 - Insured's Birth Place */ set_in1_52_insuredsBirthPlace(value: string | null | undefined): this { if (value != null) this.seg.fields[52] = value; return this; } /** IN1.52 - Insured's Birth Place */ get_in1_52_insuredsBirthPlace(): string | undefined { const val = this.seg.fields[52]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN1.53 - VIP Indicator */ set_in1_53_vip(value: string | null | undefined): this { if (value != null) this.seg.fields[53] = value; return this; } /** IN1.53 - VIP Indicator */ get_in1_53_vip(): string | undefined { const val = this.seg.fields[53]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } build(): HL7v2Segment { return this.seg; } } // ====== IN2 Segment ====== /** Get IN2.1.1 - ID Number */ export function IN2_1_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 1); } /** Get IN2.1.2 - Check Digit */ export function IN2_1_2_check_digit(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 2); } /** Get IN2.1.3 - Check Digit Scheme */ export function IN2_1_3_check_digit_scheme(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 3); } /** Get IN2.1.4 - Assigning Authority */ export function IN2_1_4_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 4); } /** Get IN2.1.4.1 - Namespace ID */ export function IN2_1_4_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 4, 1); } /** Get IN2.1.4.2 - Universal ID */ export function IN2_1_4_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 4, 2); } /** Get IN2.1.4.3 - Universal ID Type */ export function IN2_1_4_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 4, 3); } /** Get IN2.1.5 - Identifier Type Code */ export function IN2_1_5_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 5); } /** Get IN2.1.6 - Assigning Facility */ export function IN2_1_6_assigner(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 6); } /** Get IN2.1.6.1 - Namespace ID */ export function IN2_1_6_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 6, 1); } /** Get IN2.1.6.2 - Universal ID */ export function IN2_1_6_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 6, 2); } /** Get IN2.1.6.3 - Universal ID Type */ export function IN2_1_6_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 6, 3); } /** Get IN2.1.7 - Effective Date */ export function IN2_1_7_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 7); } /** Get IN2.1.8 - Expiration Date */ export function IN2_1_8_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 8); } /** Get IN2.1.9 - Assigning Jurisdiction */ export function IN2_1_9_jurisdiction(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 9); } /** Get IN2.1.9.1 - Identifier */ export function IN2_1_9_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 9, 1); } /** Get IN2.1.9.2 - Text */ export function IN2_1_9_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 9, 2); } /** Get IN2.1.9.3 - Name of Coding System */ export function IN2_1_9_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 9, 3); } /** Get IN2.1.9.4 - Alternate Identifier */ export function IN2_1_9_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 9, 4); } /** Get IN2.1.9.5 - Alternate Text */ export function IN2_1_9_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 9, 5); } /** Get IN2.1.9.6 - Name of Alternate Coding System */ export function IN2_1_9_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 9, 6); } /** Get IN2.1.9.7 - Coding System Version ID */ export function IN2_1_9_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 9, 7); } /** Get IN2.1.9.8 - Alternate Coding System Version ID */ export function IN2_1_9_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 9, 8); } /** Get IN2.1.9.9 - Original Text */ export function IN2_1_9_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 9, 9); } /** Get IN2.1.10 - Assigning Agency or Department */ export function IN2_1_10_department(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 10); } /** Get IN2.1.10.1 - Identifier */ export function IN2_1_10_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 10, 1); } /** Get IN2.1.10.2 - Text */ export function IN2_1_10_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 10, 2); } /** Get IN2.1.10.3 - Name of Coding System */ export function IN2_1_10_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 10, 3); } /** Get IN2.1.10.4 - Alternate Identifier */ export function IN2_1_10_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 10, 4); } /** Get IN2.1.10.5 - Alternate Text */ export function IN2_1_10_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 10, 5); } /** Get IN2.1.10.6 - Name of Alternate Coding System */ export function IN2_1_10_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 10, 6); } /** Get IN2.1.10.7 - Coding System Version ID */ export function IN2_1_10_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 10, 7); } /** Get IN2.1.10.8 - Alternate Coding System Version ID */ export function IN2_1_10_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 10, 8); } /** Get IN2.1.10.9 - Original Text */ export function IN2_1_10_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 10, 9); } /** Get IN2.2 - Insured's Social Security Number */ export function IN2_2_insureds_social_security_number(seg: HL7v2Segment): string | undefined { const val = seg.fields[2]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN2.3.1 - ID Number */ export function IN2_3_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 1); } /** Get IN2.3.2 - Family Name */ export function IN2_3_2_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 2); } /** Get IN2.3.2.1 - Surname */ export function IN2_3_2_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 2, 1); } /** Get IN2.3.2.2 - Own Surname Prefix */ export function IN2_3_2_2_own_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 2, 2); } /** Get IN2.3.2.3 - Own Surname */ export function IN2_3_2_3_own_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 2, 3); } /** Get IN2.3.2.4 - Surname Prefix From Partner/Spouse */ export function IN2_3_2_4_partner_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 2, 4); } /** Get IN2.3.2.5 - Surname From Partner/Spouse */ export function IN2_3_2_5_partner_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 2, 5); } /** Get IN2.3.3 - Given Name */ export function IN2_3_3_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 3); } /** Get IN2.3.4 - Second and Further Given Names or Initials Thereof */ export function IN2_3_4_additional_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 4); } /** Get IN2.3.5 - Suffix (e.g., JR or III) */ export function IN2_3_5_suffix(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 5); } /** Get IN2.3.6 - Prefix (e.g., DR) */ export function IN2_3_6_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 6); } /** Get IN2.3.7 - Degree (e.g., MD) */ export function IN2_3_7_qualification(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 7); } /** Get IN2.3.8 - Source Table */ export function IN2_3_8_source_table(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 8); } /** Get IN2.3.9 - Assigning Authority */ export function IN2_3_9_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 9); } /** Get IN2.3.9.1 - Namespace ID */ export function IN2_3_9_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 9, 1); } /** Get IN2.3.9.2 - Universal ID */ export function IN2_3_9_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 9, 2); } /** Get IN2.3.9.3 - Universal ID Type */ export function IN2_3_9_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 9, 3); } /** Get IN2.3.10 - Name Type Code */ export function IN2_3_10_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 10); } /** Get IN2.3.11 - Identifier Check Digit */ export function IN2_3_11_check_digit(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 11); } /** Get IN2.3.12 - Check Digit Scheme */ export function IN2_3_12_check_digit_scheme(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 12); } /** Get IN2.3.13 - Identifier Type Code */ export function IN2_3_13_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 13); } /** Get IN2.3.14 - Assigning Facility */ export function IN2_3_14_assigner(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 14); } /** Get IN2.3.14.1 - Namespace ID */ export function IN2_3_14_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 14, 1); } /** Get IN2.3.14.2 - Universal ID */ export function IN2_3_14_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 14, 2); } /** Get IN2.3.14.3 - Universal ID Type */ export function IN2_3_14_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 14, 3); } /** Get IN2.3.15 - Name Representation Code */ export function IN2_3_15_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 15); } /** Get IN2.3.16 - Name Context */ export function IN2_3_16_context(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 16); } /** Get IN2.3.16.1 - Identifier */ export function IN2_3_16_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 16, 1); } /** Get IN2.3.16.2 - Text */ export function IN2_3_16_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 16, 2); } /** Get IN2.3.16.3 - Name of Coding System */ export function IN2_3_16_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 16, 3); } /** Get IN2.3.16.4 - Alternate Identifier */ export function IN2_3_16_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 16, 4); } /** Get IN2.3.16.5 - Alternate Text */ export function IN2_3_16_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 16, 5); } /** Get IN2.3.16.6 - Name of Alternate Coding System */ export function IN2_3_16_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 16, 6); } /** Get IN2.3.17 - Name Validity Range */ export function IN2_3_17_period(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 17); } /** Get IN2.3.17.1 - Range Start Date/Time */ export function IN2_3_17_1_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 17, 1); } /** Get IN2.3.17.2 - Range End Date/Time */ export function IN2_3_17_2_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 17, 2); } /** Get IN2.3.18 - Name Assembly Order */ export function IN2_3_18_order(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 18); } /** Get IN2.3.19 - Effective Date */ export function IN2_3_19_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 19); } /** Get IN2.3.20 - Expiration Date */ export function IN2_3_20_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 20); } /** Get IN2.3.21 - Professional Suffix */ export function IN2_3_21_credential(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 21); } /** Get IN2.3.22 - Assigning Jurisdiction */ export function IN2_3_22_jurisdiction(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 22); } /** Get IN2.3.22.1 - Identifier */ export function IN2_3_22_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 22, 1); } /** Get IN2.3.22.2 - Text */ export function IN2_3_22_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 22, 2); } /** Get IN2.3.22.3 - Name of Coding System */ export function IN2_3_22_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 22, 3); } /** Get IN2.3.22.4 - Alternate Identifier */ export function IN2_3_22_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 22, 4); } /** Get IN2.3.22.5 - Alternate Text */ export function IN2_3_22_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 22, 5); } /** Get IN2.3.22.6 - Name of Alternate Coding System */ export function IN2_3_22_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 22, 6); } /** Get IN2.3.22.7 - Coding System Version ID */ export function IN2_3_22_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 22, 7); } /** Get IN2.3.22.8 - Alternate Coding System Version ID */ export function IN2_3_22_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 22, 8); } /** Get IN2.3.22.9 - Original Text */ export function IN2_3_22_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 22, 9); } /** Get IN2.3.23 - Assigning Agency or Department */ export function IN2_3_23_department(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 23); } /** Get IN2.3.23.1 - Identifier */ export function IN2_3_23_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 23, 1); } /** Get IN2.3.23.2 - Text */ export function IN2_3_23_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 23, 2); } /** Get IN2.3.23.3 - Name of Coding System */ export function IN2_3_23_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 23, 3); } /** Get IN2.3.23.4 - Alternate Identifier */ export function IN2_3_23_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 23, 4); } /** Get IN2.3.23.5 - Alternate Text */ export function IN2_3_23_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 23, 5); } /** Get IN2.3.23.6 - Name of Alternate Coding System */ export function IN2_3_23_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 23, 6); } /** Get IN2.3.23.7 - Coding System Version ID */ export function IN2_3_23_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 23, 7); } /** Get IN2.3.23.8 - Alternate Coding System Version ID */ export function IN2_3_23_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 23, 8); } /** Get IN2.3.23.9 - Original Text */ export function IN2_3_23_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 23, 9); } /** Get IN2.4 - Employer Information Data */ export function IN2_4_employer_information_data(seg: HL7v2Segment): string | undefined { const val = seg.fields[4]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN2.5 - Mail Claim Party */ export function IN2_5_mail_claim_party(seg: HL7v2Segment): string | undefined { const val = seg.fields[5]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN2.6 - Medicare Health Ins Card Number */ export function IN2_6_medicare_health_ins_card_number(seg: HL7v2Segment): string | undefined { const val = seg.fields[6]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN2.7.1 - Family Name */ export function IN2_7_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 1); } /** Get IN2.7.1.1 - Surname */ export function IN2_7_1_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 1, 1); } /** Get IN2.7.1.2 - Own Surname Prefix */ export function IN2_7_1_2_own_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 1, 2); } /** Get IN2.7.1.3 - Own Surname */ export function IN2_7_1_3_own_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 1, 3); } /** Get IN2.7.1.4 - Surname Prefix From Partner/Spouse */ export function IN2_7_1_4_partner_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 1, 4); } /** Get IN2.7.1.5 - Surname From Partner/Spouse */ export function IN2_7_1_5_partner_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 1, 5); } /** Get IN2.7.2 - Given Name */ export function IN2_7_2_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 2); } /** Get IN2.7.3 - Second and Further Given Names or Initials Thereof */ export function IN2_7_3_additional_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 3); } /** Get IN2.7.4 - Suffix (e.g., JR or III) */ export function IN2_7_4_suffix(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 4); } /** Get IN2.7.5 - Prefix (e.g., DR) */ export function IN2_7_5_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 5); } /** Get IN2.7.6 - Degree (e.g., MD) */ export function IN2_7_6_qualification(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 6); } /** Get IN2.7.7 - Name Type Code */ export function IN2_7_7_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 7); } /** Get IN2.7.8 - Name Representation Code */ export function IN2_7_8_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 8); } /** Get IN2.7.9 - Name Context */ export function IN2_7_9_context(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 9); } /** Get IN2.7.9.1 - Identifier */ export function IN2_7_9_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 9, 1); } /** Get IN2.7.9.2 - Text */ export function IN2_7_9_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 9, 2); } /** Get IN2.7.9.3 - Name of Coding System */ export function IN2_7_9_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 9, 3); } /** Get IN2.7.9.4 - Alternate Identifier */ export function IN2_7_9_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 9, 4); } /** Get IN2.7.9.5 - Alternate Text */ export function IN2_7_9_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 9, 5); } /** Get IN2.7.9.6 - Name of Alternate Coding System */ export function IN2_7_9_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 9, 6); } /** Get IN2.7.10 - Name Validity Range */ export function IN2_7_10_period(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 10); } /** Get IN2.7.10.1 - Range Start Date/Time */ export function IN2_7_10_1_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 10, 1); } /** Get IN2.7.10.2 - Range End Date/Time */ export function IN2_7_10_2_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 10, 2); } /** Get IN2.7.11 - Name Assembly Order */ export function IN2_7_11_order(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 11); } /** Get IN2.7.12 - Effective Date */ export function IN2_7_12_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 12); } /** Get IN2.7.13 - Expiration Date */ export function IN2_7_13_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 13); } /** Get IN2.7.14 - Professional Suffix */ export function IN2_7_14_credential(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 14); } /** Get IN2.8 - Medicaid Case Number */ export function IN2_8_medicaid_case_number(seg: HL7v2Segment): string | undefined { const val = seg.fields[8]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN2.9.1 - Family Name */ export function IN2_9_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 1); } /** Get IN2.9.1.1 - Surname */ export function IN2_9_1_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 1, 1); } /** Get IN2.9.1.2 - Own Surname Prefix */ export function IN2_9_1_2_own_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 1, 2); } /** Get IN2.9.1.3 - Own Surname */ export function IN2_9_1_3_own_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 1, 3); } /** Get IN2.9.1.4 - Surname Prefix From Partner/Spouse */ export function IN2_9_1_4_partner_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 1, 4); } /** Get IN2.9.1.5 - Surname From Partner/Spouse */ export function IN2_9_1_5_partner_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 1, 5); } /** Get IN2.9.2 - Given Name */ export function IN2_9_2_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 2); } /** Get IN2.9.3 - Second and Further Given Names or Initials Thereof */ export function IN2_9_3_additional_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 3); } /** Get IN2.9.4 - Suffix (e.g., JR or III) */ export function IN2_9_4_suffix(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 4); } /** Get IN2.9.5 - Prefix (e.g., DR) */ export function IN2_9_5_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 5); } /** Get IN2.9.6 - Degree (e.g., MD) */ export function IN2_9_6_qualification(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 6); } /** Get IN2.9.7 - Name Type Code */ export function IN2_9_7_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 7); } /** Get IN2.9.8 - Name Representation Code */ export function IN2_9_8_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 8); } /** Get IN2.9.9 - Name Context */ export function IN2_9_9_context(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 9); } /** Get IN2.9.9.1 - Identifier */ export function IN2_9_9_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 9, 1); } /** Get IN2.9.9.2 - Text */ export function IN2_9_9_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 9, 2); } /** Get IN2.9.9.3 - Name of Coding System */ export function IN2_9_9_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 9, 3); } /** Get IN2.9.9.4 - Alternate Identifier */ export function IN2_9_9_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 9, 4); } /** Get IN2.9.9.5 - Alternate Text */ export function IN2_9_9_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 9, 5); } /** Get IN2.9.9.6 - Name of Alternate Coding System */ export function IN2_9_9_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 9, 6); } /** Get IN2.9.10 - Name Validity Range */ export function IN2_9_10_period(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 10); } /** Get IN2.9.10.1 - Range Start Date/Time */ export function IN2_9_10_1_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 10, 1); } /** Get IN2.9.10.2 - Range End Date/Time */ export function IN2_9_10_2_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 10, 2); } /** Get IN2.9.11 - Name Assembly Order */ export function IN2_9_11_order(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 11); } /** Get IN2.9.12 - Effective Date */ export function IN2_9_12_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 12); } /** Get IN2.9.13 - Expiration Date */ export function IN2_9_13_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 13); } /** Get IN2.9.14 - Professional Suffix */ export function IN2_9_14_credential(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 14); } /** Get IN2.10 - Military ID Number */ export function IN2_10_military_id_number(seg: HL7v2Segment): string | undefined { const val = seg.fields[10]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN2.11.1 - Identifier */ export function IN2_11_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 1); } /** Get IN2.11.2 - Text */ export function IN2_11_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 2); } /** Get IN2.11.3 - Name of Coding System */ export function IN2_11_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 3); } /** Get IN2.11.4 - Alternate Identifier */ export function IN2_11_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 4); } /** Get IN2.11.5 - Alternate Text */ export function IN2_11_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 5); } /** Get IN2.11.6 - Name of Alternate Coding System */ export function IN2_11_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 6); } /** Get IN2.12 - Military Organization */ export function IN2_12_military_organization(seg: HL7v2Segment): string | undefined { const val = seg.fields[12]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN2.13 - Military Station */ export function IN2_13_military_station(seg: HL7v2Segment): string | undefined { const val = seg.fields[13]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN2.14 - Military Service */ export function IN2_14_military_service(seg: HL7v2Segment): string | undefined { const val = seg.fields[14]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN2.15 - Military Rank/Grade */ export function IN2_15_military_rank_grade(seg: HL7v2Segment): string | undefined { const val = seg.fields[15]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN2.16 - Military Status */ export function IN2_16_military_status(seg: HL7v2Segment): string | undefined { const val = seg.fields[16]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN2.17 - Military Retire Date */ export function IN2_17_military_retire_date(seg: HL7v2Segment): string | undefined { const val = seg.fields[17]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN2.18 - Military Non-Avail Cert On File */ export function IN2_18_military_non_avail_cert_on_file(seg: HL7v2Segment): string | undefined { const val = seg.fields[18]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN2.19 - Baby Coverage */ export function IN2_19_baby_coverage(seg: HL7v2Segment): string | undefined { const val = seg.fields[19]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN2.20 - Combine Baby Bill */ export function IN2_20_combine_baby_bill(seg: HL7v2Segment): string | undefined { const val = seg.fields[20]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN2.21 - Blood Deductible */ export function IN2_21_blood_deductible(seg: HL7v2Segment): string | undefined { const val = seg.fields[21]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN2.22.1 - Family Name */ export function IN2_22_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[22]; return getComponent(field, 1); } /** Get IN2.22.1.1 - Surname */ export function IN2_22_1_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[22]; return getComponent(field, 1, 1); } /** Get IN2.22.1.2 - Own Surname Prefix */ export function IN2_22_1_2_own_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[22]; return getComponent(field, 1, 2); } /** Get IN2.22.1.3 - Own Surname */ export function IN2_22_1_3_own_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[22]; return getComponent(field, 1, 3); } /** Get IN2.22.1.4 - Surname Prefix From Partner/Spouse */ export function IN2_22_1_4_partner_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[22]; return getComponent(field, 1, 4); } /** Get IN2.22.1.5 - Surname From Partner/Spouse */ export function IN2_22_1_5_partner_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[22]; return getComponent(field, 1, 5); } /** Get IN2.22.2 - Given Name */ export function IN2_22_2_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[22]; return getComponent(field, 2); } /** Get IN2.22.3 - Second and Further Given Names or Initials Thereof */ export function IN2_22_3_additional_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[22]; return getComponent(field, 3); } /** Get IN2.22.4 - Suffix (e.g., JR or III) */ export function IN2_22_4_suffix(seg: HL7v2Segment): string | undefined { const field = seg.fields[22]; return getComponent(field, 4); } /** Get IN2.22.5 - Prefix (e.g., DR) */ export function IN2_22_5_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[22]; return getComponent(field, 5); } /** Get IN2.22.6 - Degree (e.g., MD) */ export function IN2_22_6_qualification(seg: HL7v2Segment): string | undefined { const field = seg.fields[22]; return getComponent(field, 6); } /** Get IN2.22.7 - Name Type Code */ export function IN2_22_7_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[22]; return getComponent(field, 7); } /** Get IN2.22.8 - Name Representation Code */ export function IN2_22_8_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[22]; return getComponent(field, 8); } /** Get IN2.22.9 - Name Context */ export function IN2_22_9_context(seg: HL7v2Segment): string | undefined { const field = seg.fields[22]; return getComponent(field, 9); } /** Get IN2.22.9.1 - Identifier */ export function IN2_22_9_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[22]; return getComponent(field, 9, 1); } /** Get IN2.22.9.2 - Text */ export function IN2_22_9_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[22]; return getComponent(field, 9, 2); } /** Get IN2.22.9.3 - Name of Coding System */ export function IN2_22_9_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[22]; return getComponent(field, 9, 3); } /** Get IN2.22.9.4 - Alternate Identifier */ export function IN2_22_9_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[22]; return getComponent(field, 9, 4); } /** Get IN2.22.9.5 - Alternate Text */ export function IN2_22_9_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[22]; return getComponent(field, 9, 5); } /** Get IN2.22.9.6 - Name of Alternate Coding System */ export function IN2_22_9_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[22]; return getComponent(field, 9, 6); } /** Get IN2.22.10 - Name Validity Range */ export function IN2_22_10_period(seg: HL7v2Segment): string | undefined { const field = seg.fields[22]; return getComponent(field, 10); } /** Get IN2.22.10.1 - Range Start Date/Time */ export function IN2_22_10_1_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[22]; return getComponent(field, 10, 1); } /** Get IN2.22.10.2 - Range End Date/Time */ export function IN2_22_10_2_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[22]; return getComponent(field, 10, 2); } /** Get IN2.22.11 - Name Assembly Order */ export function IN2_22_11_order(seg: HL7v2Segment): string | undefined { const field = seg.fields[22]; return getComponent(field, 11); } /** Get IN2.22.12 - Effective Date */ export function IN2_22_12_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[22]; return getComponent(field, 12); } /** Get IN2.22.13 - Expiration Date */ export function IN2_22_13_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[22]; return getComponent(field, 13); } /** Get IN2.22.14 - Professional Suffix */ export function IN2_22_14_credential(seg: HL7v2Segment): string | undefined { const field = seg.fields[22]; return getComponent(field, 14); } /** Get IN2.23 - Special Coverage Approval Title */ export function IN2_23_special_coverage_approval_title(seg: HL7v2Segment): string | undefined { const val = seg.fields[23]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN2.24 - Non-Covered Insurance Code */ export function IN2_24_non_covered_insurance_code(seg: HL7v2Segment): string | undefined { const val = seg.fields[24]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN2.25.1 - ID Number */ export function IN2_25_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 1); } /** Get IN2.25.2 - Check Digit */ export function IN2_25_2_check_digit(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 2); } /** Get IN2.25.3 - Check Digit Scheme */ export function IN2_25_3_check_digit_scheme(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 3); } /** Get IN2.25.4 - Assigning Authority */ export function IN2_25_4_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 4); } /** Get IN2.25.4.1 - Namespace ID */ export function IN2_25_4_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 4, 1); } /** Get IN2.25.4.2 - Universal ID */ export function IN2_25_4_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 4, 2); } /** Get IN2.25.4.3 - Universal ID Type */ export function IN2_25_4_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 4, 3); } /** Get IN2.25.5 - Identifier Type Code */ export function IN2_25_5_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 5); } /** Get IN2.25.6 - Assigning Facility */ export function IN2_25_6_assigner(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 6); } /** Get IN2.25.6.1 - Namespace ID */ export function IN2_25_6_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 6, 1); } /** Get IN2.25.6.2 - Universal ID */ export function IN2_25_6_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 6, 2); } /** Get IN2.25.6.3 - Universal ID Type */ export function IN2_25_6_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 6, 3); } /** Get IN2.25.7 - Effective Date */ export function IN2_25_7_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 7); } /** Get IN2.25.8 - Expiration Date */ export function IN2_25_8_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 8); } /** Get IN2.25.9 - Assigning Jurisdiction */ export function IN2_25_9_jurisdiction(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 9); } /** Get IN2.25.9.1 - Identifier */ export function IN2_25_9_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 9, 1); } /** Get IN2.25.9.2 - Text */ export function IN2_25_9_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 9, 2); } /** Get IN2.25.9.3 - Name of Coding System */ export function IN2_25_9_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 9, 3); } /** Get IN2.25.9.4 - Alternate Identifier */ export function IN2_25_9_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 9, 4); } /** Get IN2.25.9.5 - Alternate Text */ export function IN2_25_9_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 9, 5); } /** Get IN2.25.9.6 - Name of Alternate Coding System */ export function IN2_25_9_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 9, 6); } /** Get IN2.25.9.7 - Coding System Version ID */ export function IN2_25_9_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 9, 7); } /** Get IN2.25.9.8 - Alternate Coding System Version ID */ export function IN2_25_9_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 9, 8); } /** Get IN2.25.9.9 - Original Text */ export function IN2_25_9_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 9, 9); } /** Get IN2.25.10 - Assigning Agency or Department */ export function IN2_25_10_department(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 10); } /** Get IN2.25.10.1 - Identifier */ export function IN2_25_10_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 10, 1); } /** Get IN2.25.10.2 - Text */ export function IN2_25_10_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 10, 2); } /** Get IN2.25.10.3 - Name of Coding System */ export function IN2_25_10_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 10, 3); } /** Get IN2.25.10.4 - Alternate Identifier */ export function IN2_25_10_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 10, 4); } /** Get IN2.25.10.5 - Alternate Text */ export function IN2_25_10_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 10, 5); } /** Get IN2.25.10.6 - Name of Alternate Coding System */ export function IN2_25_10_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 10, 6); } /** Get IN2.25.10.7 - Coding System Version ID */ export function IN2_25_10_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 10, 7); } /** Get IN2.25.10.8 - Alternate Coding System Version ID */ export function IN2_25_10_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 10, 8); } /** Get IN2.25.10.9 - Original Text */ export function IN2_25_10_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 10, 9); } /** Get IN2.26.1 - ID Number */ export function IN2_26_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 1); } /** Get IN2.26.2 - Check Digit */ export function IN2_26_2_check_digit(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 2); } /** Get IN2.26.3 - Check Digit Scheme */ export function IN2_26_3_check_digit_scheme(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 3); } /** Get IN2.26.4 - Assigning Authority */ export function IN2_26_4_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 4); } /** Get IN2.26.4.1 - Namespace ID */ export function IN2_26_4_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 4, 1); } /** Get IN2.26.4.2 - Universal ID */ export function IN2_26_4_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 4, 2); } /** Get IN2.26.4.3 - Universal ID Type */ export function IN2_26_4_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 4, 3); } /** Get IN2.26.5 - Identifier Type Code */ export function IN2_26_5_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 5); } /** Get IN2.26.6 - Assigning Facility */ export function IN2_26_6_assigner(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 6); } /** Get IN2.26.6.1 - Namespace ID */ export function IN2_26_6_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 6, 1); } /** Get IN2.26.6.2 - Universal ID */ export function IN2_26_6_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 6, 2); } /** Get IN2.26.6.3 - Universal ID Type */ export function IN2_26_6_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 6, 3); } /** Get IN2.26.7 - Effective Date */ export function IN2_26_7_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 7); } /** Get IN2.26.8 - Expiration Date */ export function IN2_26_8_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 8); } /** Get IN2.26.9 - Assigning Jurisdiction */ export function IN2_26_9_jurisdiction(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 9); } /** Get IN2.26.9.1 - Identifier */ export function IN2_26_9_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 9, 1); } /** Get IN2.26.9.2 - Text */ export function IN2_26_9_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 9, 2); } /** Get IN2.26.9.3 - Name of Coding System */ export function IN2_26_9_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 9, 3); } /** Get IN2.26.9.4 - Alternate Identifier */ export function IN2_26_9_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 9, 4); } /** Get IN2.26.9.5 - Alternate Text */ export function IN2_26_9_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 9, 5); } /** Get IN2.26.9.6 - Name of Alternate Coding System */ export function IN2_26_9_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 9, 6); } /** Get IN2.26.9.7 - Coding System Version ID */ export function IN2_26_9_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 9, 7); } /** Get IN2.26.9.8 - Alternate Coding System Version ID */ export function IN2_26_9_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 9, 8); } /** Get IN2.26.9.9 - Original Text */ export function IN2_26_9_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 9, 9); } /** Get IN2.26.10 - Assigning Agency or Department */ export function IN2_26_10_department(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 10); } /** Get IN2.26.10.1 - Identifier */ export function IN2_26_10_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 10, 1); } /** Get IN2.26.10.2 - Text */ export function IN2_26_10_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 10, 2); } /** Get IN2.26.10.3 - Name of Coding System */ export function IN2_26_10_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 10, 3); } /** Get IN2.26.10.4 - Alternate Identifier */ export function IN2_26_10_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 10, 4); } /** Get IN2.26.10.5 - Alternate Text */ export function IN2_26_10_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 10, 5); } /** Get IN2.26.10.6 - Name of Alternate Coding System */ export function IN2_26_10_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 10, 6); } /** Get IN2.26.10.7 - Coding System Version ID */ export function IN2_26_10_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 10, 7); } /** Get IN2.26.10.8 - Alternate Coding System Version ID */ export function IN2_26_10_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 10, 8); } /** Get IN2.26.10.9 - Original Text */ export function IN2_26_10_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 10, 9); } /** Get IN2.27 - Eligibility Source */ export function IN2_27_eligibility_source(seg: HL7v2Segment): string | undefined { const val = seg.fields[27]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN2.28.1 - Room Type */ export function IN2_28_1_room_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[28]; return getComponent(field, 1); } /** Get IN2.28.2 - Amount Type */ export function IN2_28_2_amount_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[28]; return getComponent(field, 2); } /** Get IN2.28.3 - Coverage Amount */ export function IN2_28_3_coverage(seg: HL7v2Segment): string | undefined { const field = seg.fields[28]; return getComponent(field, 3); } /** Get IN2.28.4 - Money or Percentage */ export function IN2_28_4_basis(seg: HL7v2Segment): string | undefined { const field = seg.fields[28]; return getComponent(field, 4); } /** Get IN2.28.4.1 - Money or Percentage Indicator */ export function IN2_28_4_1_indicator(seg: HL7v2Segment): string | undefined { const field = seg.fields[28]; return getComponent(field, 4, 1); } /** Get IN2.28.4.2 - Money or Percentage Quantity */ export function IN2_28_4_2_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[28]; return getComponent(field, 4, 2); } /** Get IN2.28.4.3 - Currency Denomination */ export function IN2_28_4_3_currency(seg: HL7v2Segment): string | undefined { const field = seg.fields[28]; return getComponent(field, 4, 3); } /** Get IN2.29.1 - Policy Type */ export function IN2_29_1_policy_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[29]; return getComponent(field, 1); } /** Get IN2.29.2 - Amount Class */ export function IN2_29_2_amount_class(seg: HL7v2Segment): string | undefined { const field = seg.fields[29]; return getComponent(field, 2); } /** Get IN2.29.3 - Money or Percentage Quantity */ export function IN2_29_3_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[29]; return getComponent(field, 3); } /** Get IN2.29.4 - Money or Percentage */ export function IN2_29_4_basis(seg: HL7v2Segment): string | undefined { const field = seg.fields[29]; return getComponent(field, 4); } /** Get IN2.29.4.1 - Money or Percentage Indicator */ export function IN2_29_4_1_indicator(seg: HL7v2Segment): string | undefined { const field = seg.fields[29]; return getComponent(field, 4, 1); } /** Get IN2.29.4.2 - Money or Percentage Quantity */ export function IN2_29_4_2_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[29]; return getComponent(field, 4, 2); } /** Get IN2.29.4.3 - Currency Denomination */ export function IN2_29_4_3_currency(seg: HL7v2Segment): string | undefined { const field = seg.fields[29]; return getComponent(field, 4, 3); } /** Get IN2.30.1 - Delay Days */ export function IN2_30_1_delay(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 1); } /** Get IN2.30.2 - Monetary Amount */ export function IN2_30_2_amount(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 2); } /** Get IN2.30.2.1 - Quantity */ export function IN2_30_2_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 2, 1); } /** Get IN2.30.2.2 - Denomination */ export function IN2_30_2_2_currency(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 2, 2); } /** Get IN2.30.3 - Number of Days */ export function IN2_30_3_days(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 3); } /** Get IN2.31 - Living Dependency */ export function IN2_31_living_dependency(seg: HL7v2Segment): string | undefined { const val = seg.fields[31]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN2.32 - Ambulatory Status */ export function IN2_32_ambulatory_status(seg: HL7v2Segment): string | undefined { const val = seg.fields[32]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN2.33.1 - Identifier */ export function IN2_33_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[33]; return getComponent(field, 1); } /** Get IN2.33.2 - Text */ export function IN2_33_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[33]; return getComponent(field, 2); } /** Get IN2.33.3 - Name of Coding System */ export function IN2_33_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[33]; return getComponent(field, 3); } /** Get IN2.33.4 - Alternate Identifier */ export function IN2_33_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[33]; return getComponent(field, 4); } /** Get IN2.33.5 - Alternate Text */ export function IN2_33_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[33]; return getComponent(field, 5); } /** Get IN2.33.6 - Name of Alternate Coding System */ export function IN2_33_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[33]; return getComponent(field, 6); } /** Get IN2.34.1 - Identifier */ export function IN2_34_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[34]; return getComponent(field, 1); } /** Get IN2.34.2 - Text */ export function IN2_34_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[34]; return getComponent(field, 2); } /** Get IN2.34.3 - Name of Coding System */ export function IN2_34_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[34]; return getComponent(field, 3); } /** Get IN2.34.4 - Alternate Identifier */ export function IN2_34_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[34]; return getComponent(field, 4); } /** Get IN2.34.5 - Alternate Text */ export function IN2_34_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[34]; return getComponent(field, 5); } /** Get IN2.34.6 - Name of Alternate Coding System */ export function IN2_34_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[34]; return getComponent(field, 6); } /** Get IN2.35 - Living Arrangement */ export function IN2_35_living_arrangement(seg: HL7v2Segment): string | undefined { const val = seg.fields[35]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN2.36.1 - Identifier */ export function IN2_36_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[36]; return getComponent(field, 1); } /** Get IN2.36.2 - Text */ export function IN2_36_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[36]; return getComponent(field, 2); } /** Get IN2.36.3 - Name of Coding System */ export function IN2_36_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[36]; return getComponent(field, 3); } /** Get IN2.36.4 - Alternate Identifier */ export function IN2_36_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[36]; return getComponent(field, 4); } /** Get IN2.36.5 - Alternate Text */ export function IN2_36_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[36]; return getComponent(field, 5); } /** Get IN2.36.6 - Name of Alternate Coding System */ export function IN2_36_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[36]; return getComponent(field, 6); } /** Get IN2.37 - Protection Indicator */ export function IN2_37_protection_indicator(seg: HL7v2Segment): string | undefined { const val = seg.fields[37]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN2.38 - Student Indicator */ export function IN2_38_student(seg: HL7v2Segment): string | undefined { const val = seg.fields[38]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN2.39.1 - Identifier */ export function IN2_39_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[39]; return getComponent(field, 1); } /** Get IN2.39.2 - Text */ export function IN2_39_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[39]; return getComponent(field, 2); } /** Get IN2.39.3 - Name of Coding System */ export function IN2_39_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[39]; return getComponent(field, 3); } /** Get IN2.39.4 - Alternate Identifier */ export function IN2_39_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[39]; return getComponent(field, 4); } /** Get IN2.39.5 - Alternate Text */ export function IN2_39_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[39]; return getComponent(field, 5); } /** Get IN2.39.6 - Name of Alternate Coding System */ export function IN2_39_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[39]; return getComponent(field, 6); } /** Get IN2.40.1 - Family Name */ export function IN2_40_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[40]; return getComponent(field, 1); } /** Get IN2.40.1.1 - Surname */ export function IN2_40_1_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[40]; return getComponent(field, 1, 1); } /** Get IN2.40.1.2 - Own Surname Prefix */ export function IN2_40_1_2_own_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[40]; return getComponent(field, 1, 2); } /** Get IN2.40.1.3 - Own Surname */ export function IN2_40_1_3_own_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[40]; return getComponent(field, 1, 3); } /** Get IN2.40.1.4 - Surname Prefix From Partner/Spouse */ export function IN2_40_1_4_partner_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[40]; return getComponent(field, 1, 4); } /** Get IN2.40.1.5 - Surname From Partner/Spouse */ export function IN2_40_1_5_partner_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[40]; return getComponent(field, 1, 5); } /** Get IN2.40.2 - Given Name */ export function IN2_40_2_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[40]; return getComponent(field, 2); } /** Get IN2.40.3 - Second and Further Given Names or Initials Thereof */ export function IN2_40_3_additional_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[40]; return getComponent(field, 3); } /** Get IN2.40.4 - Suffix (e.g., JR or III) */ export function IN2_40_4_suffix(seg: HL7v2Segment): string | undefined { const field = seg.fields[40]; return getComponent(field, 4); } /** Get IN2.40.5 - Prefix (e.g., DR) */ export function IN2_40_5_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[40]; return getComponent(field, 5); } /** Get IN2.40.6 - Degree (e.g., MD) */ export function IN2_40_6_qualification(seg: HL7v2Segment): string | undefined { const field = seg.fields[40]; return getComponent(field, 6); } /** Get IN2.40.7 - Name Type Code */ export function IN2_40_7_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[40]; return getComponent(field, 7); } /** Get IN2.40.8 - Name Representation Code */ export function IN2_40_8_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[40]; return getComponent(field, 8); } /** Get IN2.40.9 - Name Context */ export function IN2_40_9_context(seg: HL7v2Segment): string | undefined { const field = seg.fields[40]; return getComponent(field, 9); } /** Get IN2.40.9.1 - Identifier */ export function IN2_40_9_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[40]; return getComponent(field, 9, 1); } /** Get IN2.40.9.2 - Text */ export function IN2_40_9_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[40]; return getComponent(field, 9, 2); } /** Get IN2.40.9.3 - Name of Coding System */ export function IN2_40_9_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[40]; return getComponent(field, 9, 3); } /** Get IN2.40.9.4 - Alternate Identifier */ export function IN2_40_9_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[40]; return getComponent(field, 9, 4); } /** Get IN2.40.9.5 - Alternate Text */ export function IN2_40_9_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[40]; return getComponent(field, 9, 5); } /** Get IN2.40.9.6 - Name of Alternate Coding System */ export function IN2_40_9_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[40]; return getComponent(field, 9, 6); } /** Get IN2.40.10 - Name Validity Range */ export function IN2_40_10_period(seg: HL7v2Segment): string | undefined { const field = seg.fields[40]; return getComponent(field, 10); } /** Get IN2.40.10.1 - Range Start Date/Time */ export function IN2_40_10_1_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[40]; return getComponent(field, 10, 1); } /** Get IN2.40.10.2 - Range End Date/Time */ export function IN2_40_10_2_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[40]; return getComponent(field, 10, 2); } /** Get IN2.40.11 - Name Assembly Order */ export function IN2_40_11_order(seg: HL7v2Segment): string | undefined { const field = seg.fields[40]; return getComponent(field, 11); } /** Get IN2.40.12 - Effective Date */ export function IN2_40_12_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[40]; return getComponent(field, 12); } /** Get IN2.40.13 - Expiration Date */ export function IN2_40_13_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[40]; return getComponent(field, 13); } /** Get IN2.40.14 - Professional Suffix */ export function IN2_40_14_credential(seg: HL7v2Segment): string | undefined { const field = seg.fields[40]; return getComponent(field, 14); } /** Get IN2.41.1 - Identifier */ export function IN2_41_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[41]; return getComponent(field, 1); } /** Get IN2.41.2 - Text */ export function IN2_41_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[41]; return getComponent(field, 2); } /** Get IN2.41.3 - Name of Coding System */ export function IN2_41_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[41]; return getComponent(field, 3); } /** Get IN2.41.4 - Alternate Identifier */ export function IN2_41_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[41]; return getComponent(field, 4); } /** Get IN2.41.5 - Alternate Text */ export function IN2_41_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[41]; return getComponent(field, 5); } /** Get IN2.41.6 - Name of Alternate Coding System */ export function IN2_41_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[41]; return getComponent(field, 6); } /** Get IN2.42.1 - Identifier */ export function IN2_42_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 1); } /** Get IN2.42.2 - Text */ export function IN2_42_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 2); } /** Get IN2.42.3 - Name of Coding System */ export function IN2_42_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 3); } /** Get IN2.42.4 - Alternate Identifier */ export function IN2_42_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 4); } /** Get IN2.42.5 - Alternate Text */ export function IN2_42_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 5); } /** Get IN2.42.6 - Name of Alternate Coding System */ export function IN2_42_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 6); } /** Get IN2.43.1 - Identifier */ export function IN2_43_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[43]; return getComponent(field, 1); } /** Get IN2.43.2 - Text */ export function IN2_43_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[43]; return getComponent(field, 2); } /** Get IN2.43.3 - Name of Coding System */ export function IN2_43_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[43]; return getComponent(field, 3); } /** Get IN2.43.4 - Alternate Identifier */ export function IN2_43_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[43]; return getComponent(field, 4); } /** Get IN2.43.5 - Alternate Text */ export function IN2_43_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[43]; return getComponent(field, 5); } /** Get IN2.43.6 - Name of Alternate Coding System */ export function IN2_43_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[43]; return getComponent(field, 6); } /** Get IN2.44 - Insured's Employment Start Date */ export function IN2_44_insureds_employment_start_date(seg: HL7v2Segment): string | undefined { const val = seg.fields[44]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN2.45 - Employment Stop Date */ export function IN2_45_employment_end(seg: HL7v2Segment): string | undefined { const val = seg.fields[45]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN2.46 - Job Title */ export function IN2_46_job_title(seg: HL7v2Segment): string | undefined { const val = seg.fields[46]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN2.47.1 - Job Code */ export function IN2_47_1_job_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[47]; return getComponent(field, 1); } /** Get IN2.47.2 - Job Class */ export function IN2_47_2_job_class(seg: HL7v2Segment): string | undefined { const field = seg.fields[47]; return getComponent(field, 2); } /** Get IN2.47.3 - Job Description Text */ export function IN2_47_3_job_description(seg: HL7v2Segment): string | undefined { const field = seg.fields[47]; return getComponent(field, 3); } /** Get IN2.48 - Job Status */ export function IN2_48_job_status(seg: HL7v2Segment): string | undefined { const val = seg.fields[48]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN2.49.1 - Family Name */ export function IN2_49_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 1); } /** Get IN2.49.1.1 - Surname */ export function IN2_49_1_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 1, 1); } /** Get IN2.49.1.2 - Own Surname Prefix */ export function IN2_49_1_2_own_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 1, 2); } /** Get IN2.49.1.3 - Own Surname */ export function IN2_49_1_3_own_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 1, 3); } /** Get IN2.49.1.4 - Surname Prefix From Partner/Spouse */ export function IN2_49_1_4_partner_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 1, 4); } /** Get IN2.49.1.5 - Surname From Partner/Spouse */ export function IN2_49_1_5_partner_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 1, 5); } /** Get IN2.49.2 - Given Name */ export function IN2_49_2_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 2); } /** Get IN2.49.3 - Second and Further Given Names or Initials Thereof */ export function IN2_49_3_additional_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 3); } /** Get IN2.49.4 - Suffix (e.g., JR or III) */ export function IN2_49_4_suffix(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 4); } /** Get IN2.49.5 - Prefix (e.g., DR) */ export function IN2_49_5_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 5); } /** Get IN2.49.6 - Degree (e.g., MD) */ export function IN2_49_6_qualification(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 6); } /** Get IN2.49.7 - Name Type Code */ export function IN2_49_7_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 7); } /** Get IN2.49.8 - Name Representation Code */ export function IN2_49_8_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 8); } /** Get IN2.49.9 - Name Context */ export function IN2_49_9_context(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 9); } /** Get IN2.49.9.1 - Identifier */ export function IN2_49_9_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 9, 1); } /** Get IN2.49.9.2 - Text */ export function IN2_49_9_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 9, 2); } /** Get IN2.49.9.3 - Name of Coding System */ export function IN2_49_9_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 9, 3); } /** Get IN2.49.9.4 - Alternate Identifier */ export function IN2_49_9_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 9, 4); } /** Get IN2.49.9.5 - Alternate Text */ export function IN2_49_9_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 9, 5); } /** Get IN2.49.9.6 - Name of Alternate Coding System */ export function IN2_49_9_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 9, 6); } /** Get IN2.49.10 - Name Validity Range */ export function IN2_49_10_period(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 10); } /** Get IN2.49.10.1 - Range Start Date/Time */ export function IN2_49_10_1_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 10, 1); } /** Get IN2.49.10.2 - Range End Date/Time */ export function IN2_49_10_2_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 10, 2); } /** Get IN2.49.11 - Name Assembly Order */ export function IN2_49_11_order(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 11); } /** Get IN2.49.12 - Effective Date */ export function IN2_49_12_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 12); } /** Get IN2.49.13 - Expiration Date */ export function IN2_49_13_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 13); } /** Get IN2.49.14 - Professional Suffix */ export function IN2_49_14_credential(seg: HL7v2Segment): string | undefined { const field = seg.fields[49]; return getComponent(field, 14); } /** Get IN2.50.1 - Telephone Number */ export function IN2_50_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[50]; return getComponent(field, 1); } /** Get IN2.50.2 - Telecommunication Use Code */ export function IN2_50_2_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[50]; return getComponent(field, 2); } /** Get IN2.50.3 - Telecommunication Equipment Type */ export function IN2_50_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[50]; return getComponent(field, 3); } /** Get IN2.50.4 - Email Address */ export function IN2_50_4_email(seg: HL7v2Segment): string | undefined { const field = seg.fields[50]; return getComponent(field, 4); } /** Get IN2.50.5 - Country Code */ export function IN2_50_5_country_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[50]; return getComponent(field, 5); } /** Get IN2.50.6 - Area/City Code */ export function IN2_50_6_area_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[50]; return getComponent(field, 6); } /** Get IN2.50.7 - Local Number */ export function IN2_50_7_local_number(seg: HL7v2Segment): string | undefined { const field = seg.fields[50]; return getComponent(field, 7); } /** Get IN2.50.8 - Extension */ export function IN2_50_8_extension(seg: HL7v2Segment): string | undefined { const field = seg.fields[50]; return getComponent(field, 8); } /** Get IN2.50.9 - Any Text */ export function IN2_50_9_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[50]; return getComponent(field, 9); } /** Get IN2.50.10 - Extension Prefix */ export function IN2_50_10_extension_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[50]; return getComponent(field, 10); } /** Get IN2.50.11 - Speed Dial Code */ export function IN2_50_11_speed_dial(seg: HL7v2Segment): string | undefined { const field = seg.fields[50]; return getComponent(field, 11); } /** Get IN2.50.12 - Unformatted Telephone number */ export function IN2_50_12_unformatted(seg: HL7v2Segment): string | undefined { const field = seg.fields[50]; return getComponent(field, 12); } /** Get IN2.51 - Employer Contact Reason */ export function IN2_51_employer_contact_reason(seg: HL7v2Segment): string | undefined { const val = seg.fields[51]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN2.52.1 - Family Name */ export function IN2_52_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 1); } /** Get IN2.52.1.1 - Surname */ export function IN2_52_1_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 1, 1); } /** Get IN2.52.1.2 - Own Surname Prefix */ export function IN2_52_1_2_own_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 1, 2); } /** Get IN2.52.1.3 - Own Surname */ export function IN2_52_1_3_own_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 1, 3); } /** Get IN2.52.1.4 - Surname Prefix From Partner/Spouse */ export function IN2_52_1_4_partner_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 1, 4); } /** Get IN2.52.1.5 - Surname From Partner/Spouse */ export function IN2_52_1_5_partner_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 1, 5); } /** Get IN2.52.2 - Given Name */ export function IN2_52_2_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 2); } /** Get IN2.52.3 - Second and Further Given Names or Initials Thereof */ export function IN2_52_3_additional_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 3); } /** Get IN2.52.4 - Suffix (e.g., JR or III) */ export function IN2_52_4_suffix(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 4); } /** Get IN2.52.5 - Prefix (e.g., DR) */ export function IN2_52_5_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 5); } /** Get IN2.52.6 - Degree (e.g., MD) */ export function IN2_52_6_qualification(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 6); } /** Get IN2.52.7 - Name Type Code */ export function IN2_52_7_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 7); } /** Get IN2.52.8 - Name Representation Code */ export function IN2_52_8_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 8); } /** Get IN2.52.9 - Name Context */ export function IN2_52_9_context(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 9); } /** Get IN2.52.9.1 - Identifier */ export function IN2_52_9_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 9, 1); } /** Get IN2.52.9.2 - Text */ export function IN2_52_9_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 9, 2); } /** Get IN2.52.9.3 - Name of Coding System */ export function IN2_52_9_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 9, 3); } /** Get IN2.52.9.4 - Alternate Identifier */ export function IN2_52_9_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 9, 4); } /** Get IN2.52.9.5 - Alternate Text */ export function IN2_52_9_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 9, 5); } /** Get IN2.52.9.6 - Name of Alternate Coding System */ export function IN2_52_9_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 9, 6); } /** Get IN2.52.10 - Name Validity Range */ export function IN2_52_10_period(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 10); } /** Get IN2.52.10.1 - Range Start Date/Time */ export function IN2_52_10_1_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 10, 1); } /** Get IN2.52.10.2 - Range End Date/Time */ export function IN2_52_10_2_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 10, 2); } /** Get IN2.52.11 - Name Assembly Order */ export function IN2_52_11_order(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 11); } /** Get IN2.52.12 - Effective Date */ export function IN2_52_12_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 12); } /** Get IN2.52.13 - Expiration Date */ export function IN2_52_13_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 13); } /** Get IN2.52.14 - Professional Suffix */ export function IN2_52_14_credential(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 14); } /** Get IN2.53.1 - Telephone Number */ export function IN2_53_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[53]; return getComponent(field, 1); } /** Get IN2.53.2 - Telecommunication Use Code */ export function IN2_53_2_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[53]; return getComponent(field, 2); } /** Get IN2.53.3 - Telecommunication Equipment Type */ export function IN2_53_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[53]; return getComponent(field, 3); } /** Get IN2.53.4 - Email Address */ export function IN2_53_4_email(seg: HL7v2Segment): string | undefined { const field = seg.fields[53]; return getComponent(field, 4); } /** Get IN2.53.5 - Country Code */ export function IN2_53_5_country_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[53]; return getComponent(field, 5); } /** Get IN2.53.6 - Area/City Code */ export function IN2_53_6_area_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[53]; return getComponent(field, 6); } /** Get IN2.53.7 - Local Number */ export function IN2_53_7_local_number(seg: HL7v2Segment): string | undefined { const field = seg.fields[53]; return getComponent(field, 7); } /** Get IN2.53.8 - Extension */ export function IN2_53_8_extension(seg: HL7v2Segment): string | undefined { const field = seg.fields[53]; return getComponent(field, 8); } /** Get IN2.53.9 - Any Text */ export function IN2_53_9_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[53]; return getComponent(field, 9); } /** Get IN2.53.10 - Extension Prefix */ export function IN2_53_10_extension_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[53]; return getComponent(field, 10); } /** Get IN2.53.11 - Speed Dial Code */ export function IN2_53_11_speed_dial(seg: HL7v2Segment): string | undefined { const field = seg.fields[53]; return getComponent(field, 11); } /** Get IN2.53.12 - Unformatted Telephone number */ export function IN2_53_12_unformatted(seg: HL7v2Segment): string | undefined { const field = seg.fields[53]; return getComponent(field, 12); } /** Get IN2.54 - Insured's Contact Person Reason */ export function IN2_54_insureds_contact_person_reason(seg: HL7v2Segment): string | undefined { const val = seg.fields[54]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN2.55 - Relationship to the Patient Start Date */ export function IN2_55_relationship_to_the_patient_start_date(seg: HL7v2Segment): string | undefined { const val = seg.fields[55]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN2.56 - Relationship to the Patient Stop Date */ export function IN2_56_relationship_to_the_patient_stop_date(seg: HL7v2Segment): string | undefined { const val = seg.fields[56]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN2.57 - Insurance Co. Contact Reason */ export function IN2_57_insurance_co_contact_reason(seg: HL7v2Segment): string | undefined { const val = seg.fields[57]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN2.58.1 - Telephone Number */ export function IN2_58_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[58]; return getComponent(field, 1); } /** Get IN2.58.2 - Telecommunication Use Code */ export function IN2_58_2_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[58]; return getComponent(field, 2); } /** Get IN2.58.3 - Telecommunication Equipment Type */ export function IN2_58_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[58]; return getComponent(field, 3); } /** Get IN2.58.4 - Email Address */ export function IN2_58_4_email(seg: HL7v2Segment): string | undefined { const field = seg.fields[58]; return getComponent(field, 4); } /** Get IN2.58.5 - Country Code */ export function IN2_58_5_country_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[58]; return getComponent(field, 5); } /** Get IN2.58.6 - Area/City Code */ export function IN2_58_6_area_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[58]; return getComponent(field, 6); } /** Get IN2.58.7 - Local Number */ export function IN2_58_7_local_number(seg: HL7v2Segment): string | undefined { const field = seg.fields[58]; return getComponent(field, 7); } /** Get IN2.58.8 - Extension */ export function IN2_58_8_extension(seg: HL7v2Segment): string | undefined { const field = seg.fields[58]; return getComponent(field, 8); } /** Get IN2.58.9 - Any Text */ export function IN2_58_9_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[58]; return getComponent(field, 9); } /** Get IN2.58.10 - Extension Prefix */ export function IN2_58_10_extension_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[58]; return getComponent(field, 10); } /** Get IN2.58.11 - Speed Dial Code */ export function IN2_58_11_speed_dial(seg: HL7v2Segment): string | undefined { const field = seg.fields[58]; return getComponent(field, 11); } /** Get IN2.58.12 - Unformatted Telephone number */ export function IN2_58_12_unformatted(seg: HL7v2Segment): string | undefined { const field = seg.fields[58]; return getComponent(field, 12); } /** Get IN2.59 - Policy Scope */ export function IN2_59_policy_scope(seg: HL7v2Segment): string | undefined { const val = seg.fields[59]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN2.60 - Policy Source */ export function IN2_60_policy_source(seg: HL7v2Segment): string | undefined { const val = seg.fields[60]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN2.61.1 - ID Number */ export function IN2_61_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[61]; return getComponent(field, 1); } /** Get IN2.61.2 - Check Digit */ export function IN2_61_2_check_digit(seg: HL7v2Segment): string | undefined { const field = seg.fields[61]; return getComponent(field, 2); } /** Get IN2.61.3 - Check Digit Scheme */ export function IN2_61_3_check_digit_scheme(seg: HL7v2Segment): string | undefined { const field = seg.fields[61]; return getComponent(field, 3); } /** Get IN2.61.4 - Assigning Authority */ export function IN2_61_4_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[61]; return getComponent(field, 4); } /** Get IN2.61.4.1 - Namespace ID */ export function IN2_61_4_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[61]; return getComponent(field, 4, 1); } /** Get IN2.61.4.2 - Universal ID */ export function IN2_61_4_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[61]; return getComponent(field, 4, 2); } /** Get IN2.61.4.3 - Universal ID Type */ export function IN2_61_4_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[61]; return getComponent(field, 4, 3); } /** Get IN2.61.5 - Identifier Type Code */ export function IN2_61_5_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[61]; return getComponent(field, 5); } /** Get IN2.61.6 - Assigning Facility */ export function IN2_61_6_assigner(seg: HL7v2Segment): string | undefined { const field = seg.fields[61]; return getComponent(field, 6); } /** Get IN2.61.6.1 - Namespace ID */ export function IN2_61_6_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[61]; return getComponent(field, 6, 1); } /** Get IN2.61.6.2 - Universal ID */ export function IN2_61_6_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[61]; return getComponent(field, 6, 2); } /** Get IN2.61.6.3 - Universal ID Type */ export function IN2_61_6_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[61]; return getComponent(field, 6, 3); } /** Get IN2.61.7 - Effective Date */ export function IN2_61_7_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[61]; return getComponent(field, 7); } /** Get IN2.61.8 - Expiration Date */ export function IN2_61_8_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[61]; return getComponent(field, 8); } /** Get IN2.61.9 - Assigning Jurisdiction */ export function IN2_61_9_jurisdiction(seg: HL7v2Segment): string | undefined { const field = seg.fields[61]; return getComponent(field, 9); } /** Get IN2.61.9.1 - Identifier */ export function IN2_61_9_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[61]; return getComponent(field, 9, 1); } /** Get IN2.61.9.2 - Text */ export function IN2_61_9_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[61]; return getComponent(field, 9, 2); } /** Get IN2.61.9.3 - Name of Coding System */ export function IN2_61_9_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[61]; return getComponent(field, 9, 3); } /** Get IN2.61.9.4 - Alternate Identifier */ export function IN2_61_9_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[61]; return getComponent(field, 9, 4); } /** Get IN2.61.9.5 - Alternate Text */ export function IN2_61_9_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[61]; return getComponent(field, 9, 5); } /** Get IN2.61.9.6 - Name of Alternate Coding System */ export function IN2_61_9_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[61]; return getComponent(field, 9, 6); } /** Get IN2.61.9.7 - Coding System Version ID */ export function IN2_61_9_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[61]; return getComponent(field, 9, 7); } /** Get IN2.61.9.8 - Alternate Coding System Version ID */ export function IN2_61_9_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[61]; return getComponent(field, 9, 8); } /** Get IN2.61.9.9 - Original Text */ export function IN2_61_9_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[61]; return getComponent(field, 9, 9); } /** Get IN2.61.10 - Assigning Agency or Department */ export function IN2_61_10_department(seg: HL7v2Segment): string | undefined { const field = seg.fields[61]; return getComponent(field, 10); } /** Get IN2.61.10.1 - Identifier */ export function IN2_61_10_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[61]; return getComponent(field, 10, 1); } /** Get IN2.61.10.2 - Text */ export function IN2_61_10_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[61]; return getComponent(field, 10, 2); } /** Get IN2.61.10.3 - Name of Coding System */ export function IN2_61_10_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[61]; return getComponent(field, 10, 3); } /** Get IN2.61.10.4 - Alternate Identifier */ export function IN2_61_10_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[61]; return getComponent(field, 10, 4); } /** Get IN2.61.10.5 - Alternate Text */ export function IN2_61_10_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[61]; return getComponent(field, 10, 5); } /** Get IN2.61.10.6 - Name of Alternate Coding System */ export function IN2_61_10_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[61]; return getComponent(field, 10, 6); } /** Get IN2.61.10.7 - Coding System Version ID */ export function IN2_61_10_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[61]; return getComponent(field, 10, 7); } /** Get IN2.61.10.8 - Alternate Coding System Version ID */ export function IN2_61_10_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[61]; return getComponent(field, 10, 8); } /** Get IN2.61.10.9 - Original Text */ export function IN2_61_10_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[61]; return getComponent(field, 10, 9); } /** Get IN2.62.1 - Identifier */ export function IN2_62_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[62]; return getComponent(field, 1); } /** Get IN2.62.2 - Text */ export function IN2_62_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[62]; return getComponent(field, 2); } /** Get IN2.62.3 - Name of Coding System */ export function IN2_62_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[62]; return getComponent(field, 3); } /** Get IN2.62.4 - Alternate Identifier */ export function IN2_62_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[62]; return getComponent(field, 4); } /** Get IN2.62.5 - Alternate Text */ export function IN2_62_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[62]; return getComponent(field, 5); } /** Get IN2.62.6 - Name of Alternate Coding System */ export function IN2_62_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[62]; return getComponent(field, 6); } /** Get IN2.63.1 - Telephone Number */ export function IN2_63_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[63]; return getComponent(field, 1); } /** Get IN2.63.2 - Telecommunication Use Code */ export function IN2_63_2_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[63]; return getComponent(field, 2); } /** Get IN2.63.3 - Telecommunication Equipment Type */ export function IN2_63_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[63]; return getComponent(field, 3); } /** Get IN2.63.4 - Email Address */ export function IN2_63_4_email(seg: HL7v2Segment): string | undefined { const field = seg.fields[63]; return getComponent(field, 4); } /** Get IN2.63.5 - Country Code */ export function IN2_63_5_country_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[63]; return getComponent(field, 5); } /** Get IN2.63.6 - Area/City Code */ export function IN2_63_6_area_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[63]; return getComponent(field, 6); } /** Get IN2.63.7 - Local Number */ export function IN2_63_7_local_number(seg: HL7v2Segment): string | undefined { const field = seg.fields[63]; return getComponent(field, 7); } /** Get IN2.63.8 - Extension */ export function IN2_63_8_extension(seg: HL7v2Segment): string | undefined { const field = seg.fields[63]; return getComponent(field, 8); } /** Get IN2.63.9 - Any Text */ export function IN2_63_9_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[63]; return getComponent(field, 9); } /** Get IN2.63.10 - Extension Prefix */ export function IN2_63_10_extension_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[63]; return getComponent(field, 10); } /** Get IN2.63.11 - Speed Dial Code */ export function IN2_63_11_speed_dial(seg: HL7v2Segment): string | undefined { const field = seg.fields[63]; return getComponent(field, 11); } /** Get IN2.63.12 - Unformatted Telephone number */ export function IN2_63_12_unformatted(seg: HL7v2Segment): string | undefined { const field = seg.fields[63]; return getComponent(field, 12); } /** Get IN2.64.1 - Telephone Number */ export function IN2_64_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[64]; return getComponent(field, 1); } /** Get IN2.64.2 - Telecommunication Use Code */ export function IN2_64_2_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[64]; return getComponent(field, 2); } /** Get IN2.64.3 - Telecommunication Equipment Type */ export function IN2_64_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[64]; return getComponent(field, 3); } /** Get IN2.64.4 - Email Address */ export function IN2_64_4_email(seg: HL7v2Segment): string | undefined { const field = seg.fields[64]; return getComponent(field, 4); } /** Get IN2.64.5 - Country Code */ export function IN2_64_5_country_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[64]; return getComponent(field, 5); } /** Get IN2.64.6 - Area/City Code */ export function IN2_64_6_area_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[64]; return getComponent(field, 6); } /** Get IN2.64.7 - Local Number */ export function IN2_64_7_local_number(seg: HL7v2Segment): string | undefined { const field = seg.fields[64]; return getComponent(field, 7); } /** Get IN2.64.8 - Extension */ export function IN2_64_8_extension(seg: HL7v2Segment): string | undefined { const field = seg.fields[64]; return getComponent(field, 8); } /** Get IN2.64.9 - Any Text */ export function IN2_64_9_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[64]; return getComponent(field, 9); } /** Get IN2.64.10 - Extension Prefix */ export function IN2_64_10_extension_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[64]; return getComponent(field, 10); } /** Get IN2.64.11 - Speed Dial Code */ export function IN2_64_11_speed_dial(seg: HL7v2Segment): string | undefined { const field = seg.fields[64]; return getComponent(field, 11); } /** Get IN2.64.12 - Unformatted Telephone number */ export function IN2_64_12_unformatted(seg: HL7v2Segment): string | undefined { const field = seg.fields[64]; return getComponent(field, 12); } /** Get IN2.65.1 - Identifier */ export function IN2_65_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[65]; return getComponent(field, 1); } /** Get IN2.65.2 - Text */ export function IN2_65_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[65]; return getComponent(field, 2); } /** Get IN2.65.3 - Name of Coding System */ export function IN2_65_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[65]; return getComponent(field, 3); } /** Get IN2.65.4 - Alternate Identifier */ export function IN2_65_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[65]; return getComponent(field, 4); } /** Get IN2.65.5 - Alternate Text */ export function IN2_65_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[65]; return getComponent(field, 5); } /** Get IN2.65.6 - Name of Alternate Coding System */ export function IN2_65_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[65]; return getComponent(field, 6); } /** Get IN2.66 - Suspend Flag */ export function IN2_66_suspend_flag(seg: HL7v2Segment): string | undefined { const val = seg.fields[66]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN2.67 - Copay Limit Flag */ export function IN2_67_copay_limit_flag(seg: HL7v2Segment): string | undefined { const val = seg.fields[67]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN2.68 - Stoploss Limit Flag */ export function IN2_68_stoploss_limit_flag(seg: HL7v2Segment): string | undefined { const val = seg.fields[68]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN2.69.1 - Organization Name */ export function IN2_69_1_name(seg: HL7v2Segment): string | undefined { const field = seg.fields[69]; return getComponent(field, 1); } /** Get IN2.69.2 - Organization Name Type Code */ export function IN2_69_2_name_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[69]; return getComponent(field, 2); } /** Get IN2.69.3 - ID Number */ export function IN2_69_3_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[69]; return getComponent(field, 3); } /** Get IN2.69.4 - Check Digit */ export function IN2_69_4_check_digit(seg: HL7v2Segment): string | undefined { const field = seg.fields[69]; return getComponent(field, 4); } /** Get IN2.69.5 - Check Digit Scheme */ export function IN2_69_5_check_digit_scheme(seg: HL7v2Segment): string | undefined { const field = seg.fields[69]; return getComponent(field, 5); } /** Get IN2.69.6 - Assigning Authority */ export function IN2_69_6_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[69]; return getComponent(field, 6); } /** Get IN2.69.6.1 - Namespace ID */ export function IN2_69_6_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[69]; return getComponent(field, 6, 1); } /** Get IN2.69.6.2 - Universal ID */ export function IN2_69_6_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[69]; return getComponent(field, 6, 2); } /** Get IN2.69.6.3 - Universal ID Type */ export function IN2_69_6_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[69]; return getComponent(field, 6, 3); } /** Get IN2.69.7 - Identifier Type Code */ export function IN2_69_7_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[69]; return getComponent(field, 7); } /** Get IN2.69.8 - Assigning Facility */ export function IN2_69_8_assigner(seg: HL7v2Segment): string | undefined { const field = seg.fields[69]; return getComponent(field, 8); } /** Get IN2.69.8.1 - Namespace ID */ export function IN2_69_8_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[69]; return getComponent(field, 8, 1); } /** Get IN2.69.8.2 - Universal ID */ export function IN2_69_8_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[69]; return getComponent(field, 8, 2); } /** Get IN2.69.8.3 - Universal ID Type */ export function IN2_69_8_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[69]; return getComponent(field, 8, 3); } /** Get IN2.69.9 - Name Representation Code */ export function IN2_69_9_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[69]; return getComponent(field, 9); } /** Get IN2.69.10 - Organization Identifier */ export function IN2_69_10_organization_id(seg: HL7v2Segment): string | undefined { const field = seg.fields[69]; return getComponent(field, 10); } /** Get IN2.70.1 - Organization Name */ export function IN2_70_1_name(seg: HL7v2Segment): string | undefined { const field = seg.fields[70]; return getComponent(field, 1); } /** Get IN2.70.2 - Organization Name Type Code */ export function IN2_70_2_name_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[70]; return getComponent(field, 2); } /** Get IN2.70.3 - ID Number */ export function IN2_70_3_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[70]; return getComponent(field, 3); } /** Get IN2.70.4 - Check Digit */ export function IN2_70_4_check_digit(seg: HL7v2Segment): string | undefined { const field = seg.fields[70]; return getComponent(field, 4); } /** Get IN2.70.5 - Check Digit Scheme */ export function IN2_70_5_check_digit_scheme(seg: HL7v2Segment): string | undefined { const field = seg.fields[70]; return getComponent(field, 5); } /** Get IN2.70.6 - Assigning Authority */ export function IN2_70_6_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[70]; return getComponent(field, 6); } /** Get IN2.70.6.1 - Namespace ID */ export function IN2_70_6_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[70]; return getComponent(field, 6, 1); } /** Get IN2.70.6.2 - Universal ID */ export function IN2_70_6_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[70]; return getComponent(field, 6, 2); } /** Get IN2.70.6.3 - Universal ID Type */ export function IN2_70_6_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[70]; return getComponent(field, 6, 3); } /** Get IN2.70.7 - Identifier Type Code */ export function IN2_70_7_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[70]; return getComponent(field, 7); } /** Get IN2.70.8 - Assigning Facility */ export function IN2_70_8_assigner(seg: HL7v2Segment): string | undefined { const field = seg.fields[70]; return getComponent(field, 8); } /** Get IN2.70.8.1 - Namespace ID */ export function IN2_70_8_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[70]; return getComponent(field, 8, 1); } /** Get IN2.70.8.2 - Universal ID */ export function IN2_70_8_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[70]; return getComponent(field, 8, 2); } /** Get IN2.70.8.3 - Universal ID Type */ export function IN2_70_8_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[70]; return getComponent(field, 8, 3); } /** Get IN2.70.9 - Name Representation Code */ export function IN2_70_9_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[70]; return getComponent(field, 9); } /** Get IN2.70.10 - Organization Identifier */ export function IN2_70_10_organization_id(seg: HL7v2Segment): string | undefined { const field = seg.fields[70]; return getComponent(field, 10); } /** Get IN2.71.1 - Identifier */ export function IN2_71_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[71]; return getComponent(field, 1); } /** Get IN2.71.2 - Text */ export function IN2_71_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[71]; return getComponent(field, 2); } /** Get IN2.71.3 - Name of Coding System */ export function IN2_71_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[71]; return getComponent(field, 3); } /** Get IN2.71.4 - Alternate Identifier */ export function IN2_71_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[71]; return getComponent(field, 4); } /** Get IN2.71.5 - Alternate Text */ export function IN2_71_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[71]; return getComponent(field, 5); } /** Get IN2.71.6 - Name of Alternate Coding System */ export function IN2_71_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[71]; return getComponent(field, 6); } /** Get IN2.72.1 - Identifier */ export function IN2_72_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[72]; return getComponent(field, 1); } /** Get IN2.72.2 - Text */ export function IN2_72_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[72]; return getComponent(field, 2); } /** Get IN2.72.3 - Name of Coding System */ export function IN2_72_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[72]; return getComponent(field, 3); } /** Get IN2.72.4 - Alternate Identifier */ export function IN2_72_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[72]; return getComponent(field, 4); } /** Get IN2.72.5 - Alternate Text */ export function IN2_72_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[72]; return getComponent(field, 5); } /** Get IN2.72.6 - Name of Alternate Coding System */ export function IN2_72_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[72]; return getComponent(field, 6); } export class IN2Builder { private seg: HL7v2Segment = { segment: "IN2", fields: {} }; /** IN2.1 - Insured's Employee ID (set all values) */ set_in2_1_insuredsEmployeeId(values: CX[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[1] = arr; return this; } /** IN2.1 - Insured's Employee ID (add single value) */ add_in2_1_insuredsEmployeeId(value: CX | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[1]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[1] = [fv]; } } return this; } /** IN2.1 - Insured's Employee ID */ get_in2_1_insuredsEmployeeId(): CX[] | undefined { const val = this.seg.fields[1]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromCX(v)).filter((v): v is CX => v !== undefined); } /** IN2.2 - Insured's Social Security Number */ set_in2_2_insuredsSocialSecurityNumber(value: string | null | undefined): this { if (value != null) this.seg.fields[2] = value; return this; } /** IN2.2 - Insured's Social Security Number */ get_in2_2_insuredsSocialSecurityNumber(): string | undefined { const val = this.seg.fields[2]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN2.3 - Insured's Employer's Name and ID (set all values) */ set_in2_3_insuredsEmployersNameAndId(values: XCN[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[3] = arr; return this; } /** IN2.3 - Insured's Employer's Name and ID (add single value) */ add_in2_3_insuredsEmployersNameAndId(value: XCN | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[3]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[3] = [fv]; } } return this; } /** IN2.3 - Insured's Employer's Name and ID */ get_in2_3_insuredsEmployersNameAndId(): XCN[] | undefined { const val = this.seg.fields[3]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXCN(v)).filter((v): v is XCN => v !== undefined); } /** IN2.4 - Employer Information Data */ set_in2_4_employerInformationData(value: string | null | undefined): this { if (value != null) this.seg.fields[4] = value; return this; } /** IN2.4 - Employer Information Data */ get_in2_4_employerInformationData(): string | undefined { const val = this.seg.fields[4]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN2.5 - Mail Claim Party */ set_in2_5_mailClaimParty(value: string | null | undefined): this { if (value != null) this.seg.fields[5] = value; return this; } /** IN2.5 - Mail Claim Party */ get_in2_5_mailClaimParty(): string | undefined { const val = this.seg.fields[5]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN2.6 - Medicare Health Ins Card Number */ set_in2_6_medicareHealthInsCardNumber(value: string | null | undefined): this { if (value != null) this.seg.fields[6] = value; return this; } /** IN2.6 - Medicare Health Ins Card Number */ get_in2_6_medicareHealthInsCardNumber(): string | undefined { const val = this.seg.fields[6]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN2.7 - Medicaid Case Name (set all values) */ set_in2_7_medicaidCaseName(values: XPN[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[7] = arr; return this; } /** IN2.7 - Medicaid Case Name (add single value) */ add_in2_7_medicaidCaseName(value: XPN | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[7]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[7] = [fv]; } } return this; } /** IN2.7 - Medicaid Case Name */ get_in2_7_medicaidCaseName(): XPN[] | undefined { const val = this.seg.fields[7]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXPN(v)).filter((v): v is XPN => v !== undefined); } /** IN2.8 - Medicaid Case Number */ set_in2_8_medicaidCaseNumber(value: string | null | undefined): this { if (value != null) this.seg.fields[8] = value; return this; } /** IN2.8 - Medicaid Case Number */ get_in2_8_medicaidCaseNumber(): string | undefined { const val = this.seg.fields[8]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN2.9 - Military Sponsor Name (set all values) */ set_in2_9_militarySponsorName(values: XPN[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[9] = arr; return this; } /** IN2.9 - Military Sponsor Name (add single value) */ add_in2_9_militarySponsorName(value: XPN | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[9]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[9] = [fv]; } } return this; } /** IN2.9 - Military Sponsor Name */ get_in2_9_militarySponsorName(): XPN[] | undefined { const val = this.seg.fields[9]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXPN(v)).filter((v): v is XPN => v !== undefined); } /** IN2.10 - Military ID Number */ set_in2_10_militaryIdNumber(value: string | null | undefined): this { if (value != null) this.seg.fields[10] = value; return this; } /** IN2.10 - Military ID Number */ get_in2_10_militaryIdNumber(): string | undefined { const val = this.seg.fields[10]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN2.11 - Dependent Of Military Recipient */ set_in2_11_dependentOfMilitaryRecipient(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[11] = fv; return this; } /** IN2.11 - Dependent Of Military Recipient */ get_in2_11_dependentOfMilitaryRecipient(): CE | undefined { return fromCE(this.seg.fields[11]); } /** IN2.12 - Military Organization */ set_in2_12_militaryOrganization(value: string | null | undefined): this { if (value != null) this.seg.fields[12] = value; return this; } /** IN2.12 - Military Organization */ get_in2_12_militaryOrganization(): string | undefined { const val = this.seg.fields[12]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN2.13 - Military Station */ set_in2_13_militaryStation(value: string | null | undefined): this { if (value != null) this.seg.fields[13] = value; return this; } /** IN2.13 - Military Station */ get_in2_13_militaryStation(): string | undefined { const val = this.seg.fields[13]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN2.14 - Military Service */ set_in2_14_militaryService(value: string | null | undefined): this { if (value != null) this.seg.fields[14] = value; return this; } /** IN2.14 - Military Service */ get_in2_14_militaryService(): string | undefined { const val = this.seg.fields[14]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN2.15 - Military Rank/Grade */ set_in2_15_militaryRankGrade(value: string | null | undefined): this { if (value != null) this.seg.fields[15] = value; return this; } /** IN2.15 - Military Rank/Grade */ get_in2_15_militaryRankGrade(): string | undefined { const val = this.seg.fields[15]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN2.16 - Military Status */ set_in2_16_militaryStatus(value: string | null | undefined): this { if (value != null) this.seg.fields[16] = value; return this; } /** IN2.16 - Military Status */ get_in2_16_militaryStatus(): string | undefined { const val = this.seg.fields[16]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN2.17 - Military Retire Date */ set_in2_17_militaryRetireDate(value: string | null | undefined): this { if (value != null) this.seg.fields[17] = value; return this; } /** IN2.17 - Military Retire Date */ get_in2_17_militaryRetireDate(): string | undefined { const val = this.seg.fields[17]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN2.18 - Military Non-Avail Cert On File */ set_in2_18_militaryNonAvailCertOnFile(value: string | null | undefined): this { if (value != null) this.seg.fields[18] = value; return this; } /** IN2.18 - Military Non-Avail Cert On File */ get_in2_18_militaryNonAvailCertOnFile(): string | undefined { const val = this.seg.fields[18]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN2.19 - Baby Coverage */ set_in2_19_babyCoverage(value: string | null | undefined): this { if (value != null) this.seg.fields[19] = value; return this; } /** IN2.19 - Baby Coverage */ get_in2_19_babyCoverage(): string | undefined { const val = this.seg.fields[19]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN2.20 - Combine Baby Bill */ set_in2_20_combineBabyBill(value: string | null | undefined): this { if (value != null) this.seg.fields[20] = value; return this; } /** IN2.20 - Combine Baby Bill */ get_in2_20_combineBabyBill(): string | undefined { const val = this.seg.fields[20]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN2.21 - Blood Deductible */ set_in2_21_bloodDeductible(value: string | null | undefined): this { if (value != null) this.seg.fields[21] = value; return this; } /** IN2.21 - Blood Deductible */ get_in2_21_bloodDeductible(): string | undefined { const val = this.seg.fields[21]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN2.22 - Special Coverage Approval Name (set all values) */ set_in2_22_specialCoverageApprovalName(values: XPN[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[22] = arr; return this; } /** IN2.22 - Special Coverage Approval Name (add single value) */ add_in2_22_specialCoverageApprovalName(value: XPN | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[22]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[22] = [fv]; } } return this; } /** IN2.22 - Special Coverage Approval Name */ get_in2_22_specialCoverageApprovalName(): XPN[] | undefined { const val = this.seg.fields[22]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXPN(v)).filter((v): v is XPN => v !== undefined); } /** IN2.23 - Special Coverage Approval Title */ set_in2_23_specialCoverageApprovalTitle(value: string | null | undefined): this { if (value != null) this.seg.fields[23] = value; return this; } /** IN2.23 - Special Coverage Approval Title */ get_in2_23_specialCoverageApprovalTitle(): string | undefined { const val = this.seg.fields[23]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN2.24 - Non-Covered Insurance Code */ set_in2_24_nonCoveredInsuranceCode(value: string | null | undefined): this { if (value != null) this.seg.fields[24] = value; return this; } /** IN2.24 - Non-Covered Insurance Code */ get_in2_24_nonCoveredInsuranceCode(): string | undefined { const val = this.seg.fields[24]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN2.25 - Payor ID (set all values) */ set_in2_25_payorId(values: CX[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[25] = arr; return this; } /** IN2.25 - Payor ID (add single value) */ add_in2_25_payorId(value: CX | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[25]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[25] = [fv]; } } return this; } /** IN2.25 - Payor ID */ get_in2_25_payorId(): CX[] | undefined { const val = this.seg.fields[25]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromCX(v)).filter((v): v is CX => v !== undefined); } /** IN2.26 - Payor Subscriber ID (set all values) */ set_in2_26_payorSubscriberId(values: CX[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[26] = arr; return this; } /** IN2.26 - Payor Subscriber ID (add single value) */ add_in2_26_payorSubscriberId(value: CX | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[26]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[26] = [fv]; } } return this; } /** IN2.26 - Payor Subscriber ID */ get_in2_26_payorSubscriberId(): CX[] | undefined { const val = this.seg.fields[26]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromCX(v)).filter((v): v is CX => v !== undefined); } /** IN2.27 - Eligibility Source */ set_in2_27_eligibilitySource(value: string | null | undefined): this { if (value != null) this.seg.fields[27] = value; return this; } /** IN2.27 - Eligibility Source */ get_in2_27_eligibilitySource(): string | undefined { const val = this.seg.fields[27]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN2.28 - Room Coverage Type/Amount (set all values) */ set_in2_28_roomCoverageTypeAmount(values: RMC[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[28] = arr; return this; } /** IN2.28 - Room Coverage Type/Amount (add single value) */ add_in2_28_roomCoverageTypeAmount(value: RMC | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[28]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[28] = [fv]; } } return this; } /** IN2.28 - Room Coverage Type/Amount */ get_in2_28_roomCoverageTypeAmount(): RMC[] | undefined { const val = this.seg.fields[28]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromRMC(v)).filter((v): v is RMC => v !== undefined); } /** IN2.29 - Policy Type/Amount (set all values) */ set_in2_29_policyTypeAmount(values: PTA[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[29] = arr; return this; } /** IN2.29 - Policy Type/Amount (add single value) */ add_in2_29_policyTypeAmount(value: PTA | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[29]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[29] = [fv]; } } return this; } /** IN2.29 - Policy Type/Amount */ get_in2_29_policyTypeAmount(): PTA[] | undefined { const val = this.seg.fields[29]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromPTA(v)).filter((v): v is PTA => v !== undefined); } /** IN2.30 - Daily Deductible */ set_in2_30_dailyDeductible(value: DDI | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[30] = fv; return this; } /** IN2.30 - Daily Deductible */ get_in2_30_dailyDeductible(): DDI | undefined { return fromDDI(this.seg.fields[30]); } /** IN2.31 - Living Dependency */ set_in2_31_livingDependency(value: string | null | undefined): this { if (value != null) this.seg.fields[31] = value; return this; } /** IN2.31 - Living Dependency */ get_in2_31_livingDependency(): string | undefined { const val = this.seg.fields[31]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN2.32 - Ambulatory Status */ set_in2_32_ambulatoryStatus(value: string | null | undefined): this { if (value != null) this.seg.fields[32] = value; return this; } /** IN2.32 - Ambulatory Status */ get_in2_32_ambulatoryStatus(): string | undefined { const val = this.seg.fields[32]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN2.33 - Citizenship (set all values) */ set_in2_33_citizenship(values: CE[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[33] = arr; return this; } /** IN2.33 - Citizenship (add single value) */ add_in2_33_citizenship(value: CE | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[33]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[33] = [fv]; } } return this; } /** IN2.33 - Citizenship */ get_in2_33_citizenship(): CE[] | undefined { const val = this.seg.fields[33]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromCE(v)).filter((v): v is CE => v !== undefined); } /** IN2.34 - Primary Language */ set_in2_34_language(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[34] = fv; return this; } /** IN2.34 - Primary Language */ get_in2_34_language(): CE | undefined { return fromCE(this.seg.fields[34]); } /** IN2.35 - Living Arrangement */ set_in2_35_livingArrangement(value: string | null | undefined): this { if (value != null) this.seg.fields[35] = value; return this; } /** IN2.35 - Living Arrangement */ get_in2_35_livingArrangement(): string | undefined { const val = this.seg.fields[35]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN2.36 - Publicity Code */ set_in2_36_publicityCode(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[36] = fv; return this; } /** IN2.36 - Publicity Code */ get_in2_36_publicityCode(): CE | undefined { return fromCE(this.seg.fields[36]); } /** IN2.37 - Protection Indicator */ set_in2_37_protectionIndicator(value: string | null | undefined): this { if (value != null) this.seg.fields[37] = value; return this; } /** IN2.37 - Protection Indicator */ get_in2_37_protectionIndicator(): string | undefined { const val = this.seg.fields[37]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN2.38 - Student Indicator */ set_in2_38_student(value: string | null | undefined): this { if (value != null) this.seg.fields[38] = value; return this; } /** IN2.38 - Student Indicator */ get_in2_38_student(): string | undefined { const val = this.seg.fields[38]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN2.39 - Religion */ set_in2_39_religion(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[39] = fv; return this; } /** IN2.39 - Religion */ get_in2_39_religion(): CE | undefined { return fromCE(this.seg.fields[39]); } /** IN2.40 - Mother's Maiden Name (set all values) */ set_in2_40_mothersMaidenName(values: XPN[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[40] = arr; return this; } /** IN2.40 - Mother's Maiden Name (add single value) */ add_in2_40_mothersMaidenName(value: XPN | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[40]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[40] = [fv]; } } return this; } /** IN2.40 - Mother's Maiden Name */ get_in2_40_mothersMaidenName(): XPN[] | undefined { const val = this.seg.fields[40]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXPN(v)).filter((v): v is XPN => v !== undefined); } /** IN2.41 - Nationality */ set_in2_41_nationality(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[41] = fv; return this; } /** IN2.41 - Nationality */ get_in2_41_nationality(): CE | undefined { return fromCE(this.seg.fields[41]); } /** IN2.42 - Ethnic Group (set all values) */ set_in2_42_ethnicity(values: CE[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[42] = arr; return this; } /** IN2.42 - Ethnic Group (add single value) */ add_in2_42_ethnicity(value: CE | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[42]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[42] = [fv]; } } return this; } /** IN2.42 - Ethnic Group */ get_in2_42_ethnicity(): CE[] | undefined { const val = this.seg.fields[42]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromCE(v)).filter((v): v is CE => v !== undefined); } /** IN2.43 - Marital Status (set all values) */ set_in2_43_maritalStatus(values: CE[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[43] = arr; return this; } /** IN2.43 - Marital Status (add single value) */ add_in2_43_maritalStatus(value: CE | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[43]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[43] = [fv]; } } return this; } /** IN2.43 - Marital Status */ get_in2_43_maritalStatus(): CE[] | undefined { const val = this.seg.fields[43]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromCE(v)).filter((v): v is CE => v !== undefined); } /** IN2.44 - Insured's Employment Start Date */ set_in2_44_insuredsEmploymentStartDate(value: string | null | undefined): this { if (value != null) this.seg.fields[44] = value; return this; } /** IN2.44 - Insured's Employment Start Date */ get_in2_44_insuredsEmploymentStartDate(): string | undefined { const val = this.seg.fields[44]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN2.45 - Employment Stop Date */ set_in2_45_employmentEnd(value: string | null | undefined): this { if (value != null) this.seg.fields[45] = value; return this; } /** IN2.45 - Employment Stop Date */ get_in2_45_employmentEnd(): string | undefined { const val = this.seg.fields[45]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN2.46 - Job Title */ set_in2_46_jobTitle(value: string | null | undefined): this { if (value != null) this.seg.fields[46] = value; return this; } /** IN2.46 - Job Title */ get_in2_46_jobTitle(): string | undefined { const val = this.seg.fields[46]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN2.47 - Job Code/Class */ set_in2_47_jobCodeClass(value: JCC | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[47] = fv; return this; } /** IN2.47 - Job Code/Class */ get_in2_47_jobCodeClass(): JCC | undefined { return fromJCC(this.seg.fields[47]); } /** IN2.48 - Job Status */ set_in2_48_jobStatus(value: string | null | undefined): this { if (value != null) this.seg.fields[48] = value; return this; } /** IN2.48 - Job Status */ get_in2_48_jobStatus(): string | undefined { const val = this.seg.fields[48]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN2.49 - Employer Contact Person Name (set all values) */ set_in2_49_employerContactPersonName(values: XPN[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[49] = arr; return this; } /** IN2.49 - Employer Contact Person Name (add single value) */ add_in2_49_employerContactPersonName(value: XPN | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[49]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[49] = [fv]; } } return this; } /** IN2.49 - Employer Contact Person Name */ get_in2_49_employerContactPersonName(): XPN[] | undefined { const val = this.seg.fields[49]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXPN(v)).filter((v): v is XPN => v !== undefined); } /** IN2.50 - Employer Contact Person Phone Number (set all values) */ set_in2_50_employerContactPhone(values: XTN[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[50] = arr; return this; } /** IN2.50 - Employer Contact Person Phone Number (add single value) */ add_in2_50_employerContactPhone(value: XTN | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[50]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[50] = [fv]; } } return this; } /** IN2.50 - Employer Contact Person Phone Number */ get_in2_50_employerContactPhone(): XTN[] | undefined { const val = this.seg.fields[50]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXTN(v)).filter((v): v is XTN => v !== undefined); } /** IN2.51 - Employer Contact Reason */ set_in2_51_employerContactReason(value: string | null | undefined): this { if (value != null) this.seg.fields[51] = value; return this; } /** IN2.51 - Employer Contact Reason */ get_in2_51_employerContactReason(): string | undefined { const val = this.seg.fields[51]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN2.52 - Insured's Contact Person's Name (set all values) */ set_in2_52_insuredsContactPersonsName(values: XPN[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[52] = arr; return this; } /** IN2.52 - Insured's Contact Person's Name (add single value) */ add_in2_52_insuredsContactPersonsName(value: XPN | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[52]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[52] = [fv]; } } return this; } /** IN2.52 - Insured's Contact Person's Name */ get_in2_52_insuredsContactPersonsName(): XPN[] | undefined { const val = this.seg.fields[52]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXPN(v)).filter((v): v is XPN => v !== undefined); } /** IN2.53 - Insured's Contact Person Phone Number (set all values) */ set_in2_53_insuredContactPhone(values: XTN[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[53] = arr; return this; } /** IN2.53 - Insured's Contact Person Phone Number (add single value) */ add_in2_53_insuredContactPhone(value: XTN | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[53]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[53] = [fv]; } } return this; } /** IN2.53 - Insured's Contact Person Phone Number */ get_in2_53_insuredContactPhone(): XTN[] | undefined { const val = this.seg.fields[53]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXTN(v)).filter((v): v is XTN => v !== undefined); } /** IN2.54 - Insured's Contact Person Reason */ set_in2_54_insuredsContactPersonReason(value: string | null | undefined): this { if (value != null) this.seg.fields[54] = value; return this; } /** IN2.54 - Insured's Contact Person Reason */ get_in2_54_insuredsContactPersonReason(): string | undefined { const val = this.seg.fields[54]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN2.55 - Relationship to the Patient Start Date */ set_in2_55_relationshipToThePatientStartDate(value: string | null | undefined): this { if (value != null) this.seg.fields[55] = value; return this; } /** IN2.55 - Relationship to the Patient Start Date */ get_in2_55_relationshipToThePatientStartDate(): string | undefined { const val = this.seg.fields[55]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN2.56 - Relationship to the Patient Stop Date */ set_in2_56_relationshipToThePatientStopDate(value: string | null | undefined): this { if (value != null) this.seg.fields[56] = value; return this; } /** IN2.56 - Relationship to the Patient Stop Date */ get_in2_56_relationshipToThePatientStopDate(): string | undefined { const val = this.seg.fields[56]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN2.57 - Insurance Co. Contact Reason */ set_in2_57_insuranceCoContactReason(value: string | null | undefined): this { if (value != null) this.seg.fields[57] = value; return this; } /** IN2.57 - Insurance Co. Contact Reason */ get_in2_57_insuranceCoContactReason(): string | undefined { const val = this.seg.fields[57]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN2.58 - Insurance Co Contact Phone Number */ set_in2_58_insuranceContactPhone(value: XTN | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[58] = fv; return this; } /** IN2.58 - Insurance Co Contact Phone Number */ get_in2_58_insuranceContactPhone(): XTN | undefined { return fromXTN(this.seg.fields[58]); } /** IN2.59 - Policy Scope */ set_in2_59_policyScope(value: string | null | undefined): this { if (value != null) this.seg.fields[59] = value; return this; } /** IN2.59 - Policy Scope */ get_in2_59_policyScope(): string | undefined { const val = this.seg.fields[59]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN2.60 - Policy Source */ set_in2_60_policySource(value: string | null | undefined): this { if (value != null) this.seg.fields[60] = value; return this; } /** IN2.60 - Policy Source */ get_in2_60_policySource(): string | undefined { const val = this.seg.fields[60]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN2.61 - Patient Member Number */ set_in2_61_memberNumber(value: CX | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[61] = fv; return this; } /** IN2.61 - Patient Member Number */ get_in2_61_memberNumber(): CX | undefined { return fromCX(this.seg.fields[61]); } /** IN2.62 - Guarantor's Relationship to Insured */ set_in2_62_guarantorsRelationshipToInsured(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[62] = fv; return this; } /** IN2.62 - Guarantor's Relationship to Insured */ get_in2_62_guarantorsRelationshipToInsured(): CE | undefined { return fromCE(this.seg.fields[62]); } /** IN2.63 - Insured's Phone Number - Home (set all values) */ set_in2_63_insuredHomePhone(values: XTN[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[63] = arr; return this; } /** IN2.63 - Insured's Phone Number - Home (add single value) */ add_in2_63_insuredHomePhone(value: XTN | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[63]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[63] = [fv]; } } return this; } /** IN2.63 - Insured's Phone Number - Home */ get_in2_63_insuredHomePhone(): XTN[] | undefined { const val = this.seg.fields[63]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXTN(v)).filter((v): v is XTN => v !== undefined); } /** IN2.64 - Insured's Employer Phone Number (set all values) */ set_in2_64_insuredEmployerPhone(values: XTN[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[64] = arr; return this; } /** IN2.64 - Insured's Employer Phone Number (add single value) */ add_in2_64_insuredEmployerPhone(value: XTN | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[64]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[64] = [fv]; } } return this; } /** IN2.64 - Insured's Employer Phone Number */ get_in2_64_insuredEmployerPhone(): XTN[] | undefined { const val = this.seg.fields[64]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXTN(v)).filter((v): v is XTN => v !== undefined); } /** IN2.65 - Military Handicapped Program */ set_in2_65_militaryHandicappedProgram(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[65] = fv; return this; } /** IN2.65 - Military Handicapped Program */ get_in2_65_militaryHandicappedProgram(): CE | undefined { return fromCE(this.seg.fields[65]); } /** IN2.66 - Suspend Flag */ set_in2_66_suspendFlag(value: string | null | undefined): this { if (value != null) this.seg.fields[66] = value; return this; } /** IN2.66 - Suspend Flag */ get_in2_66_suspendFlag(): string | undefined { const val = this.seg.fields[66]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN2.67 - Copay Limit Flag */ set_in2_67_copayLimitFlag(value: string | null | undefined): this { if (value != null) this.seg.fields[67] = value; return this; } /** IN2.67 - Copay Limit Flag */ get_in2_67_copayLimitFlag(): string | undefined { const val = this.seg.fields[67]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN2.68 - Stoploss Limit Flag */ set_in2_68_stoplossLimitFlag(value: string | null | undefined): this { if (value != null) this.seg.fields[68] = value; return this; } /** IN2.68 - Stoploss Limit Flag */ get_in2_68_stoplossLimitFlag(): string | undefined { const val = this.seg.fields[68]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN2.69 - Insured Organization Name and ID (set all values) */ set_in2_69_insuredOrganizationNameAndId(values: XON[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[69] = arr; return this; } /** IN2.69 - Insured Organization Name and ID (add single value) */ add_in2_69_insuredOrganizationNameAndId(value: XON | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[69]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[69] = [fv]; } } return this; } /** IN2.69 - Insured Organization Name and ID */ get_in2_69_insuredOrganizationNameAndId(): XON[] | undefined { const val = this.seg.fields[69]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXON(v)).filter((v): v is XON => v !== undefined); } /** IN2.70 - Insured Employer Organization Name and ID (set all values) */ set_in2_70_insuredEmployerOrganizationNameAndId(values: XON[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[70] = arr; return this; } /** IN2.70 - Insured Employer Organization Name and ID (add single value) */ add_in2_70_insuredEmployerOrganizationNameAndId(value: XON | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[70]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[70] = [fv]; } } return this; } /** IN2.70 - Insured Employer Organization Name and ID */ get_in2_70_insuredEmployerOrganizationNameAndId(): XON[] | undefined { const val = this.seg.fields[70]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXON(v)).filter((v): v is XON => v !== undefined); } /** IN2.71 - Race (set all values) */ set_in2_71_race(values: CE[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[71] = arr; return this; } /** IN2.71 - Race (add single value) */ add_in2_71_race(value: CE | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[71]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[71] = [fv]; } } return this; } /** IN2.71 - Race */ get_in2_71_race(): CE[] | undefined { const val = this.seg.fields[71]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromCE(v)).filter((v): v is CE => v !== undefined); } /** IN2.72 - CMS Patient's Relationship to Insured */ set_in2_72_cmsPatientsRelationshipToInsured(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[72] = fv; return this; } /** IN2.72 - CMS Patient's Relationship to Insured */ get_in2_72_cmsPatientsRelationshipToInsured(): CE | undefined { return fromCE(this.seg.fields[72]); } build(): HL7v2Segment { return this.seg; } } // ====== IN3 Segment ====== /** Get IN3.1 - Set ID - IN3 */ export function IN3_1_set_id_in3(seg: HL7v2Segment): string | undefined { const val = seg.fields[1]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN3.2.1 - ID Number */ export function IN3_2_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 1); } /** Get IN3.2.2 - Check Digit */ export function IN3_2_2_check_digit(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 2); } /** Get IN3.2.3 - Check Digit Scheme */ export function IN3_2_3_check_digit_scheme(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 3); } /** Get IN3.2.4 - Assigning Authority */ export function IN3_2_4_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 4); } /** Get IN3.2.4.1 - Namespace ID */ export function IN3_2_4_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 4, 1); } /** Get IN3.2.4.2 - Universal ID */ export function IN3_2_4_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 4, 2); } /** Get IN3.2.4.3 - Universal ID Type */ export function IN3_2_4_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 4, 3); } /** Get IN3.2.5 - Identifier Type Code */ export function IN3_2_5_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 5); } /** Get IN3.2.6 - Assigning Facility */ export function IN3_2_6_assigner(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 6); } /** Get IN3.2.6.1 - Namespace ID */ export function IN3_2_6_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 6, 1); } /** Get IN3.2.6.2 - Universal ID */ export function IN3_2_6_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 6, 2); } /** Get IN3.2.6.3 - Universal ID Type */ export function IN3_2_6_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 6, 3); } /** Get IN3.2.7 - Effective Date */ export function IN3_2_7_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 7); } /** Get IN3.2.8 - Expiration Date */ export function IN3_2_8_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 8); } /** Get IN3.2.9 - Assigning Jurisdiction */ export function IN3_2_9_jurisdiction(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 9); } /** Get IN3.2.9.1 - Identifier */ export function IN3_2_9_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 9, 1); } /** Get IN3.2.9.2 - Text */ export function IN3_2_9_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 9, 2); } /** Get IN3.2.9.3 - Name of Coding System */ export function IN3_2_9_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 9, 3); } /** Get IN3.2.9.4 - Alternate Identifier */ export function IN3_2_9_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 9, 4); } /** Get IN3.2.9.5 - Alternate Text */ export function IN3_2_9_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 9, 5); } /** Get IN3.2.9.6 - Name of Alternate Coding System */ export function IN3_2_9_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 9, 6); } /** Get IN3.2.9.7 - Coding System Version ID */ export function IN3_2_9_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 9, 7); } /** Get IN3.2.9.8 - Alternate Coding System Version ID */ export function IN3_2_9_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 9, 8); } /** Get IN3.2.9.9 - Original Text */ export function IN3_2_9_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 9, 9); } /** Get IN3.2.10 - Assigning Agency or Department */ export function IN3_2_10_department(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 10); } /** Get IN3.2.10.1 - Identifier */ export function IN3_2_10_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 10, 1); } /** Get IN3.2.10.2 - Text */ export function IN3_2_10_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 10, 2); } /** Get IN3.2.10.3 - Name of Coding System */ export function IN3_2_10_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 10, 3); } /** Get IN3.2.10.4 - Alternate Identifier */ export function IN3_2_10_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 10, 4); } /** Get IN3.2.10.5 - Alternate Text */ export function IN3_2_10_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 10, 5); } /** Get IN3.2.10.6 - Name of Alternate Coding System */ export function IN3_2_10_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 10, 6); } /** Get IN3.2.10.7 - Coding System Version ID */ export function IN3_2_10_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 10, 7); } /** Get IN3.2.10.8 - Alternate Coding System Version ID */ export function IN3_2_10_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 10, 8); } /** Get IN3.2.10.9 - Original Text */ export function IN3_2_10_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 10, 9); } /** Get IN3.3.1 - ID Number */ export function IN3_3_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 1); } /** Get IN3.3.2 - Family Name */ export function IN3_3_2_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 2); } /** Get IN3.3.2.1 - Surname */ export function IN3_3_2_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 2, 1); } /** Get IN3.3.2.2 - Own Surname Prefix */ export function IN3_3_2_2_own_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 2, 2); } /** Get IN3.3.2.3 - Own Surname */ export function IN3_3_2_3_own_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 2, 3); } /** Get IN3.3.2.4 - Surname Prefix From Partner/Spouse */ export function IN3_3_2_4_partner_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 2, 4); } /** Get IN3.3.2.5 - Surname From Partner/Spouse */ export function IN3_3_2_5_partner_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 2, 5); } /** Get IN3.3.3 - Given Name */ export function IN3_3_3_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 3); } /** Get IN3.3.4 - Second and Further Given Names or Initials Thereof */ export function IN3_3_4_additional_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 4); } /** Get IN3.3.5 - Suffix (e.g., JR or III) */ export function IN3_3_5_suffix(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 5); } /** Get IN3.3.6 - Prefix (e.g., DR) */ export function IN3_3_6_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 6); } /** Get IN3.3.7 - Degree (e.g., MD) */ export function IN3_3_7_qualification(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 7); } /** Get IN3.3.8 - Source Table */ export function IN3_3_8_source_table(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 8); } /** Get IN3.3.9 - Assigning Authority */ export function IN3_3_9_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 9); } /** Get IN3.3.9.1 - Namespace ID */ export function IN3_3_9_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 9, 1); } /** Get IN3.3.9.2 - Universal ID */ export function IN3_3_9_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 9, 2); } /** Get IN3.3.9.3 - Universal ID Type */ export function IN3_3_9_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 9, 3); } /** Get IN3.3.10 - Name Type Code */ export function IN3_3_10_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 10); } /** Get IN3.3.11 - Identifier Check Digit */ export function IN3_3_11_check_digit(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 11); } /** Get IN3.3.12 - Check Digit Scheme */ export function IN3_3_12_check_digit_scheme(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 12); } /** Get IN3.3.13 - Identifier Type Code */ export function IN3_3_13_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 13); } /** Get IN3.3.14 - Assigning Facility */ export function IN3_3_14_assigner(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 14); } /** Get IN3.3.14.1 - Namespace ID */ export function IN3_3_14_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 14, 1); } /** Get IN3.3.14.2 - Universal ID */ export function IN3_3_14_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 14, 2); } /** Get IN3.3.14.3 - Universal ID Type */ export function IN3_3_14_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 14, 3); } /** Get IN3.3.15 - Name Representation Code */ export function IN3_3_15_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 15); } /** Get IN3.3.16 - Name Context */ export function IN3_3_16_context(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 16); } /** Get IN3.3.16.1 - Identifier */ export function IN3_3_16_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 16, 1); } /** Get IN3.3.16.2 - Text */ export function IN3_3_16_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 16, 2); } /** Get IN3.3.16.3 - Name of Coding System */ export function IN3_3_16_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 16, 3); } /** Get IN3.3.16.4 - Alternate Identifier */ export function IN3_3_16_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 16, 4); } /** Get IN3.3.16.5 - Alternate Text */ export function IN3_3_16_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 16, 5); } /** Get IN3.3.16.6 - Name of Alternate Coding System */ export function IN3_3_16_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 16, 6); } /** Get IN3.3.17 - Name Validity Range */ export function IN3_3_17_period(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 17); } /** Get IN3.3.17.1 - Range Start Date/Time */ export function IN3_3_17_1_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 17, 1); } /** Get IN3.3.17.2 - Range End Date/Time */ export function IN3_3_17_2_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 17, 2); } /** Get IN3.3.18 - Name Assembly Order */ export function IN3_3_18_order(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 18); } /** Get IN3.3.19 - Effective Date */ export function IN3_3_19_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 19); } /** Get IN3.3.20 - Expiration Date */ export function IN3_3_20_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 20); } /** Get IN3.3.21 - Professional Suffix */ export function IN3_3_21_credential(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 21); } /** Get IN3.3.22 - Assigning Jurisdiction */ export function IN3_3_22_jurisdiction(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 22); } /** Get IN3.3.22.1 - Identifier */ export function IN3_3_22_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 22, 1); } /** Get IN3.3.22.2 - Text */ export function IN3_3_22_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 22, 2); } /** Get IN3.3.22.3 - Name of Coding System */ export function IN3_3_22_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 22, 3); } /** Get IN3.3.22.4 - Alternate Identifier */ export function IN3_3_22_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 22, 4); } /** Get IN3.3.22.5 - Alternate Text */ export function IN3_3_22_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 22, 5); } /** Get IN3.3.22.6 - Name of Alternate Coding System */ export function IN3_3_22_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 22, 6); } /** Get IN3.3.22.7 - Coding System Version ID */ export function IN3_3_22_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 22, 7); } /** Get IN3.3.22.8 - Alternate Coding System Version ID */ export function IN3_3_22_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 22, 8); } /** Get IN3.3.22.9 - Original Text */ export function IN3_3_22_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 22, 9); } /** Get IN3.3.23 - Assigning Agency or Department */ export function IN3_3_23_department(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 23); } /** Get IN3.3.23.1 - Identifier */ export function IN3_3_23_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 23, 1); } /** Get IN3.3.23.2 - Text */ export function IN3_3_23_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 23, 2); } /** Get IN3.3.23.3 - Name of Coding System */ export function IN3_3_23_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 23, 3); } /** Get IN3.3.23.4 - Alternate Identifier */ export function IN3_3_23_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 23, 4); } /** Get IN3.3.23.5 - Alternate Text */ export function IN3_3_23_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 23, 5); } /** Get IN3.3.23.6 - Name of Alternate Coding System */ export function IN3_3_23_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 23, 6); } /** Get IN3.3.23.7 - Coding System Version ID */ export function IN3_3_23_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 23, 7); } /** Get IN3.3.23.8 - Alternate Coding System Version ID */ export function IN3_3_23_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 23, 8); } /** Get IN3.3.23.9 - Original Text */ export function IN3_3_23_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 23, 9); } /** Get IN3.4 - Certification Required */ export function IN3_4_required(seg: HL7v2Segment): string | undefined { const val = seg.fields[4]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN3.5.1 - Money or Percentage Indicator */ export function IN3_5_1_indicator(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 1); } /** Get IN3.5.2 - Money or Percentage Quantity */ export function IN3_5_2_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 2); } /** Get IN3.5.3 - Currency Denomination */ export function IN3_5_3_currency(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 3); } /** Get IN3.6 - Certification Date/Time */ export function IN3_6_certification_date_time(seg: HL7v2Segment): string | undefined { const val = seg.fields[6]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN3.7 - Certification Modify Date/Time */ export function IN3_7_certification_modify_date_time(seg: HL7v2Segment): string | undefined { const val = seg.fields[7]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN3.8.1 - ID Number */ export function IN3_8_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 1); } /** Get IN3.8.2 - Family Name */ export function IN3_8_2_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 2); } /** Get IN3.8.2.1 - Surname */ export function IN3_8_2_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 2, 1); } /** Get IN3.8.2.2 - Own Surname Prefix */ export function IN3_8_2_2_own_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 2, 2); } /** Get IN3.8.2.3 - Own Surname */ export function IN3_8_2_3_own_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 2, 3); } /** Get IN3.8.2.4 - Surname Prefix From Partner/Spouse */ export function IN3_8_2_4_partner_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 2, 4); } /** Get IN3.8.2.5 - Surname From Partner/Spouse */ export function IN3_8_2_5_partner_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 2, 5); } /** Get IN3.8.3 - Given Name */ export function IN3_8_3_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 3); } /** Get IN3.8.4 - Second and Further Given Names or Initials Thereof */ export function IN3_8_4_additional_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 4); } /** Get IN3.8.5 - Suffix (e.g., JR or III) */ export function IN3_8_5_suffix(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 5); } /** Get IN3.8.6 - Prefix (e.g., DR) */ export function IN3_8_6_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 6); } /** Get IN3.8.7 - Degree (e.g., MD) */ export function IN3_8_7_qualification(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 7); } /** Get IN3.8.8 - Source Table */ export function IN3_8_8_source_table(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 8); } /** Get IN3.8.9 - Assigning Authority */ export function IN3_8_9_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 9); } /** Get IN3.8.9.1 - Namespace ID */ export function IN3_8_9_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 9, 1); } /** Get IN3.8.9.2 - Universal ID */ export function IN3_8_9_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 9, 2); } /** Get IN3.8.9.3 - Universal ID Type */ export function IN3_8_9_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 9, 3); } /** Get IN3.8.10 - Name Type Code */ export function IN3_8_10_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 10); } /** Get IN3.8.11 - Identifier Check Digit */ export function IN3_8_11_check_digit(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 11); } /** Get IN3.8.12 - Check Digit Scheme */ export function IN3_8_12_check_digit_scheme(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 12); } /** Get IN3.8.13 - Identifier Type Code */ export function IN3_8_13_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 13); } /** Get IN3.8.14 - Assigning Facility */ export function IN3_8_14_assigner(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 14); } /** Get IN3.8.14.1 - Namespace ID */ export function IN3_8_14_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 14, 1); } /** Get IN3.8.14.2 - Universal ID */ export function IN3_8_14_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 14, 2); } /** Get IN3.8.14.3 - Universal ID Type */ export function IN3_8_14_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 14, 3); } /** Get IN3.8.15 - Name Representation Code */ export function IN3_8_15_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 15); } /** Get IN3.8.16 - Name Context */ export function IN3_8_16_context(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 16); } /** Get IN3.8.16.1 - Identifier */ export function IN3_8_16_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 16, 1); } /** Get IN3.8.16.2 - Text */ export function IN3_8_16_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 16, 2); } /** Get IN3.8.16.3 - Name of Coding System */ export function IN3_8_16_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 16, 3); } /** Get IN3.8.16.4 - Alternate Identifier */ export function IN3_8_16_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 16, 4); } /** Get IN3.8.16.5 - Alternate Text */ export function IN3_8_16_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 16, 5); } /** Get IN3.8.16.6 - Name of Alternate Coding System */ export function IN3_8_16_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 16, 6); } /** Get IN3.8.17 - Name Validity Range */ export function IN3_8_17_period(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 17); } /** Get IN3.8.17.1 - Range Start Date/Time */ export function IN3_8_17_1_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 17, 1); } /** Get IN3.8.17.2 - Range End Date/Time */ export function IN3_8_17_2_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 17, 2); } /** Get IN3.8.18 - Name Assembly Order */ export function IN3_8_18_order(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 18); } /** Get IN3.8.19 - Effective Date */ export function IN3_8_19_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 19); } /** Get IN3.8.20 - Expiration Date */ export function IN3_8_20_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 20); } /** Get IN3.8.21 - Professional Suffix */ export function IN3_8_21_credential(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 21); } /** Get IN3.8.22 - Assigning Jurisdiction */ export function IN3_8_22_jurisdiction(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 22); } /** Get IN3.8.22.1 - Identifier */ export function IN3_8_22_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 22, 1); } /** Get IN3.8.22.2 - Text */ export function IN3_8_22_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 22, 2); } /** Get IN3.8.22.3 - Name of Coding System */ export function IN3_8_22_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 22, 3); } /** Get IN3.8.22.4 - Alternate Identifier */ export function IN3_8_22_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 22, 4); } /** Get IN3.8.22.5 - Alternate Text */ export function IN3_8_22_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 22, 5); } /** Get IN3.8.22.6 - Name of Alternate Coding System */ export function IN3_8_22_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 22, 6); } /** Get IN3.8.22.7 - Coding System Version ID */ export function IN3_8_22_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 22, 7); } /** Get IN3.8.22.8 - Alternate Coding System Version ID */ export function IN3_8_22_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 22, 8); } /** Get IN3.8.22.9 - Original Text */ export function IN3_8_22_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 22, 9); } /** Get IN3.8.23 - Assigning Agency or Department */ export function IN3_8_23_department(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 23); } /** Get IN3.8.23.1 - Identifier */ export function IN3_8_23_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 23, 1); } /** Get IN3.8.23.2 - Text */ export function IN3_8_23_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 23, 2); } /** Get IN3.8.23.3 - Name of Coding System */ export function IN3_8_23_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 23, 3); } /** Get IN3.8.23.4 - Alternate Identifier */ export function IN3_8_23_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 23, 4); } /** Get IN3.8.23.5 - Alternate Text */ export function IN3_8_23_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 23, 5); } /** Get IN3.8.23.6 - Name of Alternate Coding System */ export function IN3_8_23_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 23, 6); } /** Get IN3.8.23.7 - Coding System Version ID */ export function IN3_8_23_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 23, 7); } /** Get IN3.8.23.8 - Alternate Coding System Version ID */ export function IN3_8_23_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 23, 8); } /** Get IN3.8.23.9 - Original Text */ export function IN3_8_23_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 23, 9); } /** Get IN3.9 - Certification Begin Date */ export function IN3_9_certification_begin_date(seg: HL7v2Segment): string | undefined { const val = seg.fields[9]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN3.10 - Certification End Date */ export function IN3_10_certification_end_date(seg: HL7v2Segment): string | undefined { const val = seg.fields[10]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN3.11.1 - Day Type */ export function IN3_11_1_day_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 1); } /** Get IN3.11.2 - Number of Days */ export function IN3_11_2_days(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 2); } /** Get IN3.12.1 - Identifier */ export function IN3_12_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 1); } /** Get IN3.12.2 - Text */ export function IN3_12_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 2); } /** Get IN3.12.3 - Name of Coding System */ export function IN3_12_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 3); } /** Get IN3.12.4 - Alternate Identifier */ export function IN3_12_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 4); } /** Get IN3.12.5 - Alternate Text */ export function IN3_12_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 5); } /** Get IN3.12.6 - Name of Alternate Coding System */ export function IN3_12_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 6); } /** Get IN3.13 - Non-Concur Effective Date/Time */ export function IN3_13_non_concur_effective_date_time(seg: HL7v2Segment): string | undefined { const val = seg.fields[13]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN3.14.1 - ID Number */ export function IN3_14_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 1); } /** Get IN3.14.2 - Family Name */ export function IN3_14_2_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 2); } /** Get IN3.14.2.1 - Surname */ export function IN3_14_2_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 2, 1); } /** Get IN3.14.2.2 - Own Surname Prefix */ export function IN3_14_2_2_own_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 2, 2); } /** Get IN3.14.2.3 - Own Surname */ export function IN3_14_2_3_own_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 2, 3); } /** Get IN3.14.2.4 - Surname Prefix From Partner/Spouse */ export function IN3_14_2_4_partner_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 2, 4); } /** Get IN3.14.2.5 - Surname From Partner/Spouse */ export function IN3_14_2_5_partner_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 2, 5); } /** Get IN3.14.3 - Given Name */ export function IN3_14_3_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 3); } /** Get IN3.14.4 - Second and Further Given Names or Initials Thereof */ export function IN3_14_4_additional_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 4); } /** Get IN3.14.5 - Suffix (e.g., JR or III) */ export function IN3_14_5_suffix(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 5); } /** Get IN3.14.6 - Prefix (e.g., DR) */ export function IN3_14_6_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 6); } /** Get IN3.14.7 - Degree (e.g., MD) */ export function IN3_14_7_qualification(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 7); } /** Get IN3.14.8 - Source Table */ export function IN3_14_8_source_table(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 8); } /** Get IN3.14.9 - Assigning Authority */ export function IN3_14_9_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 9); } /** Get IN3.14.9.1 - Namespace ID */ export function IN3_14_9_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 9, 1); } /** Get IN3.14.9.2 - Universal ID */ export function IN3_14_9_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 9, 2); } /** Get IN3.14.9.3 - Universal ID Type */ export function IN3_14_9_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 9, 3); } /** Get IN3.14.10 - Name Type Code */ export function IN3_14_10_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 10); } /** Get IN3.14.11 - Identifier Check Digit */ export function IN3_14_11_check_digit(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 11); } /** Get IN3.14.12 - Check Digit Scheme */ export function IN3_14_12_check_digit_scheme(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 12); } /** Get IN3.14.13 - Identifier Type Code */ export function IN3_14_13_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 13); } /** Get IN3.14.14 - Assigning Facility */ export function IN3_14_14_assigner(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 14); } /** Get IN3.14.14.1 - Namespace ID */ export function IN3_14_14_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 14, 1); } /** Get IN3.14.14.2 - Universal ID */ export function IN3_14_14_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 14, 2); } /** Get IN3.14.14.3 - Universal ID Type */ export function IN3_14_14_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 14, 3); } /** Get IN3.14.15 - Name Representation Code */ export function IN3_14_15_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 15); } /** Get IN3.14.16 - Name Context */ export function IN3_14_16_context(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 16); } /** Get IN3.14.16.1 - Identifier */ export function IN3_14_16_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 16, 1); } /** Get IN3.14.16.2 - Text */ export function IN3_14_16_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 16, 2); } /** Get IN3.14.16.3 - Name of Coding System */ export function IN3_14_16_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 16, 3); } /** Get IN3.14.16.4 - Alternate Identifier */ export function IN3_14_16_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 16, 4); } /** Get IN3.14.16.5 - Alternate Text */ export function IN3_14_16_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 16, 5); } /** Get IN3.14.16.6 - Name of Alternate Coding System */ export function IN3_14_16_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 16, 6); } /** Get IN3.14.17 - Name Validity Range */ export function IN3_14_17_period(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 17); } /** Get IN3.14.17.1 - Range Start Date/Time */ export function IN3_14_17_1_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 17, 1); } /** Get IN3.14.17.2 - Range End Date/Time */ export function IN3_14_17_2_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 17, 2); } /** Get IN3.14.18 - Name Assembly Order */ export function IN3_14_18_order(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 18); } /** Get IN3.14.19 - Effective Date */ export function IN3_14_19_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 19); } /** Get IN3.14.20 - Expiration Date */ export function IN3_14_20_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 20); } /** Get IN3.14.21 - Professional Suffix */ export function IN3_14_21_credential(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 21); } /** Get IN3.14.22 - Assigning Jurisdiction */ export function IN3_14_22_jurisdiction(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 22); } /** Get IN3.14.22.1 - Identifier */ export function IN3_14_22_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 22, 1); } /** Get IN3.14.22.2 - Text */ export function IN3_14_22_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 22, 2); } /** Get IN3.14.22.3 - Name of Coding System */ export function IN3_14_22_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 22, 3); } /** Get IN3.14.22.4 - Alternate Identifier */ export function IN3_14_22_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 22, 4); } /** Get IN3.14.22.5 - Alternate Text */ export function IN3_14_22_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 22, 5); } /** Get IN3.14.22.6 - Name of Alternate Coding System */ export function IN3_14_22_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 22, 6); } /** Get IN3.14.22.7 - Coding System Version ID */ export function IN3_14_22_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 22, 7); } /** Get IN3.14.22.8 - Alternate Coding System Version ID */ export function IN3_14_22_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 22, 8); } /** Get IN3.14.22.9 - Original Text */ export function IN3_14_22_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 22, 9); } /** Get IN3.14.23 - Assigning Agency or Department */ export function IN3_14_23_department(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 23); } /** Get IN3.14.23.1 - Identifier */ export function IN3_14_23_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 23, 1); } /** Get IN3.14.23.2 - Text */ export function IN3_14_23_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 23, 2); } /** Get IN3.14.23.3 - Name of Coding System */ export function IN3_14_23_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 23, 3); } /** Get IN3.14.23.4 - Alternate Identifier */ export function IN3_14_23_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 23, 4); } /** Get IN3.14.23.5 - Alternate Text */ export function IN3_14_23_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 23, 5); } /** Get IN3.14.23.6 - Name of Alternate Coding System */ export function IN3_14_23_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 23, 6); } /** Get IN3.14.23.7 - Coding System Version ID */ export function IN3_14_23_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 23, 7); } /** Get IN3.14.23.8 - Alternate Coding System Version ID */ export function IN3_14_23_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 23, 8); } /** Get IN3.14.23.9 - Original Text */ export function IN3_14_23_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 23, 9); } /** Get IN3.15 - Certification Contact */ export function IN3_15_certification_contact(seg: HL7v2Segment): string | undefined { const val = seg.fields[15]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN3.16.1 - Telephone Number */ export function IN3_16_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 1); } /** Get IN3.16.2 - Telecommunication Use Code */ export function IN3_16_2_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 2); } /** Get IN3.16.3 - Telecommunication Equipment Type */ export function IN3_16_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 3); } /** Get IN3.16.4 - Email Address */ export function IN3_16_4_email(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 4); } /** Get IN3.16.5 - Country Code */ export function IN3_16_5_country_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 5); } /** Get IN3.16.6 - Area/City Code */ export function IN3_16_6_area_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 6); } /** Get IN3.16.7 - Local Number */ export function IN3_16_7_local_number(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 7); } /** Get IN3.16.8 - Extension */ export function IN3_16_8_extension(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 8); } /** Get IN3.16.9 - Any Text */ export function IN3_16_9_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 9); } /** Get IN3.16.10 - Extension Prefix */ export function IN3_16_10_extension_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 10); } /** Get IN3.16.11 - Speed Dial Code */ export function IN3_16_11_speed_dial(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 11); } /** Get IN3.16.12 - Unformatted Telephone number */ export function IN3_16_12_unformatted(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 12); } /** Get IN3.17.1 - Identifier */ export function IN3_17_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 1); } /** Get IN3.17.2 - Text */ export function IN3_17_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 2); } /** Get IN3.17.3 - Name of Coding System */ export function IN3_17_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 3); } /** Get IN3.17.4 - Alternate Identifier */ export function IN3_17_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 4); } /** Get IN3.17.5 - Alternate Text */ export function IN3_17_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 5); } /** Get IN3.17.6 - Name of Alternate Coding System */ export function IN3_17_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 6); } /** Get IN3.18.1 - Identifier */ export function IN3_18_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 1); } /** Get IN3.18.2 - Text */ export function IN3_18_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 2); } /** Get IN3.18.3 - Name of Coding System */ export function IN3_18_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 3); } /** Get IN3.18.4 - Alternate Identifier */ export function IN3_18_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 4); } /** Get IN3.18.5 - Alternate Text */ export function IN3_18_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 5); } /** Get IN3.18.6 - Name of Alternate Coding System */ export function IN3_18_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 6); } /** Get IN3.19.1 - Telephone Number */ export function IN3_19_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 1); } /** Get IN3.19.2 - Telecommunication Use Code */ export function IN3_19_2_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 2); } /** Get IN3.19.3 - Telecommunication Equipment Type */ export function IN3_19_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 3); } /** Get IN3.19.4 - Email Address */ export function IN3_19_4_email(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 4); } /** Get IN3.19.5 - Country Code */ export function IN3_19_5_country_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 5); } /** Get IN3.19.6 - Area/City Code */ export function IN3_19_6_area_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 6); } /** Get IN3.19.7 - Local Number */ export function IN3_19_7_local_number(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 7); } /** Get IN3.19.8 - Extension */ export function IN3_19_8_extension(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 8); } /** Get IN3.19.9 - Any Text */ export function IN3_19_9_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 9); } /** Get IN3.19.10 - Extension Prefix */ export function IN3_19_10_extension_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 10); } /** Get IN3.19.11 - Speed Dial Code */ export function IN3_19_11_speed_dial(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 11); } /** Get IN3.19.12 - Unformatted Telephone number */ export function IN3_19_12_unformatted(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 12); } /** Get IN3.20.1 - Certification Patient Type */ export function IN3_20_1_patient_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[20]; return getComponent(field, 1); } /** Get IN3.20.2 - Certification Required */ export function IN3_20_2_required(seg: HL7v2Segment): string | undefined { const field = seg.fields[20]; return getComponent(field, 2); } /** Get IN3.20.3 - Date/Time Certification Required */ export function IN3_20_3_required_at(seg: HL7v2Segment): string | undefined { const field = seg.fields[20]; return getComponent(field, 3); } /** Get IN3.21 - Case Manager */ export function IN3_21_case_manager(seg: HL7v2Segment): string | undefined { const val = seg.fields[21]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN3.22 - Second Opinion Date */ export function IN3_22_second_opinion_date(seg: HL7v2Segment): string | undefined { const val = seg.fields[22]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN3.23 - Second Opinion Status */ export function IN3_23_second_opinion_status(seg: HL7v2Segment): string | undefined { const val = seg.fields[23]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN3.24 - Second Opinion Documentation Received */ export function IN3_24_second_opinion_documentation_received(seg: HL7v2Segment): string | undefined { const val = seg.fields[24]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get IN3.25.1 - ID Number */ export function IN3_25_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 1); } /** Get IN3.25.2 - Family Name */ export function IN3_25_2_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 2); } /** Get IN3.25.2.1 - Surname */ export function IN3_25_2_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 2, 1); } /** Get IN3.25.2.2 - Own Surname Prefix */ export function IN3_25_2_2_own_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 2, 2); } /** Get IN3.25.2.3 - Own Surname */ export function IN3_25_2_3_own_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 2, 3); } /** Get IN3.25.2.4 - Surname Prefix From Partner/Spouse */ export function IN3_25_2_4_partner_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 2, 4); } /** Get IN3.25.2.5 - Surname From Partner/Spouse */ export function IN3_25_2_5_partner_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 2, 5); } /** Get IN3.25.3 - Given Name */ export function IN3_25_3_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 3); } /** Get IN3.25.4 - Second and Further Given Names or Initials Thereof */ export function IN3_25_4_additional_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 4); } /** Get IN3.25.5 - Suffix (e.g., JR or III) */ export function IN3_25_5_suffix(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 5); } /** Get IN3.25.6 - Prefix (e.g., DR) */ export function IN3_25_6_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 6); } /** Get IN3.25.7 - Degree (e.g., MD) */ export function IN3_25_7_qualification(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 7); } /** Get IN3.25.8 - Source Table */ export function IN3_25_8_source_table(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 8); } /** Get IN3.25.9 - Assigning Authority */ export function IN3_25_9_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 9); } /** Get IN3.25.9.1 - Namespace ID */ export function IN3_25_9_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 9, 1); } /** Get IN3.25.9.2 - Universal ID */ export function IN3_25_9_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 9, 2); } /** Get IN3.25.9.3 - Universal ID Type */ export function IN3_25_9_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 9, 3); } /** Get IN3.25.10 - Name Type Code */ export function IN3_25_10_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 10); } /** Get IN3.25.11 - Identifier Check Digit */ export function IN3_25_11_check_digit(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 11); } /** Get IN3.25.12 - Check Digit Scheme */ export function IN3_25_12_check_digit_scheme(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 12); } /** Get IN3.25.13 - Identifier Type Code */ export function IN3_25_13_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 13); } /** Get IN3.25.14 - Assigning Facility */ export function IN3_25_14_assigner(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 14); } /** Get IN3.25.14.1 - Namespace ID */ export function IN3_25_14_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 14, 1); } /** Get IN3.25.14.2 - Universal ID */ export function IN3_25_14_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 14, 2); } /** Get IN3.25.14.3 - Universal ID Type */ export function IN3_25_14_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 14, 3); } /** Get IN3.25.15 - Name Representation Code */ export function IN3_25_15_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 15); } /** Get IN3.25.16 - Name Context */ export function IN3_25_16_context(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 16); } /** Get IN3.25.16.1 - Identifier */ export function IN3_25_16_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 16, 1); } /** Get IN3.25.16.2 - Text */ export function IN3_25_16_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 16, 2); } /** Get IN3.25.16.3 - Name of Coding System */ export function IN3_25_16_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 16, 3); } /** Get IN3.25.16.4 - Alternate Identifier */ export function IN3_25_16_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 16, 4); } /** Get IN3.25.16.5 - Alternate Text */ export function IN3_25_16_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 16, 5); } /** Get IN3.25.16.6 - Name of Alternate Coding System */ export function IN3_25_16_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 16, 6); } /** Get IN3.25.17 - Name Validity Range */ export function IN3_25_17_period(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 17); } /** Get IN3.25.17.1 - Range Start Date/Time */ export function IN3_25_17_1_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 17, 1); } /** Get IN3.25.17.2 - Range End Date/Time */ export function IN3_25_17_2_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 17, 2); } /** Get IN3.25.18 - Name Assembly Order */ export function IN3_25_18_order(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 18); } /** Get IN3.25.19 - Effective Date */ export function IN3_25_19_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 19); } /** Get IN3.25.20 - Expiration Date */ export function IN3_25_20_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 20); } /** Get IN3.25.21 - Professional Suffix */ export function IN3_25_21_credential(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 21); } /** Get IN3.25.22 - Assigning Jurisdiction */ export function IN3_25_22_jurisdiction(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 22); } /** Get IN3.25.22.1 - Identifier */ export function IN3_25_22_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 22, 1); } /** Get IN3.25.22.2 - Text */ export function IN3_25_22_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 22, 2); } /** Get IN3.25.22.3 - Name of Coding System */ export function IN3_25_22_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 22, 3); } /** Get IN3.25.22.4 - Alternate Identifier */ export function IN3_25_22_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 22, 4); } /** Get IN3.25.22.5 - Alternate Text */ export function IN3_25_22_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 22, 5); } /** Get IN3.25.22.6 - Name of Alternate Coding System */ export function IN3_25_22_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 22, 6); } /** Get IN3.25.22.7 - Coding System Version ID */ export function IN3_25_22_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 22, 7); } /** Get IN3.25.22.8 - Alternate Coding System Version ID */ export function IN3_25_22_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 22, 8); } /** Get IN3.25.22.9 - Original Text */ export function IN3_25_22_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 22, 9); } /** Get IN3.25.23 - Assigning Agency or Department */ export function IN3_25_23_department(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 23); } /** Get IN3.25.23.1 - Identifier */ export function IN3_25_23_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 23, 1); } /** Get IN3.25.23.2 - Text */ export function IN3_25_23_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 23, 2); } /** Get IN3.25.23.3 - Name of Coding System */ export function IN3_25_23_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 23, 3); } /** Get IN3.25.23.4 - Alternate Identifier */ export function IN3_25_23_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 23, 4); } /** Get IN3.25.23.5 - Alternate Text */ export function IN3_25_23_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 23, 5); } /** Get IN3.25.23.6 - Name of Alternate Coding System */ export function IN3_25_23_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 23, 6); } /** Get IN3.25.23.7 - Coding System Version ID */ export function IN3_25_23_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 23, 7); } /** Get IN3.25.23.8 - Alternate Coding System Version ID */ export function IN3_25_23_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 23, 8); } /** Get IN3.25.23.9 - Original Text */ export function IN3_25_23_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 23, 9); } export class IN3Builder { private seg: HL7v2Segment = { segment: "IN3", fields: {} }; /** IN3.1 - Set ID - IN3 */ set_in3_1_setIdIn3(value: string | null | undefined): this { if (value != null) this.seg.fields[1] = value; return this; } /** IN3.1 - Set ID - IN3 */ get_in3_1_setIdIn3(): string | undefined { const val = this.seg.fields[1]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN3.2 - Certification Number */ set_in3_2_certificationNumber(value: CX | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[2] = fv; return this; } /** IN3.2 - Certification Number */ get_in3_2_certificationNumber(): CX | undefined { return fromCX(this.seg.fields[2]); } /** IN3.3 - Certified By (set all values) */ set_in3_3_certifiedBy(values: XCN[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[3] = arr; return this; } /** IN3.3 - Certified By (add single value) */ add_in3_3_certifiedBy(value: XCN | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[3]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[3] = [fv]; } } return this; } /** IN3.3 - Certified By */ get_in3_3_certifiedBy(): XCN[] | undefined { const val = this.seg.fields[3]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXCN(v)).filter((v): v is XCN => v !== undefined); } /** IN3.4 - Certification Required */ set_in3_4_required(value: string | null | undefined): this { if (value != null) this.seg.fields[4] = value; return this; } /** IN3.4 - Certification Required */ get_in3_4_required(): string | undefined { const val = this.seg.fields[4]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN3.5 - Penalty */ set_in3_5_penalty(value: MOP | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[5] = fv; return this; } /** IN3.5 - Penalty */ get_in3_5_penalty(): MOP | undefined { return fromMOP(this.seg.fields[5]); } /** IN3.6 - Certification Date/Time */ set_in3_6_certificationDateTime(value: string | null | undefined): this { if (value != null) this.seg.fields[6] = value; return this; } /** IN3.6 - Certification Date/Time */ get_in3_6_certificationDateTime(): string | undefined { const val = this.seg.fields[6]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN3.7 - Certification Modify Date/Time */ set_in3_7_certificationModifyDateTime(value: string | null | undefined): this { if (value != null) this.seg.fields[7] = value; return this; } /** IN3.7 - Certification Modify Date/Time */ get_in3_7_certificationModifyDateTime(): string | undefined { const val = this.seg.fields[7]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN3.8 - Operator (set all values) */ set_in3_8_operator(values: XCN[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[8] = arr; return this; } /** IN3.8 - Operator (add single value) */ add_in3_8_operator(value: XCN | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[8]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[8] = [fv]; } } return this; } /** IN3.8 - Operator */ get_in3_8_operator(): XCN[] | undefined { const val = this.seg.fields[8]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXCN(v)).filter((v): v is XCN => v !== undefined); } /** IN3.9 - Certification Begin Date */ set_in3_9_certificationBeginDate(value: string | null | undefined): this { if (value != null) this.seg.fields[9] = value; return this; } /** IN3.9 - Certification Begin Date */ get_in3_9_certificationBeginDate(): string | undefined { const val = this.seg.fields[9]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN3.10 - Certification End Date */ set_in3_10_certificationEndDate(value: string | null | undefined): this { if (value != null) this.seg.fields[10] = value; return this; } /** IN3.10 - Certification End Date */ get_in3_10_certificationEndDate(): string | undefined { const val = this.seg.fields[10]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN3.11 - Days */ set_in3_11_days(value: DTN | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[11] = fv; return this; } /** IN3.11 - Days */ get_in3_11_days(): DTN | undefined { return fromDTN(this.seg.fields[11]); } /** IN3.12 - Non-Concur Code/Description */ set_in3_12_nonConcurCodeDescription(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[12] = fv; return this; } /** IN3.12 - Non-Concur Code/Description */ get_in3_12_nonConcurCodeDescription(): CE | undefined { return fromCE(this.seg.fields[12]); } /** IN3.13 - Non-Concur Effective Date/Time */ set_in3_13_nonConcurEffectiveDateTime(value: string | null | undefined): this { if (value != null) this.seg.fields[13] = value; return this; } /** IN3.13 - Non-Concur Effective Date/Time */ get_in3_13_nonConcurEffectiveDateTime(): string | undefined { const val = this.seg.fields[13]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN3.14 - Physician Reviewer (set all values) */ set_in3_14_physicianReviewer(values: XCN[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[14] = arr; return this; } /** IN3.14 - Physician Reviewer (add single value) */ add_in3_14_physicianReviewer(value: XCN | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[14]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[14] = [fv]; } } return this; } /** IN3.14 - Physician Reviewer */ get_in3_14_physicianReviewer(): XCN[] | undefined { const val = this.seg.fields[14]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXCN(v)).filter((v): v is XCN => v !== undefined); } /** IN3.15 - Certification Contact */ set_in3_15_certificationContact(value: string | null | undefined): this { if (value != null) this.seg.fields[15] = value; return this; } /** IN3.15 - Certification Contact */ get_in3_15_certificationContact(): string | undefined { const val = this.seg.fields[15]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN3.16 - Certification Contact Phone Number (set all values) */ set_in3_16_certificationContactPhoneNumber(values: XTN[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[16] = arr; return this; } /** IN3.16 - Certification Contact Phone Number (add single value) */ add_in3_16_certificationContactPhoneNumber(value: XTN | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[16]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[16] = [fv]; } } return this; } /** IN3.16 - Certification Contact Phone Number */ get_in3_16_certificationContactPhoneNumber(): XTN[] | undefined { const val = this.seg.fields[16]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXTN(v)).filter((v): v is XTN => v !== undefined); } /** IN3.17 - Appeal Reason */ set_in3_17_appealReason(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[17] = fv; return this; } /** IN3.17 - Appeal Reason */ get_in3_17_appealReason(): CE | undefined { return fromCE(this.seg.fields[17]); } /** IN3.18 - Certification Agency */ set_in3_18_certificationAgency(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[18] = fv; return this; } /** IN3.18 - Certification Agency */ get_in3_18_certificationAgency(): CE | undefined { return fromCE(this.seg.fields[18]); } /** IN3.19 - Certification Agency Phone Number (set all values) */ set_in3_19_certificationAgencyPhoneNumber(values: XTN[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[19] = arr; return this; } /** IN3.19 - Certification Agency Phone Number (add single value) */ add_in3_19_certificationAgencyPhoneNumber(value: XTN | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[19]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[19] = [fv]; } } return this; } /** IN3.19 - Certification Agency Phone Number */ get_in3_19_certificationAgencyPhoneNumber(): XTN[] | undefined { const val = this.seg.fields[19]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXTN(v)).filter((v): v is XTN => v !== undefined); } /** IN3.20 - Pre-Certification Requirement (set all values) */ set_in3_20_preCertificationRequirement(values: ICD[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[20] = arr; return this; } /** IN3.20 - Pre-Certification Requirement (add single value) */ add_in3_20_preCertificationRequirement(value: ICD | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[20]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[20] = [fv]; } } return this; } /** IN3.20 - Pre-Certification Requirement */ get_in3_20_preCertificationRequirement(): ICD[] | undefined { const val = this.seg.fields[20]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromICD(v)).filter((v): v is ICD => v !== undefined); } /** IN3.21 - Case Manager */ set_in3_21_caseManager(value: string | null | undefined): this { if (value != null) this.seg.fields[21] = value; return this; } /** IN3.21 - Case Manager */ get_in3_21_caseManager(): string | undefined { const val = this.seg.fields[21]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN3.22 - Second Opinion Date */ set_in3_22_secondOpinionDate(value: string | null | undefined): this { if (value != null) this.seg.fields[22] = value; return this; } /** IN3.22 - Second Opinion Date */ get_in3_22_secondOpinionDate(): string | undefined { const val = this.seg.fields[22]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN3.23 - Second Opinion Status */ set_in3_23_secondOpinionStatus(value: string | null | undefined): this { if (value != null) this.seg.fields[23] = value; return this; } /** IN3.23 - Second Opinion Status */ get_in3_23_secondOpinionStatus(): string | undefined { const val = this.seg.fields[23]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN3.24 - Second Opinion Documentation Received */ set_in3_24_secondOpinionDocumentationReceived(value: string | null | undefined): this { if (value != null) this.seg.fields[24] = value; return this; } /** IN3.24 - Second Opinion Documentation Received */ get_in3_24_secondOpinionDocumentationReceived(): string | undefined { const val = this.seg.fields[24]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** IN3.25 - Second Opinion Physician (set all values) */ set_in3_25_secondOpinionPhysician(values: XCN[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[25] = arr; return this; } /** IN3.25 - Second Opinion Physician (add single value) */ add_in3_25_secondOpinionPhysician(value: XCN | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[25]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[25] = [fv]; } } return this; } /** IN3.25 - Second Opinion Physician */ get_in3_25_secondOpinionPhysician(): XCN[] | undefined { const val = this.seg.fields[25]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXCN(v)).filter((v): v is XCN => v !== undefined); } build(): HL7v2Segment { return this.seg; } } // ====== MSH Segment ====== /** Get MSH.1 - Field Separator */ export function MSH_1_field_separator(seg: HL7v2Segment): string | undefined { const val = seg.fields[1]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get MSH.2 - Encoding Characters */ export function MSH_2_encoding_characters(seg: HL7v2Segment): string | undefined { const val = seg.fields[2]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get MSH.3.1 - Namespace ID */ export function MSH_3_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 1); } /** Get MSH.3.2 - Universal ID */ export function MSH_3_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 2); } /** Get MSH.3.3 - Universal ID Type */ export function MSH_3_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 3); } /** Get MSH.4.1 - Namespace ID */ export function MSH_4_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 1); } /** Get MSH.4.2 - Universal ID */ export function MSH_4_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 2); } /** Get MSH.4.3 - Universal ID Type */ export function MSH_4_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 3); } /** Get MSH.5.1 - Namespace ID */ export function MSH_5_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 1); } /** Get MSH.5.2 - Universal ID */ export function MSH_5_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 2); } /** Get MSH.5.3 - Universal ID Type */ export function MSH_5_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 3); } /** Get MSH.6.1 - Namespace ID */ export function MSH_6_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 1); } /** Get MSH.6.2 - Universal ID */ export function MSH_6_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 2); } /** Get MSH.6.3 - Universal ID Type */ export function MSH_6_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 3); } /** Get MSH.7 - Date/Time Of Message */ export function MSH_7_message_date_time(seg: HL7v2Segment): string | undefined { const val = seg.fields[7]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get MSH.8 - Security */ export function MSH_8_security(seg: HL7v2Segment): string | undefined { const val = seg.fields[8]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get MSH.9.1 - Message Code */ export function MSH_9_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 1); } /** Get MSH.9.2 - Trigger Event */ export function MSH_9_2_event(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 2); } /** Get MSH.9.3 - Message Structure */ export function MSH_9_3_structure(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 3); } /** Get MSH.10 - Message Control ID */ export function MSH_10_message_control_id(seg: HL7v2Segment): string | undefined { const val = seg.fields[10]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get MSH.11.1 - Processing ID */ export function MSH_11_1_processing_id(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 1); } /** Get MSH.11.2 - Processing Mode */ export function MSH_11_2_processing_mode(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 2); } /** Get MSH.12.1 - Version ID */ export function MSH_12_1_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 1); } /** Get MSH.12.2 - Internationalization Code */ export function MSH_12_2_locale(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 2); } /** Get MSH.12.2.1 - Identifier */ export function MSH_12_2_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 2, 1); } /** Get MSH.12.2.2 - Text */ export function MSH_12_2_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 2, 2); } /** Get MSH.12.2.3 - Name of Coding System */ export function MSH_12_2_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 2, 3); } /** Get MSH.12.2.4 - Alternate Identifier */ export function MSH_12_2_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 2, 4); } /** Get MSH.12.2.5 - Alternate Text */ export function MSH_12_2_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 2, 5); } /** Get MSH.12.2.6 - Name of Alternate Coding System */ export function MSH_12_2_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 2, 6); } /** Get MSH.12.3 - International Version ID */ export function MSH_12_3_international_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 3); } /** Get MSH.12.3.1 - Identifier */ export function MSH_12_3_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 3, 1); } /** Get MSH.12.3.2 - Text */ export function MSH_12_3_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 3, 2); } /** Get MSH.12.3.3 - Name of Coding System */ export function MSH_12_3_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 3, 3); } /** Get MSH.12.3.4 - Alternate Identifier */ export function MSH_12_3_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 3, 4); } /** Get MSH.12.3.5 - Alternate Text */ export function MSH_12_3_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 3, 5); } /** Get MSH.12.3.6 - Name of Alternate Coding System */ export function MSH_12_3_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 3, 6); } /** Get MSH.13 - Sequence Number */ export function MSH_13_sequence_number(seg: HL7v2Segment): string | undefined { const val = seg.fields[13]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get MSH.14 - Continuation Pointer */ export function MSH_14_continuation_pointer(seg: HL7v2Segment): string | undefined { const val = seg.fields[14]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get MSH.15 - Accept Acknowledgment Type */ export function MSH_15_accept_acknowledgment_type(seg: HL7v2Segment): string | undefined { const val = seg.fields[15]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get MSH.16 - Application Acknowledgment Type */ export function MSH_16_application_acknowledgment_type(seg: HL7v2Segment): string | undefined { const val = seg.fields[16]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get MSH.17 - Country Code */ export function MSH_17_country_code(seg: HL7v2Segment): string | undefined { const val = seg.fields[17]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get MSH.18 - Character Set */ export function MSH_18_character_set(seg: HL7v2Segment): string | undefined { const val = seg.fields[18]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get MSH.19.1 - Identifier */ export function MSH_19_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 1); } /** Get MSH.19.2 - Text */ export function MSH_19_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 2); } /** Get MSH.19.3 - Name of Coding System */ export function MSH_19_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 3); } /** Get MSH.19.4 - Alternate Identifier */ export function MSH_19_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 4); } /** Get MSH.19.5 - Alternate Text */ export function MSH_19_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 5); } /** Get MSH.19.6 - Name of Alternate Coding System */ export function MSH_19_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 6); } /** Get MSH.20 - Alternate Character Set Handling Scheme */ export function MSH_20_alternate_character_set_handling_scheme(seg: HL7v2Segment): string | undefined { const val = seg.fields[20]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get MSH.21.1 - Entity Identifier */ export function MSH_21_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[21]; return getComponent(field, 1); } /** Get MSH.21.2 - Namespace ID */ export function MSH_21_2_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[21]; return getComponent(field, 2); } /** Get MSH.21.3 - Universal ID */ export function MSH_21_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[21]; return getComponent(field, 3); } /** Get MSH.21.4 - Universal ID Type */ export function MSH_21_4_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[21]; return getComponent(field, 4); } export class MSHBuilder { private seg: HL7v2Segment = { segment: "MSH", fields: {} }; /** MSH.1 - Field Separator */ set_msh_1_fieldSeparator(value: string | null | undefined): this { if (value != null) this.seg.fields[1] = value; return this; } /** MSH.1 - Field Separator */ get_msh_1_fieldSeparator(): string | undefined { const val = this.seg.fields[1]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** MSH.2 - Encoding Characters */ set_msh_2_encodingCharacters(value: string | null | undefined): this { if (value != null) this.seg.fields[2] = value; return this; } /** MSH.2 - Encoding Characters */ get_msh_2_encodingCharacters(): string | undefined { const val = this.seg.fields[2]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** MSH.3 - Sending Application */ set_msh_3_sendingApplication(value: HD | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[3] = fv; return this; } /** MSH.3 - Sending Application */ get_msh_3_sendingApplication(): HD | undefined { return fromHD(this.seg.fields[3]); } /** MSH.4 - Sending Facility */ set_msh_4_sendingFacility(value: HD | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[4] = fv; return this; } /** MSH.4 - Sending Facility */ get_msh_4_sendingFacility(): HD | undefined { return fromHD(this.seg.fields[4]); } /** MSH.5 - Receiving Application */ set_msh_5_receivingApplication(value: HD | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[5] = fv; return this; } /** MSH.5 - Receiving Application */ get_msh_5_receivingApplication(): HD | undefined { return fromHD(this.seg.fields[5]); } /** MSH.6 - Receiving Facility */ set_msh_6_receivingFacility(value: HD | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[6] = fv; return this; } /** MSH.6 - Receiving Facility */ get_msh_6_receivingFacility(): HD | undefined { return fromHD(this.seg.fields[6]); } /** MSH.7 - Date/Time Of Message */ set_msh_7_messageDateTime(value: string | null | undefined): this { if (value != null) this.seg.fields[7] = value; return this; } /** MSH.7 - Date/Time Of Message */ get_msh_7_messageDateTime(): string | undefined { const val = this.seg.fields[7]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** MSH.8 - Security */ set_msh_8_security(value: string | null | undefined): this { if (value != null) this.seg.fields[8] = value; return this; } /** MSH.8 - Security */ get_msh_8_security(): string | undefined { const val = this.seg.fields[8]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** MSH.9 - Message Type */ set_msh_9_messageType(value: MSG | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[9] = fv; return this; } /** MSH.9 - Message Type */ get_msh_9_messageType(): MSG | undefined { return fromMSG(this.seg.fields[9]); } /** MSH.10 - Message Control ID */ set_msh_10_messageControlId(value: string | null | undefined): this { if (value != null) this.seg.fields[10] = value; return this; } /** MSH.10 - Message Control ID */ get_msh_10_messageControlId(): string | undefined { const val = this.seg.fields[10]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** MSH.11 - Processing ID */ set_msh_11_processingId(value: PT | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[11] = fv; return this; } /** MSH.11 - Processing ID */ get_msh_11_processingId(): PT | undefined { return fromPT(this.seg.fields[11]); } /** MSH.12 - Version ID */ set_msh_12_version(value: VID | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[12] = fv; return this; } /** MSH.12 - Version ID */ get_msh_12_version(): VID | undefined { return fromVID(this.seg.fields[12]); } /** MSH.13 - Sequence Number */ set_msh_13_sequenceNumber(value: string | null | undefined): this { if (value != null) this.seg.fields[13] = value; return this; } /** MSH.13 - Sequence Number */ get_msh_13_sequenceNumber(): string | undefined { const val = this.seg.fields[13]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** MSH.14 - Continuation Pointer */ set_msh_14_continuationPointer(value: string | null | undefined): this { if (value != null) this.seg.fields[14] = value; return this; } /** MSH.14 - Continuation Pointer */ get_msh_14_continuationPointer(): string | undefined { const val = this.seg.fields[14]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** MSH.15 - Accept Acknowledgment Type */ set_msh_15_acceptAcknowledgmentType(value: string | null | undefined): this { if (value != null) this.seg.fields[15] = value; return this; } /** MSH.15 - Accept Acknowledgment Type */ get_msh_15_acceptAcknowledgmentType(): string | undefined { const val = this.seg.fields[15]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** MSH.16 - Application Acknowledgment Type */ set_msh_16_applicationAcknowledgmentType(value: string | null | undefined): this { if (value != null) this.seg.fields[16] = value; return this; } /** MSH.16 - Application Acknowledgment Type */ get_msh_16_applicationAcknowledgmentType(): string | undefined { const val = this.seg.fields[16]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** MSH.17 - Country Code */ set_msh_17_countryCode(value: string | null | undefined): this { if (value != null) this.seg.fields[17] = value; return this; } /** MSH.17 - Country Code */ get_msh_17_countryCode(): string | undefined { const val = this.seg.fields[17]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** MSH.18 - Character Set */ set_msh_18_characterSet(value: string | null | undefined): this { if (value != null) this.seg.fields[18] = value; return this; } /** MSH.18 - Character Set */ get_msh_18_characterSet(): string | undefined { const val = this.seg.fields[18]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** MSH.19 - Principal Language Of Message */ set_msh_19_principalLanguageOfMessage(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[19] = fv; return this; } /** MSH.19 - Principal Language Of Message */ get_msh_19_principalLanguageOfMessage(): CE | undefined { return fromCE(this.seg.fields[19]); } /** MSH.20 - Alternate Character Set Handling Scheme */ set_msh_20_alternateCharacterSetHandlingScheme(value: string | null | undefined): this { if (value != null) this.seg.fields[20] = value; return this; } /** MSH.20 - Alternate Character Set Handling Scheme */ get_msh_20_alternateCharacterSetHandlingScheme(): string | undefined { const val = this.seg.fields[20]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** MSH.21 - Message Profile Identifier (set all values) */ set_msh_21_messageProfileIdentifier(values: EI[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[21] = arr; return this; } /** MSH.21 - Message Profile Identifier (add single value) */ add_msh_21_messageProfileIdentifier(value: EI | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[21]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[21] = [fv]; } } return this; } /** MSH.21 - Message Profile Identifier */ get_msh_21_messageProfileIdentifier(): EI[] | undefined { const val = this.seg.fields[21]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromEI(v)).filter((v): v is EI => v !== undefined); } build(): HL7v2Segment { return this.seg; } } // ====== NK1 Segment ====== /** Get NK1.1 - Set ID - NK1 */ export function NK1_1_set_id_nk1(seg: HL7v2Segment): string | undefined { const val = seg.fields[1]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get NK1.2.1 - Family Name */ export function NK1_2_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 1); } /** Get NK1.2.1.1 - Surname */ export function NK1_2_1_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 1, 1); } /** Get NK1.2.1.2 - Own Surname Prefix */ export function NK1_2_1_2_own_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 1, 2); } /** Get NK1.2.1.3 - Own Surname */ export function NK1_2_1_3_own_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 1, 3); } /** Get NK1.2.1.4 - Surname Prefix From Partner/Spouse */ export function NK1_2_1_4_partner_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 1, 4); } /** Get NK1.2.1.5 - Surname From Partner/Spouse */ export function NK1_2_1_5_partner_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 1, 5); } /** Get NK1.2.2 - Given Name */ export function NK1_2_2_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 2); } /** Get NK1.2.3 - Second and Further Given Names or Initials Thereof */ export function NK1_2_3_additional_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 3); } /** Get NK1.2.4 - Suffix (e.g., JR or III) */ export function NK1_2_4_suffix(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 4); } /** Get NK1.2.5 - Prefix (e.g., DR) */ export function NK1_2_5_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 5); } /** Get NK1.2.6 - Degree (e.g., MD) */ export function NK1_2_6_qualification(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 6); } /** Get NK1.2.7 - Name Type Code */ export function NK1_2_7_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 7); } /** Get NK1.2.8 - Name Representation Code */ export function NK1_2_8_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 8); } /** Get NK1.2.9 - Name Context */ export function NK1_2_9_context(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 9); } /** Get NK1.2.9.1 - Identifier */ export function NK1_2_9_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 9, 1); } /** Get NK1.2.9.2 - Text */ export function NK1_2_9_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 9, 2); } /** Get NK1.2.9.3 - Name of Coding System */ export function NK1_2_9_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 9, 3); } /** Get NK1.2.9.4 - Alternate Identifier */ export function NK1_2_9_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 9, 4); } /** Get NK1.2.9.5 - Alternate Text */ export function NK1_2_9_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 9, 5); } /** Get NK1.2.9.6 - Name of Alternate Coding System */ export function NK1_2_9_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 9, 6); } /** Get NK1.2.10 - Name Validity Range */ export function NK1_2_10_period(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 10); } /** Get NK1.2.10.1 - Range Start Date/Time */ export function NK1_2_10_1_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 10, 1); } /** Get NK1.2.10.2 - Range End Date/Time */ export function NK1_2_10_2_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 10, 2); } /** Get NK1.2.11 - Name Assembly Order */ export function NK1_2_11_order(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 11); } /** Get NK1.2.12 - Effective Date */ export function NK1_2_12_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 12); } /** Get NK1.2.13 - Expiration Date */ export function NK1_2_13_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 13); } /** Get NK1.2.14 - Professional Suffix */ export function NK1_2_14_credential(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 14); } /** Get NK1.3.1 - Identifier */ export function NK1_3_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 1); } /** Get NK1.3.2 - Text */ export function NK1_3_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 2); } /** Get NK1.3.3 - Name of Coding System */ export function NK1_3_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 3); } /** Get NK1.3.4 - Alternate Identifier */ export function NK1_3_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 4); } /** Get NK1.3.5 - Alternate Text */ export function NK1_3_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 5); } /** Get NK1.3.6 - Name of Alternate Coding System */ export function NK1_3_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 6); } /** Get NK1.4.1 - Street Address */ export function NK1_4_1_line1(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 1); } /** Get NK1.4.1.1 - Street or Mailing Address */ export function NK1_4_1_1_line(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 1, 1); } /** Get NK1.4.1.2 - Street Name */ export function NK1_4_1_2_street_name(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 1, 2); } /** Get NK1.4.1.3 - Dwelling Number */ export function NK1_4_1_3_house_number(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 1, 3); } /** Get NK1.4.2 - Other Designation */ export function NK1_4_2_line2(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 2); } /** Get NK1.4.3 - City */ export function NK1_4_3_city(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 3); } /** Get NK1.4.4 - State or Province */ export function NK1_4_4_state(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 4); } /** Get NK1.4.5 - Zip or Postal Code */ export function NK1_4_5_postal_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 5); } /** Get NK1.4.6 - Country */ export function NK1_4_6_country(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 6); } /** Get NK1.4.7 - Address Type */ export function NK1_4_7_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 7); } /** Get NK1.4.8 - Other Geographic Designation */ export function NK1_4_8_additional_locator(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 8); } /** Get NK1.4.9 - County/Parish Code */ export function NK1_4_9_district(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 9); } /** Get NK1.4.10 - Census Tract */ export function NK1_4_10_census_tract(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 10); } /** Get NK1.4.11 - Address Representation Code */ export function NK1_4_11_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 11); } /** Get NK1.4.12 - Address Validity Range */ export function NK1_4_12_period(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 12); } /** Get NK1.4.12.1 - Range Start Date/Time */ export function NK1_4_12_1_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 12, 1); } /** Get NK1.4.12.2 - Range End Date/Time */ export function NK1_4_12_2_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 12, 2); } /** Get NK1.4.13 - Effective Date */ export function NK1_4_13_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 13); } /** Get NK1.4.14 - Expiration Date */ export function NK1_4_14_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 14); } /** Get NK1.5.1 - Telephone Number */ export function NK1_5_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 1); } /** Get NK1.5.2 - Telecommunication Use Code */ export function NK1_5_2_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 2); } /** Get NK1.5.3 - Telecommunication Equipment Type */ export function NK1_5_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 3); } /** Get NK1.5.4 - Email Address */ export function NK1_5_4_email(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 4); } /** Get NK1.5.5 - Country Code */ export function NK1_5_5_country_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 5); } /** Get NK1.5.6 - Area/City Code */ export function NK1_5_6_area_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 6); } /** Get NK1.5.7 - Local Number */ export function NK1_5_7_local_number(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 7); } /** Get NK1.5.8 - Extension */ export function NK1_5_8_extension(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 8); } /** Get NK1.5.9 - Any Text */ export function NK1_5_9_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 9); } /** Get NK1.5.10 - Extension Prefix */ export function NK1_5_10_extension_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 10); } /** Get NK1.5.11 - Speed Dial Code */ export function NK1_5_11_speed_dial(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 11); } /** Get NK1.5.12 - Unformatted Telephone number */ export function NK1_5_12_unformatted(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 12); } /** Get NK1.6.1 - Telephone Number */ export function NK1_6_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 1); } /** Get NK1.6.2 - Telecommunication Use Code */ export function NK1_6_2_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 2); } /** Get NK1.6.3 - Telecommunication Equipment Type */ export function NK1_6_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 3); } /** Get NK1.6.4 - Email Address */ export function NK1_6_4_email(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 4); } /** Get NK1.6.5 - Country Code */ export function NK1_6_5_country_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 5); } /** Get NK1.6.6 - Area/City Code */ export function NK1_6_6_area_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 6); } /** Get NK1.6.7 - Local Number */ export function NK1_6_7_local_number(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 7); } /** Get NK1.6.8 - Extension */ export function NK1_6_8_extension(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 8); } /** Get NK1.6.9 - Any Text */ export function NK1_6_9_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 9); } /** Get NK1.6.10 - Extension Prefix */ export function NK1_6_10_extension_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 10); } /** Get NK1.6.11 - Speed Dial Code */ export function NK1_6_11_speed_dial(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 11); } /** Get NK1.6.12 - Unformatted Telephone number */ export function NK1_6_12_unformatted(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 12); } /** Get NK1.7.1 - Identifier */ export function NK1_7_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 1); } /** Get NK1.7.2 - Text */ export function NK1_7_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 2); } /** Get NK1.7.3 - Name of Coding System */ export function NK1_7_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 3); } /** Get NK1.7.4 - Alternate Identifier */ export function NK1_7_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 4); } /** Get NK1.7.5 - Alternate Text */ export function NK1_7_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 5); } /** Get NK1.7.6 - Name of Alternate Coding System */ export function NK1_7_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 6); } /** Get NK1.8 - Start Date */ export function NK1_8_start_date(seg: HL7v2Segment): string | undefined { const val = seg.fields[8]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get NK1.9 - End Date */ export function NK1_9_end_date(seg: HL7v2Segment): string | undefined { const val = seg.fields[9]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get NK1.10 - Next of Kin / Associated Parties Job Title */ export function NK1_10_next_of_kin_associated_parties_job_title(seg: HL7v2Segment): string | undefined { const val = seg.fields[10]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get NK1.11.1 - Job Code */ export function NK1_11_1_job_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 1); } /** Get NK1.11.2 - Job Class */ export function NK1_11_2_job_class(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 2); } /** Get NK1.11.3 - Job Description Text */ export function NK1_11_3_job_description(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 3); } /** Get NK1.12.1 - ID Number */ export function NK1_12_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 1); } /** Get NK1.12.2 - Check Digit */ export function NK1_12_2_check_digit(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 2); } /** Get NK1.12.3 - Check Digit Scheme */ export function NK1_12_3_check_digit_scheme(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 3); } /** Get NK1.12.4 - Assigning Authority */ export function NK1_12_4_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 4); } /** Get NK1.12.4.1 - Namespace ID */ export function NK1_12_4_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 4, 1); } /** Get NK1.12.4.2 - Universal ID */ export function NK1_12_4_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 4, 2); } /** Get NK1.12.4.3 - Universal ID Type */ export function NK1_12_4_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 4, 3); } /** Get NK1.12.5 - Identifier Type Code */ export function NK1_12_5_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 5); } /** Get NK1.12.6 - Assigning Facility */ export function NK1_12_6_assigner(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 6); } /** Get NK1.12.6.1 - Namespace ID */ export function NK1_12_6_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 6, 1); } /** Get NK1.12.6.2 - Universal ID */ export function NK1_12_6_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 6, 2); } /** Get NK1.12.6.3 - Universal ID Type */ export function NK1_12_6_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 6, 3); } /** Get NK1.12.7 - Effective Date */ export function NK1_12_7_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 7); } /** Get NK1.12.8 - Expiration Date */ export function NK1_12_8_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 8); } /** Get NK1.12.9 - Assigning Jurisdiction */ export function NK1_12_9_jurisdiction(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 9); } /** Get NK1.12.9.1 - Identifier */ export function NK1_12_9_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 9, 1); } /** Get NK1.12.9.2 - Text */ export function NK1_12_9_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 9, 2); } /** Get NK1.12.9.3 - Name of Coding System */ export function NK1_12_9_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 9, 3); } /** Get NK1.12.9.4 - Alternate Identifier */ export function NK1_12_9_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 9, 4); } /** Get NK1.12.9.5 - Alternate Text */ export function NK1_12_9_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 9, 5); } /** Get NK1.12.9.6 - Name of Alternate Coding System */ export function NK1_12_9_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 9, 6); } /** Get NK1.12.9.7 - Coding System Version ID */ export function NK1_12_9_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 9, 7); } /** Get NK1.12.9.8 - Alternate Coding System Version ID */ export function NK1_12_9_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 9, 8); } /** Get NK1.12.9.9 - Original Text */ export function NK1_12_9_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 9, 9); } /** Get NK1.12.10 - Assigning Agency or Department */ export function NK1_12_10_department(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 10); } /** Get NK1.12.10.1 - Identifier */ export function NK1_12_10_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 10, 1); } /** Get NK1.12.10.2 - Text */ export function NK1_12_10_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 10, 2); } /** Get NK1.12.10.3 - Name of Coding System */ export function NK1_12_10_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 10, 3); } /** Get NK1.12.10.4 - Alternate Identifier */ export function NK1_12_10_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 10, 4); } /** Get NK1.12.10.5 - Alternate Text */ export function NK1_12_10_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 10, 5); } /** Get NK1.12.10.6 - Name of Alternate Coding System */ export function NK1_12_10_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 10, 6); } /** Get NK1.12.10.7 - Coding System Version ID */ export function NK1_12_10_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 10, 7); } /** Get NK1.12.10.8 - Alternate Coding System Version ID */ export function NK1_12_10_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 10, 8); } /** Get NK1.12.10.9 - Original Text */ export function NK1_12_10_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 10, 9); } /** Get NK1.13.1 - Organization Name */ export function NK1_13_1_name(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 1); } /** Get NK1.13.2 - Organization Name Type Code */ export function NK1_13_2_name_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 2); } /** Get NK1.13.3 - ID Number */ export function NK1_13_3_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 3); } /** Get NK1.13.4 - Check Digit */ export function NK1_13_4_check_digit(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 4); } /** Get NK1.13.5 - Check Digit Scheme */ export function NK1_13_5_check_digit_scheme(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 5); } /** Get NK1.13.6 - Assigning Authority */ export function NK1_13_6_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 6); } /** Get NK1.13.6.1 - Namespace ID */ export function NK1_13_6_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 6, 1); } /** Get NK1.13.6.2 - Universal ID */ export function NK1_13_6_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 6, 2); } /** Get NK1.13.6.3 - Universal ID Type */ export function NK1_13_6_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 6, 3); } /** Get NK1.13.7 - Identifier Type Code */ export function NK1_13_7_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 7); } /** Get NK1.13.8 - Assigning Facility */ export function NK1_13_8_assigner(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 8); } /** Get NK1.13.8.1 - Namespace ID */ export function NK1_13_8_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 8, 1); } /** Get NK1.13.8.2 - Universal ID */ export function NK1_13_8_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 8, 2); } /** Get NK1.13.8.3 - Universal ID Type */ export function NK1_13_8_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 8, 3); } /** Get NK1.13.9 - Name Representation Code */ export function NK1_13_9_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 9); } /** Get NK1.13.10 - Organization Identifier */ export function NK1_13_10_organization_id(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 10); } /** Get NK1.14.1 - Identifier */ export function NK1_14_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 1); } /** Get NK1.14.2 - Text */ export function NK1_14_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 2); } /** Get NK1.14.3 - Name of Coding System */ export function NK1_14_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 3); } /** Get NK1.14.4 - Alternate Identifier */ export function NK1_14_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 4); } /** Get NK1.14.5 - Alternate Text */ export function NK1_14_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 5); } /** Get NK1.14.6 - Name of Alternate Coding System */ export function NK1_14_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 6); } /** Get NK1.15 - Administrative Sex */ export function NK1_15_gender(seg: HL7v2Segment): string | undefined { const val = seg.fields[15]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get NK1.16 - Date/Time of Birth */ export function NK1_16_birth_date(seg: HL7v2Segment): string | undefined { const val = seg.fields[16]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get NK1.17 - Living Dependency */ export function NK1_17_living_dependency(seg: HL7v2Segment): string | undefined { const val = seg.fields[17]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get NK1.18 - Ambulatory Status */ export function NK1_18_ambulatory_status(seg: HL7v2Segment): string | undefined { const val = seg.fields[18]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get NK1.19.1 - Identifier */ export function NK1_19_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 1); } /** Get NK1.19.2 - Text */ export function NK1_19_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 2); } /** Get NK1.19.3 - Name of Coding System */ export function NK1_19_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 3); } /** Get NK1.19.4 - Alternate Identifier */ export function NK1_19_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 4); } /** Get NK1.19.5 - Alternate Text */ export function NK1_19_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 5); } /** Get NK1.19.6 - Name of Alternate Coding System */ export function NK1_19_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 6); } /** Get NK1.20.1 - Identifier */ export function NK1_20_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[20]; return getComponent(field, 1); } /** Get NK1.20.2 - Text */ export function NK1_20_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[20]; return getComponent(field, 2); } /** Get NK1.20.3 - Name of Coding System */ export function NK1_20_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[20]; return getComponent(field, 3); } /** Get NK1.20.4 - Alternate Identifier */ export function NK1_20_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[20]; return getComponent(field, 4); } /** Get NK1.20.5 - Alternate Text */ export function NK1_20_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[20]; return getComponent(field, 5); } /** Get NK1.20.6 - Name of Alternate Coding System */ export function NK1_20_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[20]; return getComponent(field, 6); } /** Get NK1.21 - Living Arrangement */ export function NK1_21_living_arrangement(seg: HL7v2Segment): string | undefined { const val = seg.fields[21]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get NK1.22.1 - Identifier */ export function NK1_22_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[22]; return getComponent(field, 1); } /** Get NK1.22.2 - Text */ export function NK1_22_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[22]; return getComponent(field, 2); } /** Get NK1.22.3 - Name of Coding System */ export function NK1_22_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[22]; return getComponent(field, 3); } /** Get NK1.22.4 - Alternate Identifier */ export function NK1_22_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[22]; return getComponent(field, 4); } /** Get NK1.22.5 - Alternate Text */ export function NK1_22_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[22]; return getComponent(field, 5); } /** Get NK1.22.6 - Name of Alternate Coding System */ export function NK1_22_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[22]; return getComponent(field, 6); } /** Get NK1.23 - Protection Indicator */ export function NK1_23_protection_indicator(seg: HL7v2Segment): string | undefined { const val = seg.fields[23]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get NK1.24 - Student Indicator */ export function NK1_24_student(seg: HL7v2Segment): string | undefined { const val = seg.fields[24]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get NK1.25.1 - Identifier */ export function NK1_25_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 1); } /** Get NK1.25.2 - Text */ export function NK1_25_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 2); } /** Get NK1.25.3 - Name of Coding System */ export function NK1_25_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 3); } /** Get NK1.25.4 - Alternate Identifier */ export function NK1_25_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 4); } /** Get NK1.25.5 - Alternate Text */ export function NK1_25_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 5); } /** Get NK1.25.6 - Name of Alternate Coding System */ export function NK1_25_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 6); } /** Get NK1.26.1 - Family Name */ export function NK1_26_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 1); } /** Get NK1.26.1.1 - Surname */ export function NK1_26_1_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 1, 1); } /** Get NK1.26.1.2 - Own Surname Prefix */ export function NK1_26_1_2_own_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 1, 2); } /** Get NK1.26.1.3 - Own Surname */ export function NK1_26_1_3_own_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 1, 3); } /** Get NK1.26.1.4 - Surname Prefix From Partner/Spouse */ export function NK1_26_1_4_partner_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 1, 4); } /** Get NK1.26.1.5 - Surname From Partner/Spouse */ export function NK1_26_1_5_partner_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 1, 5); } /** Get NK1.26.2 - Given Name */ export function NK1_26_2_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 2); } /** Get NK1.26.3 - Second and Further Given Names or Initials Thereof */ export function NK1_26_3_additional_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 3); } /** Get NK1.26.4 - Suffix (e.g., JR or III) */ export function NK1_26_4_suffix(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 4); } /** Get NK1.26.5 - Prefix (e.g., DR) */ export function NK1_26_5_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 5); } /** Get NK1.26.6 - Degree (e.g., MD) */ export function NK1_26_6_qualification(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 6); } /** Get NK1.26.7 - Name Type Code */ export function NK1_26_7_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 7); } /** Get NK1.26.8 - Name Representation Code */ export function NK1_26_8_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 8); } /** Get NK1.26.9 - Name Context */ export function NK1_26_9_context(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 9); } /** Get NK1.26.9.1 - Identifier */ export function NK1_26_9_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 9, 1); } /** Get NK1.26.9.2 - Text */ export function NK1_26_9_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 9, 2); } /** Get NK1.26.9.3 - Name of Coding System */ export function NK1_26_9_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 9, 3); } /** Get NK1.26.9.4 - Alternate Identifier */ export function NK1_26_9_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 9, 4); } /** Get NK1.26.9.5 - Alternate Text */ export function NK1_26_9_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 9, 5); } /** Get NK1.26.9.6 - Name of Alternate Coding System */ export function NK1_26_9_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 9, 6); } /** Get NK1.26.10 - Name Validity Range */ export function NK1_26_10_period(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 10); } /** Get NK1.26.10.1 - Range Start Date/Time */ export function NK1_26_10_1_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 10, 1); } /** Get NK1.26.10.2 - Range End Date/Time */ export function NK1_26_10_2_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 10, 2); } /** Get NK1.26.11 - Name Assembly Order */ export function NK1_26_11_order(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 11); } /** Get NK1.26.12 - Effective Date */ export function NK1_26_12_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 12); } /** Get NK1.26.13 - Expiration Date */ export function NK1_26_13_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 13); } /** Get NK1.26.14 - Professional Suffix */ export function NK1_26_14_credential(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 14); } /** Get NK1.27.1 - Identifier */ export function NK1_27_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[27]; return getComponent(field, 1); } /** Get NK1.27.2 - Text */ export function NK1_27_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[27]; return getComponent(field, 2); } /** Get NK1.27.3 - Name of Coding System */ export function NK1_27_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[27]; return getComponent(field, 3); } /** Get NK1.27.4 - Alternate Identifier */ export function NK1_27_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[27]; return getComponent(field, 4); } /** Get NK1.27.5 - Alternate Text */ export function NK1_27_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[27]; return getComponent(field, 5); } /** Get NK1.27.6 - Name of Alternate Coding System */ export function NK1_27_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[27]; return getComponent(field, 6); } /** Get NK1.28.1 - Identifier */ export function NK1_28_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[28]; return getComponent(field, 1); } /** Get NK1.28.2 - Text */ export function NK1_28_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[28]; return getComponent(field, 2); } /** Get NK1.28.3 - Name of Coding System */ export function NK1_28_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[28]; return getComponent(field, 3); } /** Get NK1.28.4 - Alternate Identifier */ export function NK1_28_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[28]; return getComponent(field, 4); } /** Get NK1.28.5 - Alternate Text */ export function NK1_28_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[28]; return getComponent(field, 5); } /** Get NK1.28.6 - Name of Alternate Coding System */ export function NK1_28_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[28]; return getComponent(field, 6); } /** Get NK1.29.1 - Identifier */ export function NK1_29_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[29]; return getComponent(field, 1); } /** Get NK1.29.2 - Text */ export function NK1_29_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[29]; return getComponent(field, 2); } /** Get NK1.29.3 - Name of Coding System */ export function NK1_29_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[29]; return getComponent(field, 3); } /** Get NK1.29.4 - Alternate Identifier */ export function NK1_29_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[29]; return getComponent(field, 4); } /** Get NK1.29.5 - Alternate Text */ export function NK1_29_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[29]; return getComponent(field, 5); } /** Get NK1.29.6 - Name of Alternate Coding System */ export function NK1_29_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[29]; return getComponent(field, 6); } /** Get NK1.30.1 - Family Name */ export function NK1_30_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 1); } /** Get NK1.30.1.1 - Surname */ export function NK1_30_1_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 1, 1); } /** Get NK1.30.1.2 - Own Surname Prefix */ export function NK1_30_1_2_own_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 1, 2); } /** Get NK1.30.1.3 - Own Surname */ export function NK1_30_1_3_own_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 1, 3); } /** Get NK1.30.1.4 - Surname Prefix From Partner/Spouse */ export function NK1_30_1_4_partner_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 1, 4); } /** Get NK1.30.1.5 - Surname From Partner/Spouse */ export function NK1_30_1_5_partner_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 1, 5); } /** Get NK1.30.2 - Given Name */ export function NK1_30_2_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 2); } /** Get NK1.30.3 - Second and Further Given Names or Initials Thereof */ export function NK1_30_3_additional_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 3); } /** Get NK1.30.4 - Suffix (e.g., JR or III) */ export function NK1_30_4_suffix(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 4); } /** Get NK1.30.5 - Prefix (e.g., DR) */ export function NK1_30_5_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 5); } /** Get NK1.30.6 - Degree (e.g., MD) */ export function NK1_30_6_qualification(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 6); } /** Get NK1.30.7 - Name Type Code */ export function NK1_30_7_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 7); } /** Get NK1.30.8 - Name Representation Code */ export function NK1_30_8_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 8); } /** Get NK1.30.9 - Name Context */ export function NK1_30_9_context(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 9); } /** Get NK1.30.9.1 - Identifier */ export function NK1_30_9_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 9, 1); } /** Get NK1.30.9.2 - Text */ export function NK1_30_9_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 9, 2); } /** Get NK1.30.9.3 - Name of Coding System */ export function NK1_30_9_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 9, 3); } /** Get NK1.30.9.4 - Alternate Identifier */ export function NK1_30_9_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 9, 4); } /** Get NK1.30.9.5 - Alternate Text */ export function NK1_30_9_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 9, 5); } /** Get NK1.30.9.6 - Name of Alternate Coding System */ export function NK1_30_9_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 9, 6); } /** Get NK1.30.10 - Name Validity Range */ export function NK1_30_10_period(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 10); } /** Get NK1.30.10.1 - Range Start Date/Time */ export function NK1_30_10_1_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 10, 1); } /** Get NK1.30.10.2 - Range End Date/Time */ export function NK1_30_10_2_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 10, 2); } /** Get NK1.30.11 - Name Assembly Order */ export function NK1_30_11_order(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 11); } /** Get NK1.30.12 - Effective Date */ export function NK1_30_12_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 12); } /** Get NK1.30.13 - Expiration Date */ export function NK1_30_13_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 13); } /** Get NK1.30.14 - Professional Suffix */ export function NK1_30_14_credential(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 14); } /** Get NK1.31.1 - Telephone Number */ export function NK1_31_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[31]; return getComponent(field, 1); } /** Get NK1.31.2 - Telecommunication Use Code */ export function NK1_31_2_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[31]; return getComponent(field, 2); } /** Get NK1.31.3 - Telecommunication Equipment Type */ export function NK1_31_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[31]; return getComponent(field, 3); } /** Get NK1.31.4 - Email Address */ export function NK1_31_4_email(seg: HL7v2Segment): string | undefined { const field = seg.fields[31]; return getComponent(field, 4); } /** Get NK1.31.5 - Country Code */ export function NK1_31_5_country_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[31]; return getComponent(field, 5); } /** Get NK1.31.6 - Area/City Code */ export function NK1_31_6_area_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[31]; return getComponent(field, 6); } /** Get NK1.31.7 - Local Number */ export function NK1_31_7_local_number(seg: HL7v2Segment): string | undefined { const field = seg.fields[31]; return getComponent(field, 7); } /** Get NK1.31.8 - Extension */ export function NK1_31_8_extension(seg: HL7v2Segment): string | undefined { const field = seg.fields[31]; return getComponent(field, 8); } /** Get NK1.31.9 - Any Text */ export function NK1_31_9_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[31]; return getComponent(field, 9); } /** Get NK1.31.10 - Extension Prefix */ export function NK1_31_10_extension_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[31]; return getComponent(field, 10); } /** Get NK1.31.11 - Speed Dial Code */ export function NK1_31_11_speed_dial(seg: HL7v2Segment): string | undefined { const field = seg.fields[31]; return getComponent(field, 11); } /** Get NK1.31.12 - Unformatted Telephone number */ export function NK1_31_12_unformatted(seg: HL7v2Segment): string | undefined { const field = seg.fields[31]; return getComponent(field, 12); } /** Get NK1.32.1 - Street Address */ export function NK1_32_1_line1(seg: HL7v2Segment): string | undefined { const field = seg.fields[32]; return getComponent(field, 1); } /** Get NK1.32.1.1 - Street or Mailing Address */ export function NK1_32_1_1_line(seg: HL7v2Segment): string | undefined { const field = seg.fields[32]; return getComponent(field, 1, 1); } /** Get NK1.32.1.2 - Street Name */ export function NK1_32_1_2_street_name(seg: HL7v2Segment): string | undefined { const field = seg.fields[32]; return getComponent(field, 1, 2); } /** Get NK1.32.1.3 - Dwelling Number */ export function NK1_32_1_3_house_number(seg: HL7v2Segment): string | undefined { const field = seg.fields[32]; return getComponent(field, 1, 3); } /** Get NK1.32.2 - Other Designation */ export function NK1_32_2_line2(seg: HL7v2Segment): string | undefined { const field = seg.fields[32]; return getComponent(field, 2); } /** Get NK1.32.3 - City */ export function NK1_32_3_city(seg: HL7v2Segment): string | undefined { const field = seg.fields[32]; return getComponent(field, 3); } /** Get NK1.32.4 - State or Province */ export function NK1_32_4_state(seg: HL7v2Segment): string | undefined { const field = seg.fields[32]; return getComponent(field, 4); } /** Get NK1.32.5 - Zip or Postal Code */ export function NK1_32_5_postal_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[32]; return getComponent(field, 5); } /** Get NK1.32.6 - Country */ export function NK1_32_6_country(seg: HL7v2Segment): string | undefined { const field = seg.fields[32]; return getComponent(field, 6); } /** Get NK1.32.7 - Address Type */ export function NK1_32_7_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[32]; return getComponent(field, 7); } /** Get NK1.32.8 - Other Geographic Designation */ export function NK1_32_8_additional_locator(seg: HL7v2Segment): string | undefined { const field = seg.fields[32]; return getComponent(field, 8); } /** Get NK1.32.9 - County/Parish Code */ export function NK1_32_9_district(seg: HL7v2Segment): string | undefined { const field = seg.fields[32]; return getComponent(field, 9); } /** Get NK1.32.10 - Census Tract */ export function NK1_32_10_census_tract(seg: HL7v2Segment): string | undefined { const field = seg.fields[32]; return getComponent(field, 10); } /** Get NK1.32.11 - Address Representation Code */ export function NK1_32_11_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[32]; return getComponent(field, 11); } /** Get NK1.32.12 - Address Validity Range */ export function NK1_32_12_period(seg: HL7v2Segment): string | undefined { const field = seg.fields[32]; return getComponent(field, 12); } /** Get NK1.32.12.1 - Range Start Date/Time */ export function NK1_32_12_1_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[32]; return getComponent(field, 12, 1); } /** Get NK1.32.12.2 - Range End Date/Time */ export function NK1_32_12_2_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[32]; return getComponent(field, 12, 2); } /** Get NK1.32.13 - Effective Date */ export function NK1_32_13_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[32]; return getComponent(field, 13); } /** Get NK1.32.14 - Expiration Date */ export function NK1_32_14_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[32]; return getComponent(field, 14); } /** Get NK1.33.1 - ID Number */ export function NK1_33_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[33]; return getComponent(field, 1); } /** Get NK1.33.2 - Check Digit */ export function NK1_33_2_check_digit(seg: HL7v2Segment): string | undefined { const field = seg.fields[33]; return getComponent(field, 2); } /** Get NK1.33.3 - Check Digit Scheme */ export function NK1_33_3_check_digit_scheme(seg: HL7v2Segment): string | undefined { const field = seg.fields[33]; return getComponent(field, 3); } /** Get NK1.33.4 - Assigning Authority */ export function NK1_33_4_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[33]; return getComponent(field, 4); } /** Get NK1.33.4.1 - Namespace ID */ export function NK1_33_4_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[33]; return getComponent(field, 4, 1); } /** Get NK1.33.4.2 - Universal ID */ export function NK1_33_4_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[33]; return getComponent(field, 4, 2); } /** Get NK1.33.4.3 - Universal ID Type */ export function NK1_33_4_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[33]; return getComponent(field, 4, 3); } /** Get NK1.33.5 - Identifier Type Code */ export function NK1_33_5_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[33]; return getComponent(field, 5); } /** Get NK1.33.6 - Assigning Facility */ export function NK1_33_6_assigner(seg: HL7v2Segment): string | undefined { const field = seg.fields[33]; return getComponent(field, 6); } /** Get NK1.33.6.1 - Namespace ID */ export function NK1_33_6_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[33]; return getComponent(field, 6, 1); } /** Get NK1.33.6.2 - Universal ID */ export function NK1_33_6_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[33]; return getComponent(field, 6, 2); } /** Get NK1.33.6.3 - Universal ID Type */ export function NK1_33_6_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[33]; return getComponent(field, 6, 3); } /** Get NK1.33.7 - Effective Date */ export function NK1_33_7_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[33]; return getComponent(field, 7); } /** Get NK1.33.8 - Expiration Date */ export function NK1_33_8_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[33]; return getComponent(field, 8); } /** Get NK1.33.9 - Assigning Jurisdiction */ export function NK1_33_9_jurisdiction(seg: HL7v2Segment): string | undefined { const field = seg.fields[33]; return getComponent(field, 9); } /** Get NK1.33.9.1 - Identifier */ export function NK1_33_9_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[33]; return getComponent(field, 9, 1); } /** Get NK1.33.9.2 - Text */ export function NK1_33_9_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[33]; return getComponent(field, 9, 2); } /** Get NK1.33.9.3 - Name of Coding System */ export function NK1_33_9_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[33]; return getComponent(field, 9, 3); } /** Get NK1.33.9.4 - Alternate Identifier */ export function NK1_33_9_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[33]; return getComponent(field, 9, 4); } /** Get NK1.33.9.5 - Alternate Text */ export function NK1_33_9_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[33]; return getComponent(field, 9, 5); } /** Get NK1.33.9.6 - Name of Alternate Coding System */ export function NK1_33_9_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[33]; return getComponent(field, 9, 6); } /** Get NK1.33.9.7 - Coding System Version ID */ export function NK1_33_9_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[33]; return getComponent(field, 9, 7); } /** Get NK1.33.9.8 - Alternate Coding System Version ID */ export function NK1_33_9_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[33]; return getComponent(field, 9, 8); } /** Get NK1.33.9.9 - Original Text */ export function NK1_33_9_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[33]; return getComponent(field, 9, 9); } /** Get NK1.33.10 - Assigning Agency or Department */ export function NK1_33_10_department(seg: HL7v2Segment): string | undefined { const field = seg.fields[33]; return getComponent(field, 10); } /** Get NK1.33.10.1 - Identifier */ export function NK1_33_10_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[33]; return getComponent(field, 10, 1); } /** Get NK1.33.10.2 - Text */ export function NK1_33_10_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[33]; return getComponent(field, 10, 2); } /** Get NK1.33.10.3 - Name of Coding System */ export function NK1_33_10_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[33]; return getComponent(field, 10, 3); } /** Get NK1.33.10.4 - Alternate Identifier */ export function NK1_33_10_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[33]; return getComponent(field, 10, 4); } /** Get NK1.33.10.5 - Alternate Text */ export function NK1_33_10_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[33]; return getComponent(field, 10, 5); } /** Get NK1.33.10.6 - Name of Alternate Coding System */ export function NK1_33_10_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[33]; return getComponent(field, 10, 6); } /** Get NK1.33.10.7 - Coding System Version ID */ export function NK1_33_10_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[33]; return getComponent(field, 10, 7); } /** Get NK1.33.10.8 - Alternate Coding System Version ID */ export function NK1_33_10_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[33]; return getComponent(field, 10, 8); } /** Get NK1.33.10.9 - Original Text */ export function NK1_33_10_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[33]; return getComponent(field, 10, 9); } /** Get NK1.34 - Job Status */ export function NK1_34_job_status(seg: HL7v2Segment): string | undefined { const val = seg.fields[34]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get NK1.35.1 - Identifier */ export function NK1_35_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[35]; return getComponent(field, 1); } /** Get NK1.35.2 - Text */ export function NK1_35_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[35]; return getComponent(field, 2); } /** Get NK1.35.3 - Name of Coding System */ export function NK1_35_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[35]; return getComponent(field, 3); } /** Get NK1.35.4 - Alternate Identifier */ export function NK1_35_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[35]; return getComponent(field, 4); } /** Get NK1.35.5 - Alternate Text */ export function NK1_35_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[35]; return getComponent(field, 5); } /** Get NK1.35.6 - Name of Alternate Coding System */ export function NK1_35_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[35]; return getComponent(field, 6); } /** Get NK1.36 - Handicap */ export function NK1_36_disability(seg: HL7v2Segment): string | undefined { const val = seg.fields[36]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get NK1.37 - Contact Person Social Security Number */ export function NK1_37_contact_person_social_security_number(seg: HL7v2Segment): string | undefined { const val = seg.fields[37]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get NK1.38 - Next of Kin Birth Place */ export function NK1_38_next_of_kin_birth_place(seg: HL7v2Segment): string | undefined { const val = seg.fields[38]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get NK1.39 - VIP Indicator */ export function NK1_39_vip(seg: HL7v2Segment): string | undefined { const val = seg.fields[39]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } export class NK1Builder { private seg: HL7v2Segment = { segment: "NK1", fields: {} }; /** NK1.1 - Set ID - NK1 */ set_nk1_1_setIdNk1(value: string | null | undefined): this { if (value != null) this.seg.fields[1] = value; return this; } /** NK1.1 - Set ID - NK1 */ get_nk1_1_setIdNk1(): string | undefined { const val = this.seg.fields[1]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** NK1.2 - Name (set all values) */ set_nk1_2_name(values: XPN[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[2] = arr; return this; } /** NK1.2 - Name (add single value) */ add_nk1_2_name(value: XPN | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[2]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[2] = [fv]; } } return this; } /** NK1.2 - Name */ get_nk1_2_name(): XPN[] | undefined { const val = this.seg.fields[2]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXPN(v)).filter((v): v is XPN => v !== undefined); } /** NK1.3 - Relationship */ set_nk1_3_relationship(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[3] = fv; return this; } /** NK1.3 - Relationship */ get_nk1_3_relationship(): CE | undefined { return fromCE(this.seg.fields[3]); } /** NK1.4 - Address (set all values) */ set_nk1_4_text(values: XAD[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[4] = arr; return this; } /** NK1.4 - Address (add single value) */ add_nk1_4_text(value: XAD | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[4]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[4] = [fv]; } } return this; } /** NK1.4 - Address */ get_nk1_4_text(): XAD[] | undefined { const val = this.seg.fields[4]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXAD(v)).filter((v): v is XAD => v !== undefined); } /** NK1.5 - Phone Number (set all values) */ set_nk1_5_phone(values: XTN[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[5] = arr; return this; } /** NK1.5 - Phone Number (add single value) */ add_nk1_5_phone(value: XTN | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[5]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[5] = [fv]; } } return this; } /** NK1.5 - Phone Number */ get_nk1_5_phone(): XTN[] | undefined { const val = this.seg.fields[5]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXTN(v)).filter((v): v is XTN => v !== undefined); } /** NK1.6 - Business Phone Number (set all values) */ set_nk1_6_businessPhone(values: XTN[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[6] = arr; return this; } /** NK1.6 - Business Phone Number (add single value) */ add_nk1_6_businessPhone(value: XTN | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[6]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[6] = [fv]; } } return this; } /** NK1.6 - Business Phone Number */ get_nk1_6_businessPhone(): XTN[] | undefined { const val = this.seg.fields[6]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXTN(v)).filter((v): v is XTN => v !== undefined); } /** NK1.7 - Contact Role */ set_nk1_7_contactRole(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[7] = fv; return this; } /** NK1.7 - Contact Role */ get_nk1_7_contactRole(): CE | undefined { return fromCE(this.seg.fields[7]); } /** NK1.8 - Start Date */ set_nk1_8_startDate(value: string | null | undefined): this { if (value != null) this.seg.fields[8] = value; return this; } /** NK1.8 - Start Date */ get_nk1_8_startDate(): string | undefined { const val = this.seg.fields[8]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** NK1.9 - End Date */ set_nk1_9_endDate(value: string | null | undefined): this { if (value != null) this.seg.fields[9] = value; return this; } /** NK1.9 - End Date */ get_nk1_9_endDate(): string | undefined { const val = this.seg.fields[9]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** NK1.10 - Next of Kin / Associated Parties Job Title */ set_nk1_10_nextOfKinAssociatedPartiesJobTitle(value: string | null | undefined): this { if (value != null) this.seg.fields[10] = value; return this; } /** NK1.10 - Next of Kin / Associated Parties Job Title */ get_nk1_10_nextOfKinAssociatedPartiesJobTitle(): string | undefined { const val = this.seg.fields[10]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** NK1.11 - Next of Kin / Associated Parties Job Code/Class */ set_nk1_11_nextOfKinAssociatedPartiesJobCodeClass(value: JCC | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[11] = fv; return this; } /** NK1.11 - Next of Kin / Associated Parties Job Code/Class */ get_nk1_11_nextOfKinAssociatedPartiesJobCodeClass(): JCC | undefined { return fromJCC(this.seg.fields[11]); } /** NK1.12 - Next of Kin / Associated Parties Employee Number */ set_nk1_12_nextOfKinAssociatedPartiesEmployeeNumber(value: CX | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[12] = fv; return this; } /** NK1.12 - Next of Kin / Associated Parties Employee Number */ get_nk1_12_nextOfKinAssociatedPartiesEmployeeNumber(): CX | undefined { return fromCX(this.seg.fields[12]); } /** NK1.13 - Organization Name - NK1 (set all values) */ set_nk1_13_organizationNameNk1(values: XON[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[13] = arr; return this; } /** NK1.13 - Organization Name - NK1 (add single value) */ add_nk1_13_organizationNameNk1(value: XON | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[13]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[13] = [fv]; } } return this; } /** NK1.13 - Organization Name - NK1 */ get_nk1_13_organizationNameNk1(): XON[] | undefined { const val = this.seg.fields[13]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXON(v)).filter((v): v is XON => v !== undefined); } /** NK1.14 - Marital Status */ set_nk1_14_maritalStatus(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[14] = fv; return this; } /** NK1.14 - Marital Status */ get_nk1_14_maritalStatus(): CE | undefined { return fromCE(this.seg.fields[14]); } /** NK1.15 - Administrative Sex */ set_nk1_15_gender(value: string | null | undefined): this { if (value != null) this.seg.fields[15] = value; return this; } /** NK1.15 - Administrative Sex */ get_nk1_15_gender(): string | undefined { const val = this.seg.fields[15]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** NK1.16 - Date/Time of Birth */ set_nk1_16_birthDate(value: string | null | undefined): this { if (value != null) this.seg.fields[16] = value; return this; } /** NK1.16 - Date/Time of Birth */ get_nk1_16_birthDate(): string | undefined { const val = this.seg.fields[16]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** NK1.17 - Living Dependency */ set_nk1_17_livingDependency(value: string | null | undefined): this { if (value != null) this.seg.fields[17] = value; return this; } /** NK1.17 - Living Dependency */ get_nk1_17_livingDependency(): string | undefined { const val = this.seg.fields[17]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** NK1.18 - Ambulatory Status */ set_nk1_18_ambulatoryStatus(value: string | null | undefined): this { if (value != null) this.seg.fields[18] = value; return this; } /** NK1.18 - Ambulatory Status */ get_nk1_18_ambulatoryStatus(): string | undefined { const val = this.seg.fields[18]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** NK1.19 - Citizenship (set all values) */ set_nk1_19_citizenship(values: CE[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[19] = arr; return this; } /** NK1.19 - Citizenship (add single value) */ add_nk1_19_citizenship(value: CE | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[19]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[19] = [fv]; } } return this; } /** NK1.19 - Citizenship */ get_nk1_19_citizenship(): CE[] | undefined { const val = this.seg.fields[19]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromCE(v)).filter((v): v is CE => v !== undefined); } /** NK1.20 - Primary Language */ set_nk1_20_language(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[20] = fv; return this; } /** NK1.20 - Primary Language */ get_nk1_20_language(): CE | undefined { return fromCE(this.seg.fields[20]); } /** NK1.21 - Living Arrangement */ set_nk1_21_livingArrangement(value: string | null | undefined): this { if (value != null) this.seg.fields[21] = value; return this; } /** NK1.21 - Living Arrangement */ get_nk1_21_livingArrangement(): string | undefined { const val = this.seg.fields[21]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** NK1.22 - Publicity Code */ set_nk1_22_publicityCode(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[22] = fv; return this; } /** NK1.22 - Publicity Code */ get_nk1_22_publicityCode(): CE | undefined { return fromCE(this.seg.fields[22]); } /** NK1.23 - Protection Indicator */ set_nk1_23_protectionIndicator(value: string | null | undefined): this { if (value != null) this.seg.fields[23] = value; return this; } /** NK1.23 - Protection Indicator */ get_nk1_23_protectionIndicator(): string | undefined { const val = this.seg.fields[23]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** NK1.24 - Student Indicator */ set_nk1_24_student(value: string | null | undefined): this { if (value != null) this.seg.fields[24] = value; return this; } /** NK1.24 - Student Indicator */ get_nk1_24_student(): string | undefined { const val = this.seg.fields[24]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** NK1.25 - Religion */ set_nk1_25_religion(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[25] = fv; return this; } /** NK1.25 - Religion */ get_nk1_25_religion(): CE | undefined { return fromCE(this.seg.fields[25]); } /** NK1.26 - Mother's Maiden Name (set all values) */ set_nk1_26_mothersMaidenName(values: XPN[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[26] = arr; return this; } /** NK1.26 - Mother's Maiden Name (add single value) */ add_nk1_26_mothersMaidenName(value: XPN | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[26]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[26] = [fv]; } } return this; } /** NK1.26 - Mother's Maiden Name */ get_nk1_26_mothersMaidenName(): XPN[] | undefined { const val = this.seg.fields[26]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXPN(v)).filter((v): v is XPN => v !== undefined); } /** NK1.27 - Nationality */ set_nk1_27_nationality(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[27] = fv; return this; } /** NK1.27 - Nationality */ get_nk1_27_nationality(): CE | undefined { return fromCE(this.seg.fields[27]); } /** NK1.28 - Ethnic Group (set all values) */ set_nk1_28_ethnicity(values: CE[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[28] = arr; return this; } /** NK1.28 - Ethnic Group (add single value) */ add_nk1_28_ethnicity(value: CE | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[28]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[28] = [fv]; } } return this; } /** NK1.28 - Ethnic Group */ get_nk1_28_ethnicity(): CE[] | undefined { const val = this.seg.fields[28]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromCE(v)).filter((v): v is CE => v !== undefined); } /** NK1.29 - Contact Reason (set all values) */ set_nk1_29_contactReason(values: CE[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[29] = arr; return this; } /** NK1.29 - Contact Reason (add single value) */ add_nk1_29_contactReason(value: CE | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[29]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[29] = [fv]; } } return this; } /** NK1.29 - Contact Reason */ get_nk1_29_contactReason(): CE[] | undefined { const val = this.seg.fields[29]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromCE(v)).filter((v): v is CE => v !== undefined); } /** NK1.30 - Contact Person's Name (set all values) */ set_nk1_30_contactPersonsName(values: XPN[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[30] = arr; return this; } /** NK1.30 - Contact Person's Name (add single value) */ add_nk1_30_contactPersonsName(value: XPN | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[30]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[30] = [fv]; } } return this; } /** NK1.30 - Contact Person's Name */ get_nk1_30_contactPersonsName(): XPN[] | undefined { const val = this.seg.fields[30]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXPN(v)).filter((v): v is XPN => v !== undefined); } /** NK1.31 - Contact Person's Telephone Number (set all values) */ set_nk1_31_contactPhone(values: XTN[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[31] = arr; return this; } /** NK1.31 - Contact Person's Telephone Number (add single value) */ add_nk1_31_contactPhone(value: XTN | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[31]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[31] = [fv]; } } return this; } /** NK1.31 - Contact Person's Telephone Number */ get_nk1_31_contactPhone(): XTN[] | undefined { const val = this.seg.fields[31]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXTN(v)).filter((v): v is XTN => v !== undefined); } /** NK1.32 - Contact Person's Address (set all values) */ set_nk1_32_contactPersonsAddress(values: XAD[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[32] = arr; return this; } /** NK1.32 - Contact Person's Address (add single value) */ add_nk1_32_contactPersonsAddress(value: XAD | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[32]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[32] = [fv]; } } return this; } /** NK1.32 - Contact Person's Address */ get_nk1_32_contactPersonsAddress(): XAD[] | undefined { const val = this.seg.fields[32]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXAD(v)).filter((v): v is XAD => v !== undefined); } /** NK1.33 - Next of Kin/Associated Party's Identifiers (set all values) */ set_nk1_33_nextOfKinAssociatedPartysIdentifiers(values: CX[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[33] = arr; return this; } /** NK1.33 - Next of Kin/Associated Party's Identifiers (add single value) */ add_nk1_33_nextOfKinAssociatedPartysIdentifiers(value: CX | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[33]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[33] = [fv]; } } return this; } /** NK1.33 - Next of Kin/Associated Party's Identifiers */ get_nk1_33_nextOfKinAssociatedPartysIdentifiers(): CX[] | undefined { const val = this.seg.fields[33]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromCX(v)).filter((v): v is CX => v !== undefined); } /** NK1.34 - Job Status */ set_nk1_34_jobStatus(value: string | null | undefined): this { if (value != null) this.seg.fields[34] = value; return this; } /** NK1.34 - Job Status */ get_nk1_34_jobStatus(): string | undefined { const val = this.seg.fields[34]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** NK1.35 - Race (set all values) */ set_nk1_35_race(values: CE[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[35] = arr; return this; } /** NK1.35 - Race (add single value) */ add_nk1_35_race(value: CE | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[35]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[35] = [fv]; } } return this; } /** NK1.35 - Race */ get_nk1_35_race(): CE[] | undefined { const val = this.seg.fields[35]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromCE(v)).filter((v): v is CE => v !== undefined); } /** NK1.36 - Handicap */ set_nk1_36_disability(value: string | null | undefined): this { if (value != null) this.seg.fields[36] = value; return this; } /** NK1.36 - Handicap */ get_nk1_36_disability(): string | undefined { const val = this.seg.fields[36]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** NK1.37 - Contact Person Social Security Number */ set_nk1_37_contactPersonSocialSecurityNumber(value: string | null | undefined): this { if (value != null) this.seg.fields[37] = value; return this; } /** NK1.37 - Contact Person Social Security Number */ get_nk1_37_contactPersonSocialSecurityNumber(): string | undefined { const val = this.seg.fields[37]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** NK1.38 - Next of Kin Birth Place */ set_nk1_38_nextOfKinBirthPlace(value: string | null | undefined): this { if (value != null) this.seg.fields[38] = value; return this; } /** NK1.38 - Next of Kin Birth Place */ get_nk1_38_nextOfKinBirthPlace(): string | undefined { const val = this.seg.fields[38]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** NK1.39 - VIP Indicator */ set_nk1_39_vip(value: string | null | undefined): this { if (value != null) this.seg.fields[39] = value; return this; } /** NK1.39 - VIP Indicator */ get_nk1_39_vip(): string | undefined { const val = this.seg.fields[39]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } build(): HL7v2Segment { return this.seg; } } // ====== OBX Segment ====== /** Get OBX.1 - Set ID - OBX */ export function OBX_1_set_id_obx(seg: HL7v2Segment): string | undefined { const val = seg.fields[1]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get OBX.2 - Value Type */ export function OBX_2_value_type(seg: HL7v2Segment): string | undefined { const val = seg.fields[2]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get OBX.3.1 - Identifier */ export function OBX_3_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 1); } /** Get OBX.3.2 - Text */ export function OBX_3_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 2); } /** Get OBX.3.3 - Name of Coding System */ export function OBX_3_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 3); } /** Get OBX.3.4 - Alternate Identifier */ export function OBX_3_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 4); } /** Get OBX.3.5 - Alternate Text */ export function OBX_3_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 5); } /** Get OBX.3.6 - Name of Alternate Coding System */ export function OBX_3_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 6); } /** Get OBX.4 - Observation Sub-ID */ export function OBX_4_observation_sub_id(seg: HL7v2Segment): string | undefined { const val = seg.fields[4]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get OBX.5 - Observation Value */ export function OBX_5_observation_value(seg: HL7v2Segment): string | undefined { const val = seg.fields[5]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get OBX.6.1 - Identifier */ export function OBX_6_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 1); } /** Get OBX.6.2 - Text */ export function OBX_6_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 2); } /** Get OBX.6.3 - Name of Coding System */ export function OBX_6_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 3); } /** Get OBX.6.4 - Alternate Identifier */ export function OBX_6_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 4); } /** Get OBX.6.5 - Alternate Text */ export function OBX_6_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 5); } /** Get OBX.6.6 - Name of Alternate Coding System */ export function OBX_6_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 6); } /** Get OBX.7 - References Range */ export function OBX_7_references_range(seg: HL7v2Segment): string | undefined { const val = seg.fields[7]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get OBX.8 - Abnormal Flags */ export function OBX_8_abnormal_flags(seg: HL7v2Segment): string | undefined { const val = seg.fields[8]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get OBX.9 - Probability */ export function OBX_9_probability(seg: HL7v2Segment): string | undefined { const val = seg.fields[9]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get OBX.10 - Nature of Abnormal Test */ export function OBX_10_nature_of_abnormal_test(seg: HL7v2Segment): string | undefined { const val = seg.fields[10]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get OBX.11 - Observation Result Status */ export function OBX_11_observation_result_status(seg: HL7v2Segment): string | undefined { const val = seg.fields[11]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get OBX.12 - Effective Date of Reference Range Values */ export function OBX_12_effective_date_of_reference_range_values(seg: HL7v2Segment): string | undefined { const val = seg.fields[12]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get OBX.13 - User Defined Access Checks */ export function OBX_13_user_defined_access_checks(seg: HL7v2Segment): string | undefined { const val = seg.fields[13]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get OBX.14 - Date/Time of the Observation */ export function OBX_14_observation_date_time(seg: HL7v2Segment): string | undefined { const val = seg.fields[14]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get OBX.15.1 - Identifier */ export function OBX_15_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[15]; return getComponent(field, 1); } /** Get OBX.15.2 - Text */ export function OBX_15_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[15]; return getComponent(field, 2); } /** Get OBX.15.3 - Name of Coding System */ export function OBX_15_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[15]; return getComponent(field, 3); } /** Get OBX.15.4 - Alternate Identifier */ export function OBX_15_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[15]; return getComponent(field, 4); } /** Get OBX.15.5 - Alternate Text */ export function OBX_15_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[15]; return getComponent(field, 5); } /** Get OBX.15.6 - Name of Alternate Coding System */ export function OBX_15_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[15]; return getComponent(field, 6); } /** Get OBX.16.1 - ID Number */ export function OBX_16_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 1); } /** Get OBX.16.2 - Family Name */ export function OBX_16_2_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 2); } /** Get OBX.16.2.1 - Surname */ export function OBX_16_2_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 2, 1); } /** Get OBX.16.2.2 - Own Surname Prefix */ export function OBX_16_2_2_own_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 2, 2); } /** Get OBX.16.2.3 - Own Surname */ export function OBX_16_2_3_own_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 2, 3); } /** Get OBX.16.2.4 - Surname Prefix From Partner/Spouse */ export function OBX_16_2_4_partner_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 2, 4); } /** Get OBX.16.2.5 - Surname From Partner/Spouse */ export function OBX_16_2_5_partner_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 2, 5); } /** Get OBX.16.3 - Given Name */ export function OBX_16_3_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 3); } /** Get OBX.16.4 - Second and Further Given Names or Initials Thereof */ export function OBX_16_4_additional_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 4); } /** Get OBX.16.5 - Suffix (e.g., JR or III) */ export function OBX_16_5_suffix(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 5); } /** Get OBX.16.6 - Prefix (e.g., DR) */ export function OBX_16_6_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 6); } /** Get OBX.16.7 - Degree (e.g., MD) */ export function OBX_16_7_qualification(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 7); } /** Get OBX.16.8 - Source Table */ export function OBX_16_8_source_table(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 8); } /** Get OBX.16.9 - Assigning Authority */ export function OBX_16_9_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 9); } /** Get OBX.16.9.1 - Namespace ID */ export function OBX_16_9_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 9, 1); } /** Get OBX.16.9.2 - Universal ID */ export function OBX_16_9_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 9, 2); } /** Get OBX.16.9.3 - Universal ID Type */ export function OBX_16_9_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 9, 3); } /** Get OBX.16.10 - Name Type Code */ export function OBX_16_10_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 10); } /** Get OBX.16.11 - Identifier Check Digit */ export function OBX_16_11_check_digit(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 11); } /** Get OBX.16.12 - Check Digit Scheme */ export function OBX_16_12_check_digit_scheme(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 12); } /** Get OBX.16.13 - Identifier Type Code */ export function OBX_16_13_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 13); } /** Get OBX.16.14 - Assigning Facility */ export function OBX_16_14_assigner(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 14); } /** Get OBX.16.14.1 - Namespace ID */ export function OBX_16_14_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 14, 1); } /** Get OBX.16.14.2 - Universal ID */ export function OBX_16_14_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 14, 2); } /** Get OBX.16.14.3 - Universal ID Type */ export function OBX_16_14_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 14, 3); } /** Get OBX.16.15 - Name Representation Code */ export function OBX_16_15_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 15); } /** Get OBX.16.16 - Name Context */ export function OBX_16_16_context(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 16); } /** Get OBX.16.16.1 - Identifier */ export function OBX_16_16_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 16, 1); } /** Get OBX.16.16.2 - Text */ export function OBX_16_16_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 16, 2); } /** Get OBX.16.16.3 - Name of Coding System */ export function OBX_16_16_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 16, 3); } /** Get OBX.16.16.4 - Alternate Identifier */ export function OBX_16_16_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 16, 4); } /** Get OBX.16.16.5 - Alternate Text */ export function OBX_16_16_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 16, 5); } /** Get OBX.16.16.6 - Name of Alternate Coding System */ export function OBX_16_16_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 16, 6); } /** Get OBX.16.17 - Name Validity Range */ export function OBX_16_17_period(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 17); } /** Get OBX.16.17.1 - Range Start Date/Time */ export function OBX_16_17_1_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 17, 1); } /** Get OBX.16.17.2 - Range End Date/Time */ export function OBX_16_17_2_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 17, 2); } /** Get OBX.16.18 - Name Assembly Order */ export function OBX_16_18_order(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 18); } /** Get OBX.16.19 - Effective Date */ export function OBX_16_19_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 19); } /** Get OBX.16.20 - Expiration Date */ export function OBX_16_20_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 20); } /** Get OBX.16.21 - Professional Suffix */ export function OBX_16_21_credential(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 21); } /** Get OBX.16.22 - Assigning Jurisdiction */ export function OBX_16_22_jurisdiction(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 22); } /** Get OBX.16.22.1 - Identifier */ export function OBX_16_22_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 22, 1); } /** Get OBX.16.22.2 - Text */ export function OBX_16_22_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 22, 2); } /** Get OBX.16.22.3 - Name of Coding System */ export function OBX_16_22_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 22, 3); } /** Get OBX.16.22.4 - Alternate Identifier */ export function OBX_16_22_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 22, 4); } /** Get OBX.16.22.5 - Alternate Text */ export function OBX_16_22_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 22, 5); } /** Get OBX.16.22.6 - Name of Alternate Coding System */ export function OBX_16_22_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 22, 6); } /** Get OBX.16.22.7 - Coding System Version ID */ export function OBX_16_22_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 22, 7); } /** Get OBX.16.22.8 - Alternate Coding System Version ID */ export function OBX_16_22_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 22, 8); } /** Get OBX.16.22.9 - Original Text */ export function OBX_16_22_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 22, 9); } /** Get OBX.16.23 - Assigning Agency or Department */ export function OBX_16_23_department(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 23); } /** Get OBX.16.23.1 - Identifier */ export function OBX_16_23_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 23, 1); } /** Get OBX.16.23.2 - Text */ export function OBX_16_23_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 23, 2); } /** Get OBX.16.23.3 - Name of Coding System */ export function OBX_16_23_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 23, 3); } /** Get OBX.16.23.4 - Alternate Identifier */ export function OBX_16_23_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 23, 4); } /** Get OBX.16.23.5 - Alternate Text */ export function OBX_16_23_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 23, 5); } /** Get OBX.16.23.6 - Name of Alternate Coding System */ export function OBX_16_23_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 23, 6); } /** Get OBX.16.23.7 - Coding System Version ID */ export function OBX_16_23_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 23, 7); } /** Get OBX.16.23.8 - Alternate Coding System Version ID */ export function OBX_16_23_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 23, 8); } /** Get OBX.16.23.9 - Original Text */ export function OBX_16_23_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 23, 9); } /** Get OBX.17.1 - Identifier */ export function OBX_17_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 1); } /** Get OBX.17.2 - Text */ export function OBX_17_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 2); } /** Get OBX.17.3 - Name of Coding System */ export function OBX_17_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 3); } /** Get OBX.17.4 - Alternate Identifier */ export function OBX_17_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 4); } /** Get OBX.17.5 - Alternate Text */ export function OBX_17_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 5); } /** Get OBX.17.6 - Name of Alternate Coding System */ export function OBX_17_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 6); } /** Get OBX.18.1 - Entity Identifier */ export function OBX_18_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 1); } /** Get OBX.18.2 - Namespace ID */ export function OBX_18_2_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 2); } /** Get OBX.18.3 - Universal ID */ export function OBX_18_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 3); } /** Get OBX.18.4 - Universal ID Type */ export function OBX_18_4_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 4); } /** Get OBX.19 - Date/Time of the Analysis */ export function OBX_19_analysis_date_time(seg: HL7v2Segment): string | undefined { const val = seg.fields[19]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get OBX.20.1 - Identifier */ export function OBX_20_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[20]; return getComponent(field, 1); } /** Get OBX.20.2 - Text */ export function OBX_20_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[20]; return getComponent(field, 2); } /** Get OBX.20.3 - Name of Coding System */ export function OBX_20_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[20]; return getComponent(field, 3); } /** Get OBX.20.4 - Alternate Identifier */ export function OBX_20_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[20]; return getComponent(field, 4); } /** Get OBX.20.5 - Alternate Text */ export function OBX_20_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[20]; return getComponent(field, 5); } /** Get OBX.20.6 - Name of Alternate Coding System */ export function OBX_20_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[20]; return getComponent(field, 6); } /** Get OBX.20.7 - Coding System Version ID */ export function OBX_20_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[20]; return getComponent(field, 7); } /** Get OBX.20.8 - Alternate Coding System Version ID */ export function OBX_20_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[20]; return getComponent(field, 8); } /** Get OBX.20.9 - Original Text */ export function OBX_20_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[20]; return getComponent(field, 9); } /** Get OBX.21.1 - Entity Identifier */ export function OBX_21_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[21]; return getComponent(field, 1); } /** Get OBX.21.2 - Namespace ID */ export function OBX_21_2_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[21]; return getComponent(field, 2); } /** Get OBX.21.3 - Universal ID */ export function OBX_21_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[21]; return getComponent(field, 3); } /** Get OBX.21.4 - Universal ID Type */ export function OBX_21_4_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[21]; return getComponent(field, 4); } /** Get OBX.22.1 - Identifier */ export function OBX_22_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[22]; return getComponent(field, 1); } /** Get OBX.22.2 - Text */ export function OBX_22_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[22]; return getComponent(field, 2); } /** Get OBX.22.3 - Name of Coding System */ export function OBX_22_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[22]; return getComponent(field, 3); } /** Get OBX.22.4 - Alternate Identifier */ export function OBX_22_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[22]; return getComponent(field, 4); } /** Get OBX.22.5 - Alternate Text */ export function OBX_22_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[22]; return getComponent(field, 5); } /** Get OBX.22.6 - Name of Alternate Coding System */ export function OBX_22_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[22]; return getComponent(field, 6); } /** Get OBX.22.7 - Coding System Version ID */ export function OBX_22_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[22]; return getComponent(field, 7); } /** Get OBX.22.8 - Alternate Coding System Version ID */ export function OBX_22_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[22]; return getComponent(field, 8); } /** Get OBX.22.9 - Original Text */ export function OBX_22_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[22]; return getComponent(field, 9); } /** Get OBX.23.1 - Organization Name */ export function OBX_23_1_name(seg: HL7v2Segment): string | undefined { const field = seg.fields[23]; return getComponent(field, 1); } /** Get OBX.23.2 - Organization Name Type Code */ export function OBX_23_2_name_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[23]; return getComponent(field, 2); } /** Get OBX.23.3 - ID Number */ export function OBX_23_3_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[23]; return getComponent(field, 3); } /** Get OBX.23.4 - Check Digit */ export function OBX_23_4_check_digit(seg: HL7v2Segment): string | undefined { const field = seg.fields[23]; return getComponent(field, 4); } /** Get OBX.23.5 - Check Digit Scheme */ export function OBX_23_5_check_digit_scheme(seg: HL7v2Segment): string | undefined { const field = seg.fields[23]; return getComponent(field, 5); } /** Get OBX.23.6 - Assigning Authority */ export function OBX_23_6_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[23]; return getComponent(field, 6); } /** Get OBX.23.6.1 - Namespace ID */ export function OBX_23_6_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[23]; return getComponent(field, 6, 1); } /** Get OBX.23.6.2 - Universal ID */ export function OBX_23_6_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[23]; return getComponent(field, 6, 2); } /** Get OBX.23.6.3 - Universal ID Type */ export function OBX_23_6_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[23]; return getComponent(field, 6, 3); } /** Get OBX.23.7 - Identifier Type Code */ export function OBX_23_7_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[23]; return getComponent(field, 7); } /** Get OBX.23.8 - Assigning Facility */ export function OBX_23_8_assigner(seg: HL7v2Segment): string | undefined { const field = seg.fields[23]; return getComponent(field, 8); } /** Get OBX.23.8.1 - Namespace ID */ export function OBX_23_8_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[23]; return getComponent(field, 8, 1); } /** Get OBX.23.8.2 - Universal ID */ export function OBX_23_8_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[23]; return getComponent(field, 8, 2); } /** Get OBX.23.8.3 - Universal ID Type */ export function OBX_23_8_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[23]; return getComponent(field, 8, 3); } /** Get OBX.23.9 - Name Representation Code */ export function OBX_23_9_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[23]; return getComponent(field, 9); } /** Get OBX.23.10 - Organization Identifier */ export function OBX_23_10_organization_id(seg: HL7v2Segment): string | undefined { const field = seg.fields[23]; return getComponent(field, 10); } /** Get OBX.24.1 - Street Address */ export function OBX_24_1_line1(seg: HL7v2Segment): string | undefined { const field = seg.fields[24]; return getComponent(field, 1); } /** Get OBX.24.1.1 - Street or Mailing Address */ export function OBX_24_1_1_line(seg: HL7v2Segment): string | undefined { const field = seg.fields[24]; return getComponent(field, 1, 1); } /** Get OBX.24.1.2 - Street Name */ export function OBX_24_1_2_street_name(seg: HL7v2Segment): string | undefined { const field = seg.fields[24]; return getComponent(field, 1, 2); } /** Get OBX.24.1.3 - Dwelling Number */ export function OBX_24_1_3_house_number(seg: HL7v2Segment): string | undefined { const field = seg.fields[24]; return getComponent(field, 1, 3); } /** Get OBX.24.2 - Other Designation */ export function OBX_24_2_line2(seg: HL7v2Segment): string | undefined { const field = seg.fields[24]; return getComponent(field, 2); } /** Get OBX.24.3 - City */ export function OBX_24_3_city(seg: HL7v2Segment): string | undefined { const field = seg.fields[24]; return getComponent(field, 3); } /** Get OBX.24.4 - State or Province */ export function OBX_24_4_state(seg: HL7v2Segment): string | undefined { const field = seg.fields[24]; return getComponent(field, 4); } /** Get OBX.24.5 - Zip or Postal Code */ export function OBX_24_5_postal_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[24]; return getComponent(field, 5); } /** Get OBX.24.6 - Country */ export function OBX_24_6_country(seg: HL7v2Segment): string | undefined { const field = seg.fields[24]; return getComponent(field, 6); } /** Get OBX.24.7 - Address Type */ export function OBX_24_7_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[24]; return getComponent(field, 7); } /** Get OBX.24.8 - Other Geographic Designation */ export function OBX_24_8_additional_locator(seg: HL7v2Segment): string | undefined { const field = seg.fields[24]; return getComponent(field, 8); } /** Get OBX.24.9 - County/Parish Code */ export function OBX_24_9_district(seg: HL7v2Segment): string | undefined { const field = seg.fields[24]; return getComponent(field, 9); } /** Get OBX.24.10 - Census Tract */ export function OBX_24_10_census_tract(seg: HL7v2Segment): string | undefined { const field = seg.fields[24]; return getComponent(field, 10); } /** Get OBX.24.11 - Address Representation Code */ export function OBX_24_11_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[24]; return getComponent(field, 11); } /** Get OBX.24.12 - Address Validity Range */ export function OBX_24_12_period(seg: HL7v2Segment): string | undefined { const field = seg.fields[24]; return getComponent(field, 12); } /** Get OBX.24.12.1 - Range Start Date/Time */ export function OBX_24_12_1_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[24]; return getComponent(field, 12, 1); } /** Get OBX.24.12.2 - Range End Date/Time */ export function OBX_24_12_2_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[24]; return getComponent(field, 12, 2); } /** Get OBX.24.13 - Effective Date */ export function OBX_24_13_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[24]; return getComponent(field, 13); } /** Get OBX.24.14 - Expiration Date */ export function OBX_24_14_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[24]; return getComponent(field, 14); } /** Get OBX.25.1 - ID Number */ export function OBX_25_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 1); } /** Get OBX.25.2 - Family Name */ export function OBX_25_2_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 2); } /** Get OBX.25.2.1 - Surname */ export function OBX_25_2_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 2, 1); } /** Get OBX.25.2.2 - Own Surname Prefix */ export function OBX_25_2_2_own_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 2, 2); } /** Get OBX.25.2.3 - Own Surname */ export function OBX_25_2_3_own_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 2, 3); } /** Get OBX.25.2.4 - Surname Prefix From Partner/Spouse */ export function OBX_25_2_4_partner_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 2, 4); } /** Get OBX.25.2.5 - Surname From Partner/Spouse */ export function OBX_25_2_5_partner_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 2, 5); } /** Get OBX.25.3 - Given Name */ export function OBX_25_3_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 3); } /** Get OBX.25.4 - Second and Further Given Names or Initials Thereof */ export function OBX_25_4_additional_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 4); } /** Get OBX.25.5 - Suffix (e.g., JR or III) */ export function OBX_25_5_suffix(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 5); } /** Get OBX.25.6 - Prefix (e.g., DR) */ export function OBX_25_6_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 6); } /** Get OBX.25.7 - Degree (e.g., MD) */ export function OBX_25_7_qualification(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 7); } /** Get OBX.25.8 - Source Table */ export function OBX_25_8_source_table(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 8); } /** Get OBX.25.9 - Assigning Authority */ export function OBX_25_9_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 9); } /** Get OBX.25.9.1 - Namespace ID */ export function OBX_25_9_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 9, 1); } /** Get OBX.25.9.2 - Universal ID */ export function OBX_25_9_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 9, 2); } /** Get OBX.25.9.3 - Universal ID Type */ export function OBX_25_9_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 9, 3); } /** Get OBX.25.10 - Name Type Code */ export function OBX_25_10_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 10); } /** Get OBX.25.11 - Identifier Check Digit */ export function OBX_25_11_check_digit(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 11); } /** Get OBX.25.12 - Check Digit Scheme */ export function OBX_25_12_check_digit_scheme(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 12); } /** Get OBX.25.13 - Identifier Type Code */ export function OBX_25_13_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 13); } /** Get OBX.25.14 - Assigning Facility */ export function OBX_25_14_assigner(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 14); } /** Get OBX.25.14.1 - Namespace ID */ export function OBX_25_14_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 14, 1); } /** Get OBX.25.14.2 - Universal ID */ export function OBX_25_14_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 14, 2); } /** Get OBX.25.14.3 - Universal ID Type */ export function OBX_25_14_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 14, 3); } /** Get OBX.25.15 - Name Representation Code */ export function OBX_25_15_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 15); } /** Get OBX.25.16 - Name Context */ export function OBX_25_16_context(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 16); } /** Get OBX.25.16.1 - Identifier */ export function OBX_25_16_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 16, 1); } /** Get OBX.25.16.2 - Text */ export function OBX_25_16_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 16, 2); } /** Get OBX.25.16.3 - Name of Coding System */ export function OBX_25_16_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 16, 3); } /** Get OBX.25.16.4 - Alternate Identifier */ export function OBX_25_16_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 16, 4); } /** Get OBX.25.16.5 - Alternate Text */ export function OBX_25_16_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 16, 5); } /** Get OBX.25.16.6 - Name of Alternate Coding System */ export function OBX_25_16_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 16, 6); } /** Get OBX.25.17 - Name Validity Range */ export function OBX_25_17_period(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 17); } /** Get OBX.25.17.1 - Range Start Date/Time */ export function OBX_25_17_1_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 17, 1); } /** Get OBX.25.17.2 - Range End Date/Time */ export function OBX_25_17_2_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 17, 2); } /** Get OBX.25.18 - Name Assembly Order */ export function OBX_25_18_order(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 18); } /** Get OBX.25.19 - Effective Date */ export function OBX_25_19_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 19); } /** Get OBX.25.20 - Expiration Date */ export function OBX_25_20_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 20); } /** Get OBX.25.21 - Professional Suffix */ export function OBX_25_21_credential(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 21); } /** Get OBX.25.22 - Assigning Jurisdiction */ export function OBX_25_22_jurisdiction(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 22); } /** Get OBX.25.22.1 - Identifier */ export function OBX_25_22_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 22, 1); } /** Get OBX.25.22.2 - Text */ export function OBX_25_22_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 22, 2); } /** Get OBX.25.22.3 - Name of Coding System */ export function OBX_25_22_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 22, 3); } /** Get OBX.25.22.4 - Alternate Identifier */ export function OBX_25_22_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 22, 4); } /** Get OBX.25.22.5 - Alternate Text */ export function OBX_25_22_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 22, 5); } /** Get OBX.25.22.6 - Name of Alternate Coding System */ export function OBX_25_22_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 22, 6); } /** Get OBX.25.22.7 - Coding System Version ID */ export function OBX_25_22_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 22, 7); } /** Get OBX.25.22.8 - Alternate Coding System Version ID */ export function OBX_25_22_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 22, 8); } /** Get OBX.25.22.9 - Original Text */ export function OBX_25_22_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 22, 9); } /** Get OBX.25.23 - Assigning Agency or Department */ export function OBX_25_23_department(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 23); } /** Get OBX.25.23.1 - Identifier */ export function OBX_25_23_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 23, 1); } /** Get OBX.25.23.2 - Text */ export function OBX_25_23_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 23, 2); } /** Get OBX.25.23.3 - Name of Coding System */ export function OBX_25_23_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 23, 3); } /** Get OBX.25.23.4 - Alternate Identifier */ export function OBX_25_23_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 23, 4); } /** Get OBX.25.23.5 - Alternate Text */ export function OBX_25_23_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 23, 5); } /** Get OBX.25.23.6 - Name of Alternate Coding System */ export function OBX_25_23_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 23, 6); } /** Get OBX.25.23.7 - Coding System Version ID */ export function OBX_25_23_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 23, 7); } /** Get OBX.25.23.8 - Alternate Coding System Version ID */ export function OBX_25_23_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 23, 8); } /** Get OBX.25.23.9 - Original Text */ export function OBX_25_23_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[25]; return getComponent(field, 23, 9); } export class OBXBuilder { private seg: HL7v2Segment = { segment: "OBX", fields: {} }; /** OBX.1 - Set ID - OBX */ set_obx_1_setIdObx(value: string | null | undefined): this { if (value != null) this.seg.fields[1] = value; return this; } /** OBX.1 - Set ID - OBX */ get_obx_1_setIdObx(): string | undefined { const val = this.seg.fields[1]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** OBX.2 - Value Type */ set_obx_2_valueType(value: string | null | undefined): this { if (value != null) this.seg.fields[2] = value; return this; } /** OBX.2 - Value Type */ get_obx_2_valueType(): string | undefined { const val = this.seg.fields[2]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** OBX.3 - Observation Identifier */ set_obx_3_observationIdentifier(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[3] = fv; return this; } /** OBX.3 - Observation Identifier */ get_obx_3_observationIdentifier(): CE | undefined { return fromCE(this.seg.fields[3]); } /** OBX.4 - Observation Sub-ID */ set_obx_4_observationSubId(value: string | null | undefined): this { if (value != null) this.seg.fields[4] = value; return this; } /** OBX.4 - Observation Sub-ID */ get_obx_4_observationSubId(): string | undefined { const val = this.seg.fields[4]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** OBX.5 - Observation Value */ set_obx_5_observationValue(value: string | null | undefined): this { if (value != null) this.seg.fields[5] = value; return this; } /** OBX.5 - Observation Value */ get_obx_5_observationValue(): string | undefined { const val = this.seg.fields[5]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** OBX.6 - Units */ set_obx_6_unit(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[6] = fv; return this; } /** OBX.6 - Units */ get_obx_6_unit(): CE | undefined { return fromCE(this.seg.fields[6]); } /** OBX.7 - References Range */ set_obx_7_referencesRange(value: string | null | undefined): this { if (value != null) this.seg.fields[7] = value; return this; } /** OBX.7 - References Range */ get_obx_7_referencesRange(): string | undefined { const val = this.seg.fields[7]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** OBX.8 - Abnormal Flags */ set_obx_8_abnormalFlags(value: string | null | undefined): this { if (value != null) this.seg.fields[8] = value; return this; } /** OBX.8 - Abnormal Flags */ get_obx_8_abnormalFlags(): string | undefined { const val = this.seg.fields[8]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** OBX.9 - Probability */ set_obx_9_probability(value: string | null | undefined): this { if (value != null) this.seg.fields[9] = value; return this; } /** OBX.9 - Probability */ get_obx_9_probability(): string | undefined { const val = this.seg.fields[9]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** OBX.10 - Nature of Abnormal Test */ set_obx_10_natureOfAbnormalTest(value: string | null | undefined): this { if (value != null) this.seg.fields[10] = value; return this; } /** OBX.10 - Nature of Abnormal Test */ get_obx_10_natureOfAbnormalTest(): string | undefined { const val = this.seg.fields[10]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** OBX.11 - Observation Result Status */ set_obx_11_observationResultStatus(value: string | null | undefined): this { if (value != null) this.seg.fields[11] = value; return this; } /** OBX.11 - Observation Result Status */ get_obx_11_observationResultStatus(): string | undefined { const val = this.seg.fields[11]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** OBX.12 - Effective Date of Reference Range Values */ set_obx_12_effectiveDateOfReferenceRangeValues(value: string | null | undefined): this { if (value != null) this.seg.fields[12] = value; return this; } /** OBX.12 - Effective Date of Reference Range Values */ get_obx_12_effectiveDateOfReferenceRangeValues(): string | undefined { const val = this.seg.fields[12]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** OBX.13 - User Defined Access Checks */ set_obx_13_userDefinedAccessChecks(value: string | null | undefined): this { if (value != null) this.seg.fields[13] = value; return this; } /** OBX.13 - User Defined Access Checks */ get_obx_13_userDefinedAccessChecks(): string | undefined { const val = this.seg.fields[13]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** OBX.14 - Date/Time of the Observation */ set_obx_14_observationDateTime(value: string | null | undefined): this { if (value != null) this.seg.fields[14] = value; return this; } /** OBX.14 - Date/Time of the Observation */ get_obx_14_observationDateTime(): string | undefined { const val = this.seg.fields[14]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** OBX.15 - Producer's Reference */ set_obx_15_producersReference(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[15] = fv; return this; } /** OBX.15 - Producer's Reference */ get_obx_15_producersReference(): CE | undefined { return fromCE(this.seg.fields[15]); } /** OBX.16 - Responsible Observer (set all values) */ set_obx_16_responsibleObserver(values: XCN[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[16] = arr; return this; } /** OBX.16 - Responsible Observer (add single value) */ add_obx_16_responsibleObserver(value: XCN | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[16]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[16] = [fv]; } } return this; } /** OBX.16 - Responsible Observer */ get_obx_16_responsibleObserver(): XCN[] | undefined { const val = this.seg.fields[16]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXCN(v)).filter((v): v is XCN => v !== undefined); } /** OBX.17 - Observation Method (set all values) */ set_obx_17_observationMethod(values: CE[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[17] = arr; return this; } /** OBX.17 - Observation Method (add single value) */ add_obx_17_observationMethod(value: CE | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[17]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[17] = [fv]; } } return this; } /** OBX.17 - Observation Method */ get_obx_17_observationMethod(): CE[] | undefined { const val = this.seg.fields[17]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromCE(v)).filter((v): v is CE => v !== undefined); } /** OBX.18 - Equipment Instance Identifier (set all values) */ set_obx_18_equipmentInstanceIdentifier(values: EI[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[18] = arr; return this; } /** OBX.18 - Equipment Instance Identifier (add single value) */ add_obx_18_equipmentInstanceIdentifier(value: EI | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[18]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[18] = [fv]; } } return this; } /** OBX.18 - Equipment Instance Identifier */ get_obx_18_equipmentInstanceIdentifier(): EI[] | undefined { const val = this.seg.fields[18]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromEI(v)).filter((v): v is EI => v !== undefined); } /** OBX.19 - Date/Time of the Analysis */ set_obx_19_analysisDateTime(value: string | null | undefined): this { if (value != null) this.seg.fields[19] = value; return this; } /** OBX.19 - Date/Time of the Analysis */ get_obx_19_analysisDateTime(): string | undefined { const val = this.seg.fields[19]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** OBX.20 - Observation Site (set all values) */ set_obx_20_observationSite(values: CWE[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[20] = arr; return this; } /** OBX.20 - Observation Site (add single value) */ add_obx_20_observationSite(value: CWE | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[20]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[20] = [fv]; } } return this; } /** OBX.20 - Observation Site */ get_obx_20_observationSite(): CWE[] | undefined { const val = this.seg.fields[20]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromCWE(v)).filter((v): v is CWE => v !== undefined); } /** OBX.21 - Observation Instance Identifier */ set_obx_21_observationInstanceIdentifier(value: EI | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[21] = fv; return this; } /** OBX.21 - Observation Instance Identifier */ get_obx_21_observationInstanceIdentifier(): EI | undefined { return fromEI(this.seg.fields[21]); } /** OBX.22 - Mood Identifier */ set_obx_22_moodIdentifier(value: CNE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[22] = fv; return this; } /** OBX.22 - Mood Identifier */ get_obx_22_moodIdentifier(): CNE | undefined { return fromCNE(this.seg.fields[22]); } /** OBX.23 - Performing Organization Name */ set_obx_23_performingOrganizationName(value: XON | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[23] = fv; return this; } /** OBX.23 - Performing Organization Name */ get_obx_23_performingOrganizationName(): XON | undefined { return fromXON(this.seg.fields[23]); } /** OBX.24 - Performing Organization Address */ set_obx_24_performingOrganizationAddress(value: XAD | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[24] = fv; return this; } /** OBX.24 - Performing Organization Address */ get_obx_24_performingOrganizationAddress(): XAD | undefined { return fromXAD(this.seg.fields[24]); } /** OBX.25 - Performing Organization Medical Director */ set_obx_25_performingOrganizationMedicalDirector(value: XCN | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[25] = fv; return this; } /** OBX.25 - Performing Organization Medical Director */ get_obx_25_performingOrganizationMedicalDirector(): XCN | undefined { return fromXCN(this.seg.fields[25]); } build(): HL7v2Segment { return this.seg; } } // ====== PD1 Segment ====== /** Get PD1.1 - Living Dependency */ export function PD1_1_living_dependency(seg: HL7v2Segment): string | undefined { const val = seg.fields[1]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PD1.2 - Living Arrangement */ export function PD1_2_living_arrangement(seg: HL7v2Segment): string | undefined { const val = seg.fields[2]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PD1.3.1 - Organization Name */ export function PD1_3_1_name(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 1); } /** Get PD1.3.2 - Organization Name Type Code */ export function PD1_3_2_name_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 2); } /** Get PD1.3.3 - ID Number */ export function PD1_3_3_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 3); } /** Get PD1.3.4 - Check Digit */ export function PD1_3_4_check_digit(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 4); } /** Get PD1.3.5 - Check Digit Scheme */ export function PD1_3_5_check_digit_scheme(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 5); } /** Get PD1.3.6 - Assigning Authority */ export function PD1_3_6_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 6); } /** Get PD1.3.6.1 - Namespace ID */ export function PD1_3_6_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 6, 1); } /** Get PD1.3.6.2 - Universal ID */ export function PD1_3_6_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 6, 2); } /** Get PD1.3.6.3 - Universal ID Type */ export function PD1_3_6_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 6, 3); } /** Get PD1.3.7 - Identifier Type Code */ export function PD1_3_7_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 7); } /** Get PD1.3.8 - Assigning Facility */ export function PD1_3_8_assigner(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 8); } /** Get PD1.3.8.1 - Namespace ID */ export function PD1_3_8_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 8, 1); } /** Get PD1.3.8.2 - Universal ID */ export function PD1_3_8_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 8, 2); } /** Get PD1.3.8.3 - Universal ID Type */ export function PD1_3_8_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 8, 3); } /** Get PD1.3.9 - Name Representation Code */ export function PD1_3_9_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 9); } /** Get PD1.3.10 - Organization Identifier */ export function PD1_3_10_organization_id(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 10); } /** Get PD1.4.1 - ID Number */ export function PD1_4_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 1); } /** Get PD1.4.2 - Family Name */ export function PD1_4_2_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 2); } /** Get PD1.4.2.1 - Surname */ export function PD1_4_2_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 2, 1); } /** Get PD1.4.2.2 - Own Surname Prefix */ export function PD1_4_2_2_own_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 2, 2); } /** Get PD1.4.2.3 - Own Surname */ export function PD1_4_2_3_own_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 2, 3); } /** Get PD1.4.2.4 - Surname Prefix From Partner/Spouse */ export function PD1_4_2_4_partner_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 2, 4); } /** Get PD1.4.2.5 - Surname From Partner/Spouse */ export function PD1_4_2_5_partner_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 2, 5); } /** Get PD1.4.3 - Given Name */ export function PD1_4_3_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 3); } /** Get PD1.4.4 - Second and Further Given Names or Initials Thereof */ export function PD1_4_4_additional_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 4); } /** Get PD1.4.5 - Suffix (e.g., JR or III) */ export function PD1_4_5_suffix(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 5); } /** Get PD1.4.6 - Prefix (e.g., DR) */ export function PD1_4_6_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 6); } /** Get PD1.4.7 - Degree (e.g., MD) */ export function PD1_4_7_qualification(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 7); } /** Get PD1.4.8 - Source Table */ export function PD1_4_8_source_table(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 8); } /** Get PD1.4.9 - Assigning Authority */ export function PD1_4_9_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 9); } /** Get PD1.4.9.1 - Namespace ID */ export function PD1_4_9_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 9, 1); } /** Get PD1.4.9.2 - Universal ID */ export function PD1_4_9_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 9, 2); } /** Get PD1.4.9.3 - Universal ID Type */ export function PD1_4_9_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 9, 3); } /** Get PD1.4.10 - Name Type Code */ export function PD1_4_10_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 10); } /** Get PD1.4.11 - Identifier Check Digit */ export function PD1_4_11_check_digit(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 11); } /** Get PD1.4.12 - Check Digit Scheme */ export function PD1_4_12_check_digit_scheme(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 12); } /** Get PD1.4.13 - Identifier Type Code */ export function PD1_4_13_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 13); } /** Get PD1.4.14 - Assigning Facility */ export function PD1_4_14_assigner(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 14); } /** Get PD1.4.14.1 - Namespace ID */ export function PD1_4_14_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 14, 1); } /** Get PD1.4.14.2 - Universal ID */ export function PD1_4_14_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 14, 2); } /** Get PD1.4.14.3 - Universal ID Type */ export function PD1_4_14_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 14, 3); } /** Get PD1.4.15 - Name Representation Code */ export function PD1_4_15_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 15); } /** Get PD1.4.16 - Name Context */ export function PD1_4_16_context(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 16); } /** Get PD1.4.16.1 - Identifier */ export function PD1_4_16_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 16, 1); } /** Get PD1.4.16.2 - Text */ export function PD1_4_16_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 16, 2); } /** Get PD1.4.16.3 - Name of Coding System */ export function PD1_4_16_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 16, 3); } /** Get PD1.4.16.4 - Alternate Identifier */ export function PD1_4_16_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 16, 4); } /** Get PD1.4.16.5 - Alternate Text */ export function PD1_4_16_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 16, 5); } /** Get PD1.4.16.6 - Name of Alternate Coding System */ export function PD1_4_16_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 16, 6); } /** Get PD1.4.17 - Name Validity Range */ export function PD1_4_17_period(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 17); } /** Get PD1.4.17.1 - Range Start Date/Time */ export function PD1_4_17_1_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 17, 1); } /** Get PD1.4.17.2 - Range End Date/Time */ export function PD1_4_17_2_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 17, 2); } /** Get PD1.4.18 - Name Assembly Order */ export function PD1_4_18_order(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 18); } /** Get PD1.4.19 - Effective Date */ export function PD1_4_19_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 19); } /** Get PD1.4.20 - Expiration Date */ export function PD1_4_20_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 20); } /** Get PD1.4.21 - Professional Suffix */ export function PD1_4_21_credential(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 21); } /** Get PD1.4.22 - Assigning Jurisdiction */ export function PD1_4_22_jurisdiction(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 22); } /** Get PD1.4.22.1 - Identifier */ export function PD1_4_22_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 22, 1); } /** Get PD1.4.22.2 - Text */ export function PD1_4_22_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 22, 2); } /** Get PD1.4.22.3 - Name of Coding System */ export function PD1_4_22_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 22, 3); } /** Get PD1.4.22.4 - Alternate Identifier */ export function PD1_4_22_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 22, 4); } /** Get PD1.4.22.5 - Alternate Text */ export function PD1_4_22_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 22, 5); } /** Get PD1.4.22.6 - Name of Alternate Coding System */ export function PD1_4_22_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 22, 6); } /** Get PD1.4.22.7 - Coding System Version ID */ export function PD1_4_22_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 22, 7); } /** Get PD1.4.22.8 - Alternate Coding System Version ID */ export function PD1_4_22_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 22, 8); } /** Get PD1.4.22.9 - Original Text */ export function PD1_4_22_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 22, 9); } /** Get PD1.4.23 - Assigning Agency or Department */ export function PD1_4_23_department(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 23); } /** Get PD1.4.23.1 - Identifier */ export function PD1_4_23_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 23, 1); } /** Get PD1.4.23.2 - Text */ export function PD1_4_23_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 23, 2); } /** Get PD1.4.23.3 - Name of Coding System */ export function PD1_4_23_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 23, 3); } /** Get PD1.4.23.4 - Alternate Identifier */ export function PD1_4_23_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 23, 4); } /** Get PD1.4.23.5 - Alternate Text */ export function PD1_4_23_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 23, 5); } /** Get PD1.4.23.6 - Name of Alternate Coding System */ export function PD1_4_23_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 23, 6); } /** Get PD1.4.23.7 - Coding System Version ID */ export function PD1_4_23_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 23, 7); } /** Get PD1.4.23.8 - Alternate Coding System Version ID */ export function PD1_4_23_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 23, 8); } /** Get PD1.4.23.9 - Original Text */ export function PD1_4_23_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 23, 9); } /** Get PD1.5 - Student Indicator */ export function PD1_5_student(seg: HL7v2Segment): string | undefined { const val = seg.fields[5]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PD1.6 - Handicap */ export function PD1_6_disability(seg: HL7v2Segment): string | undefined { const val = seg.fields[6]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PD1.7 - Living Will Code */ export function PD1_7_living_will(seg: HL7v2Segment): string | undefined { const val = seg.fields[7]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PD1.8 - Organ Donor Code */ export function PD1_8_organ_donor_code(seg: HL7v2Segment): string | undefined { const val = seg.fields[8]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PD1.9 - Separate Bill */ export function PD1_9_separate_bill(seg: HL7v2Segment): string | undefined { const val = seg.fields[9]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PD1.10.1 - ID Number */ export function PD1_10_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 1); } /** Get PD1.10.2 - Check Digit */ export function PD1_10_2_check_digit(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 2); } /** Get PD1.10.3 - Check Digit Scheme */ export function PD1_10_3_check_digit_scheme(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 3); } /** Get PD1.10.4 - Assigning Authority */ export function PD1_10_4_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 4); } /** Get PD1.10.4.1 - Namespace ID */ export function PD1_10_4_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 4, 1); } /** Get PD1.10.4.2 - Universal ID */ export function PD1_10_4_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 4, 2); } /** Get PD1.10.4.3 - Universal ID Type */ export function PD1_10_4_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 4, 3); } /** Get PD1.10.5 - Identifier Type Code */ export function PD1_10_5_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 5); } /** Get PD1.10.6 - Assigning Facility */ export function PD1_10_6_assigner(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 6); } /** Get PD1.10.6.1 - Namespace ID */ export function PD1_10_6_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 6, 1); } /** Get PD1.10.6.2 - Universal ID */ export function PD1_10_6_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 6, 2); } /** Get PD1.10.6.3 - Universal ID Type */ export function PD1_10_6_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 6, 3); } /** Get PD1.10.7 - Effective Date */ export function PD1_10_7_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 7); } /** Get PD1.10.8 - Expiration Date */ export function PD1_10_8_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 8); } /** Get PD1.10.9 - Assigning Jurisdiction */ export function PD1_10_9_jurisdiction(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 9); } /** Get PD1.10.9.1 - Identifier */ export function PD1_10_9_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 9, 1); } /** Get PD1.10.9.2 - Text */ export function PD1_10_9_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 9, 2); } /** Get PD1.10.9.3 - Name of Coding System */ export function PD1_10_9_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 9, 3); } /** Get PD1.10.9.4 - Alternate Identifier */ export function PD1_10_9_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 9, 4); } /** Get PD1.10.9.5 - Alternate Text */ export function PD1_10_9_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 9, 5); } /** Get PD1.10.9.6 - Name of Alternate Coding System */ export function PD1_10_9_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 9, 6); } /** Get PD1.10.9.7 - Coding System Version ID */ export function PD1_10_9_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 9, 7); } /** Get PD1.10.9.8 - Alternate Coding System Version ID */ export function PD1_10_9_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 9, 8); } /** Get PD1.10.9.9 - Original Text */ export function PD1_10_9_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 9, 9); } /** Get PD1.10.10 - Assigning Agency or Department */ export function PD1_10_10_department(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 10); } /** Get PD1.10.10.1 - Identifier */ export function PD1_10_10_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 10, 1); } /** Get PD1.10.10.2 - Text */ export function PD1_10_10_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 10, 2); } /** Get PD1.10.10.3 - Name of Coding System */ export function PD1_10_10_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 10, 3); } /** Get PD1.10.10.4 - Alternate Identifier */ export function PD1_10_10_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 10, 4); } /** Get PD1.10.10.5 - Alternate Text */ export function PD1_10_10_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 10, 5); } /** Get PD1.10.10.6 - Name of Alternate Coding System */ export function PD1_10_10_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 10, 6); } /** Get PD1.10.10.7 - Coding System Version ID */ export function PD1_10_10_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 10, 7); } /** Get PD1.10.10.8 - Alternate Coding System Version ID */ export function PD1_10_10_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 10, 8); } /** Get PD1.10.10.9 - Original Text */ export function PD1_10_10_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 10, 9); } /** Get PD1.11.1 - Identifier */ export function PD1_11_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 1); } /** Get PD1.11.2 - Text */ export function PD1_11_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 2); } /** Get PD1.11.3 - Name of Coding System */ export function PD1_11_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 3); } /** Get PD1.11.4 - Alternate Identifier */ export function PD1_11_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 4); } /** Get PD1.11.5 - Alternate Text */ export function PD1_11_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 5); } /** Get PD1.11.6 - Name of Alternate Coding System */ export function PD1_11_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 6); } /** Get PD1.12 - Protection Indicator */ export function PD1_12_protection_indicator(seg: HL7v2Segment): string | undefined { const val = seg.fields[12]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PD1.13 - Protection Indicator Effective Date */ export function PD1_13_protection_indicator_effective_date(seg: HL7v2Segment): string | undefined { const val = seg.fields[13]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PD1.14.1 - Organization Name */ export function PD1_14_1_name(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 1); } /** Get PD1.14.2 - Organization Name Type Code */ export function PD1_14_2_name_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 2); } /** Get PD1.14.3 - ID Number */ export function PD1_14_3_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 3); } /** Get PD1.14.4 - Check Digit */ export function PD1_14_4_check_digit(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 4); } /** Get PD1.14.5 - Check Digit Scheme */ export function PD1_14_5_check_digit_scheme(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 5); } /** Get PD1.14.6 - Assigning Authority */ export function PD1_14_6_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 6); } /** Get PD1.14.6.1 - Namespace ID */ export function PD1_14_6_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 6, 1); } /** Get PD1.14.6.2 - Universal ID */ export function PD1_14_6_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 6, 2); } /** Get PD1.14.6.3 - Universal ID Type */ export function PD1_14_6_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 6, 3); } /** Get PD1.14.7 - Identifier Type Code */ export function PD1_14_7_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 7); } /** Get PD1.14.8 - Assigning Facility */ export function PD1_14_8_assigner(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 8); } /** Get PD1.14.8.1 - Namespace ID */ export function PD1_14_8_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 8, 1); } /** Get PD1.14.8.2 - Universal ID */ export function PD1_14_8_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 8, 2); } /** Get PD1.14.8.3 - Universal ID Type */ export function PD1_14_8_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 8, 3); } /** Get PD1.14.9 - Name Representation Code */ export function PD1_14_9_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 9); } /** Get PD1.14.10 - Organization Identifier */ export function PD1_14_10_organization_id(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 10); } /** Get PD1.15.1 - Identifier */ export function PD1_15_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[15]; return getComponent(field, 1); } /** Get PD1.15.2 - Text */ export function PD1_15_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[15]; return getComponent(field, 2); } /** Get PD1.15.3 - Name of Coding System */ export function PD1_15_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[15]; return getComponent(field, 3); } /** Get PD1.15.4 - Alternate Identifier */ export function PD1_15_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[15]; return getComponent(field, 4); } /** Get PD1.15.5 - Alternate Text */ export function PD1_15_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[15]; return getComponent(field, 5); } /** Get PD1.15.6 - Name of Alternate Coding System */ export function PD1_15_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[15]; return getComponent(field, 6); } /** Get PD1.16 - Immunization Registry Status */ export function PD1_16_immunization_registry_status(seg: HL7v2Segment): string | undefined { const val = seg.fields[16]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PD1.17 - Immunization Registry Status Effective Date */ export function PD1_17_immunization_registry_status_effective_date(seg: HL7v2Segment): string | undefined { const val = seg.fields[17]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PD1.18 - Publicity Code Effective Date */ export function PD1_18_publicity_code_effective_date(seg: HL7v2Segment): string | undefined { const val = seg.fields[18]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PD1.19 - Military Branch */ export function PD1_19_military_branch(seg: HL7v2Segment): string | undefined { const val = seg.fields[19]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PD1.20 - Military Rank/Grade */ export function PD1_20_military_rank_grade(seg: HL7v2Segment): string | undefined { const val = seg.fields[20]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PD1.21 - Military Status */ export function PD1_21_military_status(seg: HL7v2Segment): string | undefined { const val = seg.fields[21]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } export class PD1Builder { private seg: HL7v2Segment = { segment: "PD1", fields: {} }; /** PD1.1 - Living Dependency */ set_pd1_1_livingDependency(value: string | null | undefined): this { if (value != null) this.seg.fields[1] = value; return this; } /** PD1.1 - Living Dependency */ get_pd1_1_livingDependency(): string | undefined { const val = this.seg.fields[1]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PD1.2 - Living Arrangement */ set_pd1_2_livingArrangement(value: string | null | undefined): this { if (value != null) this.seg.fields[2] = value; return this; } /** PD1.2 - Living Arrangement */ get_pd1_2_livingArrangement(): string | undefined { const val = this.seg.fields[2]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PD1.3 - Patient Primary Facility (set all values) */ set_pd1_3_primaryFacility(values: XON[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[3] = arr; return this; } /** PD1.3 - Patient Primary Facility (add single value) */ add_pd1_3_primaryFacility(value: XON | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[3]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[3] = [fv]; } } return this; } /** PD1.3 - Patient Primary Facility */ get_pd1_3_primaryFacility(): XON[] | undefined { const val = this.seg.fields[3]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXON(v)).filter((v): v is XON => v !== undefined); } /** PD1.4 - Patient Primary Care Provider Name & ID No. (set all values) */ set_pd1_4_primaryCareProvider(values: XCN[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[4] = arr; return this; } /** PD1.4 - Patient Primary Care Provider Name & ID No. (add single value) */ add_pd1_4_primaryCareProvider(value: XCN | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[4]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[4] = [fv]; } } return this; } /** PD1.4 - Patient Primary Care Provider Name & ID No. */ get_pd1_4_primaryCareProvider(): XCN[] | undefined { const val = this.seg.fields[4]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXCN(v)).filter((v): v is XCN => v !== undefined); } /** PD1.5 - Student Indicator */ set_pd1_5_student(value: string | null | undefined): this { if (value != null) this.seg.fields[5] = value; return this; } /** PD1.5 - Student Indicator */ get_pd1_5_student(): string | undefined { const val = this.seg.fields[5]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PD1.6 - Handicap */ set_pd1_6_disability(value: string | null | undefined): this { if (value != null) this.seg.fields[6] = value; return this; } /** PD1.6 - Handicap */ get_pd1_6_disability(): string | undefined { const val = this.seg.fields[6]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PD1.7 - Living Will Code */ set_pd1_7_livingWill(value: string | null | undefined): this { if (value != null) this.seg.fields[7] = value; return this; } /** PD1.7 - Living Will Code */ get_pd1_7_livingWill(): string | undefined { const val = this.seg.fields[7]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PD1.8 - Organ Donor Code */ set_pd1_8_organDonorCode(value: string | null | undefined): this { if (value != null) this.seg.fields[8] = value; return this; } /** PD1.8 - Organ Donor Code */ get_pd1_8_organDonorCode(): string | undefined { const val = this.seg.fields[8]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PD1.9 - Separate Bill */ set_pd1_9_separateBill(value: string | null | undefined): this { if (value != null) this.seg.fields[9] = value; return this; } /** PD1.9 - Separate Bill */ get_pd1_9_separateBill(): string | undefined { const val = this.seg.fields[9]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PD1.10 - Duplicate Patient (set all values) */ set_pd1_10_duplicatePatient(values: CX[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[10] = arr; return this; } /** PD1.10 - Duplicate Patient (add single value) */ add_pd1_10_duplicatePatient(value: CX | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[10]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[10] = [fv]; } } return this; } /** PD1.10 - Duplicate Patient */ get_pd1_10_duplicatePatient(): CX[] | undefined { const val = this.seg.fields[10]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromCX(v)).filter((v): v is CX => v !== undefined); } /** PD1.11 - Publicity Code */ set_pd1_11_publicityCode(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[11] = fv; return this; } /** PD1.11 - Publicity Code */ get_pd1_11_publicityCode(): CE | undefined { return fromCE(this.seg.fields[11]); } /** PD1.12 - Protection Indicator */ set_pd1_12_protectionIndicator(value: string | null | undefined): this { if (value != null) this.seg.fields[12] = value; return this; } /** PD1.12 - Protection Indicator */ get_pd1_12_protectionIndicator(): string | undefined { const val = this.seg.fields[12]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PD1.13 - Protection Indicator Effective Date */ set_pd1_13_protectionIndicatorEffectiveDate(value: string | null | undefined): this { if (value != null) this.seg.fields[13] = value; return this; } /** PD1.13 - Protection Indicator Effective Date */ get_pd1_13_protectionIndicatorEffectiveDate(): string | undefined { const val = this.seg.fields[13]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PD1.14 - Place of Worship (set all values) */ set_pd1_14_placeOfWorship(values: XON[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[14] = arr; return this; } /** PD1.14 - Place of Worship (add single value) */ add_pd1_14_placeOfWorship(value: XON | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[14]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[14] = [fv]; } } return this; } /** PD1.14 - Place of Worship */ get_pd1_14_placeOfWorship(): XON[] | undefined { const val = this.seg.fields[14]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXON(v)).filter((v): v is XON => v !== undefined); } /** PD1.15 - Advance Directive Code (set all values) */ set_pd1_15_advanceDirectiveCode(values: CE[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[15] = arr; return this; } /** PD1.15 - Advance Directive Code (add single value) */ add_pd1_15_advanceDirectiveCode(value: CE | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[15]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[15] = [fv]; } } return this; } /** PD1.15 - Advance Directive Code */ get_pd1_15_advanceDirectiveCode(): CE[] | undefined { const val = this.seg.fields[15]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromCE(v)).filter((v): v is CE => v !== undefined); } /** PD1.16 - Immunization Registry Status */ set_pd1_16_immunizationRegistryStatus(value: string | null | undefined): this { if (value != null) this.seg.fields[16] = value; return this; } /** PD1.16 - Immunization Registry Status */ get_pd1_16_immunizationRegistryStatus(): string | undefined { const val = this.seg.fields[16]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PD1.17 - Immunization Registry Status Effective Date */ set_pd1_17_immunizationRegistryStatusEffectiveDate(value: string | null | undefined): this { if (value != null) this.seg.fields[17] = value; return this; } /** PD1.17 - Immunization Registry Status Effective Date */ get_pd1_17_immunizationRegistryStatusEffectiveDate(): string | undefined { const val = this.seg.fields[17]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PD1.18 - Publicity Code Effective Date */ set_pd1_18_publicityCodeEffectiveDate(value: string | null | undefined): this { if (value != null) this.seg.fields[18] = value; return this; } /** PD1.18 - Publicity Code Effective Date */ get_pd1_18_publicityCodeEffectiveDate(): string | undefined { const val = this.seg.fields[18]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PD1.19 - Military Branch */ set_pd1_19_militaryBranch(value: string | null | undefined): this { if (value != null) this.seg.fields[19] = value; return this; } /** PD1.19 - Military Branch */ get_pd1_19_militaryBranch(): string | undefined { const val = this.seg.fields[19]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PD1.20 - Military Rank/Grade */ set_pd1_20_militaryRankGrade(value: string | null | undefined): this { if (value != null) this.seg.fields[20] = value; return this; } /** PD1.20 - Military Rank/Grade */ get_pd1_20_militaryRankGrade(): string | undefined { const val = this.seg.fields[20]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PD1.21 - Military Status */ set_pd1_21_militaryStatus(value: string | null | undefined): this { if (value != null) this.seg.fields[21] = value; return this; } /** PD1.21 - Military Status */ get_pd1_21_militaryStatus(): string | undefined { const val = this.seg.fields[21]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } build(): HL7v2Segment { return this.seg; } } // ====== PID Segment ====== /** Get PID.1 - Set ID - PID */ export function PID_1_set_id_pid(seg: HL7v2Segment): string | undefined { const val = seg.fields[1]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PID.2.1 - ID Number */ export function PID_2_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 1); } /** Get PID.2.2 - Check Digit */ export function PID_2_2_check_digit(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 2); } /** Get PID.2.3 - Check Digit Scheme */ export function PID_2_3_check_digit_scheme(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 3); } /** Get PID.2.4 - Assigning Authority */ export function PID_2_4_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 4); } /** Get PID.2.4.1 - Namespace ID */ export function PID_2_4_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 4, 1); } /** Get PID.2.4.2 - Universal ID */ export function PID_2_4_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 4, 2); } /** Get PID.2.4.3 - Universal ID Type */ export function PID_2_4_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 4, 3); } /** Get PID.2.5 - Identifier Type Code */ export function PID_2_5_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 5); } /** Get PID.2.6 - Assigning Facility */ export function PID_2_6_assigner(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 6); } /** Get PID.2.6.1 - Namespace ID */ export function PID_2_6_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 6, 1); } /** Get PID.2.6.2 - Universal ID */ export function PID_2_6_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 6, 2); } /** Get PID.2.6.3 - Universal ID Type */ export function PID_2_6_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 6, 3); } /** Get PID.2.7 - Effective Date */ export function PID_2_7_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 7); } /** Get PID.2.8 - Expiration Date */ export function PID_2_8_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 8); } /** Get PID.2.9 - Assigning Jurisdiction */ export function PID_2_9_jurisdiction(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 9); } /** Get PID.2.9.1 - Identifier */ export function PID_2_9_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 9, 1); } /** Get PID.2.9.2 - Text */ export function PID_2_9_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 9, 2); } /** Get PID.2.9.3 - Name of Coding System */ export function PID_2_9_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 9, 3); } /** Get PID.2.9.4 - Alternate Identifier */ export function PID_2_9_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 9, 4); } /** Get PID.2.9.5 - Alternate Text */ export function PID_2_9_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 9, 5); } /** Get PID.2.9.6 - Name of Alternate Coding System */ export function PID_2_9_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 9, 6); } /** Get PID.2.9.7 - Coding System Version ID */ export function PID_2_9_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 9, 7); } /** Get PID.2.9.8 - Alternate Coding System Version ID */ export function PID_2_9_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 9, 8); } /** Get PID.2.9.9 - Original Text */ export function PID_2_9_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 9, 9); } /** Get PID.2.10 - Assigning Agency or Department */ export function PID_2_10_department(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 10); } /** Get PID.2.10.1 - Identifier */ export function PID_2_10_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 10, 1); } /** Get PID.2.10.2 - Text */ export function PID_2_10_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 10, 2); } /** Get PID.2.10.3 - Name of Coding System */ export function PID_2_10_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 10, 3); } /** Get PID.2.10.4 - Alternate Identifier */ export function PID_2_10_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 10, 4); } /** Get PID.2.10.5 - Alternate Text */ export function PID_2_10_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 10, 5); } /** Get PID.2.10.6 - Name of Alternate Coding System */ export function PID_2_10_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 10, 6); } /** Get PID.2.10.7 - Coding System Version ID */ export function PID_2_10_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 10, 7); } /** Get PID.2.10.8 - Alternate Coding System Version ID */ export function PID_2_10_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 10, 8); } /** Get PID.2.10.9 - Original Text */ export function PID_2_10_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 10, 9); } /** Get PID.3.1 - ID Number */ export function PID_3_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 1); } /** Get PID.3.2 - Check Digit */ export function PID_3_2_check_digit(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 2); } /** Get PID.3.3 - Check Digit Scheme */ export function PID_3_3_check_digit_scheme(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 3); } /** Get PID.3.4 - Assigning Authority */ export function PID_3_4_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 4); } /** Get PID.3.4.1 - Namespace ID */ export function PID_3_4_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 4, 1); } /** Get PID.3.4.2 - Universal ID */ export function PID_3_4_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 4, 2); } /** Get PID.3.4.3 - Universal ID Type */ export function PID_3_4_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 4, 3); } /** Get PID.3.5 - Identifier Type Code */ export function PID_3_5_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 5); } /** Get PID.3.6 - Assigning Facility */ export function PID_3_6_assigner(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 6); } /** Get PID.3.6.1 - Namespace ID */ export function PID_3_6_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 6, 1); } /** Get PID.3.6.2 - Universal ID */ export function PID_3_6_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 6, 2); } /** Get PID.3.6.3 - Universal ID Type */ export function PID_3_6_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 6, 3); } /** Get PID.3.7 - Effective Date */ export function PID_3_7_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 7); } /** Get PID.3.8 - Expiration Date */ export function PID_3_8_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 8); } /** Get PID.3.9 - Assigning Jurisdiction */ export function PID_3_9_jurisdiction(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 9); } /** Get PID.3.9.1 - Identifier */ export function PID_3_9_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 9, 1); } /** Get PID.3.9.2 - Text */ export function PID_3_9_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 9, 2); } /** Get PID.3.9.3 - Name of Coding System */ export function PID_3_9_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 9, 3); } /** Get PID.3.9.4 - Alternate Identifier */ export function PID_3_9_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 9, 4); } /** Get PID.3.9.5 - Alternate Text */ export function PID_3_9_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 9, 5); } /** Get PID.3.9.6 - Name of Alternate Coding System */ export function PID_3_9_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 9, 6); } /** Get PID.3.9.7 - Coding System Version ID */ export function PID_3_9_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 9, 7); } /** Get PID.3.9.8 - Alternate Coding System Version ID */ export function PID_3_9_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 9, 8); } /** Get PID.3.9.9 - Original Text */ export function PID_3_9_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 9, 9); } /** Get PID.3.10 - Assigning Agency or Department */ export function PID_3_10_department(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 10); } /** Get PID.3.10.1 - Identifier */ export function PID_3_10_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 10, 1); } /** Get PID.3.10.2 - Text */ export function PID_3_10_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 10, 2); } /** Get PID.3.10.3 - Name of Coding System */ export function PID_3_10_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 10, 3); } /** Get PID.3.10.4 - Alternate Identifier */ export function PID_3_10_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 10, 4); } /** Get PID.3.10.5 - Alternate Text */ export function PID_3_10_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 10, 5); } /** Get PID.3.10.6 - Name of Alternate Coding System */ export function PID_3_10_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 10, 6); } /** Get PID.3.10.7 - Coding System Version ID */ export function PID_3_10_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 10, 7); } /** Get PID.3.10.8 - Alternate Coding System Version ID */ export function PID_3_10_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 10, 8); } /** Get PID.3.10.9 - Original Text */ export function PID_3_10_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 10, 9); } /** Get PID.4.1 - ID Number */ export function PID_4_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 1); } /** Get PID.4.2 - Check Digit */ export function PID_4_2_check_digit(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 2); } /** Get PID.4.3 - Check Digit Scheme */ export function PID_4_3_check_digit_scheme(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 3); } /** Get PID.4.4 - Assigning Authority */ export function PID_4_4_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 4); } /** Get PID.4.4.1 - Namespace ID */ export function PID_4_4_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 4, 1); } /** Get PID.4.4.2 - Universal ID */ export function PID_4_4_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 4, 2); } /** Get PID.4.4.3 - Universal ID Type */ export function PID_4_4_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 4, 3); } /** Get PID.4.5 - Identifier Type Code */ export function PID_4_5_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 5); } /** Get PID.4.6 - Assigning Facility */ export function PID_4_6_assigner(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 6); } /** Get PID.4.6.1 - Namespace ID */ export function PID_4_6_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 6, 1); } /** Get PID.4.6.2 - Universal ID */ export function PID_4_6_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 6, 2); } /** Get PID.4.6.3 - Universal ID Type */ export function PID_4_6_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 6, 3); } /** Get PID.4.7 - Effective Date */ export function PID_4_7_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 7); } /** Get PID.4.8 - Expiration Date */ export function PID_4_8_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 8); } /** Get PID.4.9 - Assigning Jurisdiction */ export function PID_4_9_jurisdiction(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 9); } /** Get PID.4.9.1 - Identifier */ export function PID_4_9_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 9, 1); } /** Get PID.4.9.2 - Text */ export function PID_4_9_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 9, 2); } /** Get PID.4.9.3 - Name of Coding System */ export function PID_4_9_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 9, 3); } /** Get PID.4.9.4 - Alternate Identifier */ export function PID_4_9_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 9, 4); } /** Get PID.4.9.5 - Alternate Text */ export function PID_4_9_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 9, 5); } /** Get PID.4.9.6 - Name of Alternate Coding System */ export function PID_4_9_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 9, 6); } /** Get PID.4.9.7 - Coding System Version ID */ export function PID_4_9_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 9, 7); } /** Get PID.4.9.8 - Alternate Coding System Version ID */ export function PID_4_9_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 9, 8); } /** Get PID.4.9.9 - Original Text */ export function PID_4_9_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 9, 9); } /** Get PID.4.10 - Assigning Agency or Department */ export function PID_4_10_department(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 10); } /** Get PID.4.10.1 - Identifier */ export function PID_4_10_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 10, 1); } /** Get PID.4.10.2 - Text */ export function PID_4_10_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 10, 2); } /** Get PID.4.10.3 - Name of Coding System */ export function PID_4_10_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 10, 3); } /** Get PID.4.10.4 - Alternate Identifier */ export function PID_4_10_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 10, 4); } /** Get PID.4.10.5 - Alternate Text */ export function PID_4_10_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 10, 5); } /** Get PID.4.10.6 - Name of Alternate Coding System */ export function PID_4_10_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 10, 6); } /** Get PID.4.10.7 - Coding System Version ID */ export function PID_4_10_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 10, 7); } /** Get PID.4.10.8 - Alternate Coding System Version ID */ export function PID_4_10_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 10, 8); } /** Get PID.4.10.9 - Original Text */ export function PID_4_10_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 10, 9); } /** Get PID.5.1 - Family Name */ export function PID_5_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 1); } /** Get PID.5.1.1 - Surname */ export function PID_5_1_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 1, 1); } /** Get PID.5.1.2 - Own Surname Prefix */ export function PID_5_1_2_own_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 1, 2); } /** Get PID.5.1.3 - Own Surname */ export function PID_5_1_3_own_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 1, 3); } /** Get PID.5.1.4 - Surname Prefix From Partner/Spouse */ export function PID_5_1_4_partner_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 1, 4); } /** Get PID.5.1.5 - Surname From Partner/Spouse */ export function PID_5_1_5_partner_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 1, 5); } /** Get PID.5.2 - Given Name */ export function PID_5_2_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 2); } /** Get PID.5.3 - Second and Further Given Names or Initials Thereof */ export function PID_5_3_additional_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 3); } /** Get PID.5.4 - Suffix (e.g., JR or III) */ export function PID_5_4_suffix(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 4); } /** Get PID.5.5 - Prefix (e.g., DR) */ export function PID_5_5_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 5); } /** Get PID.5.6 - Degree (e.g., MD) */ export function PID_5_6_qualification(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 6); } /** Get PID.5.7 - Name Type Code */ export function PID_5_7_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 7); } /** Get PID.5.8 - Name Representation Code */ export function PID_5_8_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 8); } /** Get PID.5.9 - Name Context */ export function PID_5_9_context(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 9); } /** Get PID.5.9.1 - Identifier */ export function PID_5_9_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 9, 1); } /** Get PID.5.9.2 - Text */ export function PID_5_9_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 9, 2); } /** Get PID.5.9.3 - Name of Coding System */ export function PID_5_9_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 9, 3); } /** Get PID.5.9.4 - Alternate Identifier */ export function PID_5_9_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 9, 4); } /** Get PID.5.9.5 - Alternate Text */ export function PID_5_9_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 9, 5); } /** Get PID.5.9.6 - Name of Alternate Coding System */ export function PID_5_9_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 9, 6); } /** Get PID.5.10 - Name Validity Range */ export function PID_5_10_period(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 10); } /** Get PID.5.10.1 - Range Start Date/Time */ export function PID_5_10_1_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 10, 1); } /** Get PID.5.10.2 - Range End Date/Time */ export function PID_5_10_2_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 10, 2); } /** Get PID.5.11 - Name Assembly Order */ export function PID_5_11_order(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 11); } /** Get PID.5.12 - Effective Date */ export function PID_5_12_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 12); } /** Get PID.5.13 - Expiration Date */ export function PID_5_13_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 13); } /** Get PID.5.14 - Professional Suffix */ export function PID_5_14_credential(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 14); } /** Get PID.6.1 - Family Name */ export function PID_6_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 1); } /** Get PID.6.1.1 - Surname */ export function PID_6_1_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 1, 1); } /** Get PID.6.1.2 - Own Surname Prefix */ export function PID_6_1_2_own_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 1, 2); } /** Get PID.6.1.3 - Own Surname */ export function PID_6_1_3_own_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 1, 3); } /** Get PID.6.1.4 - Surname Prefix From Partner/Spouse */ export function PID_6_1_4_partner_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 1, 4); } /** Get PID.6.1.5 - Surname From Partner/Spouse */ export function PID_6_1_5_partner_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 1, 5); } /** Get PID.6.2 - Given Name */ export function PID_6_2_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 2); } /** Get PID.6.3 - Second and Further Given Names or Initials Thereof */ export function PID_6_3_additional_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 3); } /** Get PID.6.4 - Suffix (e.g., JR or III) */ export function PID_6_4_suffix(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 4); } /** Get PID.6.5 - Prefix (e.g., DR) */ export function PID_6_5_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 5); } /** Get PID.6.6 - Degree (e.g., MD) */ export function PID_6_6_qualification(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 6); } /** Get PID.6.7 - Name Type Code */ export function PID_6_7_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 7); } /** Get PID.6.8 - Name Representation Code */ export function PID_6_8_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 8); } /** Get PID.6.9 - Name Context */ export function PID_6_9_context(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 9); } /** Get PID.6.9.1 - Identifier */ export function PID_6_9_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 9, 1); } /** Get PID.6.9.2 - Text */ export function PID_6_9_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 9, 2); } /** Get PID.6.9.3 - Name of Coding System */ export function PID_6_9_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 9, 3); } /** Get PID.6.9.4 - Alternate Identifier */ export function PID_6_9_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 9, 4); } /** Get PID.6.9.5 - Alternate Text */ export function PID_6_9_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 9, 5); } /** Get PID.6.9.6 - Name of Alternate Coding System */ export function PID_6_9_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 9, 6); } /** Get PID.6.10 - Name Validity Range */ export function PID_6_10_period(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 10); } /** Get PID.6.10.1 - Range Start Date/Time */ export function PID_6_10_1_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 10, 1); } /** Get PID.6.10.2 - Range End Date/Time */ export function PID_6_10_2_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 10, 2); } /** Get PID.6.11 - Name Assembly Order */ export function PID_6_11_order(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 11); } /** Get PID.6.12 - Effective Date */ export function PID_6_12_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 12); } /** Get PID.6.13 - Expiration Date */ export function PID_6_13_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 13); } /** Get PID.6.14 - Professional Suffix */ export function PID_6_14_credential(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 14); } /** Get PID.7 - Date/Time of Birth */ export function PID_7_birth_date(seg: HL7v2Segment): string | undefined { const val = seg.fields[7]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PID.8 - Administrative Sex */ export function PID_8_gender(seg: HL7v2Segment): string | undefined { const val = seg.fields[8]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PID.9.1 - Family Name */ export function PID_9_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 1); } /** Get PID.9.1.1 - Surname */ export function PID_9_1_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 1, 1); } /** Get PID.9.1.2 - Own Surname Prefix */ export function PID_9_1_2_own_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 1, 2); } /** Get PID.9.1.3 - Own Surname */ export function PID_9_1_3_own_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 1, 3); } /** Get PID.9.1.4 - Surname Prefix From Partner/Spouse */ export function PID_9_1_4_partner_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 1, 4); } /** Get PID.9.1.5 - Surname From Partner/Spouse */ export function PID_9_1_5_partner_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 1, 5); } /** Get PID.9.2 - Given Name */ export function PID_9_2_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 2); } /** Get PID.9.3 - Second and Further Given Names or Initials Thereof */ export function PID_9_3_additional_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 3); } /** Get PID.9.4 - Suffix (e.g., JR or III) */ export function PID_9_4_suffix(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 4); } /** Get PID.9.5 - Prefix (e.g., DR) */ export function PID_9_5_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 5); } /** Get PID.9.6 - Degree (e.g., MD) */ export function PID_9_6_qualification(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 6); } /** Get PID.9.7 - Name Type Code */ export function PID_9_7_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 7); } /** Get PID.9.8 - Name Representation Code */ export function PID_9_8_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 8); } /** Get PID.9.9 - Name Context */ export function PID_9_9_context(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 9); } /** Get PID.9.9.1 - Identifier */ export function PID_9_9_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 9, 1); } /** Get PID.9.9.2 - Text */ export function PID_9_9_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 9, 2); } /** Get PID.9.9.3 - Name of Coding System */ export function PID_9_9_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 9, 3); } /** Get PID.9.9.4 - Alternate Identifier */ export function PID_9_9_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 9, 4); } /** Get PID.9.9.5 - Alternate Text */ export function PID_9_9_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 9, 5); } /** Get PID.9.9.6 - Name of Alternate Coding System */ export function PID_9_9_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 9, 6); } /** Get PID.9.10 - Name Validity Range */ export function PID_9_10_period(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 10); } /** Get PID.9.10.1 - Range Start Date/Time */ export function PID_9_10_1_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 10, 1); } /** Get PID.9.10.2 - Range End Date/Time */ export function PID_9_10_2_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 10, 2); } /** Get PID.9.11 - Name Assembly Order */ export function PID_9_11_order(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 11); } /** Get PID.9.12 - Effective Date */ export function PID_9_12_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 12); } /** Get PID.9.13 - Expiration Date */ export function PID_9_13_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 13); } /** Get PID.9.14 - Professional Suffix */ export function PID_9_14_credential(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 14); } /** Get PID.10.1 - Identifier */ export function PID_10_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 1); } /** Get PID.10.2 - Text */ export function PID_10_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 2); } /** Get PID.10.3 - Name of Coding System */ export function PID_10_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 3); } /** Get PID.10.4 - Alternate Identifier */ export function PID_10_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 4); } /** Get PID.10.5 - Alternate Text */ export function PID_10_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 5); } /** Get PID.10.6 - Name of Alternate Coding System */ export function PID_10_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 6); } /** Get PID.11.1 - Street Address */ export function PID_11_1_line1(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 1); } /** Get PID.11.1.1 - Street or Mailing Address */ export function PID_11_1_1_line(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 1, 1); } /** Get PID.11.1.2 - Street Name */ export function PID_11_1_2_street_name(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 1, 2); } /** Get PID.11.1.3 - Dwelling Number */ export function PID_11_1_3_house_number(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 1, 3); } /** Get PID.11.2 - Other Designation */ export function PID_11_2_line2(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 2); } /** Get PID.11.3 - City */ export function PID_11_3_city(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 3); } /** Get PID.11.4 - State or Province */ export function PID_11_4_state(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 4); } /** Get PID.11.5 - Zip or Postal Code */ export function PID_11_5_postal_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 5); } /** Get PID.11.6 - Country */ export function PID_11_6_country(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 6); } /** Get PID.11.7 - Address Type */ export function PID_11_7_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 7); } /** Get PID.11.8 - Other Geographic Designation */ export function PID_11_8_additional_locator(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 8); } /** Get PID.11.9 - County/Parish Code */ export function PID_11_9_district(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 9); } /** Get PID.11.10 - Census Tract */ export function PID_11_10_census_tract(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 10); } /** Get PID.11.11 - Address Representation Code */ export function PID_11_11_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 11); } /** Get PID.11.12 - Address Validity Range */ export function PID_11_12_period(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 12); } /** Get PID.11.12.1 - Range Start Date/Time */ export function PID_11_12_1_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 12, 1); } /** Get PID.11.12.2 - Range End Date/Time */ export function PID_11_12_2_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 12, 2); } /** Get PID.11.13 - Effective Date */ export function PID_11_13_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 13); } /** Get PID.11.14 - Expiration Date */ export function PID_11_14_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 14); } /** Get PID.12 - County Code */ export function PID_12_county_code(seg: HL7v2Segment): string | undefined { const val = seg.fields[12]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PID.13.1 - Telephone Number */ export function PID_13_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 1); } /** Get PID.13.2 - Telecommunication Use Code */ export function PID_13_2_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 2); } /** Get PID.13.3 - Telecommunication Equipment Type */ export function PID_13_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 3); } /** Get PID.13.4 - Email Address */ export function PID_13_4_email(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 4); } /** Get PID.13.5 - Country Code */ export function PID_13_5_country_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 5); } /** Get PID.13.6 - Area/City Code */ export function PID_13_6_area_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 6); } /** Get PID.13.7 - Local Number */ export function PID_13_7_local_number(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 7); } /** Get PID.13.8 - Extension */ export function PID_13_8_extension(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 8); } /** Get PID.13.9 - Any Text */ export function PID_13_9_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 9); } /** Get PID.13.10 - Extension Prefix */ export function PID_13_10_extension_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 10); } /** Get PID.13.11 - Speed Dial Code */ export function PID_13_11_speed_dial(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 11); } /** Get PID.13.12 - Unformatted Telephone number */ export function PID_13_12_unformatted(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 12); } /** Get PID.14.1 - Telephone Number */ export function PID_14_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 1); } /** Get PID.14.2 - Telecommunication Use Code */ export function PID_14_2_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 2); } /** Get PID.14.3 - Telecommunication Equipment Type */ export function PID_14_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 3); } /** Get PID.14.4 - Email Address */ export function PID_14_4_email(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 4); } /** Get PID.14.5 - Country Code */ export function PID_14_5_country_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 5); } /** Get PID.14.6 - Area/City Code */ export function PID_14_6_area_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 6); } /** Get PID.14.7 - Local Number */ export function PID_14_7_local_number(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 7); } /** Get PID.14.8 - Extension */ export function PID_14_8_extension(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 8); } /** Get PID.14.9 - Any Text */ export function PID_14_9_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 9); } /** Get PID.14.10 - Extension Prefix */ export function PID_14_10_extension_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 10); } /** Get PID.14.11 - Speed Dial Code */ export function PID_14_11_speed_dial(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 11); } /** Get PID.14.12 - Unformatted Telephone number */ export function PID_14_12_unformatted(seg: HL7v2Segment): string | undefined { const field = seg.fields[14]; return getComponent(field, 12); } /** Get PID.15.1 - Identifier */ export function PID_15_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[15]; return getComponent(field, 1); } /** Get PID.15.2 - Text */ export function PID_15_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[15]; return getComponent(field, 2); } /** Get PID.15.3 - Name of Coding System */ export function PID_15_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[15]; return getComponent(field, 3); } /** Get PID.15.4 - Alternate Identifier */ export function PID_15_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[15]; return getComponent(field, 4); } /** Get PID.15.5 - Alternate Text */ export function PID_15_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[15]; return getComponent(field, 5); } /** Get PID.15.6 - Name of Alternate Coding System */ export function PID_15_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[15]; return getComponent(field, 6); } /** Get PID.16.1 - Identifier */ export function PID_16_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 1); } /** Get PID.16.2 - Text */ export function PID_16_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 2); } /** Get PID.16.3 - Name of Coding System */ export function PID_16_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 3); } /** Get PID.16.4 - Alternate Identifier */ export function PID_16_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 4); } /** Get PID.16.5 - Alternate Text */ export function PID_16_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 5); } /** Get PID.16.6 - Name of Alternate Coding System */ export function PID_16_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 6); } /** Get PID.17.1 - Identifier */ export function PID_17_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 1); } /** Get PID.17.2 - Text */ export function PID_17_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 2); } /** Get PID.17.3 - Name of Coding System */ export function PID_17_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 3); } /** Get PID.17.4 - Alternate Identifier */ export function PID_17_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 4); } /** Get PID.17.5 - Alternate Text */ export function PID_17_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 5); } /** Get PID.17.6 - Name of Alternate Coding System */ export function PID_17_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 6); } /** Get PID.18.1 - ID Number */ export function PID_18_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 1); } /** Get PID.18.2 - Check Digit */ export function PID_18_2_check_digit(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 2); } /** Get PID.18.3 - Check Digit Scheme */ export function PID_18_3_check_digit_scheme(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 3); } /** Get PID.18.4 - Assigning Authority */ export function PID_18_4_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 4); } /** Get PID.18.4.1 - Namespace ID */ export function PID_18_4_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 4, 1); } /** Get PID.18.4.2 - Universal ID */ export function PID_18_4_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 4, 2); } /** Get PID.18.4.3 - Universal ID Type */ export function PID_18_4_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 4, 3); } /** Get PID.18.5 - Identifier Type Code */ export function PID_18_5_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 5); } /** Get PID.18.6 - Assigning Facility */ export function PID_18_6_assigner(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 6); } /** Get PID.18.6.1 - Namespace ID */ export function PID_18_6_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 6, 1); } /** Get PID.18.6.2 - Universal ID */ export function PID_18_6_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 6, 2); } /** Get PID.18.6.3 - Universal ID Type */ export function PID_18_6_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 6, 3); } /** Get PID.18.7 - Effective Date */ export function PID_18_7_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 7); } /** Get PID.18.8 - Expiration Date */ export function PID_18_8_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 8); } /** Get PID.18.9 - Assigning Jurisdiction */ export function PID_18_9_jurisdiction(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 9); } /** Get PID.18.9.1 - Identifier */ export function PID_18_9_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 9, 1); } /** Get PID.18.9.2 - Text */ export function PID_18_9_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 9, 2); } /** Get PID.18.9.3 - Name of Coding System */ export function PID_18_9_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 9, 3); } /** Get PID.18.9.4 - Alternate Identifier */ export function PID_18_9_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 9, 4); } /** Get PID.18.9.5 - Alternate Text */ export function PID_18_9_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 9, 5); } /** Get PID.18.9.6 - Name of Alternate Coding System */ export function PID_18_9_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 9, 6); } /** Get PID.18.9.7 - Coding System Version ID */ export function PID_18_9_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 9, 7); } /** Get PID.18.9.8 - Alternate Coding System Version ID */ export function PID_18_9_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 9, 8); } /** Get PID.18.9.9 - Original Text */ export function PID_18_9_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 9, 9); } /** Get PID.18.10 - Assigning Agency or Department */ export function PID_18_10_department(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 10); } /** Get PID.18.10.1 - Identifier */ export function PID_18_10_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 10, 1); } /** Get PID.18.10.2 - Text */ export function PID_18_10_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 10, 2); } /** Get PID.18.10.3 - Name of Coding System */ export function PID_18_10_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 10, 3); } /** Get PID.18.10.4 - Alternate Identifier */ export function PID_18_10_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 10, 4); } /** Get PID.18.10.5 - Alternate Text */ export function PID_18_10_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 10, 5); } /** Get PID.18.10.6 - Name of Alternate Coding System */ export function PID_18_10_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 10, 6); } /** Get PID.18.10.7 - Coding System Version ID */ export function PID_18_10_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 10, 7); } /** Get PID.18.10.8 - Alternate Coding System Version ID */ export function PID_18_10_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 10, 8); } /** Get PID.18.10.9 - Original Text */ export function PID_18_10_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 10, 9); } /** Get PID.19 - SSN Number - Patient */ export function PID_19_ssn_number_patient(seg: HL7v2Segment): string | undefined { const val = seg.fields[19]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PID.20.1 - License Number */ export function PID_20_1_license(seg: HL7v2Segment): string | undefined { const field = seg.fields[20]; return getComponent(field, 1); } /** Get PID.20.2 - Issuing State, Province, Country */ export function PID_20_2_issuing_authority(seg: HL7v2Segment): string | undefined { const field = seg.fields[20]; return getComponent(field, 2); } /** Get PID.20.3 - Expiration Date */ export function PID_20_3_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[20]; return getComponent(field, 3); } /** Get PID.21.1 - ID Number */ export function PID_21_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[21]; return getComponent(field, 1); } /** Get PID.21.2 - Check Digit */ export function PID_21_2_check_digit(seg: HL7v2Segment): string | undefined { const field = seg.fields[21]; return getComponent(field, 2); } /** Get PID.21.3 - Check Digit Scheme */ export function PID_21_3_check_digit_scheme(seg: HL7v2Segment): string | undefined { const field = seg.fields[21]; return getComponent(field, 3); } /** Get PID.21.4 - Assigning Authority */ export function PID_21_4_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[21]; return getComponent(field, 4); } /** Get PID.21.4.1 - Namespace ID */ export function PID_21_4_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[21]; return getComponent(field, 4, 1); } /** Get PID.21.4.2 - Universal ID */ export function PID_21_4_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[21]; return getComponent(field, 4, 2); } /** Get PID.21.4.3 - Universal ID Type */ export function PID_21_4_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[21]; return getComponent(field, 4, 3); } /** Get PID.21.5 - Identifier Type Code */ export function PID_21_5_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[21]; return getComponent(field, 5); } /** Get PID.21.6 - Assigning Facility */ export function PID_21_6_assigner(seg: HL7v2Segment): string | undefined { const field = seg.fields[21]; return getComponent(field, 6); } /** Get PID.21.6.1 - Namespace ID */ export function PID_21_6_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[21]; return getComponent(field, 6, 1); } /** Get PID.21.6.2 - Universal ID */ export function PID_21_6_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[21]; return getComponent(field, 6, 2); } /** Get PID.21.6.3 - Universal ID Type */ export function PID_21_6_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[21]; return getComponent(field, 6, 3); } /** Get PID.21.7 - Effective Date */ export function PID_21_7_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[21]; return getComponent(field, 7); } /** Get PID.21.8 - Expiration Date */ export function PID_21_8_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[21]; return getComponent(field, 8); } /** Get PID.21.9 - Assigning Jurisdiction */ export function PID_21_9_jurisdiction(seg: HL7v2Segment): string | undefined { const field = seg.fields[21]; return getComponent(field, 9); } /** Get PID.21.9.1 - Identifier */ export function PID_21_9_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[21]; return getComponent(field, 9, 1); } /** Get PID.21.9.2 - Text */ export function PID_21_9_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[21]; return getComponent(field, 9, 2); } /** Get PID.21.9.3 - Name of Coding System */ export function PID_21_9_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[21]; return getComponent(field, 9, 3); } /** Get PID.21.9.4 - Alternate Identifier */ export function PID_21_9_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[21]; return getComponent(field, 9, 4); } /** Get PID.21.9.5 - Alternate Text */ export function PID_21_9_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[21]; return getComponent(field, 9, 5); } /** Get PID.21.9.6 - Name of Alternate Coding System */ export function PID_21_9_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[21]; return getComponent(field, 9, 6); } /** Get PID.21.9.7 - Coding System Version ID */ export function PID_21_9_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[21]; return getComponent(field, 9, 7); } /** Get PID.21.9.8 - Alternate Coding System Version ID */ export function PID_21_9_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[21]; return getComponent(field, 9, 8); } /** Get PID.21.9.9 - Original Text */ export function PID_21_9_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[21]; return getComponent(field, 9, 9); } /** Get PID.21.10 - Assigning Agency or Department */ export function PID_21_10_department(seg: HL7v2Segment): string | undefined { const field = seg.fields[21]; return getComponent(field, 10); } /** Get PID.21.10.1 - Identifier */ export function PID_21_10_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[21]; return getComponent(field, 10, 1); } /** Get PID.21.10.2 - Text */ export function PID_21_10_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[21]; return getComponent(field, 10, 2); } /** Get PID.21.10.3 - Name of Coding System */ export function PID_21_10_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[21]; return getComponent(field, 10, 3); } /** Get PID.21.10.4 - Alternate Identifier */ export function PID_21_10_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[21]; return getComponent(field, 10, 4); } /** Get PID.21.10.5 - Alternate Text */ export function PID_21_10_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[21]; return getComponent(field, 10, 5); } /** Get PID.21.10.6 - Name of Alternate Coding System */ export function PID_21_10_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[21]; return getComponent(field, 10, 6); } /** Get PID.21.10.7 - Coding System Version ID */ export function PID_21_10_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[21]; return getComponent(field, 10, 7); } /** Get PID.21.10.8 - Alternate Coding System Version ID */ export function PID_21_10_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[21]; return getComponent(field, 10, 8); } /** Get PID.21.10.9 - Original Text */ export function PID_21_10_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[21]; return getComponent(field, 10, 9); } /** Get PID.22.1 - Identifier */ export function PID_22_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[22]; return getComponent(field, 1); } /** Get PID.22.2 - Text */ export function PID_22_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[22]; return getComponent(field, 2); } /** Get PID.22.3 - Name of Coding System */ export function PID_22_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[22]; return getComponent(field, 3); } /** Get PID.22.4 - Alternate Identifier */ export function PID_22_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[22]; return getComponent(field, 4); } /** Get PID.22.5 - Alternate Text */ export function PID_22_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[22]; return getComponent(field, 5); } /** Get PID.22.6 - Name of Alternate Coding System */ export function PID_22_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[22]; return getComponent(field, 6); } /** Get PID.23 - Birth Place */ export function PID_23_birth_place(seg: HL7v2Segment): string | undefined { const val = seg.fields[23]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PID.24 - Multiple Birth Indicator */ export function PID_24_multiple_birth_indicator(seg: HL7v2Segment): string | undefined { const val = seg.fields[24]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PID.25 - Birth Order */ export function PID_25_birth_order(seg: HL7v2Segment): string | undefined { const val = seg.fields[25]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PID.26.1 - Identifier */ export function PID_26_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 1); } /** Get PID.26.2 - Text */ export function PID_26_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 2); } /** Get PID.26.3 - Name of Coding System */ export function PID_26_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 3); } /** Get PID.26.4 - Alternate Identifier */ export function PID_26_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 4); } /** Get PID.26.5 - Alternate Text */ export function PID_26_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 5); } /** Get PID.26.6 - Name of Alternate Coding System */ export function PID_26_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[26]; return getComponent(field, 6); } /** Get PID.27.1 - Identifier */ export function PID_27_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[27]; return getComponent(field, 1); } /** Get PID.27.2 - Text */ export function PID_27_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[27]; return getComponent(field, 2); } /** Get PID.27.3 - Name of Coding System */ export function PID_27_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[27]; return getComponent(field, 3); } /** Get PID.27.4 - Alternate Identifier */ export function PID_27_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[27]; return getComponent(field, 4); } /** Get PID.27.5 - Alternate Text */ export function PID_27_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[27]; return getComponent(field, 5); } /** Get PID.27.6 - Name of Alternate Coding System */ export function PID_27_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[27]; return getComponent(field, 6); } /** Get PID.28.1 - Identifier */ export function PID_28_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[28]; return getComponent(field, 1); } /** Get PID.28.2 - Text */ export function PID_28_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[28]; return getComponent(field, 2); } /** Get PID.28.3 - Name of Coding System */ export function PID_28_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[28]; return getComponent(field, 3); } /** Get PID.28.4 - Alternate Identifier */ export function PID_28_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[28]; return getComponent(field, 4); } /** Get PID.28.5 - Alternate Text */ export function PID_28_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[28]; return getComponent(field, 5); } /** Get PID.28.6 - Name of Alternate Coding System */ export function PID_28_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[28]; return getComponent(field, 6); } /** Get PID.29 - Patient Death Date and Time */ export function PID_29_deceased_date_time(seg: HL7v2Segment): string | undefined { const val = seg.fields[29]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PID.30 - Patient Death Indicator */ export function PID_30_deceased(seg: HL7v2Segment): string | undefined { const val = seg.fields[30]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PID.31 - Identity Unknown Indicator */ export function PID_31_identity_unknown_indicator(seg: HL7v2Segment): string | undefined { const val = seg.fields[31]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PID.32 - Identity Reliability Code */ export function PID_32_identity_reliability_code(seg: HL7v2Segment): string | undefined { const val = seg.fields[32]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PID.33 - Last Update Date/Time */ export function PID_33_last_update_date_time(seg: HL7v2Segment): string | undefined { const val = seg.fields[33]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PID.34.1 - Namespace ID */ export function PID_34_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[34]; return getComponent(field, 1); } /** Get PID.34.2 - Universal ID */ export function PID_34_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[34]; return getComponent(field, 2); } /** Get PID.34.3 - Universal ID Type */ export function PID_34_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[34]; return getComponent(field, 3); } /** Get PID.35.1 - Identifier */ export function PID_35_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[35]; return getComponent(field, 1); } /** Get PID.35.2 - Text */ export function PID_35_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[35]; return getComponent(field, 2); } /** Get PID.35.3 - Name of Coding System */ export function PID_35_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[35]; return getComponent(field, 3); } /** Get PID.35.4 - Alternate Identifier */ export function PID_35_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[35]; return getComponent(field, 4); } /** Get PID.35.5 - Alternate Text */ export function PID_35_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[35]; return getComponent(field, 5); } /** Get PID.35.6 - Name of Alternate Coding System */ export function PID_35_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[35]; return getComponent(field, 6); } /** Get PID.36.1 - Identifier */ export function PID_36_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[36]; return getComponent(field, 1); } /** Get PID.36.2 - Text */ export function PID_36_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[36]; return getComponent(field, 2); } /** Get PID.36.3 - Name of Coding System */ export function PID_36_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[36]; return getComponent(field, 3); } /** Get PID.36.4 - Alternate Identifier */ export function PID_36_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[36]; return getComponent(field, 4); } /** Get PID.36.5 - Alternate Text */ export function PID_36_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[36]; return getComponent(field, 5); } /** Get PID.36.6 - Name of Alternate Coding System */ export function PID_36_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[36]; return getComponent(field, 6); } /** Get PID.37 - Strain */ export function PID_37_strain(seg: HL7v2Segment): string | undefined { const val = seg.fields[37]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PID.38.1 - Identifier */ export function PID_38_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[38]; return getComponent(field, 1); } /** Get PID.38.2 - Text */ export function PID_38_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[38]; return getComponent(field, 2); } /** Get PID.38.3 - Name of Coding System */ export function PID_38_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[38]; return getComponent(field, 3); } /** Get PID.38.4 - Alternate Identifier */ export function PID_38_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[38]; return getComponent(field, 4); } /** Get PID.38.5 - Alternate Text */ export function PID_38_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[38]; return getComponent(field, 5); } /** Get PID.38.6 - Name of Alternate Coding System */ export function PID_38_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[38]; return getComponent(field, 6); } /** Get PID.39.1 - Identifier */ export function PID_39_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[39]; return getComponent(field, 1); } /** Get PID.39.2 - Text */ export function PID_39_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[39]; return getComponent(field, 2); } /** Get PID.39.3 - Name of Coding System */ export function PID_39_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[39]; return getComponent(field, 3); } /** Get PID.39.4 - Alternate Identifier */ export function PID_39_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[39]; return getComponent(field, 4); } /** Get PID.39.5 - Alternate Text */ export function PID_39_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[39]; return getComponent(field, 5); } /** Get PID.39.6 - Name of Alternate Coding System */ export function PID_39_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[39]; return getComponent(field, 6); } /** Get PID.39.7 - Coding System Version ID */ export function PID_39_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[39]; return getComponent(field, 7); } /** Get PID.39.8 - Alternate Coding System Version ID */ export function PID_39_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[39]; return getComponent(field, 8); } /** Get PID.39.9 - Original Text */ export function PID_39_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[39]; return getComponent(field, 9); } export class PIDBuilder { private seg: HL7v2Segment = { segment: "PID", fields: {} }; /** PID.1 - Set ID - PID */ set_pid_1_setIdPid(value: string | null | undefined): this { if (value != null) this.seg.fields[1] = value; return this; } /** PID.1 - Set ID - PID */ get_pid_1_setIdPid(): string | undefined { const val = this.seg.fields[1]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PID.2 - Patient ID */ set_pid_2_patientId(value: CX | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[2] = fv; return this; } /** PID.2 - Patient ID */ get_pid_2_patientId(): CX | undefined { return fromCX(this.seg.fields[2]); } /** PID.3 - Patient Identifier List (set all values) */ set_pid_3_identifier(values: CX[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[3] = arr; return this; } /** PID.3 - Patient Identifier List (add single value) */ add_pid_3_identifier(value: CX | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[3]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[3] = [fv]; } } return this; } /** PID.3 - Patient Identifier List */ get_pid_3_identifier(): CX[] | undefined { const val = this.seg.fields[3]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromCX(v)).filter((v): v is CX => v !== undefined); } /** PID.4 - Alternate Patient ID - PID (set all values) */ set_pid_4_alternatePatientIdPid(values: CX[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[4] = arr; return this; } /** PID.4 - Alternate Patient ID - PID (add single value) */ add_pid_4_alternatePatientIdPid(value: CX | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[4]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[4] = [fv]; } } return this; } /** PID.4 - Alternate Patient ID - PID */ get_pid_4_alternatePatientIdPid(): CX[] | undefined { const val = this.seg.fields[4]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromCX(v)).filter((v): v is CX => v !== undefined); } /** PID.5 - Patient Name (set all values) */ set_pid_5_name(values: XPN[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[5] = arr; return this; } /** PID.5 - Patient Name (add single value) */ add_pid_5_name(value: XPN | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[5]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[5] = [fv]; } } return this; } /** PID.5 - Patient Name */ get_pid_5_name(): XPN[] | undefined { const val = this.seg.fields[5]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXPN(v)).filter((v): v is XPN => v !== undefined); } /** PID.6 - Mother's Maiden Name (set all values) */ set_pid_6_mothersMaidenName(values: XPN[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[6] = arr; return this; } /** PID.6 - Mother's Maiden Name (add single value) */ add_pid_6_mothersMaidenName(value: XPN | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[6]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[6] = [fv]; } } return this; } /** PID.6 - Mother's Maiden Name */ get_pid_6_mothersMaidenName(): XPN[] | undefined { const val = this.seg.fields[6]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXPN(v)).filter((v): v is XPN => v !== undefined); } /** PID.7 - Date/Time of Birth */ set_pid_7_birthDate(value: string | null | undefined): this { if (value != null) this.seg.fields[7] = value; return this; } /** PID.7 - Date/Time of Birth */ get_pid_7_birthDate(): string | undefined { const val = this.seg.fields[7]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PID.8 - Administrative Sex */ set_pid_8_gender(value: string | null | undefined): this { if (value != null) this.seg.fields[8] = value; return this; } /** PID.8 - Administrative Sex */ get_pid_8_gender(): string | undefined { const val = this.seg.fields[8]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PID.9 - Patient Alias (set all values) */ set_pid_9_alias(values: XPN[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[9] = arr; return this; } /** PID.9 - Patient Alias (add single value) */ add_pid_9_alias(value: XPN | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[9]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[9] = [fv]; } } return this; } /** PID.9 - Patient Alias */ get_pid_9_alias(): XPN[] | undefined { const val = this.seg.fields[9]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXPN(v)).filter((v): v is XPN => v !== undefined); } /** PID.10 - Race (set all values) */ set_pid_10_race(values: CE[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[10] = arr; return this; } /** PID.10 - Race (add single value) */ add_pid_10_race(value: CE | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[10]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[10] = [fv]; } } return this; } /** PID.10 - Race */ get_pid_10_race(): CE[] | undefined { const val = this.seg.fields[10]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromCE(v)).filter((v): v is CE => v !== undefined); } /** PID.11 - Patient Address (set all values) */ set_pid_11_address(values: XAD[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[11] = arr; return this; } /** PID.11 - Patient Address (add single value) */ add_pid_11_address(value: XAD | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[11]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[11] = [fv]; } } return this; } /** PID.11 - Patient Address */ get_pid_11_address(): XAD[] | undefined { const val = this.seg.fields[11]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXAD(v)).filter((v): v is XAD => v !== undefined); } /** PID.12 - County Code */ set_pid_12_countyCode(value: string | null | undefined): this { if (value != null) this.seg.fields[12] = value; return this; } /** PID.12 - County Code */ get_pid_12_countyCode(): string | undefined { const val = this.seg.fields[12]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PID.13 - Phone Number - Home (set all values) */ set_pid_13_homePhone(values: XTN[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[13] = arr; return this; } /** PID.13 - Phone Number - Home (add single value) */ add_pid_13_homePhone(value: XTN | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[13]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[13] = [fv]; } } return this; } /** PID.13 - Phone Number - Home */ get_pid_13_homePhone(): XTN[] | undefined { const val = this.seg.fields[13]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXTN(v)).filter((v): v is XTN => v !== undefined); } /** PID.14 - Phone Number - Business (set all values) */ set_pid_14_businessPhone(values: XTN[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[14] = arr; return this; } /** PID.14 - Phone Number - Business (add single value) */ add_pid_14_businessPhone(value: XTN | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[14]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[14] = [fv]; } } return this; } /** PID.14 - Phone Number - Business */ get_pid_14_businessPhone(): XTN[] | undefined { const val = this.seg.fields[14]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXTN(v)).filter((v): v is XTN => v !== undefined); } /** PID.15 - Primary Language */ set_pid_15_language(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[15] = fv; return this; } /** PID.15 - Primary Language */ get_pid_15_language(): CE | undefined { return fromCE(this.seg.fields[15]); } /** PID.16 - Marital Status */ set_pid_16_maritalStatus(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[16] = fv; return this; } /** PID.16 - Marital Status */ get_pid_16_maritalStatus(): CE | undefined { return fromCE(this.seg.fields[16]); } /** PID.17 - Religion */ set_pid_17_religion(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[17] = fv; return this; } /** PID.17 - Religion */ get_pid_17_religion(): CE | undefined { return fromCE(this.seg.fields[17]); } /** PID.18 - Patient Account Number */ set_pid_18_accountNumber(value: CX | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[18] = fv; return this; } /** PID.18 - Patient Account Number */ get_pid_18_accountNumber(): CX | undefined { return fromCX(this.seg.fields[18]); } /** PID.19 - SSN Number - Patient */ set_pid_19_ssnNumberPatient(value: string | null | undefined): this { if (value != null) this.seg.fields[19] = value; return this; } /** PID.19 - SSN Number - Patient */ get_pid_19_ssnNumberPatient(): string | undefined { const val = this.seg.fields[19]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PID.20 - Driver's License Number - Patient */ set_pid_20_driversLicenseNumberPatient(value: DLN | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[20] = fv; return this; } /** PID.20 - Driver's License Number - Patient */ get_pid_20_driversLicenseNumberPatient(): DLN | undefined { return fromDLN(this.seg.fields[20]); } /** PID.21 - Mother's Identifier (set all values) */ set_pid_21_mothersIdentifier(values: CX[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[21] = arr; return this; } /** PID.21 - Mother's Identifier (add single value) */ add_pid_21_mothersIdentifier(value: CX | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[21]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[21] = [fv]; } } return this; } /** PID.21 - Mother's Identifier */ get_pid_21_mothersIdentifier(): CX[] | undefined { const val = this.seg.fields[21]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromCX(v)).filter((v): v is CX => v !== undefined); } /** PID.22 - Ethnic Group (set all values) */ set_pid_22_ethnicity(values: CE[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[22] = arr; return this; } /** PID.22 - Ethnic Group (add single value) */ add_pid_22_ethnicity(value: CE | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[22]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[22] = [fv]; } } return this; } /** PID.22 - Ethnic Group */ get_pid_22_ethnicity(): CE[] | undefined { const val = this.seg.fields[22]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromCE(v)).filter((v): v is CE => v !== undefined); } /** PID.23 - Birth Place */ set_pid_23_birthPlace(value: string | null | undefined): this { if (value != null) this.seg.fields[23] = value; return this; } /** PID.23 - Birth Place */ get_pid_23_birthPlace(): string | undefined { const val = this.seg.fields[23]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PID.24 - Multiple Birth Indicator */ set_pid_24_multipleBirthIndicator(value: string | null | undefined): this { if (value != null) this.seg.fields[24] = value; return this; } /** PID.24 - Multiple Birth Indicator */ get_pid_24_multipleBirthIndicator(): string | undefined { const val = this.seg.fields[24]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PID.25 - Birth Order */ set_pid_25_birthOrder(value: string | null | undefined): this { if (value != null) this.seg.fields[25] = value; return this; } /** PID.25 - Birth Order */ get_pid_25_birthOrder(): string | undefined { const val = this.seg.fields[25]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PID.26 - Citizenship (set all values) */ set_pid_26_citizenship(values: CE[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[26] = arr; return this; } /** PID.26 - Citizenship (add single value) */ add_pid_26_citizenship(value: CE | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[26]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[26] = [fv]; } } return this; } /** PID.26 - Citizenship */ get_pid_26_citizenship(): CE[] | undefined { const val = this.seg.fields[26]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromCE(v)).filter((v): v is CE => v !== undefined); } /** PID.27 - Veterans Military Status */ set_pid_27_veteransMilitaryStatus(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[27] = fv; return this; } /** PID.27 - Veterans Military Status */ get_pid_27_veteransMilitaryStatus(): CE | undefined { return fromCE(this.seg.fields[27]); } /** PID.28 - Nationality */ set_pid_28_nationality(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[28] = fv; return this; } /** PID.28 - Nationality */ get_pid_28_nationality(): CE | undefined { return fromCE(this.seg.fields[28]); } /** PID.29 - Patient Death Date and Time */ set_pid_29_deceasedDateTime(value: string | null | undefined): this { if (value != null) this.seg.fields[29] = value; return this; } /** PID.29 - Patient Death Date and Time */ get_pid_29_deceasedDateTime(): string | undefined { const val = this.seg.fields[29]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PID.30 - Patient Death Indicator */ set_pid_30_deceased(value: string | null | undefined): this { if (value != null) this.seg.fields[30] = value; return this; } /** PID.30 - Patient Death Indicator */ get_pid_30_deceased(): string | undefined { const val = this.seg.fields[30]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PID.31 - Identity Unknown Indicator */ set_pid_31_identityUnknownIndicator(value: string | null | undefined): this { if (value != null) this.seg.fields[31] = value; return this; } /** PID.31 - Identity Unknown Indicator */ get_pid_31_identityUnknownIndicator(): string | undefined { const val = this.seg.fields[31]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PID.32 - Identity Reliability Code */ set_pid_32_identityReliabilityCode(value: string | null | undefined): this { if (value != null) this.seg.fields[32] = value; return this; } /** PID.32 - Identity Reliability Code */ get_pid_32_identityReliabilityCode(): string | undefined { const val = this.seg.fields[32]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PID.33 - Last Update Date/Time */ set_pid_33_lastUpdateDateTime(value: string | null | undefined): this { if (value != null) this.seg.fields[33] = value; return this; } /** PID.33 - Last Update Date/Time */ get_pid_33_lastUpdateDateTime(): string | undefined { const val = this.seg.fields[33]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PID.34 - Last Update Facility */ set_pid_34_lastUpdateFacility(value: HD | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[34] = fv; return this; } /** PID.34 - Last Update Facility */ get_pid_34_lastUpdateFacility(): HD | undefined { return fromHD(this.seg.fields[34]); } /** PID.35 - Species Code */ set_pid_35_speciesCode(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[35] = fv; return this; } /** PID.35 - Species Code */ get_pid_35_speciesCode(): CE | undefined { return fromCE(this.seg.fields[35]); } /** PID.36 - Breed Code */ set_pid_36_breedCode(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[36] = fv; return this; } /** PID.36 - Breed Code */ get_pid_36_breedCode(): CE | undefined { return fromCE(this.seg.fields[36]); } /** PID.37 - Strain */ set_pid_37_strain(value: string | null | undefined): this { if (value != null) this.seg.fields[37] = value; return this; } /** PID.37 - Strain */ get_pid_37_strain(): string | undefined { const val = this.seg.fields[37]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PID.38 - Production Class Code */ set_pid_38_productionClassCode(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[38] = fv; return this; } /** PID.38 - Production Class Code */ get_pid_38_productionClassCode(): CE | undefined { return fromCE(this.seg.fields[38]); } /** PID.39 - Tribal Citizenship (set all values) */ set_pid_39_tribalCitizenship(values: CWE[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[39] = arr; return this; } /** PID.39 - Tribal Citizenship (add single value) */ add_pid_39_tribalCitizenship(value: CWE | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[39]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[39] = [fv]; } } return this; } /** PID.39 - Tribal Citizenship */ get_pid_39_tribalCitizenship(): CWE[] | undefined { const val = this.seg.fields[39]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromCWE(v)).filter((v): v is CWE => v !== undefined); } build(): HL7v2Segment { return this.seg; } } // ====== PR1 Segment ====== /** Get PR1.1 - Set ID - PR1 */ export function PR1_1_set_id_pr1(seg: HL7v2Segment): string | undefined { const val = seg.fields[1]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PR1.2 - Procedure Coding Method */ export function PR1_2_procedure_coding_method(seg: HL7v2Segment): string | undefined { const val = seg.fields[2]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PR1.3.1 - Identifier */ export function PR1_3_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 1); } /** Get PR1.3.2 - Text */ export function PR1_3_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 2); } /** Get PR1.3.3 - Name of Coding System */ export function PR1_3_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 3); } /** Get PR1.3.4 - Alternate Identifier */ export function PR1_3_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 4); } /** Get PR1.3.5 - Alternate Text */ export function PR1_3_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 5); } /** Get PR1.3.6 - Name of Alternate Coding System */ export function PR1_3_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 6); } /** Get PR1.4 - Procedure Description */ export function PR1_4_procedure_description(seg: HL7v2Segment): string | undefined { const val = seg.fields[4]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PR1.5 - Procedure Date/Time */ export function PR1_5_procedure_date_time(seg: HL7v2Segment): string | undefined { const val = seg.fields[5]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PR1.6 - Procedure Functional Type */ export function PR1_6_procedure_functional_type(seg: HL7v2Segment): string | undefined { const val = seg.fields[6]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PR1.7 - Procedure Minutes */ export function PR1_7_procedure_minutes(seg: HL7v2Segment): string | undefined { const val = seg.fields[7]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PR1.8.1 - ID Number */ export function PR1_8_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 1); } /** Get PR1.8.2 - Family Name */ export function PR1_8_2_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 2); } /** Get PR1.8.2.1 - Surname */ export function PR1_8_2_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 2, 1); } /** Get PR1.8.2.2 - Own Surname Prefix */ export function PR1_8_2_2_own_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 2, 2); } /** Get PR1.8.2.3 - Own Surname */ export function PR1_8_2_3_own_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 2, 3); } /** Get PR1.8.2.4 - Surname Prefix From Partner/Spouse */ export function PR1_8_2_4_partner_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 2, 4); } /** Get PR1.8.2.5 - Surname From Partner/Spouse */ export function PR1_8_2_5_partner_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 2, 5); } /** Get PR1.8.3 - Given Name */ export function PR1_8_3_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 3); } /** Get PR1.8.4 - Second and Further Given Names or Initials Thereof */ export function PR1_8_4_additional_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 4); } /** Get PR1.8.5 - Suffix (e.g., JR or III) */ export function PR1_8_5_suffix(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 5); } /** Get PR1.8.6 - Prefix (e.g., DR) */ export function PR1_8_6_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 6); } /** Get PR1.8.7 - Degree (e.g., MD) */ export function PR1_8_7_qualification(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 7); } /** Get PR1.8.8 - Source Table */ export function PR1_8_8_source_table(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 8); } /** Get PR1.8.9 - Assigning Authority */ export function PR1_8_9_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 9); } /** Get PR1.8.9.1 - Namespace ID */ export function PR1_8_9_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 9, 1); } /** Get PR1.8.9.2 - Universal ID */ export function PR1_8_9_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 9, 2); } /** Get PR1.8.9.3 - Universal ID Type */ export function PR1_8_9_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 9, 3); } /** Get PR1.8.10 - Name Type Code */ export function PR1_8_10_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 10); } /** Get PR1.8.11 - Identifier Check Digit */ export function PR1_8_11_check_digit(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 11); } /** Get PR1.8.12 - Check Digit Scheme */ export function PR1_8_12_check_digit_scheme(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 12); } /** Get PR1.8.13 - Identifier Type Code */ export function PR1_8_13_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 13); } /** Get PR1.8.14 - Assigning Facility */ export function PR1_8_14_assigner(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 14); } /** Get PR1.8.14.1 - Namespace ID */ export function PR1_8_14_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 14, 1); } /** Get PR1.8.14.2 - Universal ID */ export function PR1_8_14_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 14, 2); } /** Get PR1.8.14.3 - Universal ID Type */ export function PR1_8_14_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 14, 3); } /** Get PR1.8.15 - Name Representation Code */ export function PR1_8_15_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 15); } /** Get PR1.8.16 - Name Context */ export function PR1_8_16_context(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 16); } /** Get PR1.8.16.1 - Identifier */ export function PR1_8_16_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 16, 1); } /** Get PR1.8.16.2 - Text */ export function PR1_8_16_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 16, 2); } /** Get PR1.8.16.3 - Name of Coding System */ export function PR1_8_16_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 16, 3); } /** Get PR1.8.16.4 - Alternate Identifier */ export function PR1_8_16_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 16, 4); } /** Get PR1.8.16.5 - Alternate Text */ export function PR1_8_16_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 16, 5); } /** Get PR1.8.16.6 - Name of Alternate Coding System */ export function PR1_8_16_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 16, 6); } /** Get PR1.8.17 - Name Validity Range */ export function PR1_8_17_period(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 17); } /** Get PR1.8.17.1 - Range Start Date/Time */ export function PR1_8_17_1_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 17, 1); } /** Get PR1.8.17.2 - Range End Date/Time */ export function PR1_8_17_2_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 17, 2); } /** Get PR1.8.18 - Name Assembly Order */ export function PR1_8_18_order(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 18); } /** Get PR1.8.19 - Effective Date */ export function PR1_8_19_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 19); } /** Get PR1.8.20 - Expiration Date */ export function PR1_8_20_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 20); } /** Get PR1.8.21 - Professional Suffix */ export function PR1_8_21_credential(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 21); } /** Get PR1.8.22 - Assigning Jurisdiction */ export function PR1_8_22_jurisdiction(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 22); } /** Get PR1.8.22.1 - Identifier */ export function PR1_8_22_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 22, 1); } /** Get PR1.8.22.2 - Text */ export function PR1_8_22_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 22, 2); } /** Get PR1.8.22.3 - Name of Coding System */ export function PR1_8_22_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 22, 3); } /** Get PR1.8.22.4 - Alternate Identifier */ export function PR1_8_22_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 22, 4); } /** Get PR1.8.22.5 - Alternate Text */ export function PR1_8_22_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 22, 5); } /** Get PR1.8.22.6 - Name of Alternate Coding System */ export function PR1_8_22_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 22, 6); } /** Get PR1.8.22.7 - Coding System Version ID */ export function PR1_8_22_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 22, 7); } /** Get PR1.8.22.8 - Alternate Coding System Version ID */ export function PR1_8_22_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 22, 8); } /** Get PR1.8.22.9 - Original Text */ export function PR1_8_22_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 22, 9); } /** Get PR1.8.23 - Assigning Agency or Department */ export function PR1_8_23_department(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 23); } /** Get PR1.8.23.1 - Identifier */ export function PR1_8_23_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 23, 1); } /** Get PR1.8.23.2 - Text */ export function PR1_8_23_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 23, 2); } /** Get PR1.8.23.3 - Name of Coding System */ export function PR1_8_23_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 23, 3); } /** Get PR1.8.23.4 - Alternate Identifier */ export function PR1_8_23_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 23, 4); } /** Get PR1.8.23.5 - Alternate Text */ export function PR1_8_23_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 23, 5); } /** Get PR1.8.23.6 - Name of Alternate Coding System */ export function PR1_8_23_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 23, 6); } /** Get PR1.8.23.7 - Coding System Version ID */ export function PR1_8_23_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 23, 7); } /** Get PR1.8.23.8 - Alternate Coding System Version ID */ export function PR1_8_23_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 23, 8); } /** Get PR1.8.23.9 - Original Text */ export function PR1_8_23_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 23, 9); } /** Get PR1.9 - Anesthesia Code */ export function PR1_9_anesthesia_code(seg: HL7v2Segment): string | undefined { const val = seg.fields[9]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PR1.10 - Anesthesia Minutes */ export function PR1_10_anesthesia_minutes(seg: HL7v2Segment): string | undefined { const val = seg.fields[10]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PR1.11.1 - ID Number */ export function PR1_11_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 1); } /** Get PR1.11.2 - Family Name */ export function PR1_11_2_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 2); } /** Get PR1.11.2.1 - Surname */ export function PR1_11_2_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 2, 1); } /** Get PR1.11.2.2 - Own Surname Prefix */ export function PR1_11_2_2_own_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 2, 2); } /** Get PR1.11.2.3 - Own Surname */ export function PR1_11_2_3_own_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 2, 3); } /** Get PR1.11.2.4 - Surname Prefix From Partner/Spouse */ export function PR1_11_2_4_partner_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 2, 4); } /** Get PR1.11.2.5 - Surname From Partner/Spouse */ export function PR1_11_2_5_partner_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 2, 5); } /** Get PR1.11.3 - Given Name */ export function PR1_11_3_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 3); } /** Get PR1.11.4 - Second and Further Given Names or Initials Thereof */ export function PR1_11_4_additional_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 4); } /** Get PR1.11.5 - Suffix (e.g., JR or III) */ export function PR1_11_5_suffix(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 5); } /** Get PR1.11.6 - Prefix (e.g., DR) */ export function PR1_11_6_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 6); } /** Get PR1.11.7 - Degree (e.g., MD) */ export function PR1_11_7_qualification(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 7); } /** Get PR1.11.8 - Source Table */ export function PR1_11_8_source_table(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 8); } /** Get PR1.11.9 - Assigning Authority */ export function PR1_11_9_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 9); } /** Get PR1.11.9.1 - Namespace ID */ export function PR1_11_9_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 9, 1); } /** Get PR1.11.9.2 - Universal ID */ export function PR1_11_9_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 9, 2); } /** Get PR1.11.9.3 - Universal ID Type */ export function PR1_11_9_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 9, 3); } /** Get PR1.11.10 - Name Type Code */ export function PR1_11_10_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 10); } /** Get PR1.11.11 - Identifier Check Digit */ export function PR1_11_11_check_digit(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 11); } /** Get PR1.11.12 - Check Digit Scheme */ export function PR1_11_12_check_digit_scheme(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 12); } /** Get PR1.11.13 - Identifier Type Code */ export function PR1_11_13_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 13); } /** Get PR1.11.14 - Assigning Facility */ export function PR1_11_14_assigner(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 14); } /** Get PR1.11.14.1 - Namespace ID */ export function PR1_11_14_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 14, 1); } /** Get PR1.11.14.2 - Universal ID */ export function PR1_11_14_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 14, 2); } /** Get PR1.11.14.3 - Universal ID Type */ export function PR1_11_14_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 14, 3); } /** Get PR1.11.15 - Name Representation Code */ export function PR1_11_15_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 15); } /** Get PR1.11.16 - Name Context */ export function PR1_11_16_context(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 16); } /** Get PR1.11.16.1 - Identifier */ export function PR1_11_16_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 16, 1); } /** Get PR1.11.16.2 - Text */ export function PR1_11_16_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 16, 2); } /** Get PR1.11.16.3 - Name of Coding System */ export function PR1_11_16_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 16, 3); } /** Get PR1.11.16.4 - Alternate Identifier */ export function PR1_11_16_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 16, 4); } /** Get PR1.11.16.5 - Alternate Text */ export function PR1_11_16_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 16, 5); } /** Get PR1.11.16.6 - Name of Alternate Coding System */ export function PR1_11_16_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 16, 6); } /** Get PR1.11.17 - Name Validity Range */ export function PR1_11_17_period(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 17); } /** Get PR1.11.17.1 - Range Start Date/Time */ export function PR1_11_17_1_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 17, 1); } /** Get PR1.11.17.2 - Range End Date/Time */ export function PR1_11_17_2_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 17, 2); } /** Get PR1.11.18 - Name Assembly Order */ export function PR1_11_18_order(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 18); } /** Get PR1.11.19 - Effective Date */ export function PR1_11_19_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 19); } /** Get PR1.11.20 - Expiration Date */ export function PR1_11_20_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 20); } /** Get PR1.11.21 - Professional Suffix */ export function PR1_11_21_credential(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 21); } /** Get PR1.11.22 - Assigning Jurisdiction */ export function PR1_11_22_jurisdiction(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 22); } /** Get PR1.11.22.1 - Identifier */ export function PR1_11_22_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 22, 1); } /** Get PR1.11.22.2 - Text */ export function PR1_11_22_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 22, 2); } /** Get PR1.11.22.3 - Name of Coding System */ export function PR1_11_22_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 22, 3); } /** Get PR1.11.22.4 - Alternate Identifier */ export function PR1_11_22_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 22, 4); } /** Get PR1.11.22.5 - Alternate Text */ export function PR1_11_22_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 22, 5); } /** Get PR1.11.22.6 - Name of Alternate Coding System */ export function PR1_11_22_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 22, 6); } /** Get PR1.11.22.7 - Coding System Version ID */ export function PR1_11_22_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 22, 7); } /** Get PR1.11.22.8 - Alternate Coding System Version ID */ export function PR1_11_22_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 22, 8); } /** Get PR1.11.22.9 - Original Text */ export function PR1_11_22_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 22, 9); } /** Get PR1.11.23 - Assigning Agency or Department */ export function PR1_11_23_department(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 23); } /** Get PR1.11.23.1 - Identifier */ export function PR1_11_23_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 23, 1); } /** Get PR1.11.23.2 - Text */ export function PR1_11_23_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 23, 2); } /** Get PR1.11.23.3 - Name of Coding System */ export function PR1_11_23_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 23, 3); } /** Get PR1.11.23.4 - Alternate Identifier */ export function PR1_11_23_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 23, 4); } /** Get PR1.11.23.5 - Alternate Text */ export function PR1_11_23_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 23, 5); } /** Get PR1.11.23.6 - Name of Alternate Coding System */ export function PR1_11_23_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 23, 6); } /** Get PR1.11.23.7 - Coding System Version ID */ export function PR1_11_23_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 23, 7); } /** Get PR1.11.23.8 - Alternate Coding System Version ID */ export function PR1_11_23_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 23, 8); } /** Get PR1.11.23.9 - Original Text */ export function PR1_11_23_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 23, 9); } /** Get PR1.12.1 - ID Number */ export function PR1_12_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 1); } /** Get PR1.12.2 - Family Name */ export function PR1_12_2_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 2); } /** Get PR1.12.2.1 - Surname */ export function PR1_12_2_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 2, 1); } /** Get PR1.12.2.2 - Own Surname Prefix */ export function PR1_12_2_2_own_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 2, 2); } /** Get PR1.12.2.3 - Own Surname */ export function PR1_12_2_3_own_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 2, 3); } /** Get PR1.12.2.4 - Surname Prefix From Partner/Spouse */ export function PR1_12_2_4_partner_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 2, 4); } /** Get PR1.12.2.5 - Surname From Partner/Spouse */ export function PR1_12_2_5_partner_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 2, 5); } /** Get PR1.12.3 - Given Name */ export function PR1_12_3_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 3); } /** Get PR1.12.4 - Second and Further Given Names or Initials Thereof */ export function PR1_12_4_additional_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 4); } /** Get PR1.12.5 - Suffix (e.g., JR or III) */ export function PR1_12_5_suffix(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 5); } /** Get PR1.12.6 - Prefix (e.g., DR) */ export function PR1_12_6_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 6); } /** Get PR1.12.7 - Degree (e.g., MD) */ export function PR1_12_7_qualification(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 7); } /** Get PR1.12.8 - Source Table */ export function PR1_12_8_source_table(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 8); } /** Get PR1.12.9 - Assigning Authority */ export function PR1_12_9_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 9); } /** Get PR1.12.9.1 - Namespace ID */ export function PR1_12_9_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 9, 1); } /** Get PR1.12.9.2 - Universal ID */ export function PR1_12_9_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 9, 2); } /** Get PR1.12.9.3 - Universal ID Type */ export function PR1_12_9_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 9, 3); } /** Get PR1.12.10 - Name Type Code */ export function PR1_12_10_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 10); } /** Get PR1.12.11 - Identifier Check Digit */ export function PR1_12_11_check_digit(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 11); } /** Get PR1.12.12 - Check Digit Scheme */ export function PR1_12_12_check_digit_scheme(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 12); } /** Get PR1.12.13 - Identifier Type Code */ export function PR1_12_13_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 13); } /** Get PR1.12.14 - Assigning Facility */ export function PR1_12_14_assigner(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 14); } /** Get PR1.12.14.1 - Namespace ID */ export function PR1_12_14_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 14, 1); } /** Get PR1.12.14.2 - Universal ID */ export function PR1_12_14_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 14, 2); } /** Get PR1.12.14.3 - Universal ID Type */ export function PR1_12_14_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 14, 3); } /** Get PR1.12.15 - Name Representation Code */ export function PR1_12_15_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 15); } /** Get PR1.12.16 - Name Context */ export function PR1_12_16_context(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 16); } /** Get PR1.12.16.1 - Identifier */ export function PR1_12_16_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 16, 1); } /** Get PR1.12.16.2 - Text */ export function PR1_12_16_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 16, 2); } /** Get PR1.12.16.3 - Name of Coding System */ export function PR1_12_16_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 16, 3); } /** Get PR1.12.16.4 - Alternate Identifier */ export function PR1_12_16_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 16, 4); } /** Get PR1.12.16.5 - Alternate Text */ export function PR1_12_16_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 16, 5); } /** Get PR1.12.16.6 - Name of Alternate Coding System */ export function PR1_12_16_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 16, 6); } /** Get PR1.12.17 - Name Validity Range */ export function PR1_12_17_period(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 17); } /** Get PR1.12.17.1 - Range Start Date/Time */ export function PR1_12_17_1_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 17, 1); } /** Get PR1.12.17.2 - Range End Date/Time */ export function PR1_12_17_2_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 17, 2); } /** Get PR1.12.18 - Name Assembly Order */ export function PR1_12_18_order(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 18); } /** Get PR1.12.19 - Effective Date */ export function PR1_12_19_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 19); } /** Get PR1.12.20 - Expiration Date */ export function PR1_12_20_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 20); } /** Get PR1.12.21 - Professional Suffix */ export function PR1_12_21_credential(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 21); } /** Get PR1.12.22 - Assigning Jurisdiction */ export function PR1_12_22_jurisdiction(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 22); } /** Get PR1.12.22.1 - Identifier */ export function PR1_12_22_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 22, 1); } /** Get PR1.12.22.2 - Text */ export function PR1_12_22_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 22, 2); } /** Get PR1.12.22.3 - Name of Coding System */ export function PR1_12_22_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 22, 3); } /** Get PR1.12.22.4 - Alternate Identifier */ export function PR1_12_22_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 22, 4); } /** Get PR1.12.22.5 - Alternate Text */ export function PR1_12_22_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 22, 5); } /** Get PR1.12.22.6 - Name of Alternate Coding System */ export function PR1_12_22_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 22, 6); } /** Get PR1.12.22.7 - Coding System Version ID */ export function PR1_12_22_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 22, 7); } /** Get PR1.12.22.8 - Alternate Coding System Version ID */ export function PR1_12_22_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 22, 8); } /** Get PR1.12.22.9 - Original Text */ export function PR1_12_22_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 22, 9); } /** Get PR1.12.23 - Assigning Agency or Department */ export function PR1_12_23_department(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 23); } /** Get PR1.12.23.1 - Identifier */ export function PR1_12_23_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 23, 1); } /** Get PR1.12.23.2 - Text */ export function PR1_12_23_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 23, 2); } /** Get PR1.12.23.3 - Name of Coding System */ export function PR1_12_23_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 23, 3); } /** Get PR1.12.23.4 - Alternate Identifier */ export function PR1_12_23_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 23, 4); } /** Get PR1.12.23.5 - Alternate Text */ export function PR1_12_23_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 23, 5); } /** Get PR1.12.23.6 - Name of Alternate Coding System */ export function PR1_12_23_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 23, 6); } /** Get PR1.12.23.7 - Coding System Version ID */ export function PR1_12_23_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 23, 7); } /** Get PR1.12.23.8 - Alternate Coding System Version ID */ export function PR1_12_23_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 23, 8); } /** Get PR1.12.23.9 - Original Text */ export function PR1_12_23_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 23, 9); } /** Get PR1.13.1 - Identifier */ export function PR1_13_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 1); } /** Get PR1.13.2 - Text */ export function PR1_13_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 2); } /** Get PR1.13.3 - Name of Coding System */ export function PR1_13_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 3); } /** Get PR1.13.4 - Alternate Identifier */ export function PR1_13_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 4); } /** Get PR1.13.5 - Alternate Text */ export function PR1_13_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 5); } /** Get PR1.13.6 - Name of Alternate Coding System */ export function PR1_13_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 6); } /** Get PR1.14 - Procedure Priority */ export function PR1_14_procedure_priority(seg: HL7v2Segment): string | undefined { const val = seg.fields[14]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PR1.15.1 - Identifier */ export function PR1_15_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[15]; return getComponent(field, 1); } /** Get PR1.15.2 - Text */ export function PR1_15_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[15]; return getComponent(field, 2); } /** Get PR1.15.3 - Name of Coding System */ export function PR1_15_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[15]; return getComponent(field, 3); } /** Get PR1.15.4 - Alternate Identifier */ export function PR1_15_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[15]; return getComponent(field, 4); } /** Get PR1.15.5 - Alternate Text */ export function PR1_15_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[15]; return getComponent(field, 5); } /** Get PR1.15.6 - Name of Alternate Coding System */ export function PR1_15_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[15]; return getComponent(field, 6); } /** Get PR1.16.1 - Identifier */ export function PR1_16_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 1); } /** Get PR1.16.2 - Text */ export function PR1_16_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 2); } /** Get PR1.16.3 - Name of Coding System */ export function PR1_16_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 3); } /** Get PR1.16.4 - Alternate Identifier */ export function PR1_16_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 4); } /** Get PR1.16.5 - Alternate Text */ export function PR1_16_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 5); } /** Get PR1.16.6 - Name of Alternate Coding System */ export function PR1_16_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 6); } /** Get PR1.17 - Procedure DRG Type */ export function PR1_17_procedure_drg_type(seg: HL7v2Segment): string | undefined { const val = seg.fields[17]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PR1.18.1 - Identifier */ export function PR1_18_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 1); } /** Get PR1.18.2 - Text */ export function PR1_18_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 2); } /** Get PR1.18.3 - Name of Coding System */ export function PR1_18_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 3); } /** Get PR1.18.4 - Alternate Identifier */ export function PR1_18_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 4); } /** Get PR1.18.5 - Alternate Text */ export function PR1_18_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 5); } /** Get PR1.18.6 - Name of Alternate Coding System */ export function PR1_18_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[18]; return getComponent(field, 6); } /** Get PR1.19.1 - Entity Identifier */ export function PR1_19_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 1); } /** Get PR1.19.2 - Namespace ID */ export function PR1_19_2_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 2); } /** Get PR1.19.3 - Universal ID */ export function PR1_19_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 3); } /** Get PR1.19.4 - Universal ID Type */ export function PR1_19_4_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 4); } /** Get PR1.20 - Procedure Action Code */ export function PR1_20_procedure_action_code(seg: HL7v2Segment): string | undefined { const val = seg.fields[20]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } export class PR1Builder { private seg: HL7v2Segment = { segment: "PR1", fields: {} }; /** PR1.1 - Set ID - PR1 */ set_pr1_1_setIdPr1(value: string | null | undefined): this { if (value != null) this.seg.fields[1] = value; return this; } /** PR1.1 - Set ID - PR1 */ get_pr1_1_setIdPr1(): string | undefined { const val = this.seg.fields[1]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PR1.2 - Procedure Coding Method */ set_pr1_2_procedureCodingMethod(value: string | null | undefined): this { if (value != null) this.seg.fields[2] = value; return this; } /** PR1.2 - Procedure Coding Method */ get_pr1_2_procedureCodingMethod(): string | undefined { const val = this.seg.fields[2]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PR1.3 - Procedure Code */ set_pr1_3_procedureCode(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[3] = fv; return this; } /** PR1.3 - Procedure Code */ get_pr1_3_procedureCode(): CE | undefined { return fromCE(this.seg.fields[3]); } /** PR1.4 - Procedure Description */ set_pr1_4_procedureDescription(value: string | null | undefined): this { if (value != null) this.seg.fields[4] = value; return this; } /** PR1.4 - Procedure Description */ get_pr1_4_procedureDescription(): string | undefined { const val = this.seg.fields[4]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PR1.5 - Procedure Date/Time */ set_pr1_5_procedureDateTime(value: string | null | undefined): this { if (value != null) this.seg.fields[5] = value; return this; } /** PR1.5 - Procedure Date/Time */ get_pr1_5_procedureDateTime(): string | undefined { const val = this.seg.fields[5]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PR1.6 - Procedure Functional Type */ set_pr1_6_procedureFunctionalType(value: string | null | undefined): this { if (value != null) this.seg.fields[6] = value; return this; } /** PR1.6 - Procedure Functional Type */ get_pr1_6_procedureFunctionalType(): string | undefined { const val = this.seg.fields[6]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PR1.7 - Procedure Minutes */ set_pr1_7_procedureMinutes(value: string | null | undefined): this { if (value != null) this.seg.fields[7] = value; return this; } /** PR1.7 - Procedure Minutes */ get_pr1_7_procedureMinutes(): string | undefined { const val = this.seg.fields[7]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PR1.8 - Anesthesiologist (set all values) */ set_pr1_8_anesthesiologist(values: XCN[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[8] = arr; return this; } /** PR1.8 - Anesthesiologist (add single value) */ add_pr1_8_anesthesiologist(value: XCN | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[8]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[8] = [fv]; } } return this; } /** PR1.8 - Anesthesiologist */ get_pr1_8_anesthesiologist(): XCN[] | undefined { const val = this.seg.fields[8]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXCN(v)).filter((v): v is XCN => v !== undefined); } /** PR1.9 - Anesthesia Code */ set_pr1_9_anesthesiaCode(value: string | null | undefined): this { if (value != null) this.seg.fields[9] = value; return this; } /** PR1.9 - Anesthesia Code */ get_pr1_9_anesthesiaCode(): string | undefined { const val = this.seg.fields[9]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PR1.10 - Anesthesia Minutes */ set_pr1_10_anesthesiaMinutes(value: string | null | undefined): this { if (value != null) this.seg.fields[10] = value; return this; } /** PR1.10 - Anesthesia Minutes */ get_pr1_10_anesthesiaMinutes(): string | undefined { const val = this.seg.fields[10]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PR1.11 - Surgeon (set all values) */ set_pr1_11_surgeon(values: XCN[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[11] = arr; return this; } /** PR1.11 - Surgeon (add single value) */ add_pr1_11_surgeon(value: XCN | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[11]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[11] = [fv]; } } return this; } /** PR1.11 - Surgeon */ get_pr1_11_surgeon(): XCN[] | undefined { const val = this.seg.fields[11]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXCN(v)).filter((v): v is XCN => v !== undefined); } /** PR1.12 - Procedure Practitioner (set all values) */ set_pr1_12_procedurePractitioner(values: XCN[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[12] = arr; return this; } /** PR1.12 - Procedure Practitioner (add single value) */ add_pr1_12_procedurePractitioner(value: XCN | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[12]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[12] = [fv]; } } return this; } /** PR1.12 - Procedure Practitioner */ get_pr1_12_procedurePractitioner(): XCN[] | undefined { const val = this.seg.fields[12]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXCN(v)).filter((v): v is XCN => v !== undefined); } /** PR1.13 - Consent Code */ set_pr1_13_consentCode(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[13] = fv; return this; } /** PR1.13 - Consent Code */ get_pr1_13_consentCode(): CE | undefined { return fromCE(this.seg.fields[13]); } /** PR1.14 - Procedure Priority */ set_pr1_14_procedurePriority(value: string | null | undefined): this { if (value != null) this.seg.fields[14] = value; return this; } /** PR1.14 - Procedure Priority */ get_pr1_14_procedurePriority(): string | undefined { const val = this.seg.fields[14]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PR1.15 - Associated Diagnosis Code */ set_pr1_15_associatedDiagnosisCode(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[15] = fv; return this; } /** PR1.15 - Associated Diagnosis Code */ get_pr1_15_associatedDiagnosisCode(): CE | undefined { return fromCE(this.seg.fields[15]); } /** PR1.16 - Procedure Code Modifier (set all values) */ set_pr1_16_procedureCodeModifier(values: CE[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[16] = arr; return this; } /** PR1.16 - Procedure Code Modifier (add single value) */ add_pr1_16_procedureCodeModifier(value: CE | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[16]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[16] = [fv]; } } return this; } /** PR1.16 - Procedure Code Modifier */ get_pr1_16_procedureCodeModifier(): CE[] | undefined { const val = this.seg.fields[16]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromCE(v)).filter((v): v is CE => v !== undefined); } /** PR1.17 - Procedure DRG Type */ set_pr1_17_procedureDrgType(value: string | null | undefined): this { if (value != null) this.seg.fields[17] = value; return this; } /** PR1.17 - Procedure DRG Type */ get_pr1_17_procedureDrgType(): string | undefined { const val = this.seg.fields[17]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PR1.18 - Tissue Type Code (set all values) */ set_pr1_18_tissueTypeCode(values: CE[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[18] = arr; return this; } /** PR1.18 - Tissue Type Code (add single value) */ add_pr1_18_tissueTypeCode(value: CE | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[18]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[18] = [fv]; } } return this; } /** PR1.18 - Tissue Type Code */ get_pr1_18_tissueTypeCode(): CE[] | undefined { const val = this.seg.fields[18]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromCE(v)).filter((v): v is CE => v !== undefined); } /** PR1.19 - Procedure Identifier */ set_pr1_19_procedureIdentifier(value: EI | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[19] = fv; return this; } /** PR1.19 - Procedure Identifier */ get_pr1_19_procedureIdentifier(): EI | undefined { return fromEI(this.seg.fields[19]); } /** PR1.20 - Procedure Action Code */ set_pr1_20_procedureActionCode(value: string | null | undefined): this { if (value != null) this.seg.fields[20] = value; return this; } /** PR1.20 - Procedure Action Code */ get_pr1_20_procedureActionCode(): string | undefined { const val = this.seg.fields[20]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } build(): HL7v2Segment { return this.seg; } } // ====== PV1 Segment ====== /** Get PV1.1 - Set ID - PV1 */ export function PV1_1_set_id_pv1(seg: HL7v2Segment): string | undefined { const val = seg.fields[1]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV1.2 - Patient Class */ export function PV1_2_class(seg: HL7v2Segment): string | undefined { const val = seg.fields[2]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV1.3.1 - Point of Care */ export function PV1_3_1_care_site(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 1); } /** Get PV1.3.2 - Room */ export function PV1_3_2_room(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 2); } /** Get PV1.3.3 - Bed */ export function PV1_3_3_bed(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 3); } /** Get PV1.3.4 - Facility */ export function PV1_3_4_facility(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 4); } /** Get PV1.3.4.1 - Namespace ID */ export function PV1_3_4_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 4, 1); } /** Get PV1.3.4.2 - Universal ID */ export function PV1_3_4_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 4, 2); } /** Get PV1.3.4.3 - Universal ID Type */ export function PV1_3_4_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 4, 3); } /** Get PV1.3.5 - Location Status */ export function PV1_3_5_status(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 5); } /** Get PV1.3.6 - Person Location Type */ export function PV1_3_6_location_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 6); } /** Get PV1.3.7 - Building */ export function PV1_3_7_building(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 7); } /** Get PV1.3.8 - Floor */ export function PV1_3_8_floor(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 8); } /** Get PV1.3.9 - Location Description */ export function PV1_3_9_description(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 9); } /** Get PV1.3.10 - Comprehensive Location Identifier */ export function PV1_3_10_identifier(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 10); } /** Get PV1.3.10.1 - Entity Identifier */ export function PV1_3_10_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 10, 1); } /** Get PV1.3.10.2 - Namespace ID */ export function PV1_3_10_2_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 10, 2); } /** Get PV1.3.10.3 - Universal ID */ export function PV1_3_10_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 10, 3); } /** Get PV1.3.10.4 - Universal ID Type */ export function PV1_3_10_4_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 10, 4); } /** Get PV1.3.11 - Assigning Authority for Location */ export function PV1_3_11_location_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 11); } /** Get PV1.3.11.1 - Namespace ID */ export function PV1_3_11_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 11, 1); } /** Get PV1.3.11.2 - Universal ID */ export function PV1_3_11_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 11, 2); } /** Get PV1.3.11.3 - Universal ID Type */ export function PV1_3_11_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 11, 3); } /** Get PV1.4 - Admission Type */ export function PV1_4_admission_type(seg: HL7v2Segment): string | undefined { const val = seg.fields[4]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV1.5.1 - ID Number */ export function PV1_5_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 1); } /** Get PV1.5.2 - Check Digit */ export function PV1_5_2_check_digit(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 2); } /** Get PV1.5.3 - Check Digit Scheme */ export function PV1_5_3_check_digit_scheme(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 3); } /** Get PV1.5.4 - Assigning Authority */ export function PV1_5_4_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 4); } /** Get PV1.5.4.1 - Namespace ID */ export function PV1_5_4_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 4, 1); } /** Get PV1.5.4.2 - Universal ID */ export function PV1_5_4_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 4, 2); } /** Get PV1.5.4.3 - Universal ID Type */ export function PV1_5_4_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 4, 3); } /** Get PV1.5.5 - Identifier Type Code */ export function PV1_5_5_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 5); } /** Get PV1.5.6 - Assigning Facility */ export function PV1_5_6_assigner(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 6); } /** Get PV1.5.6.1 - Namespace ID */ export function PV1_5_6_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 6, 1); } /** Get PV1.5.6.2 - Universal ID */ export function PV1_5_6_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 6, 2); } /** Get PV1.5.6.3 - Universal ID Type */ export function PV1_5_6_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 6, 3); } /** Get PV1.5.7 - Effective Date */ export function PV1_5_7_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 7); } /** Get PV1.5.8 - Expiration Date */ export function PV1_5_8_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 8); } /** Get PV1.5.9 - Assigning Jurisdiction */ export function PV1_5_9_jurisdiction(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 9); } /** Get PV1.5.9.1 - Identifier */ export function PV1_5_9_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 9, 1); } /** Get PV1.5.9.2 - Text */ export function PV1_5_9_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 9, 2); } /** Get PV1.5.9.3 - Name of Coding System */ export function PV1_5_9_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 9, 3); } /** Get PV1.5.9.4 - Alternate Identifier */ export function PV1_5_9_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 9, 4); } /** Get PV1.5.9.5 - Alternate Text */ export function PV1_5_9_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 9, 5); } /** Get PV1.5.9.6 - Name of Alternate Coding System */ export function PV1_5_9_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 9, 6); } /** Get PV1.5.9.7 - Coding System Version ID */ export function PV1_5_9_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 9, 7); } /** Get PV1.5.9.8 - Alternate Coding System Version ID */ export function PV1_5_9_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 9, 8); } /** Get PV1.5.9.9 - Original Text */ export function PV1_5_9_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 9, 9); } /** Get PV1.5.10 - Assigning Agency or Department */ export function PV1_5_10_department(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 10); } /** Get PV1.5.10.1 - Identifier */ export function PV1_5_10_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 10, 1); } /** Get PV1.5.10.2 - Text */ export function PV1_5_10_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 10, 2); } /** Get PV1.5.10.3 - Name of Coding System */ export function PV1_5_10_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 10, 3); } /** Get PV1.5.10.4 - Alternate Identifier */ export function PV1_5_10_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 10, 4); } /** Get PV1.5.10.5 - Alternate Text */ export function PV1_5_10_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 10, 5); } /** Get PV1.5.10.6 - Name of Alternate Coding System */ export function PV1_5_10_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 10, 6); } /** Get PV1.5.10.7 - Coding System Version ID */ export function PV1_5_10_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 10, 7); } /** Get PV1.5.10.8 - Alternate Coding System Version ID */ export function PV1_5_10_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 10, 8); } /** Get PV1.5.10.9 - Original Text */ export function PV1_5_10_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[5]; return getComponent(field, 10, 9); } /** Get PV1.6.1 - Point of Care */ export function PV1_6_1_care_site(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 1); } /** Get PV1.6.2 - Room */ export function PV1_6_2_room(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 2); } /** Get PV1.6.3 - Bed */ export function PV1_6_3_bed(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 3); } /** Get PV1.6.4 - Facility */ export function PV1_6_4_facility(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 4); } /** Get PV1.6.4.1 - Namespace ID */ export function PV1_6_4_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 4, 1); } /** Get PV1.6.4.2 - Universal ID */ export function PV1_6_4_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 4, 2); } /** Get PV1.6.4.3 - Universal ID Type */ export function PV1_6_4_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 4, 3); } /** Get PV1.6.5 - Location Status */ export function PV1_6_5_status(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 5); } /** Get PV1.6.6 - Person Location Type */ export function PV1_6_6_location_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 6); } /** Get PV1.6.7 - Building */ export function PV1_6_7_building(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 7); } /** Get PV1.6.8 - Floor */ export function PV1_6_8_floor(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 8); } /** Get PV1.6.9 - Location Description */ export function PV1_6_9_description(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 9); } /** Get PV1.6.10 - Comprehensive Location Identifier */ export function PV1_6_10_identifier(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 10); } /** Get PV1.6.10.1 - Entity Identifier */ export function PV1_6_10_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 10, 1); } /** Get PV1.6.10.2 - Namespace ID */ export function PV1_6_10_2_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 10, 2); } /** Get PV1.6.10.3 - Universal ID */ export function PV1_6_10_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 10, 3); } /** Get PV1.6.10.4 - Universal ID Type */ export function PV1_6_10_4_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 10, 4); } /** Get PV1.6.11 - Assigning Authority for Location */ export function PV1_6_11_location_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 11); } /** Get PV1.6.11.1 - Namespace ID */ export function PV1_6_11_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 11, 1); } /** Get PV1.6.11.2 - Universal ID */ export function PV1_6_11_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 11, 2); } /** Get PV1.6.11.3 - Universal ID Type */ export function PV1_6_11_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 11, 3); } /** Get PV1.7.1 - ID Number */ export function PV1_7_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 1); } /** Get PV1.7.2 - Family Name */ export function PV1_7_2_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 2); } /** Get PV1.7.2.1 - Surname */ export function PV1_7_2_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 2, 1); } /** Get PV1.7.2.2 - Own Surname Prefix */ export function PV1_7_2_2_own_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 2, 2); } /** Get PV1.7.2.3 - Own Surname */ export function PV1_7_2_3_own_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 2, 3); } /** Get PV1.7.2.4 - Surname Prefix From Partner/Spouse */ export function PV1_7_2_4_partner_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 2, 4); } /** Get PV1.7.2.5 - Surname From Partner/Spouse */ export function PV1_7_2_5_partner_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 2, 5); } /** Get PV1.7.3 - Given Name */ export function PV1_7_3_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 3); } /** Get PV1.7.4 - Second and Further Given Names or Initials Thereof */ export function PV1_7_4_additional_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 4); } /** Get PV1.7.5 - Suffix (e.g., JR or III) */ export function PV1_7_5_suffix(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 5); } /** Get PV1.7.6 - Prefix (e.g., DR) */ export function PV1_7_6_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 6); } /** Get PV1.7.7 - Degree (e.g., MD) */ export function PV1_7_7_qualification(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 7); } /** Get PV1.7.8 - Source Table */ export function PV1_7_8_source_table(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 8); } /** Get PV1.7.9 - Assigning Authority */ export function PV1_7_9_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 9); } /** Get PV1.7.9.1 - Namespace ID */ export function PV1_7_9_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 9, 1); } /** Get PV1.7.9.2 - Universal ID */ export function PV1_7_9_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 9, 2); } /** Get PV1.7.9.3 - Universal ID Type */ export function PV1_7_9_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 9, 3); } /** Get PV1.7.10 - Name Type Code */ export function PV1_7_10_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 10); } /** Get PV1.7.11 - Identifier Check Digit */ export function PV1_7_11_check_digit(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 11); } /** Get PV1.7.12 - Check Digit Scheme */ export function PV1_7_12_check_digit_scheme(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 12); } /** Get PV1.7.13 - Identifier Type Code */ export function PV1_7_13_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 13); } /** Get PV1.7.14 - Assigning Facility */ export function PV1_7_14_assigner(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 14); } /** Get PV1.7.14.1 - Namespace ID */ export function PV1_7_14_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 14, 1); } /** Get PV1.7.14.2 - Universal ID */ export function PV1_7_14_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 14, 2); } /** Get PV1.7.14.3 - Universal ID Type */ export function PV1_7_14_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 14, 3); } /** Get PV1.7.15 - Name Representation Code */ export function PV1_7_15_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 15); } /** Get PV1.7.16 - Name Context */ export function PV1_7_16_context(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 16); } /** Get PV1.7.16.1 - Identifier */ export function PV1_7_16_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 16, 1); } /** Get PV1.7.16.2 - Text */ export function PV1_7_16_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 16, 2); } /** Get PV1.7.16.3 - Name of Coding System */ export function PV1_7_16_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 16, 3); } /** Get PV1.7.16.4 - Alternate Identifier */ export function PV1_7_16_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 16, 4); } /** Get PV1.7.16.5 - Alternate Text */ export function PV1_7_16_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 16, 5); } /** Get PV1.7.16.6 - Name of Alternate Coding System */ export function PV1_7_16_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 16, 6); } /** Get PV1.7.17 - Name Validity Range */ export function PV1_7_17_period(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 17); } /** Get PV1.7.17.1 - Range Start Date/Time */ export function PV1_7_17_1_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 17, 1); } /** Get PV1.7.17.2 - Range End Date/Time */ export function PV1_7_17_2_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 17, 2); } /** Get PV1.7.18 - Name Assembly Order */ export function PV1_7_18_order(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 18); } /** Get PV1.7.19 - Effective Date */ export function PV1_7_19_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 19); } /** Get PV1.7.20 - Expiration Date */ export function PV1_7_20_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 20); } /** Get PV1.7.21 - Professional Suffix */ export function PV1_7_21_credential(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 21); } /** Get PV1.7.22 - Assigning Jurisdiction */ export function PV1_7_22_jurisdiction(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 22); } /** Get PV1.7.22.1 - Identifier */ export function PV1_7_22_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 22, 1); } /** Get PV1.7.22.2 - Text */ export function PV1_7_22_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 22, 2); } /** Get PV1.7.22.3 - Name of Coding System */ export function PV1_7_22_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 22, 3); } /** Get PV1.7.22.4 - Alternate Identifier */ export function PV1_7_22_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 22, 4); } /** Get PV1.7.22.5 - Alternate Text */ export function PV1_7_22_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 22, 5); } /** Get PV1.7.22.6 - Name of Alternate Coding System */ export function PV1_7_22_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 22, 6); } /** Get PV1.7.22.7 - Coding System Version ID */ export function PV1_7_22_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 22, 7); } /** Get PV1.7.22.8 - Alternate Coding System Version ID */ export function PV1_7_22_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 22, 8); } /** Get PV1.7.22.9 - Original Text */ export function PV1_7_22_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 22, 9); } /** Get PV1.7.23 - Assigning Agency or Department */ export function PV1_7_23_department(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 23); } /** Get PV1.7.23.1 - Identifier */ export function PV1_7_23_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 23, 1); } /** Get PV1.7.23.2 - Text */ export function PV1_7_23_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 23, 2); } /** Get PV1.7.23.3 - Name of Coding System */ export function PV1_7_23_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 23, 3); } /** Get PV1.7.23.4 - Alternate Identifier */ export function PV1_7_23_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 23, 4); } /** Get PV1.7.23.5 - Alternate Text */ export function PV1_7_23_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 23, 5); } /** Get PV1.7.23.6 - Name of Alternate Coding System */ export function PV1_7_23_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 23, 6); } /** Get PV1.7.23.7 - Coding System Version ID */ export function PV1_7_23_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 23, 7); } /** Get PV1.7.23.8 - Alternate Coding System Version ID */ export function PV1_7_23_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 23, 8); } /** Get PV1.7.23.9 - Original Text */ export function PV1_7_23_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 23, 9); } /** Get PV1.8.1 - ID Number */ export function PV1_8_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 1); } /** Get PV1.8.2 - Family Name */ export function PV1_8_2_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 2); } /** Get PV1.8.2.1 - Surname */ export function PV1_8_2_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 2, 1); } /** Get PV1.8.2.2 - Own Surname Prefix */ export function PV1_8_2_2_own_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 2, 2); } /** Get PV1.8.2.3 - Own Surname */ export function PV1_8_2_3_own_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 2, 3); } /** Get PV1.8.2.4 - Surname Prefix From Partner/Spouse */ export function PV1_8_2_4_partner_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 2, 4); } /** Get PV1.8.2.5 - Surname From Partner/Spouse */ export function PV1_8_2_5_partner_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 2, 5); } /** Get PV1.8.3 - Given Name */ export function PV1_8_3_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 3); } /** Get PV1.8.4 - Second and Further Given Names or Initials Thereof */ export function PV1_8_4_additional_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 4); } /** Get PV1.8.5 - Suffix (e.g., JR or III) */ export function PV1_8_5_suffix(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 5); } /** Get PV1.8.6 - Prefix (e.g., DR) */ export function PV1_8_6_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 6); } /** Get PV1.8.7 - Degree (e.g., MD) */ export function PV1_8_7_qualification(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 7); } /** Get PV1.8.8 - Source Table */ export function PV1_8_8_source_table(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 8); } /** Get PV1.8.9 - Assigning Authority */ export function PV1_8_9_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 9); } /** Get PV1.8.9.1 - Namespace ID */ export function PV1_8_9_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 9, 1); } /** Get PV1.8.9.2 - Universal ID */ export function PV1_8_9_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 9, 2); } /** Get PV1.8.9.3 - Universal ID Type */ export function PV1_8_9_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 9, 3); } /** Get PV1.8.10 - Name Type Code */ export function PV1_8_10_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 10); } /** Get PV1.8.11 - Identifier Check Digit */ export function PV1_8_11_check_digit(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 11); } /** Get PV1.8.12 - Check Digit Scheme */ export function PV1_8_12_check_digit_scheme(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 12); } /** Get PV1.8.13 - Identifier Type Code */ export function PV1_8_13_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 13); } /** Get PV1.8.14 - Assigning Facility */ export function PV1_8_14_assigner(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 14); } /** Get PV1.8.14.1 - Namespace ID */ export function PV1_8_14_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 14, 1); } /** Get PV1.8.14.2 - Universal ID */ export function PV1_8_14_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 14, 2); } /** Get PV1.8.14.3 - Universal ID Type */ export function PV1_8_14_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 14, 3); } /** Get PV1.8.15 - Name Representation Code */ export function PV1_8_15_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 15); } /** Get PV1.8.16 - Name Context */ export function PV1_8_16_context(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 16); } /** Get PV1.8.16.1 - Identifier */ export function PV1_8_16_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 16, 1); } /** Get PV1.8.16.2 - Text */ export function PV1_8_16_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 16, 2); } /** Get PV1.8.16.3 - Name of Coding System */ export function PV1_8_16_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 16, 3); } /** Get PV1.8.16.4 - Alternate Identifier */ export function PV1_8_16_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 16, 4); } /** Get PV1.8.16.5 - Alternate Text */ export function PV1_8_16_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 16, 5); } /** Get PV1.8.16.6 - Name of Alternate Coding System */ export function PV1_8_16_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 16, 6); } /** Get PV1.8.17 - Name Validity Range */ export function PV1_8_17_period(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 17); } /** Get PV1.8.17.1 - Range Start Date/Time */ export function PV1_8_17_1_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 17, 1); } /** Get PV1.8.17.2 - Range End Date/Time */ export function PV1_8_17_2_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 17, 2); } /** Get PV1.8.18 - Name Assembly Order */ export function PV1_8_18_order(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 18); } /** Get PV1.8.19 - Effective Date */ export function PV1_8_19_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 19); } /** Get PV1.8.20 - Expiration Date */ export function PV1_8_20_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 20); } /** Get PV1.8.21 - Professional Suffix */ export function PV1_8_21_credential(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 21); } /** Get PV1.8.22 - Assigning Jurisdiction */ export function PV1_8_22_jurisdiction(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 22); } /** Get PV1.8.22.1 - Identifier */ export function PV1_8_22_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 22, 1); } /** Get PV1.8.22.2 - Text */ export function PV1_8_22_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 22, 2); } /** Get PV1.8.22.3 - Name of Coding System */ export function PV1_8_22_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 22, 3); } /** Get PV1.8.22.4 - Alternate Identifier */ export function PV1_8_22_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 22, 4); } /** Get PV1.8.22.5 - Alternate Text */ export function PV1_8_22_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 22, 5); } /** Get PV1.8.22.6 - Name of Alternate Coding System */ export function PV1_8_22_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 22, 6); } /** Get PV1.8.22.7 - Coding System Version ID */ export function PV1_8_22_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 22, 7); } /** Get PV1.8.22.8 - Alternate Coding System Version ID */ export function PV1_8_22_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 22, 8); } /** Get PV1.8.22.9 - Original Text */ export function PV1_8_22_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 22, 9); } /** Get PV1.8.23 - Assigning Agency or Department */ export function PV1_8_23_department(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 23); } /** Get PV1.8.23.1 - Identifier */ export function PV1_8_23_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 23, 1); } /** Get PV1.8.23.2 - Text */ export function PV1_8_23_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 23, 2); } /** Get PV1.8.23.3 - Name of Coding System */ export function PV1_8_23_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 23, 3); } /** Get PV1.8.23.4 - Alternate Identifier */ export function PV1_8_23_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 23, 4); } /** Get PV1.8.23.5 - Alternate Text */ export function PV1_8_23_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 23, 5); } /** Get PV1.8.23.6 - Name of Alternate Coding System */ export function PV1_8_23_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 23, 6); } /** Get PV1.8.23.7 - Coding System Version ID */ export function PV1_8_23_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 23, 7); } /** Get PV1.8.23.8 - Alternate Coding System Version ID */ export function PV1_8_23_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 23, 8); } /** Get PV1.8.23.9 - Original Text */ export function PV1_8_23_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 23, 9); } /** Get PV1.9.1 - ID Number */ export function PV1_9_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 1); } /** Get PV1.9.2 - Family Name */ export function PV1_9_2_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 2); } /** Get PV1.9.2.1 - Surname */ export function PV1_9_2_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 2, 1); } /** Get PV1.9.2.2 - Own Surname Prefix */ export function PV1_9_2_2_own_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 2, 2); } /** Get PV1.9.2.3 - Own Surname */ export function PV1_9_2_3_own_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 2, 3); } /** Get PV1.9.2.4 - Surname Prefix From Partner/Spouse */ export function PV1_9_2_4_partner_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 2, 4); } /** Get PV1.9.2.5 - Surname From Partner/Spouse */ export function PV1_9_2_5_partner_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 2, 5); } /** Get PV1.9.3 - Given Name */ export function PV1_9_3_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 3); } /** Get PV1.9.4 - Second and Further Given Names or Initials Thereof */ export function PV1_9_4_additional_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 4); } /** Get PV1.9.5 - Suffix (e.g., JR or III) */ export function PV1_9_5_suffix(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 5); } /** Get PV1.9.6 - Prefix (e.g., DR) */ export function PV1_9_6_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 6); } /** Get PV1.9.7 - Degree (e.g., MD) */ export function PV1_9_7_qualification(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 7); } /** Get PV1.9.8 - Source Table */ export function PV1_9_8_source_table(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 8); } /** Get PV1.9.9 - Assigning Authority */ export function PV1_9_9_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 9); } /** Get PV1.9.9.1 - Namespace ID */ export function PV1_9_9_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 9, 1); } /** Get PV1.9.9.2 - Universal ID */ export function PV1_9_9_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 9, 2); } /** Get PV1.9.9.3 - Universal ID Type */ export function PV1_9_9_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 9, 3); } /** Get PV1.9.10 - Name Type Code */ export function PV1_9_10_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 10); } /** Get PV1.9.11 - Identifier Check Digit */ export function PV1_9_11_check_digit(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 11); } /** Get PV1.9.12 - Check Digit Scheme */ export function PV1_9_12_check_digit_scheme(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 12); } /** Get PV1.9.13 - Identifier Type Code */ export function PV1_9_13_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 13); } /** Get PV1.9.14 - Assigning Facility */ export function PV1_9_14_assigner(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 14); } /** Get PV1.9.14.1 - Namespace ID */ export function PV1_9_14_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 14, 1); } /** Get PV1.9.14.2 - Universal ID */ export function PV1_9_14_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 14, 2); } /** Get PV1.9.14.3 - Universal ID Type */ export function PV1_9_14_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 14, 3); } /** Get PV1.9.15 - Name Representation Code */ export function PV1_9_15_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 15); } /** Get PV1.9.16 - Name Context */ export function PV1_9_16_context(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 16); } /** Get PV1.9.16.1 - Identifier */ export function PV1_9_16_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 16, 1); } /** Get PV1.9.16.2 - Text */ export function PV1_9_16_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 16, 2); } /** Get PV1.9.16.3 - Name of Coding System */ export function PV1_9_16_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 16, 3); } /** Get PV1.9.16.4 - Alternate Identifier */ export function PV1_9_16_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 16, 4); } /** Get PV1.9.16.5 - Alternate Text */ export function PV1_9_16_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 16, 5); } /** Get PV1.9.16.6 - Name of Alternate Coding System */ export function PV1_9_16_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 16, 6); } /** Get PV1.9.17 - Name Validity Range */ export function PV1_9_17_period(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 17); } /** Get PV1.9.17.1 - Range Start Date/Time */ export function PV1_9_17_1_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 17, 1); } /** Get PV1.9.17.2 - Range End Date/Time */ export function PV1_9_17_2_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 17, 2); } /** Get PV1.9.18 - Name Assembly Order */ export function PV1_9_18_order(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 18); } /** Get PV1.9.19 - Effective Date */ export function PV1_9_19_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 19); } /** Get PV1.9.20 - Expiration Date */ export function PV1_9_20_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 20); } /** Get PV1.9.21 - Professional Suffix */ export function PV1_9_21_credential(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 21); } /** Get PV1.9.22 - Assigning Jurisdiction */ export function PV1_9_22_jurisdiction(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 22); } /** Get PV1.9.22.1 - Identifier */ export function PV1_9_22_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 22, 1); } /** Get PV1.9.22.2 - Text */ export function PV1_9_22_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 22, 2); } /** Get PV1.9.22.3 - Name of Coding System */ export function PV1_9_22_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 22, 3); } /** Get PV1.9.22.4 - Alternate Identifier */ export function PV1_9_22_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 22, 4); } /** Get PV1.9.22.5 - Alternate Text */ export function PV1_9_22_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 22, 5); } /** Get PV1.9.22.6 - Name of Alternate Coding System */ export function PV1_9_22_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 22, 6); } /** Get PV1.9.22.7 - Coding System Version ID */ export function PV1_9_22_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 22, 7); } /** Get PV1.9.22.8 - Alternate Coding System Version ID */ export function PV1_9_22_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 22, 8); } /** Get PV1.9.22.9 - Original Text */ export function PV1_9_22_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 22, 9); } /** Get PV1.9.23 - Assigning Agency or Department */ export function PV1_9_23_department(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 23); } /** Get PV1.9.23.1 - Identifier */ export function PV1_9_23_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 23, 1); } /** Get PV1.9.23.2 - Text */ export function PV1_9_23_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 23, 2); } /** Get PV1.9.23.3 - Name of Coding System */ export function PV1_9_23_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 23, 3); } /** Get PV1.9.23.4 - Alternate Identifier */ export function PV1_9_23_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 23, 4); } /** Get PV1.9.23.5 - Alternate Text */ export function PV1_9_23_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 23, 5); } /** Get PV1.9.23.6 - Name of Alternate Coding System */ export function PV1_9_23_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 23, 6); } /** Get PV1.9.23.7 - Coding System Version ID */ export function PV1_9_23_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 23, 7); } /** Get PV1.9.23.8 - Alternate Coding System Version ID */ export function PV1_9_23_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 23, 8); } /** Get PV1.9.23.9 - Original Text */ export function PV1_9_23_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 23, 9); } /** Get PV1.10 - Hospital Service */ export function PV1_10_hospital_service(seg: HL7v2Segment): string | undefined { const val = seg.fields[10]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV1.11.1 - Point of Care */ export function PV1_11_1_care_site(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 1); } /** Get PV1.11.2 - Room */ export function PV1_11_2_room(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 2); } /** Get PV1.11.3 - Bed */ export function PV1_11_3_bed(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 3); } /** Get PV1.11.4 - Facility */ export function PV1_11_4_facility(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 4); } /** Get PV1.11.4.1 - Namespace ID */ export function PV1_11_4_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 4, 1); } /** Get PV1.11.4.2 - Universal ID */ export function PV1_11_4_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 4, 2); } /** Get PV1.11.4.3 - Universal ID Type */ export function PV1_11_4_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 4, 3); } /** Get PV1.11.5 - Location Status */ export function PV1_11_5_status(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 5); } /** Get PV1.11.6 - Person Location Type */ export function PV1_11_6_location_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 6); } /** Get PV1.11.7 - Building */ export function PV1_11_7_building(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 7); } /** Get PV1.11.8 - Floor */ export function PV1_11_8_floor(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 8); } /** Get PV1.11.9 - Location Description */ export function PV1_11_9_description(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 9); } /** Get PV1.11.10 - Comprehensive Location Identifier */ export function PV1_11_10_identifier(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 10); } /** Get PV1.11.10.1 - Entity Identifier */ export function PV1_11_10_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 10, 1); } /** Get PV1.11.10.2 - Namespace ID */ export function PV1_11_10_2_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 10, 2); } /** Get PV1.11.10.3 - Universal ID */ export function PV1_11_10_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 10, 3); } /** Get PV1.11.10.4 - Universal ID Type */ export function PV1_11_10_4_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 10, 4); } /** Get PV1.11.11 - Assigning Authority for Location */ export function PV1_11_11_location_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 11); } /** Get PV1.11.11.1 - Namespace ID */ export function PV1_11_11_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 11, 1); } /** Get PV1.11.11.2 - Universal ID */ export function PV1_11_11_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 11, 2); } /** Get PV1.11.11.3 - Universal ID Type */ export function PV1_11_11_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 11, 3); } /** Get PV1.12 - Preadmit Test Indicator */ export function PV1_12_preadmit_test_indicator(seg: HL7v2Segment): string | undefined { const val = seg.fields[12]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV1.13 - Re-admission Indicator */ export function PV1_13_re_admission_indicator(seg: HL7v2Segment): string | undefined { const val = seg.fields[13]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV1.14 - Admit Source */ export function PV1_14_admit_source(seg: HL7v2Segment): string | undefined { const val = seg.fields[14]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV1.15 - Ambulatory Status */ export function PV1_15_ambulatory_status(seg: HL7v2Segment): string | undefined { const val = seg.fields[15]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV1.16 - VIP Indicator */ export function PV1_16_vip(seg: HL7v2Segment): string | undefined { const val = seg.fields[16]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV1.17.1 - ID Number */ export function PV1_17_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 1); } /** Get PV1.17.2 - Family Name */ export function PV1_17_2_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 2); } /** Get PV1.17.2.1 - Surname */ export function PV1_17_2_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 2, 1); } /** Get PV1.17.2.2 - Own Surname Prefix */ export function PV1_17_2_2_own_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 2, 2); } /** Get PV1.17.2.3 - Own Surname */ export function PV1_17_2_3_own_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 2, 3); } /** Get PV1.17.2.4 - Surname Prefix From Partner/Spouse */ export function PV1_17_2_4_partner_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 2, 4); } /** Get PV1.17.2.5 - Surname From Partner/Spouse */ export function PV1_17_2_5_partner_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 2, 5); } /** Get PV1.17.3 - Given Name */ export function PV1_17_3_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 3); } /** Get PV1.17.4 - Second and Further Given Names or Initials Thereof */ export function PV1_17_4_additional_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 4); } /** Get PV1.17.5 - Suffix (e.g., JR or III) */ export function PV1_17_5_suffix(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 5); } /** Get PV1.17.6 - Prefix (e.g., DR) */ export function PV1_17_6_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 6); } /** Get PV1.17.7 - Degree (e.g., MD) */ export function PV1_17_7_qualification(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 7); } /** Get PV1.17.8 - Source Table */ export function PV1_17_8_source_table(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 8); } /** Get PV1.17.9 - Assigning Authority */ export function PV1_17_9_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 9); } /** Get PV1.17.9.1 - Namespace ID */ export function PV1_17_9_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 9, 1); } /** Get PV1.17.9.2 - Universal ID */ export function PV1_17_9_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 9, 2); } /** Get PV1.17.9.3 - Universal ID Type */ export function PV1_17_9_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 9, 3); } /** Get PV1.17.10 - Name Type Code */ export function PV1_17_10_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 10); } /** Get PV1.17.11 - Identifier Check Digit */ export function PV1_17_11_check_digit(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 11); } /** Get PV1.17.12 - Check Digit Scheme */ export function PV1_17_12_check_digit_scheme(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 12); } /** Get PV1.17.13 - Identifier Type Code */ export function PV1_17_13_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 13); } /** Get PV1.17.14 - Assigning Facility */ export function PV1_17_14_assigner(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 14); } /** Get PV1.17.14.1 - Namespace ID */ export function PV1_17_14_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 14, 1); } /** Get PV1.17.14.2 - Universal ID */ export function PV1_17_14_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 14, 2); } /** Get PV1.17.14.3 - Universal ID Type */ export function PV1_17_14_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 14, 3); } /** Get PV1.17.15 - Name Representation Code */ export function PV1_17_15_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 15); } /** Get PV1.17.16 - Name Context */ export function PV1_17_16_context(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 16); } /** Get PV1.17.16.1 - Identifier */ export function PV1_17_16_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 16, 1); } /** Get PV1.17.16.2 - Text */ export function PV1_17_16_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 16, 2); } /** Get PV1.17.16.3 - Name of Coding System */ export function PV1_17_16_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 16, 3); } /** Get PV1.17.16.4 - Alternate Identifier */ export function PV1_17_16_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 16, 4); } /** Get PV1.17.16.5 - Alternate Text */ export function PV1_17_16_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 16, 5); } /** Get PV1.17.16.6 - Name of Alternate Coding System */ export function PV1_17_16_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 16, 6); } /** Get PV1.17.17 - Name Validity Range */ export function PV1_17_17_period(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 17); } /** Get PV1.17.17.1 - Range Start Date/Time */ export function PV1_17_17_1_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 17, 1); } /** Get PV1.17.17.2 - Range End Date/Time */ export function PV1_17_17_2_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 17, 2); } /** Get PV1.17.18 - Name Assembly Order */ export function PV1_17_18_order(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 18); } /** Get PV1.17.19 - Effective Date */ export function PV1_17_19_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 19); } /** Get PV1.17.20 - Expiration Date */ export function PV1_17_20_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 20); } /** Get PV1.17.21 - Professional Suffix */ export function PV1_17_21_credential(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 21); } /** Get PV1.17.22 - Assigning Jurisdiction */ export function PV1_17_22_jurisdiction(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 22); } /** Get PV1.17.22.1 - Identifier */ export function PV1_17_22_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 22, 1); } /** Get PV1.17.22.2 - Text */ export function PV1_17_22_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 22, 2); } /** Get PV1.17.22.3 - Name of Coding System */ export function PV1_17_22_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 22, 3); } /** Get PV1.17.22.4 - Alternate Identifier */ export function PV1_17_22_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 22, 4); } /** Get PV1.17.22.5 - Alternate Text */ export function PV1_17_22_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 22, 5); } /** Get PV1.17.22.6 - Name of Alternate Coding System */ export function PV1_17_22_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 22, 6); } /** Get PV1.17.22.7 - Coding System Version ID */ export function PV1_17_22_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 22, 7); } /** Get PV1.17.22.8 - Alternate Coding System Version ID */ export function PV1_17_22_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 22, 8); } /** Get PV1.17.22.9 - Original Text */ export function PV1_17_22_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 22, 9); } /** Get PV1.17.23 - Assigning Agency or Department */ export function PV1_17_23_department(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 23); } /** Get PV1.17.23.1 - Identifier */ export function PV1_17_23_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 23, 1); } /** Get PV1.17.23.2 - Text */ export function PV1_17_23_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 23, 2); } /** Get PV1.17.23.3 - Name of Coding System */ export function PV1_17_23_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 23, 3); } /** Get PV1.17.23.4 - Alternate Identifier */ export function PV1_17_23_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 23, 4); } /** Get PV1.17.23.5 - Alternate Text */ export function PV1_17_23_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 23, 5); } /** Get PV1.17.23.6 - Name of Alternate Coding System */ export function PV1_17_23_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 23, 6); } /** Get PV1.17.23.7 - Coding System Version ID */ export function PV1_17_23_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 23, 7); } /** Get PV1.17.23.8 - Alternate Coding System Version ID */ export function PV1_17_23_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 23, 8); } /** Get PV1.17.23.9 - Original Text */ export function PV1_17_23_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 23, 9); } /** Get PV1.18 - Patient Type */ export function PV1_18_type(seg: HL7v2Segment): string | undefined { const val = seg.fields[18]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV1.19.1 - ID Number */ export function PV1_19_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 1); } /** Get PV1.19.2 - Check Digit */ export function PV1_19_2_check_digit(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 2); } /** Get PV1.19.3 - Check Digit Scheme */ export function PV1_19_3_check_digit_scheme(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 3); } /** Get PV1.19.4 - Assigning Authority */ export function PV1_19_4_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 4); } /** Get PV1.19.4.1 - Namespace ID */ export function PV1_19_4_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 4, 1); } /** Get PV1.19.4.2 - Universal ID */ export function PV1_19_4_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 4, 2); } /** Get PV1.19.4.3 - Universal ID Type */ export function PV1_19_4_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 4, 3); } /** Get PV1.19.5 - Identifier Type Code */ export function PV1_19_5_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 5); } /** Get PV1.19.6 - Assigning Facility */ export function PV1_19_6_assigner(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 6); } /** Get PV1.19.6.1 - Namespace ID */ export function PV1_19_6_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 6, 1); } /** Get PV1.19.6.2 - Universal ID */ export function PV1_19_6_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 6, 2); } /** Get PV1.19.6.3 - Universal ID Type */ export function PV1_19_6_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 6, 3); } /** Get PV1.19.7 - Effective Date */ export function PV1_19_7_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 7); } /** Get PV1.19.8 - Expiration Date */ export function PV1_19_8_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 8); } /** Get PV1.19.9 - Assigning Jurisdiction */ export function PV1_19_9_jurisdiction(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 9); } /** Get PV1.19.9.1 - Identifier */ export function PV1_19_9_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 9, 1); } /** Get PV1.19.9.2 - Text */ export function PV1_19_9_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 9, 2); } /** Get PV1.19.9.3 - Name of Coding System */ export function PV1_19_9_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 9, 3); } /** Get PV1.19.9.4 - Alternate Identifier */ export function PV1_19_9_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 9, 4); } /** Get PV1.19.9.5 - Alternate Text */ export function PV1_19_9_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 9, 5); } /** Get PV1.19.9.6 - Name of Alternate Coding System */ export function PV1_19_9_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 9, 6); } /** Get PV1.19.9.7 - Coding System Version ID */ export function PV1_19_9_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 9, 7); } /** Get PV1.19.9.8 - Alternate Coding System Version ID */ export function PV1_19_9_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 9, 8); } /** Get PV1.19.9.9 - Original Text */ export function PV1_19_9_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 9, 9); } /** Get PV1.19.10 - Assigning Agency or Department */ export function PV1_19_10_department(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 10); } /** Get PV1.19.10.1 - Identifier */ export function PV1_19_10_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 10, 1); } /** Get PV1.19.10.2 - Text */ export function PV1_19_10_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 10, 2); } /** Get PV1.19.10.3 - Name of Coding System */ export function PV1_19_10_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 10, 3); } /** Get PV1.19.10.4 - Alternate Identifier */ export function PV1_19_10_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 10, 4); } /** Get PV1.19.10.5 - Alternate Text */ export function PV1_19_10_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 10, 5); } /** Get PV1.19.10.6 - Name of Alternate Coding System */ export function PV1_19_10_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 10, 6); } /** Get PV1.19.10.7 - Coding System Version ID */ export function PV1_19_10_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 10, 7); } /** Get PV1.19.10.8 - Alternate Coding System Version ID */ export function PV1_19_10_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 10, 8); } /** Get PV1.19.10.9 - Original Text */ export function PV1_19_10_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[19]; return getComponent(field, 10, 9); } /** Get PV1.20.1 - Financial Class Code */ export function PV1_20_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[20]; return getComponent(field, 1); } /** Get PV1.20.2 - Effective Date */ export function PV1_20_2_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[20]; return getComponent(field, 2); } /** Get PV1.21 - Charge Price Indicator */ export function PV1_21_charge_price_indicator(seg: HL7v2Segment): string | undefined { const val = seg.fields[21]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV1.22 - Courtesy Code */ export function PV1_22_courtesy_code(seg: HL7v2Segment): string | undefined { const val = seg.fields[22]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV1.23 - Credit Rating */ export function PV1_23_credit_rating(seg: HL7v2Segment): string | undefined { const val = seg.fields[23]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV1.24 - Contract Code */ export function PV1_24_contract_code(seg: HL7v2Segment): string | undefined { const val = seg.fields[24]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV1.25 - Contract Effective Date */ export function PV1_25_contract_effective_date(seg: HL7v2Segment): string | undefined { const val = seg.fields[25]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV1.26 - Contract Amount */ export function PV1_26_contract_amount(seg: HL7v2Segment): string | undefined { const val = seg.fields[26]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV1.27 - Contract Period */ export function PV1_27_contract_period(seg: HL7v2Segment): string | undefined { const val = seg.fields[27]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV1.28 - Interest Code */ export function PV1_28_interest_code(seg: HL7v2Segment): string | undefined { const val = seg.fields[28]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV1.29 - Transfer to Bad Debt Code */ export function PV1_29_transfer_to_bad_debt_code(seg: HL7v2Segment): string | undefined { const val = seg.fields[29]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV1.30 - Transfer to Bad Debt Date */ export function PV1_30_transfer_to_bad_debt_date(seg: HL7v2Segment): string | undefined { const val = seg.fields[30]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV1.31 - Bad Debt Agency Code */ export function PV1_31_bad_debt_agency_code(seg: HL7v2Segment): string | undefined { const val = seg.fields[31]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV1.32 - Bad Debt Transfer Amount */ export function PV1_32_bad_debt_transfer_amount(seg: HL7v2Segment): string | undefined { const val = seg.fields[32]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV1.33 - Bad Debt Recovery Amount */ export function PV1_33_bad_debt_recovery_amount(seg: HL7v2Segment): string | undefined { const val = seg.fields[33]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV1.34 - Delete Account Indicator */ export function PV1_34_delete_account_indicator(seg: HL7v2Segment): string | undefined { const val = seg.fields[34]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV1.35 - Delete Account Date */ export function PV1_35_delete_account_date(seg: HL7v2Segment): string | undefined { const val = seg.fields[35]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV1.36 - Discharge Disposition */ export function PV1_36_discharge_disposition(seg: HL7v2Segment): string | undefined { const val = seg.fields[36]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV1.37.1 - Discharge Location */ export function PV1_37_1_location(seg: HL7v2Segment): string | undefined { const field = seg.fields[37]; return getComponent(field, 1); } /** Get PV1.37.2 - Effective Date */ export function PV1_37_2_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[37]; return getComponent(field, 2); } /** Get PV1.38.1 - Identifier */ export function PV1_38_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[38]; return getComponent(field, 1); } /** Get PV1.38.2 - Text */ export function PV1_38_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[38]; return getComponent(field, 2); } /** Get PV1.38.3 - Name of Coding System */ export function PV1_38_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[38]; return getComponent(field, 3); } /** Get PV1.38.4 - Alternate Identifier */ export function PV1_38_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[38]; return getComponent(field, 4); } /** Get PV1.38.5 - Alternate Text */ export function PV1_38_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[38]; return getComponent(field, 5); } /** Get PV1.38.6 - Name of Alternate Coding System */ export function PV1_38_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[38]; return getComponent(field, 6); } /** Get PV1.39 - Servicing Facility */ export function PV1_39_servicing_facility(seg: HL7v2Segment): string | undefined { const val = seg.fields[39]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV1.40 - Bed Status */ export function PV1_40_bed_status(seg: HL7v2Segment): string | undefined { const val = seg.fields[40]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV1.41 - Account Status */ export function PV1_41_account_status(seg: HL7v2Segment): string | undefined { const val = seg.fields[41]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV1.42.1 - Point of Care */ export function PV1_42_1_care_site(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 1); } /** Get PV1.42.2 - Room */ export function PV1_42_2_room(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 2); } /** Get PV1.42.3 - Bed */ export function PV1_42_3_bed(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 3); } /** Get PV1.42.4 - Facility */ export function PV1_42_4_facility(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 4); } /** Get PV1.42.4.1 - Namespace ID */ export function PV1_42_4_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 4, 1); } /** Get PV1.42.4.2 - Universal ID */ export function PV1_42_4_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 4, 2); } /** Get PV1.42.4.3 - Universal ID Type */ export function PV1_42_4_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 4, 3); } /** Get PV1.42.5 - Location Status */ export function PV1_42_5_status(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 5); } /** Get PV1.42.6 - Person Location Type */ export function PV1_42_6_location_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 6); } /** Get PV1.42.7 - Building */ export function PV1_42_7_building(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 7); } /** Get PV1.42.8 - Floor */ export function PV1_42_8_floor(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 8); } /** Get PV1.42.9 - Location Description */ export function PV1_42_9_description(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 9); } /** Get PV1.42.10 - Comprehensive Location Identifier */ export function PV1_42_10_identifier(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 10); } /** Get PV1.42.10.1 - Entity Identifier */ export function PV1_42_10_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 10, 1); } /** Get PV1.42.10.2 - Namespace ID */ export function PV1_42_10_2_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 10, 2); } /** Get PV1.42.10.3 - Universal ID */ export function PV1_42_10_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 10, 3); } /** Get PV1.42.10.4 - Universal ID Type */ export function PV1_42_10_4_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 10, 4); } /** Get PV1.42.11 - Assigning Authority for Location */ export function PV1_42_11_location_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 11); } /** Get PV1.42.11.1 - Namespace ID */ export function PV1_42_11_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 11, 1); } /** Get PV1.42.11.2 - Universal ID */ export function PV1_42_11_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 11, 2); } /** Get PV1.42.11.3 - Universal ID Type */ export function PV1_42_11_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 11, 3); } /** Get PV1.43.1 - Point of Care */ export function PV1_43_1_care_site(seg: HL7v2Segment): string | undefined { const field = seg.fields[43]; return getComponent(field, 1); } /** Get PV1.43.2 - Room */ export function PV1_43_2_room(seg: HL7v2Segment): string | undefined { const field = seg.fields[43]; return getComponent(field, 2); } /** Get PV1.43.3 - Bed */ export function PV1_43_3_bed(seg: HL7v2Segment): string | undefined { const field = seg.fields[43]; return getComponent(field, 3); } /** Get PV1.43.4 - Facility */ export function PV1_43_4_facility(seg: HL7v2Segment): string | undefined { const field = seg.fields[43]; return getComponent(field, 4); } /** Get PV1.43.4.1 - Namespace ID */ export function PV1_43_4_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[43]; return getComponent(field, 4, 1); } /** Get PV1.43.4.2 - Universal ID */ export function PV1_43_4_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[43]; return getComponent(field, 4, 2); } /** Get PV1.43.4.3 - Universal ID Type */ export function PV1_43_4_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[43]; return getComponent(field, 4, 3); } /** Get PV1.43.5 - Location Status */ export function PV1_43_5_status(seg: HL7v2Segment): string | undefined { const field = seg.fields[43]; return getComponent(field, 5); } /** Get PV1.43.6 - Person Location Type */ export function PV1_43_6_location_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[43]; return getComponent(field, 6); } /** Get PV1.43.7 - Building */ export function PV1_43_7_building(seg: HL7v2Segment): string | undefined { const field = seg.fields[43]; return getComponent(field, 7); } /** Get PV1.43.8 - Floor */ export function PV1_43_8_floor(seg: HL7v2Segment): string | undefined { const field = seg.fields[43]; return getComponent(field, 8); } /** Get PV1.43.9 - Location Description */ export function PV1_43_9_description(seg: HL7v2Segment): string | undefined { const field = seg.fields[43]; return getComponent(field, 9); } /** Get PV1.43.10 - Comprehensive Location Identifier */ export function PV1_43_10_identifier(seg: HL7v2Segment): string | undefined { const field = seg.fields[43]; return getComponent(field, 10); } /** Get PV1.43.10.1 - Entity Identifier */ export function PV1_43_10_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[43]; return getComponent(field, 10, 1); } /** Get PV1.43.10.2 - Namespace ID */ export function PV1_43_10_2_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[43]; return getComponent(field, 10, 2); } /** Get PV1.43.10.3 - Universal ID */ export function PV1_43_10_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[43]; return getComponent(field, 10, 3); } /** Get PV1.43.10.4 - Universal ID Type */ export function PV1_43_10_4_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[43]; return getComponent(field, 10, 4); } /** Get PV1.43.11 - Assigning Authority for Location */ export function PV1_43_11_location_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[43]; return getComponent(field, 11); } /** Get PV1.43.11.1 - Namespace ID */ export function PV1_43_11_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[43]; return getComponent(field, 11, 1); } /** Get PV1.43.11.2 - Universal ID */ export function PV1_43_11_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[43]; return getComponent(field, 11, 2); } /** Get PV1.43.11.3 - Universal ID Type */ export function PV1_43_11_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[43]; return getComponent(field, 11, 3); } /** Get PV1.44 - Admit Date/Time */ export function PV1_44_admission(seg: HL7v2Segment): string | undefined { const val = seg.fields[44]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV1.45 - Discharge Date/Time */ export function PV1_45_discharge(seg: HL7v2Segment): string | undefined { const val = seg.fields[45]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV1.46 - Current Patient Balance */ export function PV1_46_current_patient_balance(seg: HL7v2Segment): string | undefined { const val = seg.fields[46]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV1.47 - Total Charges */ export function PV1_47_total_charges(seg: HL7v2Segment): string | undefined { const val = seg.fields[47]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV1.48 - Total Adjustments */ export function PV1_48_total_adjustments(seg: HL7v2Segment): string | undefined { const val = seg.fields[48]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV1.49 - Total Payments */ export function PV1_49_total_payments(seg: HL7v2Segment): string | undefined { const val = seg.fields[49]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV1.50.1 - ID Number */ export function PV1_50_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[50]; return getComponent(field, 1); } /** Get PV1.50.2 - Check Digit */ export function PV1_50_2_check_digit(seg: HL7v2Segment): string | undefined { const field = seg.fields[50]; return getComponent(field, 2); } /** Get PV1.50.3 - Check Digit Scheme */ export function PV1_50_3_check_digit_scheme(seg: HL7v2Segment): string | undefined { const field = seg.fields[50]; return getComponent(field, 3); } /** Get PV1.50.4 - Assigning Authority */ export function PV1_50_4_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[50]; return getComponent(field, 4); } /** Get PV1.50.4.1 - Namespace ID */ export function PV1_50_4_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[50]; return getComponent(field, 4, 1); } /** Get PV1.50.4.2 - Universal ID */ export function PV1_50_4_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[50]; return getComponent(field, 4, 2); } /** Get PV1.50.4.3 - Universal ID Type */ export function PV1_50_4_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[50]; return getComponent(field, 4, 3); } /** Get PV1.50.5 - Identifier Type Code */ export function PV1_50_5_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[50]; return getComponent(field, 5); } /** Get PV1.50.6 - Assigning Facility */ export function PV1_50_6_assigner(seg: HL7v2Segment): string | undefined { const field = seg.fields[50]; return getComponent(field, 6); } /** Get PV1.50.6.1 - Namespace ID */ export function PV1_50_6_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[50]; return getComponent(field, 6, 1); } /** Get PV1.50.6.2 - Universal ID */ export function PV1_50_6_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[50]; return getComponent(field, 6, 2); } /** Get PV1.50.6.3 - Universal ID Type */ export function PV1_50_6_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[50]; return getComponent(field, 6, 3); } /** Get PV1.50.7 - Effective Date */ export function PV1_50_7_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[50]; return getComponent(field, 7); } /** Get PV1.50.8 - Expiration Date */ export function PV1_50_8_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[50]; return getComponent(field, 8); } /** Get PV1.50.9 - Assigning Jurisdiction */ export function PV1_50_9_jurisdiction(seg: HL7v2Segment): string | undefined { const field = seg.fields[50]; return getComponent(field, 9); } /** Get PV1.50.9.1 - Identifier */ export function PV1_50_9_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[50]; return getComponent(field, 9, 1); } /** Get PV1.50.9.2 - Text */ export function PV1_50_9_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[50]; return getComponent(field, 9, 2); } /** Get PV1.50.9.3 - Name of Coding System */ export function PV1_50_9_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[50]; return getComponent(field, 9, 3); } /** Get PV1.50.9.4 - Alternate Identifier */ export function PV1_50_9_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[50]; return getComponent(field, 9, 4); } /** Get PV1.50.9.5 - Alternate Text */ export function PV1_50_9_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[50]; return getComponent(field, 9, 5); } /** Get PV1.50.9.6 - Name of Alternate Coding System */ export function PV1_50_9_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[50]; return getComponent(field, 9, 6); } /** Get PV1.50.9.7 - Coding System Version ID */ export function PV1_50_9_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[50]; return getComponent(field, 9, 7); } /** Get PV1.50.9.8 - Alternate Coding System Version ID */ export function PV1_50_9_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[50]; return getComponent(field, 9, 8); } /** Get PV1.50.9.9 - Original Text */ export function PV1_50_9_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[50]; return getComponent(field, 9, 9); } /** Get PV1.50.10 - Assigning Agency or Department */ export function PV1_50_10_department(seg: HL7v2Segment): string | undefined { const field = seg.fields[50]; return getComponent(field, 10); } /** Get PV1.50.10.1 - Identifier */ export function PV1_50_10_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[50]; return getComponent(field, 10, 1); } /** Get PV1.50.10.2 - Text */ export function PV1_50_10_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[50]; return getComponent(field, 10, 2); } /** Get PV1.50.10.3 - Name of Coding System */ export function PV1_50_10_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[50]; return getComponent(field, 10, 3); } /** Get PV1.50.10.4 - Alternate Identifier */ export function PV1_50_10_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[50]; return getComponent(field, 10, 4); } /** Get PV1.50.10.5 - Alternate Text */ export function PV1_50_10_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[50]; return getComponent(field, 10, 5); } /** Get PV1.50.10.6 - Name of Alternate Coding System */ export function PV1_50_10_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[50]; return getComponent(field, 10, 6); } /** Get PV1.50.10.7 - Coding System Version ID */ export function PV1_50_10_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[50]; return getComponent(field, 10, 7); } /** Get PV1.50.10.8 - Alternate Coding System Version ID */ export function PV1_50_10_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[50]; return getComponent(field, 10, 8); } /** Get PV1.50.10.9 - Original Text */ export function PV1_50_10_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[50]; return getComponent(field, 10, 9); } /** Get PV1.51 - Visit Indicator */ export function PV1_51_visit_indicator(seg: HL7v2Segment): string | undefined { const val = seg.fields[51]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV1.52.1 - ID Number */ export function PV1_52_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 1); } /** Get PV1.52.2 - Family Name */ export function PV1_52_2_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 2); } /** Get PV1.52.2.1 - Surname */ export function PV1_52_2_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 2, 1); } /** Get PV1.52.2.2 - Own Surname Prefix */ export function PV1_52_2_2_own_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 2, 2); } /** Get PV1.52.2.3 - Own Surname */ export function PV1_52_2_3_own_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 2, 3); } /** Get PV1.52.2.4 - Surname Prefix From Partner/Spouse */ export function PV1_52_2_4_partner_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 2, 4); } /** Get PV1.52.2.5 - Surname From Partner/Spouse */ export function PV1_52_2_5_partner_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 2, 5); } /** Get PV1.52.3 - Given Name */ export function PV1_52_3_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 3); } /** Get PV1.52.4 - Second and Further Given Names or Initials Thereof */ export function PV1_52_4_additional_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 4); } /** Get PV1.52.5 - Suffix (e.g., JR or III) */ export function PV1_52_5_suffix(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 5); } /** Get PV1.52.6 - Prefix (e.g., DR) */ export function PV1_52_6_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 6); } /** Get PV1.52.7 - Degree (e.g., MD) */ export function PV1_52_7_qualification(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 7); } /** Get PV1.52.8 - Source Table */ export function PV1_52_8_source_table(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 8); } /** Get PV1.52.9 - Assigning Authority */ export function PV1_52_9_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 9); } /** Get PV1.52.9.1 - Namespace ID */ export function PV1_52_9_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 9, 1); } /** Get PV1.52.9.2 - Universal ID */ export function PV1_52_9_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 9, 2); } /** Get PV1.52.9.3 - Universal ID Type */ export function PV1_52_9_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 9, 3); } /** Get PV1.52.10 - Name Type Code */ export function PV1_52_10_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 10); } /** Get PV1.52.11 - Identifier Check Digit */ export function PV1_52_11_check_digit(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 11); } /** Get PV1.52.12 - Check Digit Scheme */ export function PV1_52_12_check_digit_scheme(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 12); } /** Get PV1.52.13 - Identifier Type Code */ export function PV1_52_13_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 13); } /** Get PV1.52.14 - Assigning Facility */ export function PV1_52_14_assigner(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 14); } /** Get PV1.52.14.1 - Namespace ID */ export function PV1_52_14_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 14, 1); } /** Get PV1.52.14.2 - Universal ID */ export function PV1_52_14_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 14, 2); } /** Get PV1.52.14.3 - Universal ID Type */ export function PV1_52_14_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 14, 3); } /** Get PV1.52.15 - Name Representation Code */ export function PV1_52_15_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 15); } /** Get PV1.52.16 - Name Context */ export function PV1_52_16_context(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 16); } /** Get PV1.52.16.1 - Identifier */ export function PV1_52_16_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 16, 1); } /** Get PV1.52.16.2 - Text */ export function PV1_52_16_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 16, 2); } /** Get PV1.52.16.3 - Name of Coding System */ export function PV1_52_16_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 16, 3); } /** Get PV1.52.16.4 - Alternate Identifier */ export function PV1_52_16_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 16, 4); } /** Get PV1.52.16.5 - Alternate Text */ export function PV1_52_16_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 16, 5); } /** Get PV1.52.16.6 - Name of Alternate Coding System */ export function PV1_52_16_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 16, 6); } /** Get PV1.52.17 - Name Validity Range */ export function PV1_52_17_period(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 17); } /** Get PV1.52.17.1 - Range Start Date/Time */ export function PV1_52_17_1_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 17, 1); } /** Get PV1.52.17.2 - Range End Date/Time */ export function PV1_52_17_2_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 17, 2); } /** Get PV1.52.18 - Name Assembly Order */ export function PV1_52_18_order(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 18); } /** Get PV1.52.19 - Effective Date */ export function PV1_52_19_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 19); } /** Get PV1.52.20 - Expiration Date */ export function PV1_52_20_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 20); } /** Get PV1.52.21 - Professional Suffix */ export function PV1_52_21_credential(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 21); } /** Get PV1.52.22 - Assigning Jurisdiction */ export function PV1_52_22_jurisdiction(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 22); } /** Get PV1.52.22.1 - Identifier */ export function PV1_52_22_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 22, 1); } /** Get PV1.52.22.2 - Text */ export function PV1_52_22_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 22, 2); } /** Get PV1.52.22.3 - Name of Coding System */ export function PV1_52_22_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 22, 3); } /** Get PV1.52.22.4 - Alternate Identifier */ export function PV1_52_22_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 22, 4); } /** Get PV1.52.22.5 - Alternate Text */ export function PV1_52_22_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 22, 5); } /** Get PV1.52.22.6 - Name of Alternate Coding System */ export function PV1_52_22_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 22, 6); } /** Get PV1.52.22.7 - Coding System Version ID */ export function PV1_52_22_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 22, 7); } /** Get PV1.52.22.8 - Alternate Coding System Version ID */ export function PV1_52_22_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 22, 8); } /** Get PV1.52.22.9 - Original Text */ export function PV1_52_22_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 22, 9); } /** Get PV1.52.23 - Assigning Agency or Department */ export function PV1_52_23_department(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 23); } /** Get PV1.52.23.1 - Identifier */ export function PV1_52_23_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 23, 1); } /** Get PV1.52.23.2 - Text */ export function PV1_52_23_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 23, 2); } /** Get PV1.52.23.3 - Name of Coding System */ export function PV1_52_23_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 23, 3); } /** Get PV1.52.23.4 - Alternate Identifier */ export function PV1_52_23_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 23, 4); } /** Get PV1.52.23.5 - Alternate Text */ export function PV1_52_23_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 23, 5); } /** Get PV1.52.23.6 - Name of Alternate Coding System */ export function PV1_52_23_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 23, 6); } /** Get PV1.52.23.7 - Coding System Version ID */ export function PV1_52_23_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 23, 7); } /** Get PV1.52.23.8 - Alternate Coding System Version ID */ export function PV1_52_23_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 23, 8); } /** Get PV1.52.23.9 - Original Text */ export function PV1_52_23_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[52]; return getComponent(field, 23, 9); } export class PV1Builder { private seg: HL7v2Segment = { segment: "PV1", fields: {} }; /** PV1.1 - Set ID - PV1 */ set_pv1_1_setIdPv1(value: string | null | undefined): this { if (value != null) this.seg.fields[1] = value; return this; } /** PV1.1 - Set ID - PV1 */ get_pv1_1_setIdPv1(): string | undefined { const val = this.seg.fields[1]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV1.2 - Patient Class */ set_pv1_2_class(value: string | null | undefined): this { if (value != null) this.seg.fields[2] = value; return this; } /** PV1.2 - Patient Class */ get_pv1_2_class(): string | undefined { const val = this.seg.fields[2]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV1.3 - Assigned Patient Location */ set_pv1_3_assignedPatientLocation(value: PL | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[3] = fv; return this; } /** PV1.3 - Assigned Patient Location */ get_pv1_3_assignedPatientLocation(): PL | undefined { return fromPL(this.seg.fields[3]); } /** PV1.4 - Admission Type */ set_pv1_4_admissionType(value: string | null | undefined): this { if (value != null) this.seg.fields[4] = value; return this; } /** PV1.4 - Admission Type */ get_pv1_4_admissionType(): string | undefined { const val = this.seg.fields[4]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV1.5 - Preadmit Number */ set_pv1_5_preadmitNumber(value: CX | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[5] = fv; return this; } /** PV1.5 - Preadmit Number */ get_pv1_5_preadmitNumber(): CX | undefined { return fromCX(this.seg.fields[5]); } /** PV1.6 - Prior Patient Location */ set_pv1_6_priorPatientLocation(value: PL | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[6] = fv; return this; } /** PV1.6 - Prior Patient Location */ get_pv1_6_priorPatientLocation(): PL | undefined { return fromPL(this.seg.fields[6]); } /** PV1.7 - Attending Doctor (set all values) */ set_pv1_7_attendingDoctor(values: XCN[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[7] = arr; return this; } /** PV1.7 - Attending Doctor (add single value) */ add_pv1_7_attendingDoctor(value: XCN | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[7]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[7] = [fv]; } } return this; } /** PV1.7 - Attending Doctor */ get_pv1_7_attendingDoctor(): XCN[] | undefined { const val = this.seg.fields[7]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXCN(v)).filter((v): v is XCN => v !== undefined); } /** PV1.8 - Referring Doctor (set all values) */ set_pv1_8_referringDoctor(values: XCN[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[8] = arr; return this; } /** PV1.8 - Referring Doctor (add single value) */ add_pv1_8_referringDoctor(value: XCN | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[8]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[8] = [fv]; } } return this; } /** PV1.8 - Referring Doctor */ get_pv1_8_referringDoctor(): XCN[] | undefined { const val = this.seg.fields[8]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXCN(v)).filter((v): v is XCN => v !== undefined); } /** PV1.9 - Consulting Doctor (set all values) */ set_pv1_9_consultingDoctor(values: XCN[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[9] = arr; return this; } /** PV1.9 - Consulting Doctor (add single value) */ add_pv1_9_consultingDoctor(value: XCN | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[9]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[9] = [fv]; } } return this; } /** PV1.9 - Consulting Doctor */ get_pv1_9_consultingDoctor(): XCN[] | undefined { const val = this.seg.fields[9]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXCN(v)).filter((v): v is XCN => v !== undefined); } /** PV1.10 - Hospital Service */ set_pv1_10_hospitalService(value: string | null | undefined): this { if (value != null) this.seg.fields[10] = value; return this; } /** PV1.10 - Hospital Service */ get_pv1_10_hospitalService(): string | undefined { const val = this.seg.fields[10]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV1.11 - Temporary Location */ set_pv1_11_temporaryLocation(value: PL | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[11] = fv; return this; } /** PV1.11 - Temporary Location */ get_pv1_11_temporaryLocation(): PL | undefined { return fromPL(this.seg.fields[11]); } /** PV1.12 - Preadmit Test Indicator */ set_pv1_12_preadmitTestIndicator(value: string | null | undefined): this { if (value != null) this.seg.fields[12] = value; return this; } /** PV1.12 - Preadmit Test Indicator */ get_pv1_12_preadmitTestIndicator(): string | undefined { const val = this.seg.fields[12]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV1.13 - Re-admission Indicator */ set_pv1_13_reAdmissionIndicator(value: string | null | undefined): this { if (value != null) this.seg.fields[13] = value; return this; } /** PV1.13 - Re-admission Indicator */ get_pv1_13_reAdmissionIndicator(): string | undefined { const val = this.seg.fields[13]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV1.14 - Admit Source */ set_pv1_14_admitSource(value: string | null | undefined): this { if (value != null) this.seg.fields[14] = value; return this; } /** PV1.14 - Admit Source */ get_pv1_14_admitSource(): string | undefined { const val = this.seg.fields[14]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV1.15 - Ambulatory Status */ set_pv1_15_ambulatoryStatus(value: string | null | undefined): this { if (value != null) this.seg.fields[15] = value; return this; } /** PV1.15 - Ambulatory Status */ get_pv1_15_ambulatoryStatus(): string | undefined { const val = this.seg.fields[15]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV1.16 - VIP Indicator */ set_pv1_16_vip(value: string | null | undefined): this { if (value != null) this.seg.fields[16] = value; return this; } /** PV1.16 - VIP Indicator */ get_pv1_16_vip(): string | undefined { const val = this.seg.fields[16]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV1.17 - Admitting Doctor (set all values) */ set_pv1_17_admittingDoctor(values: XCN[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[17] = arr; return this; } /** PV1.17 - Admitting Doctor (add single value) */ add_pv1_17_admittingDoctor(value: XCN | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[17]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[17] = [fv]; } } return this; } /** PV1.17 - Admitting Doctor */ get_pv1_17_admittingDoctor(): XCN[] | undefined { const val = this.seg.fields[17]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXCN(v)).filter((v): v is XCN => v !== undefined); } /** PV1.18 - Patient Type */ set_pv1_18_type(value: string | null | undefined): this { if (value != null) this.seg.fields[18] = value; return this; } /** PV1.18 - Patient Type */ get_pv1_18_type(): string | undefined { const val = this.seg.fields[18]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV1.19 - Visit Number */ set_pv1_19_visitNumber(value: CX | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[19] = fv; return this; } /** PV1.19 - Visit Number */ get_pv1_19_visitNumber(): CX | undefined { return fromCX(this.seg.fields[19]); } /** PV1.20 - Financial Class (set all values) */ set_pv1_20_financialClass(values: FC[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[20] = arr; return this; } /** PV1.20 - Financial Class (add single value) */ add_pv1_20_financialClass(value: FC | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[20]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[20] = [fv]; } } return this; } /** PV1.20 - Financial Class */ get_pv1_20_financialClass(): FC[] | undefined { const val = this.seg.fields[20]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromFC(v)).filter((v): v is FC => v !== undefined); } /** PV1.21 - Charge Price Indicator */ set_pv1_21_chargePriceIndicator(value: string | null | undefined): this { if (value != null) this.seg.fields[21] = value; return this; } /** PV1.21 - Charge Price Indicator */ get_pv1_21_chargePriceIndicator(): string | undefined { const val = this.seg.fields[21]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV1.22 - Courtesy Code */ set_pv1_22_courtesyCode(value: string | null | undefined): this { if (value != null) this.seg.fields[22] = value; return this; } /** PV1.22 - Courtesy Code */ get_pv1_22_courtesyCode(): string | undefined { const val = this.seg.fields[22]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV1.23 - Credit Rating */ set_pv1_23_creditRating(value: string | null | undefined): this { if (value != null) this.seg.fields[23] = value; return this; } /** PV1.23 - Credit Rating */ get_pv1_23_creditRating(): string | undefined { const val = this.seg.fields[23]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV1.24 - Contract Code */ set_pv1_24_contractCode(value: string | null | undefined): this { if (value != null) this.seg.fields[24] = value; return this; } /** PV1.24 - Contract Code */ get_pv1_24_contractCode(): string | undefined { const val = this.seg.fields[24]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV1.25 - Contract Effective Date */ set_pv1_25_contractEffectiveDate(value: string | null | undefined): this { if (value != null) this.seg.fields[25] = value; return this; } /** PV1.25 - Contract Effective Date */ get_pv1_25_contractEffectiveDate(): string | undefined { const val = this.seg.fields[25]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV1.26 - Contract Amount */ set_pv1_26_contractAmount(value: string | null | undefined): this { if (value != null) this.seg.fields[26] = value; return this; } /** PV1.26 - Contract Amount */ get_pv1_26_contractAmount(): string | undefined { const val = this.seg.fields[26]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV1.27 - Contract Period */ set_pv1_27_contractPeriod(value: string | null | undefined): this { if (value != null) this.seg.fields[27] = value; return this; } /** PV1.27 - Contract Period */ get_pv1_27_contractPeriod(): string | undefined { const val = this.seg.fields[27]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV1.28 - Interest Code */ set_pv1_28_interestCode(value: string | null | undefined): this { if (value != null) this.seg.fields[28] = value; return this; } /** PV1.28 - Interest Code */ get_pv1_28_interestCode(): string | undefined { const val = this.seg.fields[28]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV1.29 - Transfer to Bad Debt Code */ set_pv1_29_transferToBadDebtCode(value: string | null | undefined): this { if (value != null) this.seg.fields[29] = value; return this; } /** PV1.29 - Transfer to Bad Debt Code */ get_pv1_29_transferToBadDebtCode(): string | undefined { const val = this.seg.fields[29]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV1.30 - Transfer to Bad Debt Date */ set_pv1_30_transferToBadDebtDate(value: string | null | undefined): this { if (value != null) this.seg.fields[30] = value; return this; } /** PV1.30 - Transfer to Bad Debt Date */ get_pv1_30_transferToBadDebtDate(): string | undefined { const val = this.seg.fields[30]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV1.31 - Bad Debt Agency Code */ set_pv1_31_badDebtAgencyCode(value: string | null | undefined): this { if (value != null) this.seg.fields[31] = value; return this; } /** PV1.31 - Bad Debt Agency Code */ get_pv1_31_badDebtAgencyCode(): string | undefined { const val = this.seg.fields[31]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV1.32 - Bad Debt Transfer Amount */ set_pv1_32_badDebtTransferAmount(value: string | null | undefined): this { if (value != null) this.seg.fields[32] = value; return this; } /** PV1.32 - Bad Debt Transfer Amount */ get_pv1_32_badDebtTransferAmount(): string | undefined { const val = this.seg.fields[32]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV1.33 - Bad Debt Recovery Amount */ set_pv1_33_badDebtRecoveryAmount(value: string | null | undefined): this { if (value != null) this.seg.fields[33] = value; return this; } /** PV1.33 - Bad Debt Recovery Amount */ get_pv1_33_badDebtRecoveryAmount(): string | undefined { const val = this.seg.fields[33]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV1.34 - Delete Account Indicator */ set_pv1_34_deleteAccountIndicator(value: string | null | undefined): this { if (value != null) this.seg.fields[34] = value; return this; } /** PV1.34 - Delete Account Indicator */ get_pv1_34_deleteAccountIndicator(): string | undefined { const val = this.seg.fields[34]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV1.35 - Delete Account Date */ set_pv1_35_deleteAccountDate(value: string | null | undefined): this { if (value != null) this.seg.fields[35] = value; return this; } /** PV1.35 - Delete Account Date */ get_pv1_35_deleteAccountDate(): string | undefined { const val = this.seg.fields[35]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV1.36 - Discharge Disposition */ set_pv1_36_dischargeDisposition(value: string | null | undefined): this { if (value != null) this.seg.fields[36] = value; return this; } /** PV1.36 - Discharge Disposition */ get_pv1_36_dischargeDisposition(): string | undefined { const val = this.seg.fields[36]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV1.37 - Discharged to Location */ set_pv1_37_dischargedToLocation(value: DLD | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[37] = fv; return this; } /** PV1.37 - Discharged to Location */ get_pv1_37_dischargedToLocation(): DLD | undefined { return fromDLD(this.seg.fields[37]); } /** PV1.38 - Diet Type */ set_pv1_38_dietType(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[38] = fv; return this; } /** PV1.38 - Diet Type */ get_pv1_38_dietType(): CE | undefined { return fromCE(this.seg.fields[38]); } /** PV1.39 - Servicing Facility */ set_pv1_39_servicingFacility(value: string | null | undefined): this { if (value != null) this.seg.fields[39] = value; return this; } /** PV1.39 - Servicing Facility */ get_pv1_39_servicingFacility(): string | undefined { const val = this.seg.fields[39]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV1.40 - Bed Status */ set_pv1_40_bedStatus(value: string | null | undefined): this { if (value != null) this.seg.fields[40] = value; return this; } /** PV1.40 - Bed Status */ get_pv1_40_bedStatus(): string | undefined { const val = this.seg.fields[40]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV1.41 - Account Status */ set_pv1_41_accountStatus(value: string | null | undefined): this { if (value != null) this.seg.fields[41] = value; return this; } /** PV1.41 - Account Status */ get_pv1_41_accountStatus(): string | undefined { const val = this.seg.fields[41]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV1.42 - Pending Location */ set_pv1_42_pendingLocation(value: PL | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[42] = fv; return this; } /** PV1.42 - Pending Location */ get_pv1_42_pendingLocation(): PL | undefined { return fromPL(this.seg.fields[42]); } /** PV1.43 - Prior Temporary Location */ set_pv1_43_priorTemporaryLocation(value: PL | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[43] = fv; return this; } /** PV1.43 - Prior Temporary Location */ get_pv1_43_priorTemporaryLocation(): PL | undefined { return fromPL(this.seg.fields[43]); } /** PV1.44 - Admit Date/Time */ set_pv1_44_admission(value: string | null | undefined): this { if (value != null) this.seg.fields[44] = value; return this; } /** PV1.44 - Admit Date/Time */ get_pv1_44_admission(): string | undefined { const val = this.seg.fields[44]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV1.45 - Discharge Date/Time */ set_pv1_45_discharge(value: string | null | undefined): this { if (value != null) this.seg.fields[45] = value; return this; } /** PV1.45 - Discharge Date/Time */ get_pv1_45_discharge(): string | undefined { const val = this.seg.fields[45]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV1.46 - Current Patient Balance */ set_pv1_46_currentPatientBalance(value: string | null | undefined): this { if (value != null) this.seg.fields[46] = value; return this; } /** PV1.46 - Current Patient Balance */ get_pv1_46_currentPatientBalance(): string | undefined { const val = this.seg.fields[46]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV1.47 - Total Charges */ set_pv1_47_totalCharges(value: string | null | undefined): this { if (value != null) this.seg.fields[47] = value; return this; } /** PV1.47 - Total Charges */ get_pv1_47_totalCharges(): string | undefined { const val = this.seg.fields[47]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV1.48 - Total Adjustments */ set_pv1_48_totalAdjustments(value: string | null | undefined): this { if (value != null) this.seg.fields[48] = value; return this; } /** PV1.48 - Total Adjustments */ get_pv1_48_totalAdjustments(): string | undefined { const val = this.seg.fields[48]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV1.49 - Total Payments */ set_pv1_49_totalPayments(value: string | null | undefined): this { if (value != null) this.seg.fields[49] = value; return this; } /** PV1.49 - Total Payments */ get_pv1_49_totalPayments(): string | undefined { const val = this.seg.fields[49]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV1.50 - Alternate Visit ID */ set_pv1_50_alternateVisitId(value: CX | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[50] = fv; return this; } /** PV1.50 - Alternate Visit ID */ get_pv1_50_alternateVisitId(): CX | undefined { return fromCX(this.seg.fields[50]); } /** PV1.51 - Visit Indicator */ set_pv1_51_visitIndicator(value: string | null | undefined): this { if (value != null) this.seg.fields[51] = value; return this; } /** PV1.51 - Visit Indicator */ get_pv1_51_visitIndicator(): string | undefined { const val = this.seg.fields[51]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV1.52 - Other Healthcare Provider (set all values) */ set_pv1_52_otherHealthcareProvider(values: XCN[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[52] = arr; return this; } /** PV1.52 - Other Healthcare Provider (add single value) */ add_pv1_52_otherHealthcareProvider(value: XCN | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[52]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[52] = [fv]; } } return this; } /** PV1.52 - Other Healthcare Provider */ get_pv1_52_otherHealthcareProvider(): XCN[] | undefined { const val = this.seg.fields[52]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXCN(v)).filter((v): v is XCN => v !== undefined); } build(): HL7v2Segment { return this.seg; } } // ====== PV2 Segment ====== /** Get PV2.1.1 - Point of Care */ export function PV2_1_1_care_site(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 1); } /** Get PV2.1.2 - Room */ export function PV2_1_2_room(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 2); } /** Get PV2.1.3 - Bed */ export function PV2_1_3_bed(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 3); } /** Get PV2.1.4 - Facility */ export function PV2_1_4_facility(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 4); } /** Get PV2.1.4.1 - Namespace ID */ export function PV2_1_4_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 4, 1); } /** Get PV2.1.4.2 - Universal ID */ export function PV2_1_4_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 4, 2); } /** Get PV2.1.4.3 - Universal ID Type */ export function PV2_1_4_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 4, 3); } /** Get PV2.1.5 - Location Status */ export function PV2_1_5_status(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 5); } /** Get PV2.1.6 - Person Location Type */ export function PV2_1_6_location_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 6); } /** Get PV2.1.7 - Building */ export function PV2_1_7_building(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 7); } /** Get PV2.1.8 - Floor */ export function PV2_1_8_floor(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 8); } /** Get PV2.1.9 - Location Description */ export function PV2_1_9_description(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 9); } /** Get PV2.1.10 - Comprehensive Location Identifier */ export function PV2_1_10_identifier(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 10); } /** Get PV2.1.10.1 - Entity Identifier */ export function PV2_1_10_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 10, 1); } /** Get PV2.1.10.2 - Namespace ID */ export function PV2_1_10_2_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 10, 2); } /** Get PV2.1.10.3 - Universal ID */ export function PV2_1_10_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 10, 3); } /** Get PV2.1.10.4 - Universal ID Type */ export function PV2_1_10_4_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 10, 4); } /** Get PV2.1.11 - Assigning Authority for Location */ export function PV2_1_11_location_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 11); } /** Get PV2.1.11.1 - Namespace ID */ export function PV2_1_11_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 11, 1); } /** Get PV2.1.11.2 - Universal ID */ export function PV2_1_11_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 11, 2); } /** Get PV2.1.11.3 - Universal ID Type */ export function PV2_1_11_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 11, 3); } /** Get PV2.2.1 - Identifier */ export function PV2_2_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 1); } /** Get PV2.2.2 - Text */ export function PV2_2_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 2); } /** Get PV2.2.3 - Name of Coding System */ export function PV2_2_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 3); } /** Get PV2.2.4 - Alternate Identifier */ export function PV2_2_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 4); } /** Get PV2.2.5 - Alternate Text */ export function PV2_2_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 5); } /** Get PV2.2.6 - Name of Alternate Coding System */ export function PV2_2_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[2]; return getComponent(field, 6); } /** Get PV2.3.1 - Identifier */ export function PV2_3_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 1); } /** Get PV2.3.2 - Text */ export function PV2_3_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 2); } /** Get PV2.3.3 - Name of Coding System */ export function PV2_3_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 3); } /** Get PV2.3.4 - Alternate Identifier */ export function PV2_3_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 4); } /** Get PV2.3.5 - Alternate Text */ export function PV2_3_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 5); } /** Get PV2.3.6 - Name of Alternate Coding System */ export function PV2_3_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 6); } /** Get PV2.4.1 - Identifier */ export function PV2_4_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 1); } /** Get PV2.4.2 - Text */ export function PV2_4_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 2); } /** Get PV2.4.3 - Name of Coding System */ export function PV2_4_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 3); } /** Get PV2.4.4 - Alternate Identifier */ export function PV2_4_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 4); } /** Get PV2.4.5 - Alternate Text */ export function PV2_4_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 5); } /** Get PV2.4.6 - Name of Alternate Coding System */ export function PV2_4_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 6); } /** Get PV2.5 - Patient Valuables */ export function PV2_5_valuables(seg: HL7v2Segment): string | undefined { const val = seg.fields[5]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV2.6 - Patient Valuables Location */ export function PV2_6_valuables_location(seg: HL7v2Segment): string | undefined { const val = seg.fields[6]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV2.7 - Visit User Code */ export function PV2_7_visit_user_code(seg: HL7v2Segment): string | undefined { const val = seg.fields[7]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV2.8 - Expected Admit Date/Time */ export function PV2_8_expected_admission(seg: HL7v2Segment): string | undefined { const val = seg.fields[8]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV2.9 - Expected Discharge Date/Time */ export function PV2_9_expected_discharge(seg: HL7v2Segment): string | undefined { const val = seg.fields[9]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV2.10 - Estimated Length of Inpatient Stay */ export function PV2_10_estimated_length_of_inpatient_stay(seg: HL7v2Segment): string | undefined { const val = seg.fields[10]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV2.11 - Actual Length of Inpatient Stay */ export function PV2_11_actual_length_of_inpatient_stay(seg: HL7v2Segment): string | undefined { const val = seg.fields[11]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV2.12 - Visit Description */ export function PV2_12_visit_description(seg: HL7v2Segment): string | undefined { const val = seg.fields[12]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV2.13.1 - ID Number */ export function PV2_13_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 1); } /** Get PV2.13.2 - Family Name */ export function PV2_13_2_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 2); } /** Get PV2.13.2.1 - Surname */ export function PV2_13_2_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 2, 1); } /** Get PV2.13.2.2 - Own Surname Prefix */ export function PV2_13_2_2_own_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 2, 2); } /** Get PV2.13.2.3 - Own Surname */ export function PV2_13_2_3_own_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 2, 3); } /** Get PV2.13.2.4 - Surname Prefix From Partner/Spouse */ export function PV2_13_2_4_partner_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 2, 4); } /** Get PV2.13.2.5 - Surname From Partner/Spouse */ export function PV2_13_2_5_partner_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 2, 5); } /** Get PV2.13.3 - Given Name */ export function PV2_13_3_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 3); } /** Get PV2.13.4 - Second and Further Given Names or Initials Thereof */ export function PV2_13_4_additional_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 4); } /** Get PV2.13.5 - Suffix (e.g., JR or III) */ export function PV2_13_5_suffix(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 5); } /** Get PV2.13.6 - Prefix (e.g., DR) */ export function PV2_13_6_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 6); } /** Get PV2.13.7 - Degree (e.g., MD) */ export function PV2_13_7_qualification(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 7); } /** Get PV2.13.8 - Source Table */ export function PV2_13_8_source_table(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 8); } /** Get PV2.13.9 - Assigning Authority */ export function PV2_13_9_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 9); } /** Get PV2.13.9.1 - Namespace ID */ export function PV2_13_9_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 9, 1); } /** Get PV2.13.9.2 - Universal ID */ export function PV2_13_9_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 9, 2); } /** Get PV2.13.9.3 - Universal ID Type */ export function PV2_13_9_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 9, 3); } /** Get PV2.13.10 - Name Type Code */ export function PV2_13_10_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 10); } /** Get PV2.13.11 - Identifier Check Digit */ export function PV2_13_11_check_digit(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 11); } /** Get PV2.13.12 - Check Digit Scheme */ export function PV2_13_12_check_digit_scheme(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 12); } /** Get PV2.13.13 - Identifier Type Code */ export function PV2_13_13_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 13); } /** Get PV2.13.14 - Assigning Facility */ export function PV2_13_14_assigner(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 14); } /** Get PV2.13.14.1 - Namespace ID */ export function PV2_13_14_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 14, 1); } /** Get PV2.13.14.2 - Universal ID */ export function PV2_13_14_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 14, 2); } /** Get PV2.13.14.3 - Universal ID Type */ export function PV2_13_14_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 14, 3); } /** Get PV2.13.15 - Name Representation Code */ export function PV2_13_15_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 15); } /** Get PV2.13.16 - Name Context */ export function PV2_13_16_context(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 16); } /** Get PV2.13.16.1 - Identifier */ export function PV2_13_16_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 16, 1); } /** Get PV2.13.16.2 - Text */ export function PV2_13_16_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 16, 2); } /** Get PV2.13.16.3 - Name of Coding System */ export function PV2_13_16_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 16, 3); } /** Get PV2.13.16.4 - Alternate Identifier */ export function PV2_13_16_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 16, 4); } /** Get PV2.13.16.5 - Alternate Text */ export function PV2_13_16_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 16, 5); } /** Get PV2.13.16.6 - Name of Alternate Coding System */ export function PV2_13_16_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 16, 6); } /** Get PV2.13.17 - Name Validity Range */ export function PV2_13_17_period(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 17); } /** Get PV2.13.17.1 - Range Start Date/Time */ export function PV2_13_17_1_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 17, 1); } /** Get PV2.13.17.2 - Range End Date/Time */ export function PV2_13_17_2_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 17, 2); } /** Get PV2.13.18 - Name Assembly Order */ export function PV2_13_18_order(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 18); } /** Get PV2.13.19 - Effective Date */ export function PV2_13_19_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 19); } /** Get PV2.13.20 - Expiration Date */ export function PV2_13_20_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 20); } /** Get PV2.13.21 - Professional Suffix */ export function PV2_13_21_credential(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 21); } /** Get PV2.13.22 - Assigning Jurisdiction */ export function PV2_13_22_jurisdiction(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 22); } /** Get PV2.13.22.1 - Identifier */ export function PV2_13_22_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 22, 1); } /** Get PV2.13.22.2 - Text */ export function PV2_13_22_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 22, 2); } /** Get PV2.13.22.3 - Name of Coding System */ export function PV2_13_22_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 22, 3); } /** Get PV2.13.22.4 - Alternate Identifier */ export function PV2_13_22_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 22, 4); } /** Get PV2.13.22.5 - Alternate Text */ export function PV2_13_22_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 22, 5); } /** Get PV2.13.22.6 - Name of Alternate Coding System */ export function PV2_13_22_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 22, 6); } /** Get PV2.13.22.7 - Coding System Version ID */ export function PV2_13_22_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 22, 7); } /** Get PV2.13.22.8 - Alternate Coding System Version ID */ export function PV2_13_22_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 22, 8); } /** Get PV2.13.22.9 - Original Text */ export function PV2_13_22_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 22, 9); } /** Get PV2.13.23 - Assigning Agency or Department */ export function PV2_13_23_department(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 23); } /** Get PV2.13.23.1 - Identifier */ export function PV2_13_23_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 23, 1); } /** Get PV2.13.23.2 - Text */ export function PV2_13_23_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 23, 2); } /** Get PV2.13.23.3 - Name of Coding System */ export function PV2_13_23_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 23, 3); } /** Get PV2.13.23.4 - Alternate Identifier */ export function PV2_13_23_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 23, 4); } /** Get PV2.13.23.5 - Alternate Text */ export function PV2_13_23_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 23, 5); } /** Get PV2.13.23.6 - Name of Alternate Coding System */ export function PV2_13_23_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 23, 6); } /** Get PV2.13.23.7 - Coding System Version ID */ export function PV2_13_23_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 23, 7); } /** Get PV2.13.23.8 - Alternate Coding System Version ID */ export function PV2_13_23_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 23, 8); } /** Get PV2.13.23.9 - Original Text */ export function PV2_13_23_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 23, 9); } /** Get PV2.14 - Previous Service Date */ export function PV2_14_previous_service_date(seg: HL7v2Segment): string | undefined { const val = seg.fields[14]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV2.15 - Employment Illness Related Indicator */ export function PV2_15_employment_illness_related_indicator(seg: HL7v2Segment): string | undefined { const val = seg.fields[15]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV2.16 - Purge Status Code */ export function PV2_16_purge_status_code(seg: HL7v2Segment): string | undefined { const val = seg.fields[16]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV2.17 - Purge Status Date */ export function PV2_17_purge_status_date(seg: HL7v2Segment): string | undefined { const val = seg.fields[17]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV2.18 - Special Program Code */ export function PV2_18_special_program_code(seg: HL7v2Segment): string | undefined { const val = seg.fields[18]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV2.19 - Retention Indicator */ export function PV2_19_retention_indicator(seg: HL7v2Segment): string | undefined { const val = seg.fields[19]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV2.20 - Expected Number of Insurance Plans */ export function PV2_20_expected_number_of_insurance_plans(seg: HL7v2Segment): string | undefined { const val = seg.fields[20]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV2.21 - Visit Publicity Code */ export function PV2_21_visit_publicity_code(seg: HL7v2Segment): string | undefined { const val = seg.fields[21]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV2.22 - Visit Protection Indicator */ export function PV2_22_visit_protection_indicator(seg: HL7v2Segment): string | undefined { const val = seg.fields[22]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV2.23.1 - Organization Name */ export function PV2_23_1_name(seg: HL7v2Segment): string | undefined { const field = seg.fields[23]; return getComponent(field, 1); } /** Get PV2.23.2 - Organization Name Type Code */ export function PV2_23_2_name_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[23]; return getComponent(field, 2); } /** Get PV2.23.3 - ID Number */ export function PV2_23_3_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[23]; return getComponent(field, 3); } /** Get PV2.23.4 - Check Digit */ export function PV2_23_4_check_digit(seg: HL7v2Segment): string | undefined { const field = seg.fields[23]; return getComponent(field, 4); } /** Get PV2.23.5 - Check Digit Scheme */ export function PV2_23_5_check_digit_scheme(seg: HL7v2Segment): string | undefined { const field = seg.fields[23]; return getComponent(field, 5); } /** Get PV2.23.6 - Assigning Authority */ export function PV2_23_6_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[23]; return getComponent(field, 6); } /** Get PV2.23.6.1 - Namespace ID */ export function PV2_23_6_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[23]; return getComponent(field, 6, 1); } /** Get PV2.23.6.2 - Universal ID */ export function PV2_23_6_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[23]; return getComponent(field, 6, 2); } /** Get PV2.23.6.3 - Universal ID Type */ export function PV2_23_6_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[23]; return getComponent(field, 6, 3); } /** Get PV2.23.7 - Identifier Type Code */ export function PV2_23_7_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[23]; return getComponent(field, 7); } /** Get PV2.23.8 - Assigning Facility */ export function PV2_23_8_assigner(seg: HL7v2Segment): string | undefined { const field = seg.fields[23]; return getComponent(field, 8); } /** Get PV2.23.8.1 - Namespace ID */ export function PV2_23_8_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[23]; return getComponent(field, 8, 1); } /** Get PV2.23.8.2 - Universal ID */ export function PV2_23_8_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[23]; return getComponent(field, 8, 2); } /** Get PV2.23.8.3 - Universal ID Type */ export function PV2_23_8_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[23]; return getComponent(field, 8, 3); } /** Get PV2.23.9 - Name Representation Code */ export function PV2_23_9_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[23]; return getComponent(field, 9); } /** Get PV2.23.10 - Organization Identifier */ export function PV2_23_10_organization_id(seg: HL7v2Segment): string | undefined { const field = seg.fields[23]; return getComponent(field, 10); } /** Get PV2.24 - Patient Status Code */ export function PV2_24_status(seg: HL7v2Segment): string | undefined { const val = seg.fields[24]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV2.25 - Visit Priority Code */ export function PV2_25_visit_priority_code(seg: HL7v2Segment): string | undefined { const val = seg.fields[25]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV2.26 - Previous Treatment Date */ export function PV2_26_previous_treatment_date(seg: HL7v2Segment): string | undefined { const val = seg.fields[26]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV2.27 - Expected Discharge Disposition */ export function PV2_27_expected_discharge_disposition(seg: HL7v2Segment): string | undefined { const val = seg.fields[27]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV2.28 - Signature on File Date */ export function PV2_28_signature_on_file_date(seg: HL7v2Segment): string | undefined { const val = seg.fields[28]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV2.29 - First Similar Illness Date */ export function PV2_29_first_similar_illness_date(seg: HL7v2Segment): string | undefined { const val = seg.fields[29]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV2.30.1 - Identifier */ export function PV2_30_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 1); } /** Get PV2.30.2 - Text */ export function PV2_30_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 2); } /** Get PV2.30.3 - Name of Coding System */ export function PV2_30_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 3); } /** Get PV2.30.4 - Alternate Identifier */ export function PV2_30_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 4); } /** Get PV2.30.5 - Alternate Text */ export function PV2_30_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 5); } /** Get PV2.30.6 - Name of Alternate Coding System */ export function PV2_30_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[30]; return getComponent(field, 6); } /** Get PV2.31 - Recurring Service Code */ export function PV2_31_recurring_service_code(seg: HL7v2Segment): string | undefined { const val = seg.fields[31]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV2.32 - Billing Media Code */ export function PV2_32_billing_media_code(seg: HL7v2Segment): string | undefined { const val = seg.fields[32]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV2.33 - Expected Surgery Date and Time */ export function PV2_33_expected_surgery_date_and_time(seg: HL7v2Segment): string | undefined { const val = seg.fields[33]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV2.34 - Military Partnership Code */ export function PV2_34_military_partnership_code(seg: HL7v2Segment): string | undefined { const val = seg.fields[34]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV2.35 - Military Non-Availability Code */ export function PV2_35_military_non_availability_code(seg: HL7v2Segment): string | undefined { const val = seg.fields[35]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV2.36 - Newborn Baby Indicator */ export function PV2_36_newborn_baby_indicator(seg: HL7v2Segment): string | undefined { const val = seg.fields[36]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV2.37 - Baby Detained Indicator */ export function PV2_37_baby_detained_indicator(seg: HL7v2Segment): string | undefined { const val = seg.fields[37]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV2.38.1 - Identifier */ export function PV2_38_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[38]; return getComponent(field, 1); } /** Get PV2.38.2 - Text */ export function PV2_38_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[38]; return getComponent(field, 2); } /** Get PV2.38.3 - Name of Coding System */ export function PV2_38_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[38]; return getComponent(field, 3); } /** Get PV2.38.4 - Alternate Identifier */ export function PV2_38_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[38]; return getComponent(field, 4); } /** Get PV2.38.5 - Alternate Text */ export function PV2_38_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[38]; return getComponent(field, 5); } /** Get PV2.38.6 - Name of Alternate Coding System */ export function PV2_38_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[38]; return getComponent(field, 6); } /** Get PV2.39.1 - Identifier */ export function PV2_39_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[39]; return getComponent(field, 1); } /** Get PV2.39.2 - Text */ export function PV2_39_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[39]; return getComponent(field, 2); } /** Get PV2.39.3 - Name of Coding System */ export function PV2_39_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[39]; return getComponent(field, 3); } /** Get PV2.39.4 - Alternate Identifier */ export function PV2_39_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[39]; return getComponent(field, 4); } /** Get PV2.39.5 - Alternate Text */ export function PV2_39_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[39]; return getComponent(field, 5); } /** Get PV2.39.6 - Name of Alternate Coding System */ export function PV2_39_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[39]; return getComponent(field, 6); } /** Get PV2.40.1 - Identifier */ export function PV2_40_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[40]; return getComponent(field, 1); } /** Get PV2.40.2 - Text */ export function PV2_40_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[40]; return getComponent(field, 2); } /** Get PV2.40.3 - Name of Coding System */ export function PV2_40_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[40]; return getComponent(field, 3); } /** Get PV2.40.4 - Alternate Identifier */ export function PV2_40_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[40]; return getComponent(field, 4); } /** Get PV2.40.5 - Alternate Text */ export function PV2_40_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[40]; return getComponent(field, 5); } /** Get PV2.40.6 - Name of Alternate Coding System */ export function PV2_40_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[40]; return getComponent(field, 6); } /** Get PV2.41.1 - Identifier */ export function PV2_41_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[41]; return getComponent(field, 1); } /** Get PV2.41.2 - Text */ export function PV2_41_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[41]; return getComponent(field, 2); } /** Get PV2.41.3 - Name of Coding System */ export function PV2_41_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[41]; return getComponent(field, 3); } /** Get PV2.41.4 - Alternate Identifier */ export function PV2_41_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[41]; return getComponent(field, 4); } /** Get PV2.41.5 - Alternate Text */ export function PV2_41_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[41]; return getComponent(field, 5); } /** Get PV2.41.6 - Name of Alternate Coding System */ export function PV2_41_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[41]; return getComponent(field, 6); } /** Get PV2.42.1 - Identifier */ export function PV2_42_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 1); } /** Get PV2.42.2 - Text */ export function PV2_42_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 2); } /** Get PV2.42.3 - Name of Coding System */ export function PV2_42_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 3); } /** Get PV2.42.4 - Alternate Identifier */ export function PV2_42_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 4); } /** Get PV2.42.5 - Alternate Text */ export function PV2_42_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 5); } /** Get PV2.42.6 - Name of Alternate Coding System */ export function PV2_42_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[42]; return getComponent(field, 6); } /** Get PV2.43 - Living Will Code */ export function PV2_43_living_will(seg: HL7v2Segment): string | undefined { const val = seg.fields[43]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV2.44 - Organ Donor Code */ export function PV2_44_organ_donor_code(seg: HL7v2Segment): string | undefined { const val = seg.fields[44]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV2.45.1 - Identifier */ export function PV2_45_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[45]; return getComponent(field, 1); } /** Get PV2.45.2 - Text */ export function PV2_45_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[45]; return getComponent(field, 2); } /** Get PV2.45.3 - Name of Coding System */ export function PV2_45_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[45]; return getComponent(field, 3); } /** Get PV2.45.4 - Alternate Identifier */ export function PV2_45_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[45]; return getComponent(field, 4); } /** Get PV2.45.5 - Alternate Text */ export function PV2_45_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[45]; return getComponent(field, 5); } /** Get PV2.45.6 - Name of Alternate Coding System */ export function PV2_45_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[45]; return getComponent(field, 6); } /** Get PV2.46 - Patient Status Effective Date */ export function PV2_46_status_start(seg: HL7v2Segment): string | undefined { const val = seg.fields[46]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV2.47 - Expected LOA Return Date/Time */ export function PV2_47_expected_loa_return_date_time(seg: HL7v2Segment): string | undefined { const val = seg.fields[47]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV2.48 - Expected Pre-admission Testing Date/Time */ export function PV2_48_expected_pre_admission_testing_date_time(seg: HL7v2Segment): string | undefined { const val = seg.fields[48]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get PV2.49 - Notify Clergy Code */ export function PV2_49_notify_clergy_code(seg: HL7v2Segment): string | undefined { const val = seg.fields[49]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } export class PV2Builder { private seg: HL7v2Segment = { segment: "PV2", fields: {} }; /** PV2.1 - Prior Pending Location */ set_pv2_1_priorPendingLocation(value: PL | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[1] = fv; return this; } /** PV2.1 - Prior Pending Location */ get_pv2_1_priorPendingLocation(): PL | undefined { return fromPL(this.seg.fields[1]); } /** PV2.2 - Accommodation Code */ set_pv2_2_accommodationCode(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[2] = fv; return this; } /** PV2.2 - Accommodation Code */ get_pv2_2_accommodationCode(): CE | undefined { return fromCE(this.seg.fields[2]); } /** PV2.3 - Admit Reason */ set_pv2_3_admitReason(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[3] = fv; return this; } /** PV2.3 - Admit Reason */ get_pv2_3_admitReason(): CE | undefined { return fromCE(this.seg.fields[3]); } /** PV2.4 - Transfer Reason */ set_pv2_4_transferReason(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[4] = fv; return this; } /** PV2.4 - Transfer Reason */ get_pv2_4_transferReason(): CE | undefined { return fromCE(this.seg.fields[4]); } /** PV2.5 - Patient Valuables */ set_pv2_5_valuables(value: string | null | undefined): this { if (value != null) this.seg.fields[5] = value; return this; } /** PV2.5 - Patient Valuables */ get_pv2_5_valuables(): string | undefined { const val = this.seg.fields[5]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV2.6 - Patient Valuables Location */ set_pv2_6_valuablesLocation(value: string | null | undefined): this { if (value != null) this.seg.fields[6] = value; return this; } /** PV2.6 - Patient Valuables Location */ get_pv2_6_valuablesLocation(): string | undefined { const val = this.seg.fields[6]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV2.7 - Visit User Code */ set_pv2_7_visitUserCode(value: string | null | undefined): this { if (value != null) this.seg.fields[7] = value; return this; } /** PV2.7 - Visit User Code */ get_pv2_7_visitUserCode(): string | undefined { const val = this.seg.fields[7]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV2.8 - Expected Admit Date/Time */ set_pv2_8_expectedAdmission(value: string | null | undefined): this { if (value != null) this.seg.fields[8] = value; return this; } /** PV2.8 - Expected Admit Date/Time */ get_pv2_8_expectedAdmission(): string | undefined { const val = this.seg.fields[8]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV2.9 - Expected Discharge Date/Time */ set_pv2_9_expectedDischarge(value: string | null | undefined): this { if (value != null) this.seg.fields[9] = value; return this; } /** PV2.9 - Expected Discharge Date/Time */ get_pv2_9_expectedDischarge(): string | undefined { const val = this.seg.fields[9]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV2.10 - Estimated Length of Inpatient Stay */ set_pv2_10_estimatedLengthOfInpatientStay(value: string | null | undefined): this { if (value != null) this.seg.fields[10] = value; return this; } /** PV2.10 - Estimated Length of Inpatient Stay */ get_pv2_10_estimatedLengthOfInpatientStay(): string | undefined { const val = this.seg.fields[10]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV2.11 - Actual Length of Inpatient Stay */ set_pv2_11_actualLengthOfInpatientStay(value: string | null | undefined): this { if (value != null) this.seg.fields[11] = value; return this; } /** PV2.11 - Actual Length of Inpatient Stay */ get_pv2_11_actualLengthOfInpatientStay(): string | undefined { const val = this.seg.fields[11]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV2.12 - Visit Description */ set_pv2_12_visitDescription(value: string | null | undefined): this { if (value != null) this.seg.fields[12] = value; return this; } /** PV2.12 - Visit Description */ get_pv2_12_visitDescription(): string | undefined { const val = this.seg.fields[12]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV2.13 - Referral Source Code (set all values) */ set_pv2_13_referralSourceCode(values: XCN[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[13] = arr; return this; } /** PV2.13 - Referral Source Code (add single value) */ add_pv2_13_referralSourceCode(value: XCN | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[13]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[13] = [fv]; } } return this; } /** PV2.13 - Referral Source Code */ get_pv2_13_referralSourceCode(): XCN[] | undefined { const val = this.seg.fields[13]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXCN(v)).filter((v): v is XCN => v !== undefined); } /** PV2.14 - Previous Service Date */ set_pv2_14_previousServiceDate(value: string | null | undefined): this { if (value != null) this.seg.fields[14] = value; return this; } /** PV2.14 - Previous Service Date */ get_pv2_14_previousServiceDate(): string | undefined { const val = this.seg.fields[14]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV2.15 - Employment Illness Related Indicator */ set_pv2_15_employmentIllnessRelatedIndicator(value: string | null | undefined): this { if (value != null) this.seg.fields[15] = value; return this; } /** PV2.15 - Employment Illness Related Indicator */ get_pv2_15_employmentIllnessRelatedIndicator(): string | undefined { const val = this.seg.fields[15]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV2.16 - Purge Status Code */ set_pv2_16_purgeStatusCode(value: string | null | undefined): this { if (value != null) this.seg.fields[16] = value; return this; } /** PV2.16 - Purge Status Code */ get_pv2_16_purgeStatusCode(): string | undefined { const val = this.seg.fields[16]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV2.17 - Purge Status Date */ set_pv2_17_purgeStatusDate(value: string | null | undefined): this { if (value != null) this.seg.fields[17] = value; return this; } /** PV2.17 - Purge Status Date */ get_pv2_17_purgeStatusDate(): string | undefined { const val = this.seg.fields[17]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV2.18 - Special Program Code */ set_pv2_18_specialProgramCode(value: string | null | undefined): this { if (value != null) this.seg.fields[18] = value; return this; } /** PV2.18 - Special Program Code */ get_pv2_18_specialProgramCode(): string | undefined { const val = this.seg.fields[18]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV2.19 - Retention Indicator */ set_pv2_19_retentionIndicator(value: string | null | undefined): this { if (value != null) this.seg.fields[19] = value; return this; } /** PV2.19 - Retention Indicator */ get_pv2_19_retentionIndicator(): string | undefined { const val = this.seg.fields[19]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV2.20 - Expected Number of Insurance Plans */ set_pv2_20_expectedNumberOfInsurancePlans(value: string | null | undefined): this { if (value != null) this.seg.fields[20] = value; return this; } /** PV2.20 - Expected Number of Insurance Plans */ get_pv2_20_expectedNumberOfInsurancePlans(): string | undefined { const val = this.seg.fields[20]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV2.21 - Visit Publicity Code */ set_pv2_21_visitPublicityCode(value: string | null | undefined): this { if (value != null) this.seg.fields[21] = value; return this; } /** PV2.21 - Visit Publicity Code */ get_pv2_21_visitPublicityCode(): string | undefined { const val = this.seg.fields[21]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV2.22 - Visit Protection Indicator */ set_pv2_22_visitProtectionIndicator(value: string | null | undefined): this { if (value != null) this.seg.fields[22] = value; return this; } /** PV2.22 - Visit Protection Indicator */ get_pv2_22_visitProtectionIndicator(): string | undefined { const val = this.seg.fields[22]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV2.23 - Clinic Organization Name (set all values) */ set_pv2_23_clinicOrganizationName(values: XON[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[23] = arr; return this; } /** PV2.23 - Clinic Organization Name (add single value) */ add_pv2_23_clinicOrganizationName(value: XON | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[23]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[23] = [fv]; } } return this; } /** PV2.23 - Clinic Organization Name */ get_pv2_23_clinicOrganizationName(): XON[] | undefined { const val = this.seg.fields[23]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXON(v)).filter((v): v is XON => v !== undefined); } /** PV2.24 - Patient Status Code */ set_pv2_24_status(value: string | null | undefined): this { if (value != null) this.seg.fields[24] = value; return this; } /** PV2.24 - Patient Status Code */ get_pv2_24_status(): string | undefined { const val = this.seg.fields[24]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV2.25 - Visit Priority Code */ set_pv2_25_visitPriorityCode(value: string | null | undefined): this { if (value != null) this.seg.fields[25] = value; return this; } /** PV2.25 - Visit Priority Code */ get_pv2_25_visitPriorityCode(): string | undefined { const val = this.seg.fields[25]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV2.26 - Previous Treatment Date */ set_pv2_26_previousTreatmentDate(value: string | null | undefined): this { if (value != null) this.seg.fields[26] = value; return this; } /** PV2.26 - Previous Treatment Date */ get_pv2_26_previousTreatmentDate(): string | undefined { const val = this.seg.fields[26]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV2.27 - Expected Discharge Disposition */ set_pv2_27_expectedDischargeDisposition(value: string | null | undefined): this { if (value != null) this.seg.fields[27] = value; return this; } /** PV2.27 - Expected Discharge Disposition */ get_pv2_27_expectedDischargeDisposition(): string | undefined { const val = this.seg.fields[27]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV2.28 - Signature on File Date */ set_pv2_28_signatureOnFileDate(value: string | null | undefined): this { if (value != null) this.seg.fields[28] = value; return this; } /** PV2.28 - Signature on File Date */ get_pv2_28_signatureOnFileDate(): string | undefined { const val = this.seg.fields[28]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV2.29 - First Similar Illness Date */ set_pv2_29_firstSimilarIllnessDate(value: string | null | undefined): this { if (value != null) this.seg.fields[29] = value; return this; } /** PV2.29 - First Similar Illness Date */ get_pv2_29_firstSimilarIllnessDate(): string | undefined { const val = this.seg.fields[29]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV2.30 - Patient Charge Adjustment Code */ set_pv2_30_chargeAdjustmentCode(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[30] = fv; return this; } /** PV2.30 - Patient Charge Adjustment Code */ get_pv2_30_chargeAdjustmentCode(): CE | undefined { return fromCE(this.seg.fields[30]); } /** PV2.31 - Recurring Service Code */ set_pv2_31_recurringServiceCode(value: string | null | undefined): this { if (value != null) this.seg.fields[31] = value; return this; } /** PV2.31 - Recurring Service Code */ get_pv2_31_recurringServiceCode(): string | undefined { const val = this.seg.fields[31]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV2.32 - Billing Media Code */ set_pv2_32_billingMediaCode(value: string | null | undefined): this { if (value != null) this.seg.fields[32] = value; return this; } /** PV2.32 - Billing Media Code */ get_pv2_32_billingMediaCode(): string | undefined { const val = this.seg.fields[32]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV2.33 - Expected Surgery Date and Time */ set_pv2_33_expectedSurgeryDateAndTime(value: string | null | undefined): this { if (value != null) this.seg.fields[33] = value; return this; } /** PV2.33 - Expected Surgery Date and Time */ get_pv2_33_expectedSurgeryDateAndTime(): string | undefined { const val = this.seg.fields[33]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV2.34 - Military Partnership Code */ set_pv2_34_militaryPartnershipCode(value: string | null | undefined): this { if (value != null) this.seg.fields[34] = value; return this; } /** PV2.34 - Military Partnership Code */ get_pv2_34_militaryPartnershipCode(): string | undefined { const val = this.seg.fields[34]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV2.35 - Military Non-Availability Code */ set_pv2_35_militaryNonAvailabilityCode(value: string | null | undefined): this { if (value != null) this.seg.fields[35] = value; return this; } /** PV2.35 - Military Non-Availability Code */ get_pv2_35_militaryNonAvailabilityCode(): string | undefined { const val = this.seg.fields[35]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV2.36 - Newborn Baby Indicator */ set_pv2_36_newbornBabyIndicator(value: string | null | undefined): this { if (value != null) this.seg.fields[36] = value; return this; } /** PV2.36 - Newborn Baby Indicator */ get_pv2_36_newbornBabyIndicator(): string | undefined { const val = this.seg.fields[36]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV2.37 - Baby Detained Indicator */ set_pv2_37_babyDetainedIndicator(value: string | null | undefined): this { if (value != null) this.seg.fields[37] = value; return this; } /** PV2.37 - Baby Detained Indicator */ get_pv2_37_babyDetainedIndicator(): string | undefined { const val = this.seg.fields[37]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV2.38 - Mode of Arrival Code */ set_pv2_38_modeOfArrivalCode(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[38] = fv; return this; } /** PV2.38 - Mode of Arrival Code */ get_pv2_38_modeOfArrivalCode(): CE | undefined { return fromCE(this.seg.fields[38]); } /** PV2.39 - Recreational Drug Use Code (set all values) */ set_pv2_39_recreationalDrugUseCode(values: CE[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[39] = arr; return this; } /** PV2.39 - Recreational Drug Use Code (add single value) */ add_pv2_39_recreationalDrugUseCode(value: CE | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[39]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[39] = [fv]; } } return this; } /** PV2.39 - Recreational Drug Use Code */ get_pv2_39_recreationalDrugUseCode(): CE[] | undefined { const val = this.seg.fields[39]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromCE(v)).filter((v): v is CE => v !== undefined); } /** PV2.40 - Admission Level of Care Code */ set_pv2_40_admissionLevelOfCareCode(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[40] = fv; return this; } /** PV2.40 - Admission Level of Care Code */ get_pv2_40_admissionLevelOfCareCode(): CE | undefined { return fromCE(this.seg.fields[40]); } /** PV2.41 - Precaution Code (set all values) */ set_pv2_41_precautionCode(values: CE[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[41] = arr; return this; } /** PV2.41 - Precaution Code (add single value) */ add_pv2_41_precautionCode(value: CE | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[41]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[41] = [fv]; } } return this; } /** PV2.41 - Precaution Code */ get_pv2_41_precautionCode(): CE[] | undefined { const val = this.seg.fields[41]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromCE(v)).filter((v): v is CE => v !== undefined); } /** PV2.42 - Patient Condition Code */ set_pv2_42_conditionCode(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[42] = fv; return this; } /** PV2.42 - Patient Condition Code */ get_pv2_42_conditionCode(): CE | undefined { return fromCE(this.seg.fields[42]); } /** PV2.43 - Living Will Code */ set_pv2_43_livingWill(value: string | null | undefined): this { if (value != null) this.seg.fields[43] = value; return this; } /** PV2.43 - Living Will Code */ get_pv2_43_livingWill(): string | undefined { const val = this.seg.fields[43]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV2.44 - Organ Donor Code */ set_pv2_44_organDonorCode(value: string | null | undefined): this { if (value != null) this.seg.fields[44] = value; return this; } /** PV2.44 - Organ Donor Code */ get_pv2_44_organDonorCode(): string | undefined { const val = this.seg.fields[44]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV2.45 - Advance Directive Code (set all values) */ set_pv2_45_advanceDirectiveCode(values: CE[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[45] = arr; return this; } /** PV2.45 - Advance Directive Code (add single value) */ add_pv2_45_advanceDirectiveCode(value: CE | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[45]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[45] = [fv]; } } return this; } /** PV2.45 - Advance Directive Code */ get_pv2_45_advanceDirectiveCode(): CE[] | undefined { const val = this.seg.fields[45]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromCE(v)).filter((v): v is CE => v !== undefined); } /** PV2.46 - Patient Status Effective Date */ set_pv2_46_statusStart(value: string | null | undefined): this { if (value != null) this.seg.fields[46] = value; return this; } /** PV2.46 - Patient Status Effective Date */ get_pv2_46_statusStart(): string | undefined { const val = this.seg.fields[46]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV2.47 - Expected LOA Return Date/Time */ set_pv2_47_expectedLoaReturnDateTime(value: string | null | undefined): this { if (value != null) this.seg.fields[47] = value; return this; } /** PV2.47 - Expected LOA Return Date/Time */ get_pv2_47_expectedLoaReturnDateTime(): string | undefined { const val = this.seg.fields[47]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV2.48 - Expected Pre-admission Testing Date/Time */ set_pv2_48_expectedPreAdmissionTestingDateTime(value: string | null | undefined): this { if (value != null) this.seg.fields[48] = value; return this; } /** PV2.48 - Expected Pre-admission Testing Date/Time */ get_pv2_48_expectedPreAdmissionTestingDateTime(): string | undefined { const val = this.seg.fields[48]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** PV2.49 - Notify Clergy Code */ set_pv2_49_notifyClergyCode(value: string | null | undefined): this { if (value != null) this.seg.fields[49] = value; return this; } /** PV2.49 - Notify Clergy Code */ get_pv2_49_notifyClergyCode(): string | undefined { const val = this.seg.fields[49]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } build(): HL7v2Segment { return this.seg; } } // ====== ROL Segment ====== /** Get ROL.1.1 - Entity Identifier */ export function ROL_1_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 1); } /** Get ROL.1.2 - Namespace ID */ export function ROL_1_2_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 2); } /** Get ROL.1.3 - Universal ID */ export function ROL_1_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 3); } /** Get ROL.1.4 - Universal ID Type */ export function ROL_1_4_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 4); } /** Get ROL.2 - Action Code */ export function ROL_2_action_code(seg: HL7v2Segment): string | undefined { const val = seg.fields[2]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get ROL.3.1 - Identifier */ export function ROL_3_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 1); } /** Get ROL.3.2 - Text */ export function ROL_3_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 2); } /** Get ROL.3.3 - Name of Coding System */ export function ROL_3_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 3); } /** Get ROL.3.4 - Alternate Identifier */ export function ROL_3_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 4); } /** Get ROL.3.5 - Alternate Text */ export function ROL_3_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 5); } /** Get ROL.3.6 - Name of Alternate Coding System */ export function ROL_3_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[3]; return getComponent(field, 6); } /** Get ROL.4.1 - ID Number */ export function ROL_4_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 1); } /** Get ROL.4.2 - Family Name */ export function ROL_4_2_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 2); } /** Get ROL.4.2.1 - Surname */ export function ROL_4_2_1_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 2, 1); } /** Get ROL.4.2.2 - Own Surname Prefix */ export function ROL_4_2_2_own_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 2, 2); } /** Get ROL.4.2.3 - Own Surname */ export function ROL_4_2_3_own_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 2, 3); } /** Get ROL.4.2.4 - Surname Prefix From Partner/Spouse */ export function ROL_4_2_4_partner_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 2, 4); } /** Get ROL.4.2.5 - Surname From Partner/Spouse */ export function ROL_4_2_5_partner_family(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 2, 5); } /** Get ROL.4.3 - Given Name */ export function ROL_4_3_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 3); } /** Get ROL.4.4 - Second and Further Given Names or Initials Thereof */ export function ROL_4_4_additional_given(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 4); } /** Get ROL.4.5 - Suffix (e.g., JR or III) */ export function ROL_4_5_suffix(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 5); } /** Get ROL.4.6 - Prefix (e.g., DR) */ export function ROL_4_6_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 6); } /** Get ROL.4.7 - Degree (e.g., MD) */ export function ROL_4_7_qualification(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 7); } /** Get ROL.4.8 - Source Table */ export function ROL_4_8_source_table(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 8); } /** Get ROL.4.9 - Assigning Authority */ export function ROL_4_9_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 9); } /** Get ROL.4.9.1 - Namespace ID */ export function ROL_4_9_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 9, 1); } /** Get ROL.4.9.2 - Universal ID */ export function ROL_4_9_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 9, 2); } /** Get ROL.4.9.3 - Universal ID Type */ export function ROL_4_9_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 9, 3); } /** Get ROL.4.10 - Name Type Code */ export function ROL_4_10_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 10); } /** Get ROL.4.11 - Identifier Check Digit */ export function ROL_4_11_check_digit(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 11); } /** Get ROL.4.12 - Check Digit Scheme */ export function ROL_4_12_check_digit_scheme(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 12); } /** Get ROL.4.13 - Identifier Type Code */ export function ROL_4_13_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 13); } /** Get ROL.4.14 - Assigning Facility */ export function ROL_4_14_assigner(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 14); } /** Get ROL.4.14.1 - Namespace ID */ export function ROL_4_14_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 14, 1); } /** Get ROL.4.14.2 - Universal ID */ export function ROL_4_14_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 14, 2); } /** Get ROL.4.14.3 - Universal ID Type */ export function ROL_4_14_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 14, 3); } /** Get ROL.4.15 - Name Representation Code */ export function ROL_4_15_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 15); } /** Get ROL.4.16 - Name Context */ export function ROL_4_16_context(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 16); } /** Get ROL.4.16.1 - Identifier */ export function ROL_4_16_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 16, 1); } /** Get ROL.4.16.2 - Text */ export function ROL_4_16_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 16, 2); } /** Get ROL.4.16.3 - Name of Coding System */ export function ROL_4_16_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 16, 3); } /** Get ROL.4.16.4 - Alternate Identifier */ export function ROL_4_16_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 16, 4); } /** Get ROL.4.16.5 - Alternate Text */ export function ROL_4_16_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 16, 5); } /** Get ROL.4.16.6 - Name of Alternate Coding System */ export function ROL_4_16_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 16, 6); } /** Get ROL.4.17 - Name Validity Range */ export function ROL_4_17_period(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 17); } /** Get ROL.4.17.1 - Range Start Date/Time */ export function ROL_4_17_1_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 17, 1); } /** Get ROL.4.17.2 - Range End Date/Time */ export function ROL_4_17_2_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 17, 2); } /** Get ROL.4.18 - Name Assembly Order */ export function ROL_4_18_order(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 18); } /** Get ROL.4.19 - Effective Date */ export function ROL_4_19_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 19); } /** Get ROL.4.20 - Expiration Date */ export function ROL_4_20_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 20); } /** Get ROL.4.21 - Professional Suffix */ export function ROL_4_21_credential(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 21); } /** Get ROL.4.22 - Assigning Jurisdiction */ export function ROL_4_22_jurisdiction(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 22); } /** Get ROL.4.22.1 - Identifier */ export function ROL_4_22_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 22, 1); } /** Get ROL.4.22.2 - Text */ export function ROL_4_22_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 22, 2); } /** Get ROL.4.22.3 - Name of Coding System */ export function ROL_4_22_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 22, 3); } /** Get ROL.4.22.4 - Alternate Identifier */ export function ROL_4_22_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 22, 4); } /** Get ROL.4.22.5 - Alternate Text */ export function ROL_4_22_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 22, 5); } /** Get ROL.4.22.6 - Name of Alternate Coding System */ export function ROL_4_22_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 22, 6); } /** Get ROL.4.22.7 - Coding System Version ID */ export function ROL_4_22_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 22, 7); } /** Get ROL.4.22.8 - Alternate Coding System Version ID */ export function ROL_4_22_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 22, 8); } /** Get ROL.4.22.9 - Original Text */ export function ROL_4_22_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 22, 9); } /** Get ROL.4.23 - Assigning Agency or Department */ export function ROL_4_23_department(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 23); } /** Get ROL.4.23.1 - Identifier */ export function ROL_4_23_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 23, 1); } /** Get ROL.4.23.2 - Text */ export function ROL_4_23_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 23, 2); } /** Get ROL.4.23.3 - Name of Coding System */ export function ROL_4_23_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 23, 3); } /** Get ROL.4.23.4 - Alternate Identifier */ export function ROL_4_23_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 23, 4); } /** Get ROL.4.23.5 - Alternate Text */ export function ROL_4_23_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 23, 5); } /** Get ROL.4.23.6 - Name of Alternate Coding System */ export function ROL_4_23_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 23, 6); } /** Get ROL.4.23.7 - Coding System Version ID */ export function ROL_4_23_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 23, 7); } /** Get ROL.4.23.8 - Alternate Coding System Version ID */ export function ROL_4_23_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 23, 8); } /** Get ROL.4.23.9 - Original Text */ export function ROL_4_23_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[4]; return getComponent(field, 23, 9); } /** Get ROL.5 - Role Begin Date/Time */ export function ROL_5_role_begin_date_time(seg: HL7v2Segment): string | undefined { const val = seg.fields[5]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get ROL.6 - Role End Date/Time */ export function ROL_6_role_end_date_time(seg: HL7v2Segment): string | undefined { const val = seg.fields[6]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get ROL.7.1 - Identifier */ export function ROL_7_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 1); } /** Get ROL.7.2 - Text */ export function ROL_7_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 2); } /** Get ROL.7.3 - Name of Coding System */ export function ROL_7_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 3); } /** Get ROL.7.4 - Alternate Identifier */ export function ROL_7_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 4); } /** Get ROL.7.5 - Alternate Text */ export function ROL_7_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 5); } /** Get ROL.7.6 - Name of Alternate Coding System */ export function ROL_7_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 6); } /** Get ROL.8.1 - Identifier */ export function ROL_8_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 1); } /** Get ROL.8.2 - Text */ export function ROL_8_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 2); } /** Get ROL.8.3 - Name of Coding System */ export function ROL_8_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 3); } /** Get ROL.8.4 - Alternate Identifier */ export function ROL_8_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 4); } /** Get ROL.8.5 - Alternate Text */ export function ROL_8_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 5); } /** Get ROL.8.6 - Name of Alternate Coding System */ export function ROL_8_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 6); } /** Get ROL.9.1 - Identifier */ export function ROL_9_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 1); } /** Get ROL.9.2 - Text */ export function ROL_9_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 2); } /** Get ROL.9.3 - Name of Coding System */ export function ROL_9_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 3); } /** Get ROL.9.4 - Alternate Identifier */ export function ROL_9_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 4); } /** Get ROL.9.5 - Alternate Text */ export function ROL_9_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 5); } /** Get ROL.9.6 - Name of Alternate Coding System */ export function ROL_9_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[9]; return getComponent(field, 6); } /** Get ROL.10.1 - Identifier */ export function ROL_10_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 1); } /** Get ROL.10.2 - Text */ export function ROL_10_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 2); } /** Get ROL.10.3 - Name of Coding System */ export function ROL_10_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 3); } /** Get ROL.10.4 - Alternate Identifier */ export function ROL_10_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 4); } /** Get ROL.10.5 - Alternate Text */ export function ROL_10_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 5); } /** Get ROL.10.6 - Name of Alternate Coding System */ export function ROL_10_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 6); } /** Get ROL.11.1 - Street Address */ export function ROL_11_1_line1(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 1); } /** Get ROL.11.1.1 - Street or Mailing Address */ export function ROL_11_1_1_line(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 1, 1); } /** Get ROL.11.1.2 - Street Name */ export function ROL_11_1_2_street_name(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 1, 2); } /** Get ROL.11.1.3 - Dwelling Number */ export function ROL_11_1_3_house_number(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 1, 3); } /** Get ROL.11.2 - Other Designation */ export function ROL_11_2_line2(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 2); } /** Get ROL.11.3 - City */ export function ROL_11_3_city(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 3); } /** Get ROL.11.4 - State or Province */ export function ROL_11_4_state(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 4); } /** Get ROL.11.5 - Zip or Postal Code */ export function ROL_11_5_postal_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 5); } /** Get ROL.11.6 - Country */ export function ROL_11_6_country(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 6); } /** Get ROL.11.7 - Address Type */ export function ROL_11_7_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 7); } /** Get ROL.11.8 - Other Geographic Designation */ export function ROL_11_8_additional_locator(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 8); } /** Get ROL.11.9 - County/Parish Code */ export function ROL_11_9_district(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 9); } /** Get ROL.11.10 - Census Tract */ export function ROL_11_10_census_tract(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 10); } /** Get ROL.11.11 - Address Representation Code */ export function ROL_11_11_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 11); } /** Get ROL.11.12 - Address Validity Range */ export function ROL_11_12_period(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 12); } /** Get ROL.11.12.1 - Range Start Date/Time */ export function ROL_11_12_1_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 12, 1); } /** Get ROL.11.12.2 - Range End Date/Time */ export function ROL_11_12_2_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 12, 2); } /** Get ROL.11.13 - Effective Date */ export function ROL_11_13_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 13); } /** Get ROL.11.14 - Expiration Date */ export function ROL_11_14_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[11]; return getComponent(field, 14); } /** Get ROL.12.1 - Telephone Number */ export function ROL_12_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 1); } /** Get ROL.12.2 - Telecommunication Use Code */ export function ROL_12_2_use(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 2); } /** Get ROL.12.3 - Telecommunication Equipment Type */ export function ROL_12_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 3); } /** Get ROL.12.4 - Email Address */ export function ROL_12_4_email(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 4); } /** Get ROL.12.5 - Country Code */ export function ROL_12_5_country_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 5); } /** Get ROL.12.6 - Area/City Code */ export function ROL_12_6_area_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 6); } /** Get ROL.12.7 - Local Number */ export function ROL_12_7_local_number(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 7); } /** Get ROL.12.8 - Extension */ export function ROL_12_8_extension(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 8); } /** Get ROL.12.9 - Any Text */ export function ROL_12_9_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 9); } /** Get ROL.12.10 - Extension Prefix */ export function ROL_12_10_extension_prefix(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 10); } /** Get ROL.12.11 - Speed Dial Code */ export function ROL_12_11_speed_dial(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 11); } /** Get ROL.12.12 - Unformatted Telephone number */ export function ROL_12_12_unformatted(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 12); } export class ROLBuilder { private seg: HL7v2Segment = { segment: "ROL", fields: {} }; /** ROL.1 - Role Instance ID */ set_rol_1_roleInstanceId(value: EI | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[1] = fv; return this; } /** ROL.1 - Role Instance ID */ get_rol_1_roleInstanceId(): EI | undefined { return fromEI(this.seg.fields[1]); } /** ROL.2 - Action Code */ set_rol_2_actionCode(value: string | null | undefined): this { if (value != null) this.seg.fields[2] = value; return this; } /** ROL.2 - Action Code */ get_rol_2_actionCode(): string | undefined { const val = this.seg.fields[2]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** ROL.3 - Role-ROL */ set_rol_3_roleRol(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[3] = fv; return this; } /** ROL.3 - Role-ROL */ get_rol_3_roleRol(): CE | undefined { return fromCE(this.seg.fields[3]); } /** ROL.4 - Role Person (set all values) */ set_rol_4_rolePerson(values: XCN[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[4] = arr; return this; } /** ROL.4 - Role Person (add single value) */ add_rol_4_rolePerson(value: XCN | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[4]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[4] = [fv]; } } return this; } /** ROL.4 - Role Person */ get_rol_4_rolePerson(): XCN[] | undefined { const val = this.seg.fields[4]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXCN(v)).filter((v): v is XCN => v !== undefined); } /** ROL.5 - Role Begin Date/Time */ set_rol_5_roleBeginDateTime(value: string | null | undefined): this { if (value != null) this.seg.fields[5] = value; return this; } /** ROL.5 - Role Begin Date/Time */ get_rol_5_roleBeginDateTime(): string | undefined { const val = this.seg.fields[5]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** ROL.6 - Role End Date/Time */ set_rol_6_roleEndDateTime(value: string | null | undefined): this { if (value != null) this.seg.fields[6] = value; return this; } /** ROL.6 - Role End Date/Time */ get_rol_6_roleEndDateTime(): string | undefined { const val = this.seg.fields[6]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** ROL.7 - Role Duration */ set_rol_7_roleDuration(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[7] = fv; return this; } /** ROL.7 - Role Duration */ get_rol_7_roleDuration(): CE | undefined { return fromCE(this.seg.fields[7]); } /** ROL.8 - Role Action Reason */ set_rol_8_roleActionReason(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[8] = fv; return this; } /** ROL.8 - Role Action Reason */ get_rol_8_roleActionReason(): CE | undefined { return fromCE(this.seg.fields[8]); } /** ROL.9 - Provider Type (set all values) */ set_rol_9_providerType(values: CE[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[9] = arr; return this; } /** ROL.9 - Provider Type (add single value) */ add_rol_9_providerType(value: CE | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[9]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[9] = [fv]; } } return this; } /** ROL.9 - Provider Type */ get_rol_9_providerType(): CE[] | undefined { const val = this.seg.fields[9]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromCE(v)).filter((v): v is CE => v !== undefined); } /** ROL.10 - Organization Unit Type */ set_rol_10_organizationUnitType(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[10] = fv; return this; } /** ROL.10 - Organization Unit Type */ get_rol_10_organizationUnitType(): CE | undefined { return fromCE(this.seg.fields[10]); } /** ROL.11 - Office/Home Address/Birthplace (set all values) */ set_rol_11_address(values: XAD[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[11] = arr; return this; } /** ROL.11 - Office/Home Address/Birthplace (add single value) */ add_rol_11_address(value: XAD | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[11]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[11] = [fv]; } } return this; } /** ROL.11 - Office/Home Address/Birthplace */ get_rol_11_address(): XAD[] | undefined { const val = this.seg.fields[11]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXAD(v)).filter((v): v is XAD => v !== undefined); } /** ROL.12 - Phone (set all values) */ set_rol_12_phone(values: XTN[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[12] = arr; return this; } /** ROL.12 - Phone (add single value) */ add_rol_12_phone(value: XTN | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[12]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[12] = [fv]; } } return this; } /** ROL.12 - Phone */ get_rol_12_phone(): XTN[] | undefined { const val = this.seg.fields[12]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromXTN(v)).filter((v): v is XTN => v !== undefined); } build(): HL7v2Segment { return this.seg; } } // ====== SFT Segment ====== /** Get SFT.1.1 - Organization Name */ export function SFT_1_1_name(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 1); } /** Get SFT.1.2 - Organization Name Type Code */ export function SFT_1_2_name_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 2); } /** Get SFT.1.3 - ID Number */ export function SFT_1_3_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 3); } /** Get SFT.1.4 - Check Digit */ export function SFT_1_4_check_digit(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 4); } /** Get SFT.1.5 - Check Digit Scheme */ export function SFT_1_5_check_digit_scheme(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 5); } /** Get SFT.1.6 - Assigning Authority */ export function SFT_1_6_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 6); } /** Get SFT.1.6.1 - Namespace ID */ export function SFT_1_6_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 6, 1); } /** Get SFT.1.6.2 - Universal ID */ export function SFT_1_6_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 6, 2); } /** Get SFT.1.6.3 - Universal ID Type */ export function SFT_1_6_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 6, 3); } /** Get SFT.1.7 - Identifier Type Code */ export function SFT_1_7_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 7); } /** Get SFT.1.8 - Assigning Facility */ export function SFT_1_8_assigner(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 8); } /** Get SFT.1.8.1 - Namespace ID */ export function SFT_1_8_1_namespace(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 8, 1); } /** Get SFT.1.8.2 - Universal ID */ export function SFT_1_8_2_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 8, 2); } /** Get SFT.1.8.3 - Universal ID Type */ export function SFT_1_8_3_system_type(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 8, 3); } /** Get SFT.1.9 - Name Representation Code */ export function SFT_1_9_representation(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 9); } /** Get SFT.1.10 - Organization Identifier */ export function SFT_1_10_organization_id(seg: HL7v2Segment): string | undefined { const field = seg.fields[1]; return getComponent(field, 10); } /** Get SFT.2 - Software Certified Version or Release Number */ export function SFT_2_software_certified_version_or_release_number(seg: HL7v2Segment): string | undefined { const val = seg.fields[2]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get SFT.3 - Software Product Name */ export function SFT_3_software_product_name(seg: HL7v2Segment): string | undefined { const val = seg.fields[3]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get SFT.4 - Software Binary ID */ export function SFT_4_software_binary_id(seg: HL7v2Segment): string | undefined { const val = seg.fields[4]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get SFT.5 - Software Product Information */ export function SFT_5_software_product_information(seg: HL7v2Segment): string | undefined { const val = seg.fields[5]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get SFT.6 - Software Install Date */ export function SFT_6_software_install_date(seg: HL7v2Segment): string | undefined { const val = seg.fields[6]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } export class SFTBuilder { private seg: HL7v2Segment = { segment: "SFT", fields: {} }; /** SFT.1 - Software Vendor Organization */ set_sft_1_softwareVendorOrganization(value: XON | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[1] = fv; return this; } /** SFT.1 - Software Vendor Organization */ get_sft_1_softwareVendorOrganization(): XON | undefined { return fromXON(this.seg.fields[1]); } /** SFT.2 - Software Certified Version or Release Number */ set_sft_2_softwareCertifiedVersionOrReleaseNumber(value: string | null | undefined): this { if (value != null) this.seg.fields[2] = value; return this; } /** SFT.2 - Software Certified Version or Release Number */ get_sft_2_softwareCertifiedVersionOrReleaseNumber(): string | undefined { const val = this.seg.fields[2]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** SFT.3 - Software Product Name */ set_sft_3_softwareProductName(value: string | null | undefined): this { if (value != null) this.seg.fields[3] = value; return this; } /** SFT.3 - Software Product Name */ get_sft_3_softwareProductName(): string | undefined { const val = this.seg.fields[3]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** SFT.4 - Software Binary ID */ set_sft_4_softwareBinaryId(value: string | null | undefined): this { if (value != null) this.seg.fields[4] = value; return this; } /** SFT.4 - Software Binary ID */ get_sft_4_softwareBinaryId(): string | undefined { const val = this.seg.fields[4]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** SFT.5 - Software Product Information */ set_sft_5_softwareProductInformation(value: string | null | undefined): this { if (value != null) this.seg.fields[5] = value; return this; } /** SFT.5 - Software Product Information */ get_sft_5_softwareProductInformation(): string | undefined { const val = this.seg.fields[5]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** SFT.6 - Software Install Date */ set_sft_6_softwareInstallDate(value: string | null | undefined): this { if (value != null) this.seg.fields[6] = value; return this; } /** SFT.6 - Software Install Date */ get_sft_6_softwareInstallDate(): string | undefined { const val = this.seg.fields[6]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } build(): HL7v2Segment { return this.seg; } } // ====== UB1 Segment ====== /** Get UB1.1 - Set ID - UB1 */ export function UB1_1_set_id_ub1(seg: HL7v2Segment): string | undefined { const val = seg.fields[1]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get UB1.2 - Blood Deductible (43) */ export function UB1_2_blood_deductible(seg: HL7v2Segment): string | undefined { const val = seg.fields[2]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get UB1.3 - Blood Furnished-Pints Of (40) */ export function UB1_3_blood_furnished_pints_of(seg: HL7v2Segment): string | undefined { const val = seg.fields[3]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get UB1.4 - Blood Replaced-Pints (41) */ export function UB1_4_blood_replaced_pints(seg: HL7v2Segment): string | undefined { const val = seg.fields[4]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get UB1.5 - Blood Not Replaced-Pints(42) */ export function UB1_5_blood_not_replaced_pints(seg: HL7v2Segment): string | undefined { const val = seg.fields[5]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get UB1.6 - Co-Insurance Days (25) */ export function UB1_6_co_insurance_days(seg: HL7v2Segment): string | undefined { const val = seg.fields[6]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get UB1.7 - Condition Code (35-39) */ export function UB1_7_condition_code(seg: HL7v2Segment): string | undefined { const val = seg.fields[7]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get UB1.8 - Covered Days - (23) */ export function UB1_8_covered_days(seg: HL7v2Segment): string | undefined { const val = seg.fields[8]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get UB1.9 - Non Covered Days - (24) */ export function UB1_9_non_covered_days(seg: HL7v2Segment): string | undefined { const val = seg.fields[9]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get UB1.10.1 - Value Code */ export function UB1_10_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 1); } /** Get UB1.10.1.1 - Identifier */ export function UB1_10_1_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 1, 1); } /** Get UB1.10.1.2 - Text */ export function UB1_10_1_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 1, 2); } /** Get UB1.10.1.3 - Name of Coding System */ export function UB1_10_1_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 1, 3); } /** Get UB1.10.1.4 - Alternate Identifier */ export function UB1_10_1_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 1, 4); } /** Get UB1.10.1.5 - Alternate Text */ export function UB1_10_1_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 1, 5); } /** Get UB1.10.1.6 - Name of Alternate Coding System */ export function UB1_10_1_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 1, 6); } /** Get UB1.10.1.7 - Coding System Version ID */ export function UB1_10_1_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 1, 7); } /** Get UB1.10.1.8 - Alternate Coding System Version ID */ export function UB1_10_1_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 1, 8); } /** Get UB1.10.1.9 - Original Text */ export function UB1_10_1_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 1, 9); } /** Get UB1.10.2 - Value Amount */ export function UB1_10_2_amount(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 2); } /** Get UB1.10.2.1 - Quantity */ export function UB1_10_2_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 2, 1); } /** Get UB1.10.2.2 - Denomination */ export function UB1_10_2_2_currency(seg: HL7v2Segment): string | undefined { const field = seg.fields[10]; return getComponent(field, 2, 2); } /** Get UB1.11 - Number Of Grace Days (90) */ export function UB1_11_number_of_grace_days(seg: HL7v2Segment): string | undefined { const val = seg.fields[11]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get UB1.12.1 - Identifier */ export function UB1_12_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 1); } /** Get UB1.12.2 - Text */ export function UB1_12_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 2); } /** Get UB1.12.3 - Name of Coding System */ export function UB1_12_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 3); } /** Get UB1.12.4 - Alternate Identifier */ export function UB1_12_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 4); } /** Get UB1.12.5 - Alternate Text */ export function UB1_12_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 5); } /** Get UB1.12.6 - Name of Alternate Coding System */ export function UB1_12_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[12]; return getComponent(field, 6); } /** Get UB1.13.1 - Identifier */ export function UB1_13_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 1); } /** Get UB1.13.2 - Text */ export function UB1_13_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 2); } /** Get UB1.13.3 - Name of Coding System */ export function UB1_13_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 3); } /** Get UB1.13.4 - Alternate Identifier */ export function UB1_13_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 4); } /** Get UB1.13.5 - Alternate Text */ export function UB1_13_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 5); } /** Get UB1.13.6 - Name of Alternate Coding System */ export function UB1_13_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[13]; return getComponent(field, 6); } /** Get UB1.14 - PSRO/UR Approved Stay-Fm (88) */ export function UB1_14_psro_ur_approved_stay_fm(seg: HL7v2Segment): string | undefined { const val = seg.fields[14]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get UB1.15 - PSRO/UR Approved Stay-To (89) */ export function UB1_15_psro_ur_approved_stay_to(seg: HL7v2Segment): string | undefined { const val = seg.fields[15]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get UB1.16.1 - Occurrence Code */ export function UB1_16_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 1); } /** Get UB1.16.1.1 - Identifier */ export function UB1_16_1_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 1, 1); } /** Get UB1.16.1.2 - Text */ export function UB1_16_1_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 1, 2); } /** Get UB1.16.1.3 - Name of Coding System */ export function UB1_16_1_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 1, 3); } /** Get UB1.16.1.4 - Alternate Identifier */ export function UB1_16_1_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 1, 4); } /** Get UB1.16.1.5 - Alternate Text */ export function UB1_16_1_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 1, 5); } /** Get UB1.16.1.6 - Name of Alternate Coding System */ export function UB1_16_1_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 1, 6); } /** Get UB1.16.1.7 - Coding System Version ID */ export function UB1_16_1_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 1, 7); } /** Get UB1.16.1.8 - Alternate Coding System Version ID */ export function UB1_16_1_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 1, 8); } /** Get UB1.16.1.9 - Original Text */ export function UB1_16_1_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 1, 9); } /** Get UB1.16.2 - Occurrence Date */ export function UB1_16_2_date(seg: HL7v2Segment): string | undefined { const field = seg.fields[16]; return getComponent(field, 2); } /** Get UB1.17.1 - Identifier */ export function UB1_17_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 1); } /** Get UB1.17.2 - Text */ export function UB1_17_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 2); } /** Get UB1.17.3 - Name of Coding System */ export function UB1_17_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 3); } /** Get UB1.17.4 - Alternate Identifier */ export function UB1_17_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 4); } /** Get UB1.17.5 - Alternate Text */ export function UB1_17_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 5); } /** Get UB1.17.6 - Name of Alternate Coding System */ export function UB1_17_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[17]; return getComponent(field, 6); } /** Get UB1.18 - Occur Span Start Date(33) */ export function UB1_18_occur_span_start_date(seg: HL7v2Segment): string | undefined { const val = seg.fields[18]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get UB1.19 - Occur Span End Date (33) */ export function UB1_19_occur_span_end_date(seg: HL7v2Segment): string | undefined { const val = seg.fields[19]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get UB1.20 - UB-82 Locator 2 */ export function UB1_20_ub82_locator2(seg: HL7v2Segment): string | undefined { const val = seg.fields[20]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get UB1.21 - UB-82 Locator 9 */ export function UB1_21_ub82_locator9(seg: HL7v2Segment): string | undefined { const val = seg.fields[21]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get UB1.22 - UB-82 Locator 27 */ export function UB1_22_ub82_locator27(seg: HL7v2Segment): string | undefined { const val = seg.fields[22]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get UB1.23 - UB-82 Locator 45 */ export function UB1_23_ub82_locator45(seg: HL7v2Segment): string | undefined { const val = seg.fields[23]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } export class UB1Builder { private seg: HL7v2Segment = { segment: "UB1", fields: {} }; /** UB1.1 - Set ID - UB1 */ set_ub1_1_setIdUb1(value: string | null | undefined): this { if (value != null) this.seg.fields[1] = value; return this; } /** UB1.1 - Set ID - UB1 */ get_ub1_1_setIdUb1(): string | undefined { const val = this.seg.fields[1]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** UB1.2 - Blood Deductible (43) */ set_ub1_2_bloodDeductible(value: string | null | undefined): this { if (value != null) this.seg.fields[2] = value; return this; } /** UB1.2 - Blood Deductible (43) */ get_ub1_2_bloodDeductible(): string | undefined { const val = this.seg.fields[2]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** UB1.3 - Blood Furnished-Pints Of (40) */ set_ub1_3_bloodFurnishedPintsOf(value: string | null | undefined): this { if (value != null) this.seg.fields[3] = value; return this; } /** UB1.3 - Blood Furnished-Pints Of (40) */ get_ub1_3_bloodFurnishedPintsOf(): string | undefined { const val = this.seg.fields[3]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** UB1.4 - Blood Replaced-Pints (41) */ set_ub1_4_bloodReplacedPints(value: string | null | undefined): this { if (value != null) this.seg.fields[4] = value; return this; } /** UB1.4 - Blood Replaced-Pints (41) */ get_ub1_4_bloodReplacedPints(): string | undefined { const val = this.seg.fields[4]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** UB1.5 - Blood Not Replaced-Pints(42) */ set_ub1_5_bloodNotReplacedPints(value: string | null | undefined): this { if (value != null) this.seg.fields[5] = value; return this; } /** UB1.5 - Blood Not Replaced-Pints(42) */ get_ub1_5_bloodNotReplacedPints(): string | undefined { const val = this.seg.fields[5]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** UB1.6 - Co-Insurance Days (25) */ set_ub1_6_coInsuranceDays(value: string | null | undefined): this { if (value != null) this.seg.fields[6] = value; return this; } /** UB1.6 - Co-Insurance Days (25) */ get_ub1_6_coInsuranceDays(): string | undefined { const val = this.seg.fields[6]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** UB1.7 - Condition Code (35-39) */ set_ub1_7_conditionCode(value: string | null | undefined): this { if (value != null) this.seg.fields[7] = value; return this; } /** UB1.7 - Condition Code (35-39) */ get_ub1_7_conditionCode(): string | undefined { const val = this.seg.fields[7]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** UB1.8 - Covered Days - (23) */ set_ub1_8_coveredDays(value: string | null | undefined): this { if (value != null) this.seg.fields[8] = value; return this; } /** UB1.8 - Covered Days - (23) */ get_ub1_8_coveredDays(): string | undefined { const val = this.seg.fields[8]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** UB1.9 - Non Covered Days - (24) */ set_ub1_9_nonCoveredDays(value: string | null | undefined): this { if (value != null) this.seg.fields[9] = value; return this; } /** UB1.9 - Non Covered Days - (24) */ get_ub1_9_nonCoveredDays(): string | undefined { const val = this.seg.fields[9]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** UB1.10 - Value Amount & Code (46-49) (set all values) */ set_ub1_10_valueAmountAndCode(values: UVC[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[10] = arr; return this; } /** UB1.10 - Value Amount & Code (46-49) (add single value) */ add_ub1_10_valueAmountAndCode(value: UVC | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[10]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[10] = [fv]; } } return this; } /** UB1.10 - Value Amount & Code (46-49) */ get_ub1_10_valueAmountAndCode(): UVC[] | undefined { const val = this.seg.fields[10]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromUVC(v)).filter((v): v is UVC => v !== undefined); } /** UB1.11 - Number Of Grace Days (90) */ set_ub1_11_numberOfGraceDays(value: string | null | undefined): this { if (value != null) this.seg.fields[11] = value; return this; } /** UB1.11 - Number Of Grace Days (90) */ get_ub1_11_numberOfGraceDays(): string | undefined { const val = this.seg.fields[11]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** UB1.12 - Special Program Indicator (44) */ set_ub1_12_specialProgramIndicator(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[12] = fv; return this; } /** UB1.12 - Special Program Indicator (44) */ get_ub1_12_specialProgramIndicator(): CE | undefined { return fromCE(this.seg.fields[12]); } /** UB1.13 - PSRO/UR Approval Indicator (87) */ set_ub1_13_psroUrApprovalIndicator(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[13] = fv; return this; } /** UB1.13 - PSRO/UR Approval Indicator (87) */ get_ub1_13_psroUrApprovalIndicator(): CE | undefined { return fromCE(this.seg.fields[13]); } /** UB1.14 - PSRO/UR Approved Stay-Fm (88) */ set_ub1_14_psroUrApprovedStayFm(value: string | null | undefined): this { if (value != null) this.seg.fields[14] = value; return this; } /** UB1.14 - PSRO/UR Approved Stay-Fm (88) */ get_ub1_14_psroUrApprovedStayFm(): string | undefined { const val = this.seg.fields[14]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** UB1.15 - PSRO/UR Approved Stay-To (89) */ set_ub1_15_psroUrApprovedStayTo(value: string | null | undefined): this { if (value != null) this.seg.fields[15] = value; return this; } /** UB1.15 - PSRO/UR Approved Stay-To (89) */ get_ub1_15_psroUrApprovedStayTo(): string | undefined { const val = this.seg.fields[15]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** UB1.16 - Occurrence (28-32) (set all values) */ set_ub1_16_occurrence(values: OCD[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[16] = arr; return this; } /** UB1.16 - Occurrence (28-32) (add single value) */ add_ub1_16_occurrence(value: OCD | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[16]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[16] = [fv]; } } return this; } /** UB1.16 - Occurrence (28-32) */ get_ub1_16_occurrence(): OCD[] | undefined { const val = this.seg.fields[16]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromOCD(v)).filter((v): v is OCD => v !== undefined); } /** UB1.17 - Occurrence Span (33) */ set_ub1_17_occurrenceSpan(value: CE | null | undefined): this { const fv = toFieldValue(value as Record); if (fv !== undefined) this.seg.fields[17] = fv; return this; } /** UB1.17 - Occurrence Span (33) */ get_ub1_17_occurrenceSpan(): CE | undefined { return fromCE(this.seg.fields[17]); } /** UB1.18 - Occur Span Start Date(33) */ set_ub1_18_occurSpanStartDate(value: string | null | undefined): this { if (value != null) this.seg.fields[18] = value; return this; } /** UB1.18 - Occur Span Start Date(33) */ get_ub1_18_occurSpanStartDate(): string | undefined { const val = this.seg.fields[18]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** UB1.19 - Occur Span End Date (33) */ set_ub1_19_occurSpanEndDate(value: string | null | undefined): this { if (value != null) this.seg.fields[19] = value; return this; } /** UB1.19 - Occur Span End Date (33) */ get_ub1_19_occurSpanEndDate(): string | undefined { const val = this.seg.fields[19]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** UB1.20 - UB-82 Locator 2 */ set_ub1_20_ub82Locator2(value: string | null | undefined): this { if (value != null) this.seg.fields[20] = value; return this; } /** UB1.20 - UB-82 Locator 2 */ get_ub1_20_ub82Locator2(): string | undefined { const val = this.seg.fields[20]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** UB1.21 - UB-82 Locator 9 */ set_ub1_21_ub82Locator9(value: string | null | undefined): this { if (value != null) this.seg.fields[21] = value; return this; } /** UB1.21 - UB-82 Locator 9 */ get_ub1_21_ub82Locator9(): string | undefined { const val = this.seg.fields[21]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** UB1.22 - UB-82 Locator 27 */ set_ub1_22_ub82Locator27(value: string | null | undefined): this { if (value != null) this.seg.fields[22] = value; return this; } /** UB1.22 - UB-82 Locator 27 */ get_ub1_22_ub82Locator27(): string | undefined { const val = this.seg.fields[22]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** UB1.23 - UB-82 Locator 45 */ set_ub1_23_ub82Locator45(value: string | null | undefined): this { if (value != null) this.seg.fields[23] = value; return this; } /** UB1.23 - UB-82 Locator 45 */ get_ub1_23_ub82Locator45(): string | undefined { const val = this.seg.fields[23]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } build(): HL7v2Segment { return this.seg; } } // ====== UB2 Segment ====== /** Get UB2.1 - Set ID - UB2 */ export function UB2_1_set_id_ub2(seg: HL7v2Segment): string | undefined { const val = seg.fields[1]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get UB2.2 - Co-Insurance Days (9) */ export function UB2_2_co_insurance_days(seg: HL7v2Segment): string | undefined { const val = seg.fields[2]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get UB2.3 - Condition Code (24-30) */ export function UB2_3_condition_code(seg: HL7v2Segment): string | undefined { const val = seg.fields[3]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get UB2.4 - Covered Days (7) */ export function UB2_4_covered_days(seg: HL7v2Segment): string | undefined { const val = seg.fields[4]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get UB2.5 - Non-Covered Days (8) */ export function UB2_5_non_covered_days(seg: HL7v2Segment): string | undefined { const val = seg.fields[5]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get UB2.6.1 - Value Code */ export function UB2_6_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 1); } /** Get UB2.6.1.1 - Identifier */ export function UB2_6_1_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 1, 1); } /** Get UB2.6.1.2 - Text */ export function UB2_6_1_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 1, 2); } /** Get UB2.6.1.3 - Name of Coding System */ export function UB2_6_1_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 1, 3); } /** Get UB2.6.1.4 - Alternate Identifier */ export function UB2_6_1_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 1, 4); } /** Get UB2.6.1.5 - Alternate Text */ export function UB2_6_1_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 1, 5); } /** Get UB2.6.1.6 - Name of Alternate Coding System */ export function UB2_6_1_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 1, 6); } /** Get UB2.6.1.7 - Coding System Version ID */ export function UB2_6_1_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 1, 7); } /** Get UB2.6.1.8 - Alternate Coding System Version ID */ export function UB2_6_1_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 1, 8); } /** Get UB2.6.1.9 - Original Text */ export function UB2_6_1_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 1, 9); } /** Get UB2.6.2 - Value Amount */ export function UB2_6_2_amount(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 2); } /** Get UB2.6.2.1 - Quantity */ export function UB2_6_2_1_value(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 2, 1); } /** Get UB2.6.2.2 - Denomination */ export function UB2_6_2_2_currency(seg: HL7v2Segment): string | undefined { const field = seg.fields[6]; return getComponent(field, 2, 2); } /** Get UB2.7.1 - Occurrence Code */ export function UB2_7_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 1); } /** Get UB2.7.1.1 - Identifier */ export function UB2_7_1_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 1, 1); } /** Get UB2.7.1.2 - Text */ export function UB2_7_1_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 1, 2); } /** Get UB2.7.1.3 - Name of Coding System */ export function UB2_7_1_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 1, 3); } /** Get UB2.7.1.4 - Alternate Identifier */ export function UB2_7_1_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 1, 4); } /** Get UB2.7.1.5 - Alternate Text */ export function UB2_7_1_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 1, 5); } /** Get UB2.7.1.6 - Name of Alternate Coding System */ export function UB2_7_1_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 1, 6); } /** Get UB2.7.1.7 - Coding System Version ID */ export function UB2_7_1_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 1, 7); } /** Get UB2.7.1.8 - Alternate Coding System Version ID */ export function UB2_7_1_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 1, 8); } /** Get UB2.7.1.9 - Original Text */ export function UB2_7_1_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 1, 9); } /** Get UB2.7.2 - Occurrence Date */ export function UB2_7_2_date(seg: HL7v2Segment): string | undefined { const field = seg.fields[7]; return getComponent(field, 2); } /** Get UB2.8.1 - Occurrence Span Code */ export function UB2_8_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 1); } /** Get UB2.8.1.1 - Identifier */ export function UB2_8_1_1_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 1, 1); } /** Get UB2.8.1.2 - Text */ export function UB2_8_1_2_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 1, 2); } /** Get UB2.8.1.3 - Name of Coding System */ export function UB2_8_1_3_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 1, 3); } /** Get UB2.8.1.4 - Alternate Identifier */ export function UB2_8_1_4_alt_code(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 1, 4); } /** Get UB2.8.1.5 - Alternate Text */ export function UB2_8_1_5_alt_display(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 1, 5); } /** Get UB2.8.1.6 - Name of Alternate Coding System */ export function UB2_8_1_6_alt_system(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 1, 6); } /** Get UB2.8.1.7 - Coding System Version ID */ export function UB2_8_1_7_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 1, 7); } /** Get UB2.8.1.8 - Alternate Coding System Version ID */ export function UB2_8_1_8_alt_version(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 1, 8); } /** Get UB2.8.1.9 - Original Text */ export function UB2_8_1_9_original_text(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 1, 9); } /** Get UB2.8.2 - Occurrence Span Start Date */ export function UB2_8_2_start(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 2); } /** Get UB2.8.3 - Occurrence Span Stop Date */ export function UB2_8_3_end(seg: HL7v2Segment): string | undefined { const field = seg.fields[8]; return getComponent(field, 3); } /** Get UB2.9 - UB92 Locator 2 (State) */ export function UB2_9_ub92_locator2(seg: HL7v2Segment): string | undefined { const val = seg.fields[9]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get UB2.10 - UB92 Locator 11 (State) */ export function UB2_10_ub92_locator11(seg: HL7v2Segment): string | undefined { const val = seg.fields[10]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get UB2.11 - UB92 Locator 31 (National) */ export function UB2_11_ub92_locator31(seg: HL7v2Segment): string | undefined { const val = seg.fields[11]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get UB2.12 - Document Control Number */ export function UB2_12_document_control_number(seg: HL7v2Segment): string | undefined { const val = seg.fields[12]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get UB2.13 - UB92 Locator 49 (National) */ export function UB2_13_ub92_locator49(seg: HL7v2Segment): string | undefined { const val = seg.fields[13]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get UB2.14 - UB92 Locator 56 (State) */ export function UB2_14_ub92_locator56(seg: HL7v2Segment): string | undefined { const val = seg.fields[14]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get UB2.15 - UB92 Locator 57 (National) */ export function UB2_15_ub92_locator57(seg: HL7v2Segment): string | undefined { const val = seg.fields[15]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get UB2.16 - UB92 Locator 78 (State) */ export function UB2_16_ub92_locator78(seg: HL7v2Segment): string | undefined { const val = seg.fields[16]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** Get UB2.17 - Special Visit Count */ export function UB2_17_special_visit_count(seg: HL7v2Segment): string | undefined { const val = seg.fields[17]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } export class UB2Builder { private seg: HL7v2Segment = { segment: "UB2", fields: {} }; /** UB2.1 - Set ID - UB2 */ set_ub2_1_setIdUb2(value: string | null | undefined): this { if (value != null) this.seg.fields[1] = value; return this; } /** UB2.1 - Set ID - UB2 */ get_ub2_1_setIdUb2(): string | undefined { const val = this.seg.fields[1]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** UB2.2 - Co-Insurance Days (9) */ set_ub2_2_coInsuranceDays(value: string | null | undefined): this { if (value != null) this.seg.fields[2] = value; return this; } /** UB2.2 - Co-Insurance Days (9) */ get_ub2_2_coInsuranceDays(): string | undefined { const val = this.seg.fields[2]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** UB2.3 - Condition Code (24-30) */ set_ub2_3_conditionCode(value: string | null | undefined): this { if (value != null) this.seg.fields[3] = value; return this; } /** UB2.3 - Condition Code (24-30) */ get_ub2_3_conditionCode(): string | undefined { const val = this.seg.fields[3]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** UB2.4 - Covered Days (7) */ set_ub2_4_coveredDays(value: string | null | undefined): this { if (value != null) this.seg.fields[4] = value; return this; } /** UB2.4 - Covered Days (7) */ get_ub2_4_coveredDays(): string | undefined { const val = this.seg.fields[4]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** UB2.5 - Non-Covered Days (8) */ set_ub2_5_nonCoveredDays(value: string | null | undefined): this { if (value != null) this.seg.fields[5] = value; return this; } /** UB2.5 - Non-Covered Days (8) */ get_ub2_5_nonCoveredDays(): string | undefined { const val = this.seg.fields[5]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** UB2.6 - Value Amount & Code (set all values) */ set_ub2_6_valueAmountAndCode(values: UVC[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[6] = arr; return this; } /** UB2.6 - Value Amount & Code (add single value) */ add_ub2_6_valueAmountAndCode(value: UVC | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[6]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[6] = [fv]; } } return this; } /** UB2.6 - Value Amount & Code */ get_ub2_6_valueAmountAndCode(): UVC[] | undefined { const val = this.seg.fields[6]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromUVC(v)).filter((v): v is UVC => v !== undefined); } /** UB2.7 - Occurrence Code & Date (32-35) (set all values) */ set_ub2_7_occurrenceCodeAndDate(values: OCD[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[7] = arr; return this; } /** UB2.7 - Occurrence Code & Date (32-35) (add single value) */ add_ub2_7_occurrenceCodeAndDate(value: OCD | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[7]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[7] = [fv]; } } return this; } /** UB2.7 - Occurrence Code & Date (32-35) */ get_ub2_7_occurrenceCodeAndDate(): OCD[] | undefined { const val = this.seg.fields[7]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromOCD(v)).filter((v): v is OCD => v !== undefined); } /** UB2.8 - Occurrence Span Code/Dates (36) (set all values) */ set_ub2_8_occurrenceSpanCodeDates(values: OSP[] | null | undefined): this { if (values == null) return this; const arr: FieldValue[] = []; for (const v of values) { const fv = toFieldValue(v as Record); if (fv !== undefined) arr.push(fv); } if (arr.length > 0) this.seg.fields[8] = arr; return this; } /** UB2.8 - Occurrence Span Code/Dates (36) (add single value) */ add_ub2_8_occurrenceSpanCodeDates(value: OSP | null | undefined): this { if (value == null) return this; const fv = toFieldValue(value as Record); if (fv !== undefined) { const existing = this.seg.fields[8]; if (Array.isArray(existing)) { existing.push(fv); } else { this.seg.fields[8] = [fv]; } } return this; } /** UB2.8 - Occurrence Span Code/Dates (36) */ get_ub2_8_occurrenceSpanCodeDates(): OSP[] | undefined { const val = this.seg.fields[8]; if (val === undefined) return undefined; // Handle both array (repeating) and single value (parsed without repetition) const arr = Array.isArray(val) ? val : [val]; return arr.map(v => fromOSP(v)).filter((v): v is OSP => v !== undefined); } /** UB2.9 - UB92 Locator 2 (State) */ set_ub2_9_ub92Locator2(value: string | null | undefined): this { if (value != null) this.seg.fields[9] = value; return this; } /** UB2.9 - UB92 Locator 2 (State) */ get_ub2_9_ub92Locator2(): string | undefined { const val = this.seg.fields[9]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** UB2.10 - UB92 Locator 11 (State) */ set_ub2_10_ub92Locator11(value: string | null | undefined): this { if (value != null) this.seg.fields[10] = value; return this; } /** UB2.10 - UB92 Locator 11 (State) */ get_ub2_10_ub92Locator11(): string | undefined { const val = this.seg.fields[10]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** UB2.11 - UB92 Locator 31 (National) */ set_ub2_11_ub92Locator31(value: string | null | undefined): this { if (value != null) this.seg.fields[11] = value; return this; } /** UB2.11 - UB92 Locator 31 (National) */ get_ub2_11_ub92Locator31(): string | undefined { const val = this.seg.fields[11]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** UB2.12 - Document Control Number */ set_ub2_12_documentControlNumber(value: string | null | undefined): this { if (value != null) this.seg.fields[12] = value; return this; } /** UB2.12 - Document Control Number */ get_ub2_12_documentControlNumber(): string | undefined { const val = this.seg.fields[12]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** UB2.13 - UB92 Locator 49 (National) */ set_ub2_13_ub92Locator49(value: string | null | undefined): this { if (value != null) this.seg.fields[13] = value; return this; } /** UB2.13 - UB92 Locator 49 (National) */ get_ub2_13_ub92Locator49(): string | undefined { const val = this.seg.fields[13]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** UB2.14 - UB92 Locator 56 (State) */ set_ub2_14_ub92Locator56(value: string | null | undefined): this { if (value != null) this.seg.fields[14] = value; return this; } /** UB2.14 - UB92 Locator 56 (State) */ get_ub2_14_ub92Locator56(): string | undefined { const val = this.seg.fields[14]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** UB2.15 - UB92 Locator 57 (National) */ set_ub2_15_ub92Locator57(value: string | null | undefined): this { if (value != null) this.seg.fields[15] = value; return this; } /** UB2.15 - UB92 Locator 57 (National) */ get_ub2_15_ub92Locator57(): string | undefined { const val = this.seg.fields[15]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** UB2.16 - UB92 Locator 78 (State) */ set_ub2_16_ub92Locator78(value: string | null | undefined): this { if (value != null) this.seg.fields[16] = value; return this; } /** UB2.16 - UB92 Locator 78 (State) */ get_ub2_16_ub92Locator78(): string | undefined { const val = this.seg.fields[16]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } /** UB2.17 - Special Visit Count */ set_ub2_17_specialVisitCount(value: string | null | undefined): this { if (value != null) this.seg.fields[17] = value; return this; } /** UB2.17 - Special Visit Count */ get_ub2_17_specialVisitCount(): string | undefined { const val = this.seg.fields[17]; if (typeof val === "string") return val; if (Array.isArray(val) && typeof val[0] === "string") return val[0]; return undefined; } build(): HL7v2Segment { return this.seg; } }