fhirbuilder
Version:
Another FHIR Tool to build FHIR Resources
64 lines (63 loc) • 2.38 kB
TypeScript
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 {};