@startuml package "api_concept.entities/persmission_grant" { class PermissionGrantInterface { + object_type : str } } note left of PermissionGrantInterface::object_type Тип объекта выдаваемого доступа endnote package "api_concept.entities/maas" { class MaasOrganizationInterface { } } package "maas/api/impl/organization" { class MaasOrganization { } } package "api_concept.backend/impl/permission_grant" { class PermissionGrant { + find() } class ALL_OBJECT_TYPES { + items : list = ['camera', 'cashbox', 'face_gallery', 'folder'] } } package "utils/folder.tree" { class NodeType { + camera : Camera + cashbox : Cashbox + face_gallery : FaceGallery } } package "utils/folder.node"{ class Node class Camera class Cashbox class FaceGallery } note left of Node Базовый класс для концевых узлов дерева (объекты, содержащиеся в Folders) end note note right of PermissionGrant Метод поиска грантов (find) end note note top of ALL_OBJECT_TYPES Перечисление объектов, которые можно искать end note Node <|-- Camera Node <|-- Cashbox Node <|-- FaceGallery ALL_OBJECT_TYPES .. NodeType NodeType::camera .. Camera NodeType::cashbox .. Cashbox NodeType::face_gallery .. FaceGallery PermissionGrantInterface <|-- PermissionGrant MaasOrganizationInterface <|-- MaasOrganization @enduml