@iwharris/dicom-data-dictionary
Version:
Dictionary of DICOM data elements, built directly from the published standard at dicom.nema.org
80 lines (79 loc) • 1.97 kB
TypeScript
/**
* The revision of the data dictionary spec, eg. "2014a".
*/
export declare const revision: string;
/**
* Maps DICOM element keywords to their tag "(gggg,eeee)"
*/
export declare const tags: KeywordsMap;
/**
* Maps DICOM tags to DICOM element objects.
*/
export declare const elements: ElementsMap;
/**
* Get a DICOM Data Element either by tag or keyword.
*
* Tags in the following forms are accepted:
*
* (gggg,eeee)
* gggg,eeee
* (ggggeeee)
* ggggeeee
*
* @param key {string}
*
* @returns the DICOM Data Element if it exists; undefined otherwise
*/
export declare const get_element: (key: string) => DicomDataElement | undefined;
/**
* "A Data Element Tag is represented as "(gggg,eeee)", where gggg equates to the Group Number and
* eeee equates to the Element Number within that Group. Data Element Tags are represented in
* hexadecimal notation as specified for each named Data Element in this Standard."
*/
export declare type DicomTag = string;
/**
* Maps a DICOM data element's keyword to its tag "(gggg,eeee)".
*/
export interface KeywordsMap {
[key: string]: DicomTag;
}
/**
* Maps DICOM tags "(gggg,eeee)" to full DICOM data elements.
*/
export interface ElementsMap {
[key: string]: DicomDataElement;
}
/**
* Represents a single DICOM Data Element as defined in DICOM PS3.6.
*/
export interface DicomDataElement {
/**
* See the Tag type for details.
*/
tag: DicomTag;
/**
* Full name of the DICOM element.
*/
name: string;
/**
* The element name with all whitespace removed.
*/
keyword: string;
/**
* Value Representation.
*/
vr: string;
/**
* Value Multiplicity.
*/
vm: string;
/**
* Miscellaneous notes about the element.
*/
note: string;
/**
* True if the element is considered retired; see the note for
* the year that the element was retired (if applicable).
*/
isRetired: boolean;
}