fhirbuilder
Version:
Another FHIR Tool to build FHIR Resources
210 lines (209 loc) • 7.64 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.Condition = void 0;
const base_1 = require("../base");
const base_2 = require("../../../core/r4/validators/base");
/**
* @version R4 (v4.0.1)
* @summary FHIR® Specification by HL7®
* @description Class for Condition Resource
* @property {string} resourceType
* @property {IIdentifier[]} identifier
* @property {ICodeableConcept} clinicalStatus
* @property {ICodeableConcept} verificationStatus
* @property {ICodeableConcept[]} category
* @property {ICodeableConcept} severity
* @property {ICodeableConcept} code
* @property {ICodeableConcept[]} bodySite
* @property {IReference} subject
* @property {IReference} encounter
* @property {string} onsetDateTime
* @property {IElement} _onsetDateTime
* @property {IAge} onsetAge
* @property {IPeriod} onsetPeriod
* @property {IRange} onsetRange
* @property {string} onsetString
* @property {IElement} _onsetString
* @property {string} abatementDateTime
* @property {IElement} _abatementDateTime
* @property {IAge} abatementAge
* @property {IPeriod} abatementPeriod
* @property {IRange} abatementRange
* @property {string} abatementString
* @property {IElement} _abatementString
* @property {string} recordedDate
* @property {IElement} _recordedDate
* @property {IReference} recorder
* @property {IReference} asserter
* @property {IConditionStage[]} stage
* @property {IConditionEvidence[]} evidence
* @property {IAnnotation[]} note
* @author Roberto Araneda Espinoza
*/
class Condition extends base_1.DomainResource {
/**
* @description The type of resource
*/
resourceType = 'Condition';
/**
* @description Business identifiers assigned to this condition by the performer or other systems which remain constant as the resource is updated and propagates from server to server.
*/
identifier;
/**
* @description The clinical status of the condition.
*/
clinicalStatus;
/**
* @description The verification status to support the clinical status of the condition.
*/
verificationStatus;
/**
* @description A category assigned to the condition.
*/
category;
/**
* @description A subjective assessment of the severity of the condition as evaluated by the clinician.
*/
severity;
/**
* @description Identification of the condition, problem or diagnosis.
*/
code;
/**
* @description The anatomical location where this condition manifests itself.
*/
bodySite;
/**
* @description Indicates the patient or group who the condition record is associated with.
*/
subject;
/**
* @description The Encounter during which this Condition was created or to which the creation of this record is tightly associated.
*/
encounter;
/**
* @description Estimated or actual date or date-time the condition began, in the opinion of the clinician.
*/
onsetDateTime;
/**
* @description Extensions for onsetDateTime
*/
_onsetDateTime;
/**
* @description Estimated or actual date or date-time the condition began, in the opinion of the clinician.
*/
onsetAge;
/**
* @description Estimated or actual date or date-time the condition began, in the opinion of the clinician.
*/
onsetPeriod;
/**
* @description Estimated or actual date or date-time the condition began, in the opinion of the clinician.
*/
onsetRange;
/**
* @description Estimated or actual date or date-time the condition began, in the opinion of the clinician.
*/
onsetString;
/**
* @description Extensions for onsetString
*/
_onsetString;
/**
* @description The date or estimated date that the condition resolved or went into remission. This is called "abatement" because of the many overloaded connotations associated with "remission" or "resolution" - Conditions are never really resolved, but they can abate.
*/
abatementDateTime;
/**
* @description Extensions for abatementDateTime
*/
_abatementDateTime;
/**
* @description The date or estimated date that the condition resolved or went into remission. This is called "abatement" because of the many overloaded connotations associated with "remission" or "resolution" - Conditions are never really resolved, but they can abate.
*/
abatementAge;
/**
* @description The date or estimated date that the condition resolved or went into remission. This is called "abatement" because of the many overloaded connotations associated with "remission" or "resolution" - Conditions are never really resolved, but they can abate.
*/
abatementPeriod;
/**
* @description The date or estimated date that the condition resolved or went into remission. This is called "abatement" because of the many overloaded connotations associated with "remission" or "resolution" - Conditions are never really resolved, but they can abate.
*/
abatementRange;
/**
* @description The date or estimated date that the condition resolved or went into remission. This is called "abatement" because of the many overloaded connotations associated with "remission" or "resolution" - Conditions are never really resolved, but they can abate.
*/
abatementString;
/**
* @description Extensions for abatementString
*/
_abatementString;
/**
* @description The recordedDate represents when this particular Condition record was created in the system, which is often a system-generated date.
*/
recordedDate;
/**
* @description Extensions for recordedDate
*/
_recordedDate;
/**
* @description Individual who recorded the record and takes responsibility for its content.
*/
recorder;
/**
* @description Individual who is making the condition statement.
*/
asserter;
/**
* @description Clinical stage or grade of a condition. May include formal severity assessments.
*/
stage;
/**
* @description Supporting evidence / manifestations that are the basis of the Condition's verification status, such as evidence that confirmed or refuted the condition.
*/
evidence;
/**
* @description Additional information about the Condition. This is a general notes/comments entry for description of the Condition, its diagnosis and prognosis.
*/
note;
/**
* @description Returns a JSON representation of the model
* @returns {Record<string, any>}
*/
toJson() {
return JSON.parse(JSON.stringify(this));
}
/**
* @description Returns a string representation of the model
* @returns {string}
*/
toString() {
return `Condition${JSON.stringify(this.toJson())}`;
}
/**
* @description Returns a pretty string representation of the model
* @returns {string}
*/
toPrettyString() {
return `Condition${JSON.stringify(this.toJson(), null, 2)}`;
}
/**
* @description Returns a serialized string representation of the model
* @returns {string}
*/
serialize() {
return JSON.stringify(this.toJson());
}
/**
* @description Validates the model
* @returns {isValid: boolean, operationOutcome: IOperationOutcome}
*/
validate() {
return (0, base_2.ConformanceValidator)('Condition', this);
}
constructor(args) {
super();
if (args)
Object.assign(this, args);
}
}
exports.Condition = Condition;