UNPKG

cql-execution

Version:

An execution framework for the Clinical Quality Language (CQL)

231 lines (159 loc) 6.12 kB
// Generated by CoffeeScript 1.9.3 (function() { var Address, Attachment, BackboneElement, CORE, CodeableConcept, Coding, ContactPoint, Coverage, DT, DomainResource, Element, ElementDefinition, Extension, HumanName, Identifier, Narrative, Parameters, Period, Quantity, Range, Ratio, Reference, Resource, SampledData, Timing, extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; }, hasProp = {}.hasOwnProperty; DT = require('../cql-datatypes'); CORE = require('./core'); Element = CORE.Element; Resource = CORE.Resource; Timing = CORE.Timing; Period = CORE.Period; Parameters = CORE.Parameters; Coding = CORE.Coding; Resource = CORE.Resource; Range = CORE.Range; Quantity = CORE.Quantity; Attachment = CORE.Attachment; BackboneElement = CORE.BackboneElement; DomainResource = CORE.DomainResource; ContactPoint = CORE.ContactPoint; ElementDefinition = CORE.ElementDefinition; Extension = CORE.Extension; HumanName = CORE.HumanName; Address = CORE.Address; Ratio = CORE.Ratio; SampledData = CORE.SampledData; Reference = CORE.Reference; CodeableConcept = CORE.CodeableConcept; Identifier = CORE.Identifier; Narrative = CORE.Narrative; Element = CORE.Element; /** Financial instrument which may be used to pay for or reimburse for health care products and services. @class Coverage @exports Coverage as Coverage */ Coverage = (function(superClass) { extend(Coverage, superClass); function Coverage(json) { this.json = json; Coverage.__super__.constructor.call(this, this.json); } /** The program or plan underwriter or payor. @returns {Reference} */ Coverage.prototype.issuer = function() { if (this.json['issuer']) { return new Reference(this.json['issuer']); } }; /** Time period during which the coverage is in force. A missing start date indicates the start date isn't known, a missing end date means the coverage is continuing to be in force. @returns {Period} */ Coverage.prototype.period = function() { if (this.json['period']) { return new Period(this.json['period']); } }; /** The type of coverage: social program, medical plan, accident coverage (workers compensation, auto), group health. @returns {Coding} */ Coverage.prototype.type = function() { if (this.json['type']) { return new Coding(this.json['type']); } }; /** The main (and possibly only) identifier for the coverage - often referred to as a Subscriber Id, Certificate number or Personal Health Number or Case ID. @returns {Array} an array of {@link Identifier} objects */ Coverage.prototype.identifier = function() { var i, item, len, ref, results; if (this.json['identifier']) { ref = this.json['identifier']; results = []; for (i = 0, len = ref.length; i < len; i++) { item = ref[i]; results.push(new Identifier(item)); } return results; } }; /** Identifies a style or collective of coverage issues by the underwriter, for example may be used to identify a class of coverage or employer group. May also be referred to as a Policy or Group ID. @returns {Array} an array of {@link String} objects */ Coverage.prototype.group = function() { return this.json['group']; }; /** Identifies a style or collective of coverage issues by the underwriter, for example may be used to identify a class of coverage or employer group. May also be referred to as a Policy or Group ID. @returns {Array} an array of {@link String} objects */ Coverage.prototype.plan = function() { return this.json['plan']; }; /** Identifies a sub-style or sub-collective of coverage issues by the underwriter, for example may be used to identify a specific employer group within a class of employers. May be referred to as a Section or Division ID. @returns {Array} an array of {@link String} objects */ Coverage.prototype.subplan = function() { return this.json['subplan']; }; /** A unique identifier for a dependent under the coverage. @returns {Array} an array of {@link Number} objects */ Coverage.prototype.dependent = function() { return this.json['dependent']; }; /** An optional counter for a particular instance of the identified coverage which increments upon each renewal. @returns {Array} an array of {@link Number} objects */ Coverage.prototype.sequence = function() { return this.json['sequence']; }; /** The party who 'owns' the insurance contractual relationship to the policy or to whom the benefit of the policy is due. @returns {Reference} */ Coverage.prototype.subscriber = function() { if (this.json['subscriber']) { return new Reference(this.json['subscriber']); } }; /** The identifier for a community of providers. @returns {Identifier} */ Coverage.prototype.network = function() { if (this.json['network']) { return new Identifier(this.json['network']); } }; /** The policy(s) which constitute this insurance coverage. @returns {Array} an array of {@link Reference} objects */ Coverage.prototype.contract = function() { var i, item, len, ref, results; if (this.json['contract']) { ref = this.json['contract']; results = []; for (i = 0, len = ref.length; i < len; i++) { item = ref[i]; results.push(new Reference(item)); } return results; } }; return Coverage; })(DomainResource); module.exports.Coverage = Coverage; }).call(this); //# sourceMappingURL=coverage.js.map