"""
Provide configuration for the :py:class:`betty.extension.Gramps` extension.
"""
from __future__ import annotations
from typing import Iterable, Any, Self, TYPE_CHECKING
from typing_extensions import override
from betty.config import Configuration, ConfigurationSequence
from betty.serde.dump import minimize, Dump, VoidableDump
from betty.serde.load import Asserter, Fields, RequiredField, Assertions, OptionalField
if TYPE_CHECKING:
from pathlib import Path
[docs]
class FamilyTreeConfiguration(Configuration):
"""
Configure a single Gramps family tree.
"""
[docs]
class FamilyTreeConfigurationSequence(ConfigurationSequence[FamilyTreeConfiguration]):
"""
Configure zero or more Gramps family trees.
"""
@override
@classmethod
def _item_type(cls) -> type[FamilyTreeConfiguration]:
return FamilyTreeConfiguration
[docs]
class GrampsConfiguration(Configuration):
"""
Provide configuration for the :py:class:`betty.extension.gramps.Gramps` extension.
"""