gedcom-ts
Version:
TypeScript GEDCOM toolkit for browser apps: import .ged/.zip, edit typed genealogy data, and export GEDCOM or GEDZIP.
35 lines (34 loc) • 1.4 kB
TypeScript
import { Act, Acts, type TypeAct } from "../commons/Act";
import { ActEdit } from "./ActEdit";
import { type CreateActInit } from "./factories";
/**
* API d’édition cohérente autour d’un {@link Acts}.
*/
export declare class ActsEdit {
private readonly target;
constructor(target: Acts);
get value(): Acts;
/**
* Crée un {@link Act}, l’ajoute en fin de liste et renvoie sa facade d’édition.
*/
addNew(type: TypeAct, init?: CreateActInit | null): ActEdit;
add(act: Parameters<Acts["add"]>[0]): this;
/** Insère un acte existant à la position donnée (0 = début). */
insertAt(index: number, act: Act): this;
/**
* Crée un acte et l’insère à la position donnée.
*/
insertNewAt(index: number, type: TypeAct, init?: CreateActInit | null): ActEdit;
/** Supprime le dernier acte s’il en existe au moins un. */
removeLast(): this;
/** Index de l’acte par identité de référence, ou `-1`. */
indexOfAct(act: Act): number;
/** Retire l’acte s’il appartient à la liste ; @returns si une entrée a été supprimée. */
removeAct(act: Act): boolean;
replaceAt(index: number, act: Parameters<Acts["updateFromIndex"]>[0]): this;
removeAt(index: number): this;
clear(): this;
sortByDate(): this;
at(index: number): ActEdit;
}
export declare function editActs(acts: Acts): ActsEdit;