import { Code } from '../../icc-api/model/Code'; export interface CodeChapter { code: string; descr: any; subCodes: string[]; } /** * Groups a list of ICD-10 codes by their corresponding ICD-10 chapter. * @param listOfCodes an array of ICD-10 code strings to classify into chapters. * @param icd10Data the ICD-10 chapter range data (keys like 'A00-B99', values are description objects). * @return a sorted array of chapter objects, each containing a code, description, and list of matching sub-codes. */ export declare function icdChapters(listOfCodes: string[], icd10Data: { [range: string]: any; }): CodeChapter[]; /** * Groups a list of ICPC-2 codes by their corresponding ICPC-2 chapter. * @param listOfCodes an array of ICPC-2 code strings to classify into chapters. * @param icpc2Data the ICPC-2 chapter data (keys are single letters, values are description objects). * @return a sorted array of chapter objects, each containing a code, description, and list of matching sub-codes. */ export declare function icpcChapters(listOfCodes: string[], icpc2Data: { [letter: string]: any; }): CodeChapter[]; /** * Normalizes the code's four main fields (type, code, version and id). The first three are considered to be * authoritative, while the id is a pure function of them. The authoritative fields are filled in from the id if * missing, or the version is set to '1' if it is the only missing authoritative field. The id is then rederived from * the three fields. * @param code The code to normalize. * @returns A shallow copy of the input with its type, code, version and id normalized. */ export declare function normalizeCode(code: Code): Code;