# -*- coding: utf-8 -*-
# Generated by the protocol buffer compiler. DO NOT EDIT!
# See https://github.com/eolymp/contracts/tree/main/cmd/protoc-gen-python-esdk for more details.
"""Generated protocol buffer code."""

from google.protobuf import symbol_database as _symbol_database

_sym_db = _symbol_database.Default()


class WorkspaceClient:
    def __init__(self, transport):
        self.transport = transport

    def DescribeProject(self, request, **kwargs):
        return self.transport.request(
            url="eolymp.workspace.Workspace/DescribeProject",
            request=request,
            response_obj=_sym_db.GetSymbol("eolymp.workspace.DescribeProjectOutput"),
            **kwargs,
        )

    def ListProjects(self, request, **kwargs):
        return self.transport.request(
            url="eolymp.workspace.Workspace/ListProjects",
            request=request,
            response_obj=_sym_db.GetSymbol("eolymp.workspace.ListProjectsOutput"),
            **kwargs,
        )

    def CreateProject(self, request, **kwargs):
        return self.transport.request(
            url="eolymp.workspace.Workspace/CreateProject",
            request=request,
            response_obj=_sym_db.GetSymbol("eolymp.workspace.CreateProjectOutput"),
            **kwargs,
        )

    def UpdateProject(self, request, **kwargs):
        return self.transport.request(
            url="eolymp.workspace.Workspace/UpdateProject",
            request=request,
            response_obj=_sym_db.GetSymbol("eolymp.workspace.UpdateProjectOutput"),
            **kwargs,
        )

    def DeleteProject(self, request, **kwargs):
        return self.transport.request(
            url="eolymp.workspace.Workspace/DeleteProject",
            request=request,
            response_obj=_sym_db.GetSymbol("eolymp.workspace.DeleteProjectOutput"),
            **kwargs,
        )

    def ListFiles(self, request, **kwargs):
        return self.transport.request(
            url="eolymp.workspace.Workspace/ListFiles",
            request=request,
            response_obj=_sym_db.GetSymbol("eolymp.workspace.ListFilesOutput"),
            **kwargs,
        )

    def DescribeFile(self, request, **kwargs):
        return self.transport.request(
            url="eolymp.workspace.Workspace/DescribeFile",
            request=request,
            response_obj=_sym_db.GetSymbol("eolymp.workspace.DescribeFileOutput"),
            **kwargs,
        )

    def UploadFile(self, request, **kwargs):
        return self.transport.request(
            url="eolymp.workspace.Workspace/UploadFile",
            request=request,
            response_obj=_sym_db.GetSymbol("eolymp.workspace.UploadFileOutput"),
            **kwargs,
        )

    def RemoveFile(self, request, **kwargs):
        return self.transport.request(
            url="eolymp.workspace.Workspace/RemoveFile",
            request=request,
            response_obj=_sym_db.GetSymbol("eolymp.workspace.RemoveFileOutput"),
            **kwargs,
        )

