import { IBuildable } from '../base/IBuildable';
import { Timing } from '../../models';
import { ICodeableConcept, IElement, IRepeat, ITiming } from 'fhirtypes/dist/r4';
import { UnderscoreKeys } from '../base/resource-type-map.interface';
import { BackboneBuilder } from '../base/BackboneBuilder';
type PrimitiveExtensionFields = keyof Pick<ITiming, UnderscoreKeys<ITiming>>;
interface ITimingBuilder extends IBuildable<Timing> {
    setRepeat(repeat: IRepeat): this;
    setCode(code: ICodeableConcept): this;
    addEvent(event: string): this;
}
export declare class TimingBuilder extends BackboneBuilder implements ITimingBuilder {
    private readonly timing;
    constructor();
    build(): Timing;
    setRepeat(repeat: IRepeat): this;
    setCode(code: ICodeableConcept): this;
    addEvent(event: string): this;
    addPrimitiveExtension(param: PrimitiveExtensionFields, extension: IElement): this;
}
export {};
