@i4mi/fhir_ch
Version:
Selected resources from FHIR CH implementation guides as TypeScript interfaces.
72 lines (71 loc) • 2.45 kB
TypeScript
/**
* This file contains Interfaces for Implementation Guides from FHIR CH Core
* @see https://fhir.ch/ig/ch-core/index.html
*/
import { Patient, Identifier, HumanName, PatientAdministrativeGender, date, Bundle, BundleEntry, BundleType, instant, Resource, CodeableConcept, Reference, DocumentReference, DocumentReferenceContent, Attachment, Coding, code, url } from '@i4mi/fhir_r4';
/**
* This interface describes CH Core Patient EPR
* @see https://fhir.ch/ig/ch-core/StructureDefinition-ch-core-patient-epr.html
* @version 4.0.1
* @date 2023-12-05
*/
export interface CHPatientEPR extends Patient {
identifier: Identifier[];
name: HumanName[];
gender: PatientAdministrativeGender;
birthDate: date;
}
type CHDocumentEPRProfile = 'http://fhir.ch/ig/ch-core/StructureDefinition/ch-core-composition-epr' | string;
interface CHDocumentEPREntry extends BundleEntry {
fullUrl: string;
resource: Resource;
}
/**
* This interface describes CH Core Document EPR
* @see http://fhir.ch/ig/ch-core/StructureDefinition-ch-core-document-epr.html
* @version 4.0.1
* @date 2023-12-11
*/
export interface CHDocumentEPR extends Bundle {
resourceType: 'Bundle';
meta: {
profile: CHDocumentEPRProfile[];
};
type: BundleType.DOCUMENT;
timestamp: instant;
identifier: {
system: 'urn:ietf:rfc:3986';
value: string;
};
entry: CHDocumentEPREntry[];
}
type CHDocumentReferenceEPRProfile = 'http://fhir.ch/ig/ch-core/StructureDefinition/ch-core-documentreference-epr' | string;
interface CHDocumentReferenceEPRAttachment extends Attachment {
contentType: code;
language: code;
url: url;
}
interface CHDocumentReferenceEPRContent extends DocumentReferenceContent {
attachment: CHDocumentReferenceEPRAttachment;
format: Coding;
}
/**
* This interface describes CH Core DocumentReference EPR
* @see https://fhir.ch/ig/ch-core/StructureDefinition-ch-core-documentreference-epr.html
* @version 4.0.1
* @date 2023-12-12
*/
export interface CHDocumentReferenceEPR extends DocumentReference {
resourceType: 'DocumentReference';
meta: {
profile: CHDocumentReferenceEPRProfile[];
};
type: CodeableConcept;
category: CodeableConcept[];
subject: Reference;
timestamp: instant;
author: Reference[];
securityLabel: CodeableConcept[];
content: CHDocumentReferenceEPRContent[];
}
export {};