UNPKG

gedcom-ts

Version:

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

30 lines (29 loc) 1.73 kB
import type { ReadGed } from "../import/ReadGed"; import type { TypeAct } from "../commons/Act"; import { Person } from "../commons/Person"; import type { CreateActInit } from "../edit/factories"; /** Prochain identifiant de famille `F` libre d'après les `FAMC` / `FAMS` du jeu. */ export declare function nextFamilyId(persons: readonly Person[]): number; /** Rattache un enfant à une famille (`FAMC`). */ export declare function linkChildToFamily(readGed: ReadGed, child: Person, familyId: number): void; /** Retire le rattachement `FAMC` d'un enfant. */ export declare function unlinkChildFromFamily(readGed: ReadGed, child: Person): void; /** * Retire toutes les références à une famille `familyId` : `FAMS` (toutes occurrences) et `FAMC` si égal. * Puis {@link ReadGed.groupPartners}. */ export declare function removeFamilyReferencesFromDataset(readGed: ReadGed, familyId: number): void; export type CreateUnionFamilyOptions = { /** * Type d’acte créé sur chaque conjoint pour matérialiser l’union (défaut : {@link Identifier.MARR}). * Doit appartenir à {@link GEDCOM_7_EVENT_TAG_SET} (ex. {@link Identifier.ENGA}, ou `EVEN` avec * `CreateActInit.construction` pour une union civile / custom). */ eventTag?: TypeAct; }; /** * Crée une famille `F` (nouvel id), rattache les deux conjoints en `FAMS` et ajoute le même type d’acte * sur chacun (par défaut `MARR`). Voir {@link CreateUnionFamilyOptions} pour fiançailles, bans, etc. * @returns l'identifiant interne de famille créé. */ export declare function createMarriageFamily(readGed: ReadGed, spouseA: Person, spouseB: Person, init?: CreateActInit | null, unionOptions?: CreateUnionFamilyOptions | null): number;