UNPKG

fhirbuilder

Version:
64 lines (63 loc) 2.38 kB
import { ICodeableConcept, IElement } from 'fhirtypes/dist/r4'; import { CoverageClass } from '../../models'; import { BackboneBuilder, IBuildable } from '../base'; import { ExtractUnderscoreKeys } from '../../../core/commons/utils'; type PrimitiveExtensionFields = ExtractUnderscoreKeys<CoverageClass>; /** * @description Interface for chaining the building of a CoverageClass * @interface ICoverageClassBuilder * @extends {IBuildable<CoverageClass>} */ interface ICoverageClassBuilder extends IBuildable<CoverageClass> { setType(value: ICodeableConcept): this; setValue(value: string): this; setName(value: string): this; } /** * @version R4 (v4.0.1) * @summary FHIR® Specification by HL7® * @description Class for building a CoverageClass * @class CoverageClassBuilder * @extends {BackboneBuilder} * @implements {ICoverageClassBuilder} * @author Roberto Araneda Espinoza */ export declare class CoverageClassBuilder extends BackboneBuilder implements ICoverageClassBuilder { private readonly coverageClass; constructor(); /** * @description Adds a primitive extension to the element * @param param - the field to add the extension to * @param extension - the extension to add * @returns {this} * @example addPrimitiveExtension('_value', { value: 'test' }) */ addPrimitiveExtension(param: PrimitiveExtensionFields, extension: IElement): this; /** * @description Builds the model * @returns {CoverageClass} */ build(): CoverageClass; /** * @description Sets the type value * @description The type of classification for which an insurer-specific class label or number and optional name is provided, for example may be used to identify a class of coverage or employer group, Policy, Plan. * @param value - the value to set * @returns {this} */ setType(value: ICodeableConcept): this; /** * @description Sets the value value * @description The alphanumeric string value associated with the insurer issued label. * @param value - the value to set * @returns {this} */ setValue(value: string): this; /** * @description Sets the name value * @description A short description for the class. * @param value - the value to set * @returns {this} */ setName(value: string): this; } export {};