UNPKG

fhirbuilder

Version:
228 lines (227 loc) 9.85 kB
import { IIdentifier, IElement, IReference, ICodeableConcept, IPeriod, IAge, IRange, IProcedurePerformer, IAnnotation, IProcedureFocalDevice, EventStatusType } from 'fhirtypes/dist/r4'; import { IProcedure, IOperationOutcome } from 'fhirtypes/dist/r4'; import { DomainResource, IValidatable, ISerializable } from '../base'; /** * @version R4 (v4.0.1) * @summary FHIR® Specification by HL7® * @description Class for Procedure Resource * @see {@link https://www.hl7.org/fhir/R4/procedure.html} for more information about this class * @description Elements defined in Ancestors: id, meta, implicitRules, language, text, contained, extension, modifierExtension * @property {string} resourceType * @property {IIdentifier[]} identifier * @property {string[]} instantiatesCanonical * @property {string[]} instantiatesUri * @property {IElement[]} _instantiatesUri * @property {IReference[]} basedOn * @property {IReference[]} partOf * @property {EventStatusType} status * @property {IElement} _status * @property {ICodeableConcept} statusReason * @property {ICodeableConcept} category * @property {ICodeableConcept} code * @property {IReference} subject * @property {IReference} encounter * @property {string} performedDateTime * @property {IElement} _performedDateTime * @property {IPeriod} performedPeriod * @property {string} performedString * @property {IElement} _performedString * @property {IAge} performedAge * @property {IRange} performedRange * @property {IReference} recorder * @property {IReference} asserter * @property {IProcedurePerformer[]} performer * @property {IReference} location * @property {ICodeableConcept[]} reasonCode * @property {IReference[]} reasonReference * @property {ICodeableConcept[]} bodySite * @property {ICodeableConcept} outcome * @property {IReference[]} report * @property {ICodeableConcept[]} complication * @property {IReference[]} complicationDetail * @property {ICodeableConcept[]} followUp * @property {IAnnotation[]} note * @property {IProcedureFocalDevice[]} focalDevice * @property {IReference[]} usedReference * @property {ICodeableConcept[]} usedCode * @author Roberto Araneda Espinoza */ export declare class Procedure extends DomainResource implements IProcedure, IValidatable, ISerializable { /** * @description The type of resource */ resourceType?: string | undefined; /** * @description Business identifiers assigned to this procedure by the performer or other systems which remain constant as the resource is updated and is propagated from server to server. */ identifier?: IIdentifier[]; /** * @description The URL pointing to a FHIR-defined protocol, guideline, order set or other definition that is adhered to in whole or in part by this Procedure. */ instantiatesCanonical?: string[]; /** * @description The URL pointing to an externally maintained protocol, guideline, order set or other definition that is adhered to in whole or in part by this Procedure. */ instantiatesUri?: string[]; /** * @description Extensions for instantiatesUri */ _instantiatesUri?: IElement[]; /** * @description A reference to a resource that contains details of the request for this procedure. */ basedOn?: IReference[]; /** * @description A larger event of which this particular procedure is a component or step. */ partOf?: IReference[]; /** * @description A code specifying the state of the procedure. Generally, this will be the in-progress or completed state. */ status: EventStatusType; /** * @description Extensions for status */ _status?: IElement; /** * @description Captures the reason for the current state of the procedure. */ statusReason?: ICodeableConcept; /** * @description A code that classifies the procedure for searching, sorting and display purposes (e.g. "Surgical Procedure"). */ category?: ICodeableConcept; /** * @description The specific procedure that is performed. Use text if the exact nature of the procedure cannot be coded (e.g. "Laparoscopic Appendectomy"). */ code?: ICodeableConcept; /** * @description The person, animal or group on which the procedure was performed. */ subject: IReference; /** * @description The Encounter during which this Procedure was created or performed or to which the creation of this record is tightly associated. */ encounter?: IReference; /** * @description Estimated or actual date, date-time, period, or age when the procedure was performed. Allows a period to support complex procedures that span more than one date, and also allows for the length of the procedure to be captured. */ performedDateTime?: string; /** * @description Extensions for performedDateTime */ _performedDateTime?: IElement; /** * @description Estimated or actual date, date-time, period, or age when the procedure was performed. Allows a period to support complex procedures that span more than one date, and also allows for the length of the procedure to be captured. */ performedPeriod?: IPeriod; /** * @description Estimated or actual date, date-time, period, or age when the procedure was performed. Allows a period to support complex procedures that span more than one date, and also allows for the length of the procedure to be captured. */ performedString?: string; /** * @description Extensions for performedString */ _performedString?: IElement; /** * @description Estimated or actual date, date-time, period, or age when the procedure was performed. Allows a period to support complex procedures that span more than one date, and also allows for the length of the procedure to be captured. */ performedAge?: IAge; /** * @description Estimated or actual date, date-time, period, or age when the procedure was performed. Allows a period to support complex procedures that span more than one date, and also allows for the length of the procedure to be captured. */ performedRange?: IRange; /** * @description Individual who recorded the record and takes responsibility for its content. */ recorder?: IReference; /** * @description Individual who is making the procedure statement. */ asserter?: IReference; /** * @description Limited to "real" people rather than equipment. */ performer?: IProcedurePerformer[]; /** * @description The location where the procedure actually happened. E.g. a newborn at home, a tracheostomy at a restaurant. */ location?: IReference; /** * @description The coded reason why the procedure was performed. This may be a coded entity of some type, or may simply be present as text. */ reasonCode?: ICodeableConcept[]; /** * @description The justification of why the procedure was performed. */ reasonReference?: IReference[]; /** * @description Detailed and structured anatomical location information. Multiple locations are allowed - e.g. multiple punch biopsies of a lesion. */ bodySite?: ICodeableConcept[]; /** * @description The outcome of the procedure - did it resolve the reasons for the procedure being performed? */ outcome?: ICodeableConcept; /** * @description This could be a histology result, pathology report, surgical report, etc. */ report?: IReference[]; /** * @description Any complications that occurred during the procedure, or in the immediate post-performance period. These are generally tracked separately from the notes, which will typically describe the procedure itself rather than any 'post procedure' issues. */ complication?: ICodeableConcept[]; /** * @description Any complications that occurred during the procedure, or in the immediate post-performance period. */ complicationDetail?: IReference[]; /** * @description If the procedure required specific follow up - e.g. removal of sutures. The follow up may be represented as a simple note or could potentially be more complex, in which case the CarePlan resource can be used. */ followUp?: ICodeableConcept[]; /** * @description Any other notes and comments about the procedure. */ note?: IAnnotation[]; /** * @description A device that is implanted, removed or otherwise manipulated (calibration, battery replacement, fitting a prosthesis, attaching a wound-vac, etc.) as a focal portion of the Procedure. */ focalDevice?: IProcedureFocalDevice[]; /** * @description Identifies medications, devices and any other substance used as part of the procedure. */ usedReference?: IReference[]; /** * @description Identifies coded items that were used as part of the procedure. */ usedCode?: ICodeableConcept[]; /** * @description Returns a JSON representation of the model * @returns {Record<string, any>} */ toJson(): Record<string, any>; /** * @description Returns a string representation of the model * @returns {string} */ toString(): string; /** * @description Returns a pretty string representation of the model * @returns {string} */ toPrettyString(): string; /** * @description Returns a serialized string representation of the model * @returns {string} */ serialize(): string; /** * @description Validates the model * @returns {isValid: boolean, operationOutcome: IOperationOutcome} */ validate(): { isValid: boolean; operationOutcome: IOperationOutcome; }; constructor(args?: IProcedure); }