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 { IReference } from './RTTI_Reference';
import { IQuantity } from './RTTI_Quantity';
import { IMolecularSequence_ReferenceSeq } from './RTTI_MolecularSequence_ReferenceSeq';
import { IMolecularSequence_Variant } from './RTTI_MolecularSequence_Variant';
import { IMolecularSequence_Quality } from './RTTI_MolecularSequence_Quality';
import { IMolecularSequence_Repository } from './RTTI_MolecularSequence_Repository';
import { IMolecularSequence_StructureVariant } from './RTTI_MolecularSequence_StructureVariant';
export declare enum MolecularSequenceTypeKind {
    _aa = "aa",
    _dna = "dna",
    _rna = "rna"
}
import { IDomainResource } from './IDomainResource';
export interface IMolecularSequence extends IDomainResource {
    resourceType: 'MolecularSequence';
    id?: string;
    meta?: IMeta;
    implicitRules?: string;
    _implicitRules?: IElement;
    language?: string;
    _language?: IElement;
    text?: INarrative;
    contained?: IResourceList[];
    extension?: IExtension[];
    modifierExtension?: IExtension[];
    identifier?: IIdentifier[];
    type?: MolecularSequenceTypeKind;
    _type?: IElement;
    coordinateSystem?: number;
    _coordinateSystem?: IElement;
    patient?: IReference;
    specimen?: IReference;
    device?: IReference;
    performer?: IReference;
    quantity?: IQuantity;
    referenceSeq?: IMolecularSequence_ReferenceSeq;
    variant?: IMolecularSequence_Variant[];
    observedSeq?: string;
    _observedSeq?: IElement;
    quality?: IMolecularSequence_Quality[];
    readCoverage?: number;
    _readCoverage?: IElement;
    repository?: IMolecularSequence_Repository[];
    pointer?: IReference[];
    structureVariant?: IMolecularSequence_StructureVariant[];
}
export declare const RTTI_MolecularSequence: t.Type<IMolecularSequence>;
