# Generated by the protocol buffer compiler.  DO NOT EDIT!
# Source: keyapis/subscription/v1/keyapis_subscription_offer_template_v1.proto for package 'Keyapis.Subscription.V1'
# Original file comments:
#
# Сервис реализует функционал управления Шаблонами КВ.
# Шаблон КВ описывает набор технологических планов и правила их применимости для массового создания КВ

require 'grpc'
require 'keyapis/subscription/v1/keyapis_subscription_offer_template_v1_pb'

module Keyapis
  module Subscription
    module V1
      module OfferTemplateService
        # Сервис Шаблонов КВ
        class Service

          include ::GRPC::GenericService

          self.marshal_class_method = :encode
          self.unmarshal_class_method = :decode
          self.service_name = 'keyapis.subscription.v1.OfferTemplateService'

          # Метод получения шаблона КВ.
          # Разрешения: subscription:offer_template:card.
          # Метод доступен для: Token: service, device_admin, ltp_first, admin, mrf, bti, manager. При наличии разрешений
          rpc :GetOfferTemplate, ::Keyapis::Subscription::V1::GetOfferTemplateRequest, ::Keyapis::Subscription::V1::GetOfferTemplateResponse
          # Метод получения списка шаблонов КВ.
          # Разрешения: subscription:offer_template:list.
          # Метод доступен для: Token: service, device_admin, ltp_first, admin, mrf, bti, manager. При наличии разрешений
          rpc :GetOfferTemplateList, ::Keyapis::Subscription::V1::GetOfferTemplateListRequest, stream(::Keyapis::Subscription::V1::GetOfferTemplateListResponse)
          # Метод получения списка Шаблонов КВ, соответствующих коммерческим возможностям дома.
          # По ОРПОН дома определяет фактически настроенные КВ и возвращает соответствующие им Шаблоны КВ.
          # Разрешения: subscription:offer_template:list.
          # Метод доступен для: Token: service, device_admin, ltp_first, admin, mrf, bti, manager. При наличии разрешений
          rpc :GetOfferTemplateByOrponList, ::Keyapis::Subscription::V1::GetOfferTemplateByOrponListRequest, stream(::Keyapis::Subscription::V1::GetOfferTemplateByOrponListResponse)
          # Метод получения количества шаблонов КВ.
          # Разрешения: subscription:offer_template:list.
          # Метод доступен для: Token: service, device_admin, ltp_first, admin, mrf, bti, manager. При наличии разрешений
          rpc :GetOfferTemplateCount, ::Keyapis::Subscription::V1::GetOfferTemplateCountRequest, ::Keyapis::Subscription::V1::GetOfferTemplateCountResponse
          # Метод получения количества Шаблонов КВ, соответствующих коммерческим возможностям дома.
          # По ОРПОН дома определяет фактически настроенные КВ и возвращает количество соответствующих им Шаблонов КВ.
          # Разрешения: subscription:offer_template:list.
          # Метод доступен для: Token: service, device_admin, ltp_first, admin, mrf, bti, manager. При наличии разрешений
          rpc :GetOfferTemplateByOrponCount, ::Keyapis::Subscription::V1::GetOfferTemplateByOrponCountRequest, ::Keyapis::Subscription::V1::GetOfferTemplateByOrponCountResponse
          # Метод создания/редактирования шаблона КВ.
          # При отсутствии идентификатора создаёт новый шаблон, при наличии — редактирует существующий.
          # Разрешения: subscription:offer_template:save.
          # Метод доступен для: Token: service, device_admin, ltp_first, admin, mrf, bti, manager. При наличии разрешений
          rpc :PostOfferTemplate, ::Keyapis::Subscription::V1::PostOfferTemplateRequest, ::Keyapis::Subscription::V1::PostOfferTemplateResponse
          # Метод архивации шаблона КВ.
          # Переводит шаблон в статус ARCHIVED.
          # Разрешения: subscription:offer_template:remove.
          # Метод доступен для: Token: service, device_admin, ltp_first, admin, mrf, bti, manager. При наличии разрешений
          rpc :DeleteOfferTemplate, ::Keyapis::Subscription::V1::DeleteOfferTemplateRequest, ::Keyapis::Subscription::V1::DeleteOfferTemplateResponse
          # Метод восстановления шаблона КВ из архива.
          # Переводит шаблон в статус ACTIVE.
          # Разрешения: subscription:offer_template:restore:save.
          # Метод доступен для: Token: service, device_admin, ltp_first, admin, mrf, bti, manager. При наличии разрешений
          rpc :PostOfferTemplateRestore, ::Keyapis::Subscription::V1::PostOfferTemplateRestoreRequest, ::Keyapis::Subscription::V1::PostOfferTemplateRestoreResponse
        end

        Stub = Service.rpc_stub_class
      end
    end
  end
end
