UNPKG

gedcom-ts

Version:

TypeScript GEDCOM toolkit for browser apps: import .ged/.zip, edit typed genealogy data, and export GEDCOM or GEDZIP.

86 lines (85 loc) 3.5 kB
import { Person } from '../commons/Person'; import type { ObjeRecord } from "../commons/ObjeRecord"; /** Options d’export `.ged` / `.zip` (round-trip partiel avec {@link ReadGed.preservedTopLevelRecords}). */ export type GedcomExportOptions = { /** Blocs `0 …` à recoller avant `SUBM` / `TRLR` (ex. `readGed.preservedTopLevelRecords`). */ extraTopLevelRecords?: readonly string[] | null; /** Enregistrements `OBJE` complets (ex. `readGed.objeRecordsById`) pour multi-`FILE` / `MEDI` / `TRAN`. */ objeRecordsById?: ReadonlyMap<number, ObjeRecord> | null; /** Balise BCP 47 pour `1 LANG` sous `HEAD` (défaut `en-US`). */ headLanguageTag?: string | null; /** Texte `1 COPR` sous `HEAD` (copyright / mention légale), une ligne logique. */ headCopyright?: string | null; /** * Définitions d’extensions `HEAD`.`SCHMA` (`2 TAG …`), ex. `{ tag: "_FOO", uri: "https://…" }`. * Les tags sont émis tels quels (GEDCOM 7 : souvent préfixe `_`). */ headSchemaTagDefs?: readonly { readonly tag: string; readonly uri: string; }[] | null; /** * Valeur `1 DEST` sous `HEAD` (URI ou identifiant d’application cible, ex. `https://gedcom.io/`). */ headDestination?: string | null; /** Rapport d’avancement import / export (0–100 %). */ onProgress?: import("../utils/gedcom/transferProgress").GedcomTransferProgressCallback; }; declare class GEDCOM { protected title: string; protected persons: Array<Person>; protected onCreate: number; private haveFiles; protected readonly exportOptions: GedcomExportOptions; constructor(title: string | undefined, persons: Array<Person>, haveFiles: boolean, exportOptions?: GedcomExportOptions | null); private get beginGedcom(); private get defaultSubmitterRecord(); /** Enregistrements `OBJE` pour les médias avec {@link MultimediaFile.objeXrefId}. */ private collectObjeRecords; private joinExtraTopLevelRecords; private get contentGedcom(); gedcomBlob(): Blob; } export declare class ExportGedzipFile extends GEDCOM { constructor(...args: [Person[]] | [string, Person[]] | [Person[], GedcomExportOptions] | [string, Person[], GedcomExportOptions]); gedzipBlob(): Promise<Blob>; download(): Promise<void>; private collectGedzipMediaEntries; private resolvePersonIndi; private resolveActIndis; private resolveZipPath; } export declare class ExportGedcomFile extends GEDCOM { constructor(...args: [Person[]] | [string, Person[]] | [Person[], GedcomExportOptions] | [string, Person[], GedcomExportOptions]); download(): void; } export declare class FamilyLine { private readonly persons; private readonly haveFiles; private informationFamilies; constructor(persons: Person[], haveFiles: boolean); lines(): string; private setInformationFamilies; } export declare class PersonLine { private readonly INDI; private readonly NAME; private readonly SEX; private readonly ATTRS; private readonly FAMS; private readonly FAMC; private readonly FILES; private readonly ACTS; private readonly NOTES; private readonly haveFiles; constructor(person: Person, haveFiles: boolean, allPersons: readonly Person[]); line(): string; private getIndi; private getName; private getIndiAttributes; private getSex; private buildPersonMultimediaLines; private getFams; private getFamc; } export {};