# -*- coding: utf-8 -*-

import dataclasses

from .ars_base import ARSBase
from .compat import cached_property
from .res_lib import Searcher


@dataclasses.dataclass
class ARS(ARSBase):  # pragma: no cover
    {%- for resource_type_snake, resource_type in tuples %}
    @cached_property
    def {{ resource_type_snake }}(self) -> Searcher:
        return self.get_searcher("{{ resource_type }}")
    {% endfor %}
