"""Settings for the Reporting Engine."""

from __future__ import annotations

from simorgh.apps.app_settings.registry import SettingDefinition, register_setting

REPORTING_MAX_EXPORT_ROWS = register_setting(
    SettingDefinition(
        key="reporting.max_export_rows",
        type="int",
        default=100_000,
        label_key="reporting.settings.max_export_rows",
        description_key="reporting.settings.max_export_rows.desc",
        scopes=("system", "tenant"),
    )
)

REPORTING_DEFAULT_PAGE_SIZE = register_setting(
    SettingDefinition(
        key="reporting.default_page_size",
        type="int",
        default=100,
        label_key="reporting.settings.default_page_size",
        description_key="reporting.settings.default_page_size.desc",
        scopes=("system", "tenant"),
    )
)

REPORTING_SCHEDULE_TIMEZONE = register_setting(
    SettingDefinition(
        key="reporting.schedule_timezone",
        type="str",
        default="UTC",
        label_key="reporting.settings.schedule_timezone",
        description_key="reporting.settings.schedule_timezone.desc",
        scopes=("system", "tenant", "org"),
    )
)

REPORTING_RETENTION_DAYS = register_setting(
    SettingDefinition(
        key="reporting.retention_days",
        type="int",
        default=90,
        label_key="reporting.settings.retention_days",
        description_key="reporting.settings.retention_days.desc",
        scopes=("system", "tenant"),
    )
)
