fhirbuilder
Version:
Another FHIR Tool to build FHIR Resources
126 lines (125 loc) • 3.81 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.Practitioner = 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 Practitioner Resource
* @property {string} resourceType
* @property {IIdentifier[]} identifier
* @property {boolean} active
* @property {IElement} _active
* @property {IHumanName[]} name
* @property {IContactPoint[]} telecom
* @property {IAddress[]} address
* @property {string} gender
* @property {IElement} _gender
* @property {string} birthDate
* @property {IElement} _birthDate
* @property {IAttachment[]} photo
* @property {IPractitionerQualification[]} qualification
* @property {ICodeableConcept[]} communication
* @author Roberto Araneda Espinoza
*/
class Practitioner extends base_1.DomainResource {
/**
* @description The type of resource
*/
resourceType = 'Practitioner';
/**
* @description An identifier that applies to this person in this role.
*/
identifier;
/**
* @description Whether this practitioner's record is in active use.
*/
active;
/**
* @description Extensions for active
*/
_active;
/**
* @description The name(s) associated with the practitioner.
*/
name;
/**
* @description A contact detail for the practitioner, e.g. a telephone number or an email address.
*/
telecom;
/**
* @description Address(es) of the practitioner that are not role specific (typically home address).
Work addresses are not typically entered in this property as they are usually role dependent.
*/
address;
/**
* @description Administrative Gender - the gender that the person is considered to have for administration and record keeping purposes.
*/
gender;
/**
* @description Extensions for gender
*/
_gender;
/**
* @description The date of birth for the practitioner.
*/
birthDate;
/**
* @description Extensions for birthDate
*/
_birthDate;
/**
* @description Image of the person.
*/
photo;
/**
* @description The official certifications, training, and licenses that authorize or otherwise pertain to the provision of care by the practitioner. For example, a medical license issued by a medical board authorizing the practitioner to practice medicine within a certian locality.
*/
qualification;
/**
* @description A language the practitioner can use in patient communication.
*/
communication;
/**
* @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 `Practitioner${JSON.stringify(this.toJson())}`;
}
/**
* @description Returns a pretty string representation of the model
* @returns {string}
*/
toPrettyString() {
return `Practitioner${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)('Practitioner', this);
}
constructor(args) {
super();
if (args)
Object.assign(this, args);
}
}
exports.Practitioner = Practitioner;