UNPKG

fhirbuilder

Version:
136 lines (135 loc) 4.17 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.CareTeam = 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 CareTeam Resource * @property {string} resourceType * @property {IIdentifier[]} identifier * @property {CareTeamStatusType} status * @property {IElement} _status * @property {ICodeableConcept[]} category * @property {string} name * @property {IElement} _name * @property {IReference} subject * @property {IReference} encounter * @property {IPeriod} period * @property {ICareTeamParticipant[]} participant * @property {ICodeableConcept[]} reasonCode * @property {IReference[]} reasonReference * @property {IReference[]} managingOrganization * @property {IContactPoint[]} telecom * @property {IAnnotation[]} note * @author Roberto Araneda Espinoza */ class CareTeam extends base_1.DomainResource { /** * @description The type of resource */ resourceType = 'CareTeam'; /** * @description Business identifiers assigned to this care team by the performer or other systems which remain constant as the resource is updated and propagates from server to server. */ identifier; /** * @description Indicates the current state of the care team. proposed | active | suspended | inactive | entered-in-error. */ status; /** * @description Extensions for status */ _status; /** * @description Identifies what kind of team. This is to support differentiation between multiple co-existing teams, such as care plan team, episode of care team, longitudinal care team. */ category; /** * @description A label for human use intended to distinguish like teams. E.g. the "red" vs. "green" trauma teams. */ name; /** * @description Extensions for name */ _name; /** * @description Identifies the patient or group whose intended care is handled by the team. */ subject; /** * @description The Encounter during which this CareTeam was created or to which the creation of this record is tightly associated. */ encounter; /** * @description Indicates when the team did (or is intended to) come into effect and end. */ period; /** * @description Identifies all people and organizations who are expected to be involved in the care team. */ participant; /** * @description Describes why the care team exists. */ reasonCode; /** * @description Condition(s) that this care team addresses. */ reasonReference; /** * @description The organization responsible for the care team. */ managingOrganization; /** * @description A central contact detail for the care team (that applies to all members). */ telecom; /** * @description Comments made about the CareTeam. */ 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 `CareTeam${JSON.stringify(this.toJson())}`; } /** * @description Returns a pretty string representation of the model * @returns {string} */ toPrettyString() { return `CareTeam${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)('CareTeam', this); } constructor(args) { super(); if (args) Object.assign(this, args); } } exports.CareTeam = CareTeam;