import { IElement, QuantityComparatorType } from 'fhirtypes/dist/r4';
import { Quantity } from '../../models';
import { IBuildable } from '../base/IBuildable';
import { UnderscoreKeys } from '../base/resource-type-map.interface';
import { ElementBuilder } from '../base/ElementBuilder';
type PrimitiveExtensionFields = keyof Pick<Quantity, UnderscoreKeys<Quantity>>;
interface IQuantityBuilder extends IBuildable<Quantity> {
    setCode(value: string): this;
    setSystem(value: string): this;
    setUnit(value: string): this;
    setValue(value: number): this;
    setComparator(value: QuantityComparatorType): this;
}
export declare class QuantityBuilder extends ElementBuilder implements IQuantityBuilder {
    private readonly quantity;
    constructor();
    addPrimitiveExtension(param: PrimitiveExtensionFields, extension: IElement): this;
    build(): Quantity;
    setCode(value: string): this;
    setComparator(value: QuantityComparatorType): this;
    setSystem(value: string): this;
    setUnit(value: string): this;
    setValue(value: number): this;
}
export {};
