<?php

namespace MintyPHP\Service\Auth;

use MintyPHP\Service\Settings\SettingGateway;

class AuthSettingsGateway
{
    public function __construct(private readonly SettingGateway $settingGateway)
    {
    }

    public function getMicrosoftSharedClientId(): string
    {
        return (string) $this->settingGateway->getMicrosoftSharedClientId();
    }

    public function getMicrosoftSharedClientSecret(): string
    {
        return (string) $this->settingGateway->getMicrosoftSharedClientSecret();
    }

    public function getMicrosoftAuthority(): string
    {
        return (string) $this->settingGateway->getMicrosoftAuthority();
    }

    public function getApiTokenMaxTtlDays(): int
    {
        return $this->settingGateway->getApiTokenMaxTtlDays();
    }

    public function getApiTokenDefaultTtlDays(): int
    {
        return $this->settingGateway->getApiTokenDefaultTtlDays();
    }

    public function getAppTheme(): string
    {
        return (string) $this->settingGateway->getAppTheme();
    }

    public function getDefaultRoleId(): int
    {
        return (int) $this->settingGateway->getDefaultRoleId();
    }

    public function getDefaultDepartmentId(): int
    {
        return (int) $this->settingGateway->getDefaultDepartmentId();
    }
}
