gedcom-ts
Version:
TypeScript GEDCOM toolkit for browser apps: import .ged/.zip, edit typed genealogy data, and export GEDCOM or GEDZIP.
25 lines (24 loc) • 1.39 kB
TypeScript
import type { Person } from "../../commons/Person";
import type { PersonNameVariant } from "../../commons/PersonNameVariant";
export type ParsedPersonName = {
firstnames: string[];
lastname: string;
};
/** Retire les guillemets GEDCOM 7 (`"Jean Pierre"`) autour d’un segment de nom. */
export declare function sanitizeGedcomNameToken(value: string): string;
export declare function parsePersonName(rawName: string): ParsedPersonName;
/**
* Choisit la valeur `1 NAME` la plus pertinente : priorité au bloc avec `2 TYPE BIRTH`
* (GEDCOM 7 / noms multiples), sinon premier nom avec patronyme `/…/`, sinon le premier `NAME`.
*/
export declare function extractRawNameFromGedcomLines(lines: string[]): string | null;
/** Affichage lisible d’un bloc `1 NAME` (GIVN/SURN ou payload), sans guillemets GEDCOM. */
export declare function formatPersonNameFromVariant(variant: PersonNameVariant): string | null;
export declare function personNamePartsFromPerson(person: Person): {
given: string;
surname: string;
};
export declare function personDisplayName(person: Person): string;
export declare function personInitialsFromPerson(person: Person): string;
/** Même logique que {@link extractRawNameFromGedcomLines} appliquée aux blocs `NAME` déjà découpés. */
export declare function selectPrimaryNameVariant(variants: PersonNameVariant[]): PersonNameVariant | null;