import * as t from 'io-ts';
import { IMeta } from './RTTI_Meta';
import { IElement } from './RTTI_Element';
import { INarrative } from './RTTI_Narrative';
import { IResourceList } from '../Union/RTTI_ResourceList';
import { IExtension } from './RTTI_Extension';
import { IIdentifier } from './RTTI_Identifier';
import { ICodeableConcept } from './RTTI_CodeableConcept';
import { IReference } from './RTTI_Reference';
import { IPeriod } from './RTTI_Period';
import { IClaim_Related } from './RTTI_Claim_Related';
import { IClaim_Payee } from './RTTI_Claim_Payee';
import { IClaim_CareTeam } from './RTTI_Claim_CareTeam';
import { IClaim_SupportingInfo } from './RTTI_Claim_SupportingInfo';
import { IClaim_Diagnosis } from './RTTI_Claim_Diagnosis';
import { IClaim_Procedure } from './RTTI_Claim_Procedure';
import { IClaim_Insurance } from './RTTI_Claim_Insurance';
import { IClaim_Accident } from './RTTI_Claim_Accident';
import { IClaim_Item } from './RTTI_Claim_Item';
import { IMoney } from './RTTI_Money';
export declare enum ClaimUseKind {
    _claim = "claim",
    _preauthorization = "preauthorization",
    _predetermination = "predetermination"
}
import { IDomainResource } from './IDomainResource';
export interface IClaim extends IDomainResource {
    resourceType: 'Claim';
    type: ICodeableConcept;
    patient: IReference;
    provider: IReference;
    priority: ICodeableConcept;
    insurance: IClaim_Insurance[];
    id?: string;
    meta?: IMeta;
    implicitRules?: string;
    _implicitRules?: IElement;
    language?: string;
    _language?: IElement;
    text?: INarrative;
    contained?: IResourceList[];
    extension?: IExtension[];
    modifierExtension?: IExtension[];
    identifier?: IIdentifier[];
    status?: string;
    _status?: IElement;
    subType?: ICodeableConcept;
    use?: ClaimUseKind;
    _use?: IElement;
    billablePeriod?: IPeriod;
    created?: string;
    _created?: IElement;
    enterer?: IReference;
    insurer?: IReference;
    fundsReserve?: ICodeableConcept;
    related?: IClaim_Related[];
    prescription?: IReference;
    originalPrescription?: IReference;
    payee?: IClaim_Payee;
    referral?: IReference;
    facility?: IReference;
    careTeam?: IClaim_CareTeam[];
    supportingInfo?: IClaim_SupportingInfo[];
    diagnosis?: IClaim_Diagnosis[];
    procedure?: IClaim_Procedure[];
    accident?: IClaim_Accident;
    item?: IClaim_Item[];
    total?: IMoney;
}
export declare const RTTI_Claim: t.Type<IClaim>;
