fhirbuilder
Version:
Another FHIR Tool to build FHIR Resources
40 lines (39 loc) • 1.45 kB
TypeScript
import { IElement, IPeriod, NameUseType } from 'fhirtypes/dist/r4';
import { HumanName } from '../../models';
import { IBuildable } from '../base/IBuildable';
import { UnderscoreKeys } from '../base/resource-type-map.interface';
import { ElementBuilder } from '../base/ElementBuilder';
type PrimitiveExtensionFields = keyof Pick<HumanName, UnderscoreKeys<HumanName>>;
interface IHumanNameBuilder extends IBuildable<HumanName> {
setUse(value: NameUseType): this;
setText(value: string): this;
setFamily(value: string): this;
addGiven(value: string): this;
addPrefix(value: string): this;
addSuffix(value: string): this;
/**
* Set period
* @param value
* @returns {HumanNameBuilder}
*/
setPeriod(value: IPeriod): this;
}
export declare class HumanNameBuilder extends ElementBuilder implements IHumanNameBuilder {
private readonly humanName;
constructor();
addPrimitiveExtension<T extends PrimitiveExtensionFields>(param: T, extension: T extends '_given' | '_prefix' | '_suffix' ? IElement[] : IElement): this;
setUse(value: NameUseType): this;
setText(value: string): this;
setFamily(value: string): this;
addGiven(value: string): this;
addPrefix(value: string): this;
addSuffix(value: string): this;
/**
* Set period
* @param value
* @returns {HumanNameBuilder}
*/
setPeriod(value: IPeriod): this;
build(): HumanName;
}
export {};