. */ declare(strict_types=1); namespace Fisharebest\Webtrees\Contracts; /** * Make a GEDCOM primitive element. */ interface ElementFactoryInterface { /** * Create a GEDCOM primitive object. * * @param string $tag * * @return ElementInterface */ public function make(string $tag): ElementInterface; /** * Register GEDCOM tags. * * @param array $elements */ public function registerTags(array $elements): void; /** * Register more subtags. * * @param array>> $subtags */ public function registerSubTags(array $subtags): void; }