# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
"""Client and server classes corresponding to protobuf-defined services."""
import grpc

from agent.agent.v1alpha import agent_pb2 as agent_dot_agent_dot_v1alpha_dot_agent__pb2
from agent.agent.v1alpha import chat_pb2 as agent_dot_agent_dot_v1alpha_dot_chat__pb2
from agent.agent.v1alpha import table_pb2 as agent_dot_agent_dot_v1alpha_dot_table__pb2


class AgentPublicServiceStub(object):
    """AgentPublicService exposes the public endpoints that allow clients to
    manage agents.
    """

    def __init__(self, channel):
        """Constructor.

        Args:
            channel: A grpc.Channel.
        """
        self.Liveness = channel.unary_unary(
                '/agent.agent.v1alpha.AgentPublicService/Liveness',
                request_serializer=agent_dot_agent_dot_v1alpha_dot_agent__pb2.LivenessRequest.SerializeToString,
                response_deserializer=agent_dot_agent_dot_v1alpha_dot_agent__pb2.LivenessResponse.FromString,
                )
        self.Readiness = channel.unary_unary(
                '/agent.agent.v1alpha.AgentPublicService/Readiness',
                request_serializer=agent_dot_agent_dot_v1alpha_dot_agent__pb2.ReadinessRequest.SerializeToString,
                response_deserializer=agent_dot_agent_dot_v1alpha_dot_agent__pb2.ReadinessResponse.FromString,
                )
        self.CreateChat = channel.unary_unary(
                '/agent.agent.v1alpha.AgentPublicService/CreateChat',
                request_serializer=agent_dot_agent_dot_v1alpha_dot_chat__pb2.CreateChatRequest.SerializeToString,
                response_deserializer=agent_dot_agent_dot_v1alpha_dot_chat__pb2.CreateChatResponse.FromString,
                )
        self.ListChats = channel.unary_unary(
                '/agent.agent.v1alpha.AgentPublicService/ListChats',
                request_serializer=agent_dot_agent_dot_v1alpha_dot_chat__pb2.ListChatsRequest.SerializeToString,
                response_deserializer=agent_dot_agent_dot_v1alpha_dot_chat__pb2.ListChatsResponse.FromString,
                )
        self.UpdateChat = channel.unary_unary(
                '/agent.agent.v1alpha.AgentPublicService/UpdateChat',
                request_serializer=agent_dot_agent_dot_v1alpha_dot_chat__pb2.UpdateChatRequest.SerializeToString,
                response_deserializer=agent_dot_agent_dot_v1alpha_dot_chat__pb2.UpdateChatResponse.FromString,
                )
        self.GetChat = channel.unary_unary(
                '/agent.agent.v1alpha.AgentPublicService/GetChat',
                request_serializer=agent_dot_agent_dot_v1alpha_dot_chat__pb2.GetChatRequest.SerializeToString,
                response_deserializer=agent_dot_agent_dot_v1alpha_dot_chat__pb2.GetChatResponse.FromString,
                )
        self.DeleteChat = channel.unary_unary(
                '/agent.agent.v1alpha.AgentPublicService/DeleteChat',
                request_serializer=agent_dot_agent_dot_v1alpha_dot_chat__pb2.DeleteChatRequest.SerializeToString,
                response_deserializer=agent_dot_agent_dot_v1alpha_dot_chat__pb2.DeleteChatResponse.FromString,
                )
        self.ListMessages = channel.unary_unary(
                '/agent.agent.v1alpha.AgentPublicService/ListMessages',
                request_serializer=agent_dot_agent_dot_v1alpha_dot_chat__pb2.ListMessagesRequest.SerializeToString,
                response_deserializer=agent_dot_agent_dot_v1alpha_dot_chat__pb2.ListMessagesResponse.FromString,
                )
        self.ChatWithAgent = channel.unary_stream(
                '/agent.agent.v1alpha.AgentPublicService/ChatWithAgent',
                request_serializer=agent_dot_agent_dot_v1alpha_dot_chat__pb2.ChatWithAgentRequest.SerializeToString,
                response_deserializer=agent_dot_agent_dot_v1alpha_dot_chat__pb2.ChatWithAgentResponse.FromString,
                )
        self.BindChatTable = channel.unary_unary(
                '/agent.agent.v1alpha.AgentPublicService/BindChatTable',
                request_serializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.BindChatTableRequest.SerializeToString,
                response_deserializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.BindChatTableResponse.FromString,
                )
        self.UnbindChatTable = channel.unary_unary(
                '/agent.agent.v1alpha.AgentPublicService/UnbindChatTable',
                request_serializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.UnbindChatTableRequest.SerializeToString,
                response_deserializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.UnbindChatTableResponse.FromString,
                )
        self.ListChatTables = channel.unary_unary(
                '/agent.agent.v1alpha.AgentPublicService/ListChatTables',
                request_serializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.ListChatTablesRequest.SerializeToString,
                response_deserializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.ListChatTablesResponse.FromString,
                )
        self.ListTables = channel.unary_unary(
                '/agent.agent.v1alpha.AgentPublicService/ListTables',
                request_serializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.ListTablesRequest.SerializeToString,
                response_deserializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.ListTablesResponse.FromString,
                )
        self.CreateTable = channel.unary_unary(
                '/agent.agent.v1alpha.AgentPublicService/CreateTable',
                request_serializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.CreateTableRequest.SerializeToString,
                response_deserializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.CreateTableResponse.FromString,
                )
        self.GetTable = channel.unary_unary(
                '/agent.agent.v1alpha.AgentPublicService/GetTable',
                request_serializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.GetTableRequest.SerializeToString,
                response_deserializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.GetTableResponse.FromString,
                )
        self.UpdateTable = channel.unary_unary(
                '/agent.agent.v1alpha.AgentPublicService/UpdateTable',
                request_serializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.UpdateTableRequest.SerializeToString,
                response_deserializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.UpdateTableResponse.FromString,
                )
        self.DeleteTable = channel.unary_unary(
                '/agent.agent.v1alpha.AgentPublicService/DeleteTable',
                request_serializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.DeleteTableRequest.SerializeToString,
                response_deserializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.DeleteTableResponse.FromString,
                )
        self.ChatWithTableBuilderAgent = channel.unary_stream(
                '/agent.agent.v1alpha.AgentPublicService/ChatWithTableBuilderAgent',
                request_serializer=agent_dot_agent_dot_v1alpha_dot_chat__pb2.ChatWithTableBuilderAgentRequest.SerializeToString,
                response_deserializer=agent_dot_agent_dot_v1alpha_dot_chat__pb2.ChatWithTableBuilderAgentResponse.FromString,
                )
        self.ListTableBuilderAgentMessages = channel.unary_unary(
                '/agent.agent.v1alpha.AgentPublicService/ListTableBuilderAgentMessages',
                request_serializer=agent_dot_agent_dot_v1alpha_dot_chat__pb2.ListTableBuilderAgentMessagesRequest.SerializeToString,
                response_deserializer=agent_dot_agent_dot_v1alpha_dot_chat__pb2.ListTableBuilderAgentMessagesResponse.FromString,
                )
        self.GetColumnDefinitions = channel.unary_unary(
                '/agent.agent.v1alpha.AgentPublicService/GetColumnDefinitions',
                request_serializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.GetColumnDefinitionsRequest.SerializeToString,
                response_deserializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.GetColumnDefinitionsResponse.FromString,
                )
        self.UpdateColumnDefinitions = channel.unary_unary(
                '/agent.agent.v1alpha.AgentPublicService/UpdateColumnDefinitions',
                request_serializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.UpdateColumnDefinitionsRequest.SerializeToString,
                response_deserializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.UpdateColumnDefinitionsResponse.FromString,
                )
        self.GetColumnDefinition = channel.unary_unary(
                '/agent.agent.v1alpha.AgentPublicService/GetColumnDefinition',
                request_serializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.GetColumnDefinitionRequest.SerializeToString,
                response_deserializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.GetColumnDefinitionResponse.FromString,
                )
        self.RecomputeColumn = channel.unary_unary(
                '/agent.agent.v1alpha.AgentPublicService/RecomputeColumn',
                request_serializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.RecomputeColumnRequest.SerializeToString,
                response_deserializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.RecomputeColumnResponse.FromString,
                )
        self.ListRows = channel.unary_unary(
                '/agent.agent.v1alpha.AgentPublicService/ListRows',
                request_serializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.ListRowsRequest.SerializeToString,
                response_deserializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.ListRowsResponse.FromString,
                )
        self.GetRow = channel.unary_unary(
                '/agent.agent.v1alpha.AgentPublicService/GetRow',
                request_serializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.GetRowRequest.SerializeToString,
                response_deserializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.GetRowResponse.FromString,
                )
        self.InsertRow = channel.unary_unary(
                '/agent.agent.v1alpha.AgentPublicService/InsertRow',
                request_serializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.InsertRowRequest.SerializeToString,
                response_deserializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.InsertRowResponse.FromString,
                )
        self.UpdateRow = channel.unary_unary(
                '/agent.agent.v1alpha.AgentPublicService/UpdateRow',
                request_serializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.UpdateRowRequest.SerializeToString,
                response_deserializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.UpdateRowResponse.FromString,
                )
        self.UpdateRows = channel.unary_unary(
                '/agent.agent.v1alpha.AgentPublicService/UpdateRows',
                request_serializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.UpdateRowsRequest.SerializeToString,
                response_deserializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.UpdateRowsResponse.FromString,
                )
        self.DeleteRow = channel.unary_unary(
                '/agent.agent.v1alpha.AgentPublicService/DeleteRow',
                request_serializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.DeleteRowRequest.SerializeToString,
                response_deserializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.DeleteRowResponse.FromString,
                )
        self.DeleteRows = channel.unary_unary(
                '/agent.agent.v1alpha.AgentPublicService/DeleteRows',
                request_serializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.DeleteRowsRequest.SerializeToString,
                response_deserializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.DeleteRowsResponse.FromString,
                )
        self.MoveRows = channel.unary_unary(
                '/agent.agent.v1alpha.AgentPublicService/MoveRows',
                request_serializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.MoveRowsRequest.SerializeToString,
                response_deserializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.MoveRowsResponse.FromString,
                )
        self.GetCell = channel.unary_unary(
                '/agent.agent.v1alpha.AgentPublicService/GetCell',
                request_serializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.GetCellRequest.SerializeToString,
                response_deserializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.GetCellResponse.FromString,
                )
        self.UpdateCell = channel.unary_unary(
                '/agent.agent.v1alpha.AgentPublicService/UpdateCell',
                request_serializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.UpdateCellRequest.SerializeToString,
                response_deserializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.UpdateCellResponse.FromString,
                )
        self.ResetCell = channel.unary_unary(
                '/agent.agent.v1alpha.AgentPublicService/ResetCell',
                request_serializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.ResetCellRequest.SerializeToString,
                response_deserializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.ResetCellResponse.FromString,
                )
        self.RecomputeCell = channel.unary_unary(
                '/agent.agent.v1alpha.AgentPublicService/RecomputeCell',
                request_serializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.RecomputeCellRequest.SerializeToString,
                response_deserializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.RecomputeCellResponse.FromString,
                )
        self.LockCell = channel.unary_unary(
                '/agent.agent.v1alpha.AgentPublicService/LockCell',
                request_serializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.LockCellRequest.SerializeToString,
                response_deserializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.LockCellResponse.FromString,
                )
        self.UnlockCell = channel.unary_unary(
                '/agent.agent.v1alpha.AgentPublicService/UnlockCell',
                request_serializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.UnlockCellRequest.SerializeToString,
                response_deserializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.UnlockCellResponse.FromString,
                )
        self.GetTableEvents = channel.unary_stream(
                '/agent.agent.v1alpha.AgentPublicService/GetTableEvents',
                request_serializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.GetTableEventsRequest.SerializeToString,
                response_deserializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.GetTableEventsResponse.FromString,
                )
        self.ExportTable = channel.unary_unary(
                '/agent.agent.v1alpha.AgentPublicService/ExportTable',
                request_serializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.ExportTableRequest.SerializeToString,
                response_deserializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.ExportTableResponse.FromString,
                )


class AgentPublicServiceServicer(object):
    """AgentPublicService exposes the public endpoints that allow clients to
    manage agents.
    """

    def Liveness(self, request, context):
        """Check if the agent server is alive

        See https://github.com/grpc/grpc/blob/master/doc/health-checking.md.
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def Readiness(self, request, context):
        """Check if the agent server is ready

        See https://github.com/grpc/grpc/blob/master/doc/health-checking.md
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def CreateChat(self, request, context):
        """Create a chat

        Creates a chat.
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def ListChats(self, request, context):
        """List chats

        Returns a list of chats.
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def UpdateChat(self, request, context):
        """Update a chat

        Updates a chat.
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GetChat(self, request, context):
        """Get a chat

        Gets a chat.
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def DeleteChat(self, request, context):
        """Delete a chat

        Deletes a chat.
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def ListMessages(self, request, context):
        """List messages

        Returns a paginated list of messages.
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def ChatWithAgent(self, request, context):
        """Chat with agent

        Chat with the agent.
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def BindChatTable(self, request, context):
        """Bind table to chat

        Binds a table to a chat.
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def UnbindChatTable(self, request, context):
        """Unbind table from chat

        Unbinds a table from a chat.
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def ListChatTables(self, request, context):
        """List chat tables

        Returns a list of tables bound to a chat.
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def ListTables(self, request, context):
        """List tables

        Returns a paginated list of tables.
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def CreateTable(self, request, context):
        """Create a table

        Creates a table.
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GetTable(self, request, context):
        """Get table

        Gets a table.
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def UpdateTable(self, request, context):
        """Update table

        Updates a table.
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def DeleteTable(self, request, context):
        """Delete table

        Deletes a table.
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def ChatWithTableBuilderAgent(self, request, context):
        """Chat with table builder agent

        Chat with the table builder agent.
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def ListTableBuilderAgentMessages(self, request, context):
        """List table builder agent messages

        Lists the messages from the table builder agent.
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GetColumnDefinitions(self, request, context):
        """Get column definitions

        Gets column definitions for a table.
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def UpdateColumnDefinitions(self, request, context):
        """Update column definitions

        Updates column definitions for a table. When updating the column
        definitions, if the column's agent instructions are updated, the existing
        cells in that column will be cleared and recomputed. This ensures that all
        data reflects the latest instructions.
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GetColumnDefinition(self, request, context):
        """Get column definition

        Gets a column definition for a table.
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def RecomputeColumn(self, request, context):
        """Recompute column

        Recomputes all the cells in a column.
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def ListRows(self, request, context):
        """List rows

        Returns list of rows.
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GetRow(self, request, context):
        """Get row

        Gets a row from a table.
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def InsertRow(self, request, context):
        """Insert row

        Inserts a row into a table.
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def UpdateRow(self, request, context):
        """Update row

        Updates a row in a table.
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def UpdateRows(self, request, context):
        """Update rows

        Updates multiple rows in a table.
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def DeleteRow(self, request, context):
        """Delete row

        Deletes a row from a table.
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def DeleteRows(self, request, context):
        """Delete rows

        Deletes multiple rows from a table.
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def MoveRows(self, request, context):
        """Move row

        Moves a row to a new position in a table.
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GetCell(self, request, context):
        """Get cell

        Gets a cell from a table.
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def UpdateCell(self, request, context):
        """Update cell

        Updates a cell in a table.
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def ResetCell(self, request, context):
        """Reset cell

        Resets a cell in a table. Resetting a cell clears its user input and
        reverts to using the computed value if available. This operation only
        affects cells that have a user input set.
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def RecomputeCell(self, request, context):
        """Recompute cell

        Recomputes a cell in a table.
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def LockCell(self, request, context):
        """Lock cell

        Locks a cell in a table.
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def UnlockCell(self, request, context):
        """Unlock cell

        Unlocks a cell in a table.
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GetTableEvents(self, request, context):
        """Get table events

        Returns a list of events for a table.
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def ExportTable(self, request, context):
        """Export table

        Exports table data.
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')


def add_AgentPublicServiceServicer_to_server(servicer, server):
    rpc_method_handlers = {
            'Liveness': grpc.unary_unary_rpc_method_handler(
                    servicer.Liveness,
                    request_deserializer=agent_dot_agent_dot_v1alpha_dot_agent__pb2.LivenessRequest.FromString,
                    response_serializer=agent_dot_agent_dot_v1alpha_dot_agent__pb2.LivenessResponse.SerializeToString,
            ),
            'Readiness': grpc.unary_unary_rpc_method_handler(
                    servicer.Readiness,
                    request_deserializer=agent_dot_agent_dot_v1alpha_dot_agent__pb2.ReadinessRequest.FromString,
                    response_serializer=agent_dot_agent_dot_v1alpha_dot_agent__pb2.ReadinessResponse.SerializeToString,
            ),
            'CreateChat': grpc.unary_unary_rpc_method_handler(
                    servicer.CreateChat,
                    request_deserializer=agent_dot_agent_dot_v1alpha_dot_chat__pb2.CreateChatRequest.FromString,
                    response_serializer=agent_dot_agent_dot_v1alpha_dot_chat__pb2.CreateChatResponse.SerializeToString,
            ),
            'ListChats': grpc.unary_unary_rpc_method_handler(
                    servicer.ListChats,
                    request_deserializer=agent_dot_agent_dot_v1alpha_dot_chat__pb2.ListChatsRequest.FromString,
                    response_serializer=agent_dot_agent_dot_v1alpha_dot_chat__pb2.ListChatsResponse.SerializeToString,
            ),
            'UpdateChat': grpc.unary_unary_rpc_method_handler(
                    servicer.UpdateChat,
                    request_deserializer=agent_dot_agent_dot_v1alpha_dot_chat__pb2.UpdateChatRequest.FromString,
                    response_serializer=agent_dot_agent_dot_v1alpha_dot_chat__pb2.UpdateChatResponse.SerializeToString,
            ),
            'GetChat': grpc.unary_unary_rpc_method_handler(
                    servicer.GetChat,
                    request_deserializer=agent_dot_agent_dot_v1alpha_dot_chat__pb2.GetChatRequest.FromString,
                    response_serializer=agent_dot_agent_dot_v1alpha_dot_chat__pb2.GetChatResponse.SerializeToString,
            ),
            'DeleteChat': grpc.unary_unary_rpc_method_handler(
                    servicer.DeleteChat,
                    request_deserializer=agent_dot_agent_dot_v1alpha_dot_chat__pb2.DeleteChatRequest.FromString,
                    response_serializer=agent_dot_agent_dot_v1alpha_dot_chat__pb2.DeleteChatResponse.SerializeToString,
            ),
            'ListMessages': grpc.unary_unary_rpc_method_handler(
                    servicer.ListMessages,
                    request_deserializer=agent_dot_agent_dot_v1alpha_dot_chat__pb2.ListMessagesRequest.FromString,
                    response_serializer=agent_dot_agent_dot_v1alpha_dot_chat__pb2.ListMessagesResponse.SerializeToString,
            ),
            'ChatWithAgent': grpc.unary_stream_rpc_method_handler(
                    servicer.ChatWithAgent,
                    request_deserializer=agent_dot_agent_dot_v1alpha_dot_chat__pb2.ChatWithAgentRequest.FromString,
                    response_serializer=agent_dot_agent_dot_v1alpha_dot_chat__pb2.ChatWithAgentResponse.SerializeToString,
            ),
            'BindChatTable': grpc.unary_unary_rpc_method_handler(
                    servicer.BindChatTable,
                    request_deserializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.BindChatTableRequest.FromString,
                    response_serializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.BindChatTableResponse.SerializeToString,
            ),
            'UnbindChatTable': grpc.unary_unary_rpc_method_handler(
                    servicer.UnbindChatTable,
                    request_deserializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.UnbindChatTableRequest.FromString,
                    response_serializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.UnbindChatTableResponse.SerializeToString,
            ),
            'ListChatTables': grpc.unary_unary_rpc_method_handler(
                    servicer.ListChatTables,
                    request_deserializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.ListChatTablesRequest.FromString,
                    response_serializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.ListChatTablesResponse.SerializeToString,
            ),
            'ListTables': grpc.unary_unary_rpc_method_handler(
                    servicer.ListTables,
                    request_deserializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.ListTablesRequest.FromString,
                    response_serializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.ListTablesResponse.SerializeToString,
            ),
            'CreateTable': grpc.unary_unary_rpc_method_handler(
                    servicer.CreateTable,
                    request_deserializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.CreateTableRequest.FromString,
                    response_serializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.CreateTableResponse.SerializeToString,
            ),
            'GetTable': grpc.unary_unary_rpc_method_handler(
                    servicer.GetTable,
                    request_deserializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.GetTableRequest.FromString,
                    response_serializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.GetTableResponse.SerializeToString,
            ),
            'UpdateTable': grpc.unary_unary_rpc_method_handler(
                    servicer.UpdateTable,
                    request_deserializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.UpdateTableRequest.FromString,
                    response_serializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.UpdateTableResponse.SerializeToString,
            ),
            'DeleteTable': grpc.unary_unary_rpc_method_handler(
                    servicer.DeleteTable,
                    request_deserializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.DeleteTableRequest.FromString,
                    response_serializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.DeleteTableResponse.SerializeToString,
            ),
            'ChatWithTableBuilderAgent': grpc.unary_stream_rpc_method_handler(
                    servicer.ChatWithTableBuilderAgent,
                    request_deserializer=agent_dot_agent_dot_v1alpha_dot_chat__pb2.ChatWithTableBuilderAgentRequest.FromString,
                    response_serializer=agent_dot_agent_dot_v1alpha_dot_chat__pb2.ChatWithTableBuilderAgentResponse.SerializeToString,
            ),
            'ListTableBuilderAgentMessages': grpc.unary_unary_rpc_method_handler(
                    servicer.ListTableBuilderAgentMessages,
                    request_deserializer=agent_dot_agent_dot_v1alpha_dot_chat__pb2.ListTableBuilderAgentMessagesRequest.FromString,
                    response_serializer=agent_dot_agent_dot_v1alpha_dot_chat__pb2.ListTableBuilderAgentMessagesResponse.SerializeToString,
            ),
            'GetColumnDefinitions': grpc.unary_unary_rpc_method_handler(
                    servicer.GetColumnDefinitions,
                    request_deserializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.GetColumnDefinitionsRequest.FromString,
                    response_serializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.GetColumnDefinitionsResponse.SerializeToString,
            ),
            'UpdateColumnDefinitions': grpc.unary_unary_rpc_method_handler(
                    servicer.UpdateColumnDefinitions,
                    request_deserializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.UpdateColumnDefinitionsRequest.FromString,
                    response_serializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.UpdateColumnDefinitionsResponse.SerializeToString,
            ),
            'GetColumnDefinition': grpc.unary_unary_rpc_method_handler(
                    servicer.GetColumnDefinition,
                    request_deserializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.GetColumnDefinitionRequest.FromString,
                    response_serializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.GetColumnDefinitionResponse.SerializeToString,
            ),
            'RecomputeColumn': grpc.unary_unary_rpc_method_handler(
                    servicer.RecomputeColumn,
                    request_deserializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.RecomputeColumnRequest.FromString,
                    response_serializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.RecomputeColumnResponse.SerializeToString,
            ),
            'ListRows': grpc.unary_unary_rpc_method_handler(
                    servicer.ListRows,
                    request_deserializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.ListRowsRequest.FromString,
                    response_serializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.ListRowsResponse.SerializeToString,
            ),
            'GetRow': grpc.unary_unary_rpc_method_handler(
                    servicer.GetRow,
                    request_deserializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.GetRowRequest.FromString,
                    response_serializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.GetRowResponse.SerializeToString,
            ),
            'InsertRow': grpc.unary_unary_rpc_method_handler(
                    servicer.InsertRow,
                    request_deserializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.InsertRowRequest.FromString,
                    response_serializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.InsertRowResponse.SerializeToString,
            ),
            'UpdateRow': grpc.unary_unary_rpc_method_handler(
                    servicer.UpdateRow,
                    request_deserializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.UpdateRowRequest.FromString,
                    response_serializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.UpdateRowResponse.SerializeToString,
            ),
            'UpdateRows': grpc.unary_unary_rpc_method_handler(
                    servicer.UpdateRows,
                    request_deserializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.UpdateRowsRequest.FromString,
                    response_serializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.UpdateRowsResponse.SerializeToString,
            ),
            'DeleteRow': grpc.unary_unary_rpc_method_handler(
                    servicer.DeleteRow,
                    request_deserializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.DeleteRowRequest.FromString,
                    response_serializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.DeleteRowResponse.SerializeToString,
            ),
            'DeleteRows': grpc.unary_unary_rpc_method_handler(
                    servicer.DeleteRows,
                    request_deserializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.DeleteRowsRequest.FromString,
                    response_serializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.DeleteRowsResponse.SerializeToString,
            ),
            'MoveRows': grpc.unary_unary_rpc_method_handler(
                    servicer.MoveRows,
                    request_deserializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.MoveRowsRequest.FromString,
                    response_serializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.MoveRowsResponse.SerializeToString,
            ),
            'GetCell': grpc.unary_unary_rpc_method_handler(
                    servicer.GetCell,
                    request_deserializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.GetCellRequest.FromString,
                    response_serializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.GetCellResponse.SerializeToString,
            ),
            'UpdateCell': grpc.unary_unary_rpc_method_handler(
                    servicer.UpdateCell,
                    request_deserializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.UpdateCellRequest.FromString,
                    response_serializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.UpdateCellResponse.SerializeToString,
            ),
            'ResetCell': grpc.unary_unary_rpc_method_handler(
                    servicer.ResetCell,
                    request_deserializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.ResetCellRequest.FromString,
                    response_serializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.ResetCellResponse.SerializeToString,
            ),
            'RecomputeCell': grpc.unary_unary_rpc_method_handler(
                    servicer.RecomputeCell,
                    request_deserializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.RecomputeCellRequest.FromString,
                    response_serializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.RecomputeCellResponse.SerializeToString,
            ),
            'LockCell': grpc.unary_unary_rpc_method_handler(
                    servicer.LockCell,
                    request_deserializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.LockCellRequest.FromString,
                    response_serializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.LockCellResponse.SerializeToString,
            ),
            'UnlockCell': grpc.unary_unary_rpc_method_handler(
                    servicer.UnlockCell,
                    request_deserializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.UnlockCellRequest.FromString,
                    response_serializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.UnlockCellResponse.SerializeToString,
            ),
            'GetTableEvents': grpc.unary_stream_rpc_method_handler(
                    servicer.GetTableEvents,
                    request_deserializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.GetTableEventsRequest.FromString,
                    response_serializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.GetTableEventsResponse.SerializeToString,
            ),
            'ExportTable': grpc.unary_unary_rpc_method_handler(
                    servicer.ExportTable,
                    request_deserializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.ExportTableRequest.FromString,
                    response_serializer=agent_dot_agent_dot_v1alpha_dot_table__pb2.ExportTableResponse.SerializeToString,
            ),
    }
    generic_handler = grpc.method_handlers_generic_handler(
            'agent.agent.v1alpha.AgentPublicService', rpc_method_handlers)
    server.add_generic_rpc_handlers((generic_handler,))


 # This class is part of an EXPERIMENTAL API.
class AgentPublicService(object):
    """AgentPublicService exposes the public endpoints that allow clients to
    manage agents.
    """

    @staticmethod
    def Liveness(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/agent.agent.v1alpha.AgentPublicService/Liveness',
            agent_dot_agent_dot_v1alpha_dot_agent__pb2.LivenessRequest.SerializeToString,
            agent_dot_agent_dot_v1alpha_dot_agent__pb2.LivenessResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def Readiness(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/agent.agent.v1alpha.AgentPublicService/Readiness',
            agent_dot_agent_dot_v1alpha_dot_agent__pb2.ReadinessRequest.SerializeToString,
            agent_dot_agent_dot_v1alpha_dot_agent__pb2.ReadinessResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def CreateChat(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/agent.agent.v1alpha.AgentPublicService/CreateChat',
            agent_dot_agent_dot_v1alpha_dot_chat__pb2.CreateChatRequest.SerializeToString,
            agent_dot_agent_dot_v1alpha_dot_chat__pb2.CreateChatResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ListChats(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/agent.agent.v1alpha.AgentPublicService/ListChats',
            agent_dot_agent_dot_v1alpha_dot_chat__pb2.ListChatsRequest.SerializeToString,
            agent_dot_agent_dot_v1alpha_dot_chat__pb2.ListChatsResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def UpdateChat(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/agent.agent.v1alpha.AgentPublicService/UpdateChat',
            agent_dot_agent_dot_v1alpha_dot_chat__pb2.UpdateChatRequest.SerializeToString,
            agent_dot_agent_dot_v1alpha_dot_chat__pb2.UpdateChatResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetChat(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/agent.agent.v1alpha.AgentPublicService/GetChat',
            agent_dot_agent_dot_v1alpha_dot_chat__pb2.GetChatRequest.SerializeToString,
            agent_dot_agent_dot_v1alpha_dot_chat__pb2.GetChatResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def DeleteChat(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/agent.agent.v1alpha.AgentPublicService/DeleteChat',
            agent_dot_agent_dot_v1alpha_dot_chat__pb2.DeleteChatRequest.SerializeToString,
            agent_dot_agent_dot_v1alpha_dot_chat__pb2.DeleteChatResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ListMessages(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/agent.agent.v1alpha.AgentPublicService/ListMessages',
            agent_dot_agent_dot_v1alpha_dot_chat__pb2.ListMessagesRequest.SerializeToString,
            agent_dot_agent_dot_v1alpha_dot_chat__pb2.ListMessagesResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ChatWithAgent(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_stream(request, target, '/agent.agent.v1alpha.AgentPublicService/ChatWithAgent',
            agent_dot_agent_dot_v1alpha_dot_chat__pb2.ChatWithAgentRequest.SerializeToString,
            agent_dot_agent_dot_v1alpha_dot_chat__pb2.ChatWithAgentResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def BindChatTable(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/agent.agent.v1alpha.AgentPublicService/BindChatTable',
            agent_dot_agent_dot_v1alpha_dot_table__pb2.BindChatTableRequest.SerializeToString,
            agent_dot_agent_dot_v1alpha_dot_table__pb2.BindChatTableResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def UnbindChatTable(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/agent.agent.v1alpha.AgentPublicService/UnbindChatTable',
            agent_dot_agent_dot_v1alpha_dot_table__pb2.UnbindChatTableRequest.SerializeToString,
            agent_dot_agent_dot_v1alpha_dot_table__pb2.UnbindChatTableResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ListChatTables(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/agent.agent.v1alpha.AgentPublicService/ListChatTables',
            agent_dot_agent_dot_v1alpha_dot_table__pb2.ListChatTablesRequest.SerializeToString,
            agent_dot_agent_dot_v1alpha_dot_table__pb2.ListChatTablesResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ListTables(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/agent.agent.v1alpha.AgentPublicService/ListTables',
            agent_dot_agent_dot_v1alpha_dot_table__pb2.ListTablesRequest.SerializeToString,
            agent_dot_agent_dot_v1alpha_dot_table__pb2.ListTablesResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def CreateTable(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/agent.agent.v1alpha.AgentPublicService/CreateTable',
            agent_dot_agent_dot_v1alpha_dot_table__pb2.CreateTableRequest.SerializeToString,
            agent_dot_agent_dot_v1alpha_dot_table__pb2.CreateTableResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetTable(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/agent.agent.v1alpha.AgentPublicService/GetTable',
            agent_dot_agent_dot_v1alpha_dot_table__pb2.GetTableRequest.SerializeToString,
            agent_dot_agent_dot_v1alpha_dot_table__pb2.GetTableResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def UpdateTable(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/agent.agent.v1alpha.AgentPublicService/UpdateTable',
            agent_dot_agent_dot_v1alpha_dot_table__pb2.UpdateTableRequest.SerializeToString,
            agent_dot_agent_dot_v1alpha_dot_table__pb2.UpdateTableResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def DeleteTable(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/agent.agent.v1alpha.AgentPublicService/DeleteTable',
            agent_dot_agent_dot_v1alpha_dot_table__pb2.DeleteTableRequest.SerializeToString,
            agent_dot_agent_dot_v1alpha_dot_table__pb2.DeleteTableResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ChatWithTableBuilderAgent(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_stream(request, target, '/agent.agent.v1alpha.AgentPublicService/ChatWithTableBuilderAgent',
            agent_dot_agent_dot_v1alpha_dot_chat__pb2.ChatWithTableBuilderAgentRequest.SerializeToString,
            agent_dot_agent_dot_v1alpha_dot_chat__pb2.ChatWithTableBuilderAgentResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ListTableBuilderAgentMessages(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/agent.agent.v1alpha.AgentPublicService/ListTableBuilderAgentMessages',
            agent_dot_agent_dot_v1alpha_dot_chat__pb2.ListTableBuilderAgentMessagesRequest.SerializeToString,
            agent_dot_agent_dot_v1alpha_dot_chat__pb2.ListTableBuilderAgentMessagesResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetColumnDefinitions(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/agent.agent.v1alpha.AgentPublicService/GetColumnDefinitions',
            agent_dot_agent_dot_v1alpha_dot_table__pb2.GetColumnDefinitionsRequest.SerializeToString,
            agent_dot_agent_dot_v1alpha_dot_table__pb2.GetColumnDefinitionsResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def UpdateColumnDefinitions(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/agent.agent.v1alpha.AgentPublicService/UpdateColumnDefinitions',
            agent_dot_agent_dot_v1alpha_dot_table__pb2.UpdateColumnDefinitionsRequest.SerializeToString,
            agent_dot_agent_dot_v1alpha_dot_table__pb2.UpdateColumnDefinitionsResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetColumnDefinition(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/agent.agent.v1alpha.AgentPublicService/GetColumnDefinition',
            agent_dot_agent_dot_v1alpha_dot_table__pb2.GetColumnDefinitionRequest.SerializeToString,
            agent_dot_agent_dot_v1alpha_dot_table__pb2.GetColumnDefinitionResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def RecomputeColumn(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/agent.agent.v1alpha.AgentPublicService/RecomputeColumn',
            agent_dot_agent_dot_v1alpha_dot_table__pb2.RecomputeColumnRequest.SerializeToString,
            agent_dot_agent_dot_v1alpha_dot_table__pb2.RecomputeColumnResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ListRows(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/agent.agent.v1alpha.AgentPublicService/ListRows',
            agent_dot_agent_dot_v1alpha_dot_table__pb2.ListRowsRequest.SerializeToString,
            agent_dot_agent_dot_v1alpha_dot_table__pb2.ListRowsResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetRow(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/agent.agent.v1alpha.AgentPublicService/GetRow',
            agent_dot_agent_dot_v1alpha_dot_table__pb2.GetRowRequest.SerializeToString,
            agent_dot_agent_dot_v1alpha_dot_table__pb2.GetRowResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def InsertRow(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/agent.agent.v1alpha.AgentPublicService/InsertRow',
            agent_dot_agent_dot_v1alpha_dot_table__pb2.InsertRowRequest.SerializeToString,
            agent_dot_agent_dot_v1alpha_dot_table__pb2.InsertRowResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def UpdateRow(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/agent.agent.v1alpha.AgentPublicService/UpdateRow',
            agent_dot_agent_dot_v1alpha_dot_table__pb2.UpdateRowRequest.SerializeToString,
            agent_dot_agent_dot_v1alpha_dot_table__pb2.UpdateRowResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def UpdateRows(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/agent.agent.v1alpha.AgentPublicService/UpdateRows',
            agent_dot_agent_dot_v1alpha_dot_table__pb2.UpdateRowsRequest.SerializeToString,
            agent_dot_agent_dot_v1alpha_dot_table__pb2.UpdateRowsResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def DeleteRow(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/agent.agent.v1alpha.AgentPublicService/DeleteRow',
            agent_dot_agent_dot_v1alpha_dot_table__pb2.DeleteRowRequest.SerializeToString,
            agent_dot_agent_dot_v1alpha_dot_table__pb2.DeleteRowResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def DeleteRows(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/agent.agent.v1alpha.AgentPublicService/DeleteRows',
            agent_dot_agent_dot_v1alpha_dot_table__pb2.DeleteRowsRequest.SerializeToString,
            agent_dot_agent_dot_v1alpha_dot_table__pb2.DeleteRowsResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def MoveRows(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/agent.agent.v1alpha.AgentPublicService/MoveRows',
            agent_dot_agent_dot_v1alpha_dot_table__pb2.MoveRowsRequest.SerializeToString,
            agent_dot_agent_dot_v1alpha_dot_table__pb2.MoveRowsResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetCell(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/agent.agent.v1alpha.AgentPublicService/GetCell',
            agent_dot_agent_dot_v1alpha_dot_table__pb2.GetCellRequest.SerializeToString,
            agent_dot_agent_dot_v1alpha_dot_table__pb2.GetCellResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def UpdateCell(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/agent.agent.v1alpha.AgentPublicService/UpdateCell',
            agent_dot_agent_dot_v1alpha_dot_table__pb2.UpdateCellRequest.SerializeToString,
            agent_dot_agent_dot_v1alpha_dot_table__pb2.UpdateCellResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ResetCell(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/agent.agent.v1alpha.AgentPublicService/ResetCell',
            agent_dot_agent_dot_v1alpha_dot_table__pb2.ResetCellRequest.SerializeToString,
            agent_dot_agent_dot_v1alpha_dot_table__pb2.ResetCellResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def RecomputeCell(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/agent.agent.v1alpha.AgentPublicService/RecomputeCell',
            agent_dot_agent_dot_v1alpha_dot_table__pb2.RecomputeCellRequest.SerializeToString,
            agent_dot_agent_dot_v1alpha_dot_table__pb2.RecomputeCellResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def LockCell(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/agent.agent.v1alpha.AgentPublicService/LockCell',
            agent_dot_agent_dot_v1alpha_dot_table__pb2.LockCellRequest.SerializeToString,
            agent_dot_agent_dot_v1alpha_dot_table__pb2.LockCellResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def UnlockCell(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/agent.agent.v1alpha.AgentPublicService/UnlockCell',
            agent_dot_agent_dot_v1alpha_dot_table__pb2.UnlockCellRequest.SerializeToString,
            agent_dot_agent_dot_v1alpha_dot_table__pb2.UnlockCellResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetTableEvents(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_stream(request, target, '/agent.agent.v1alpha.AgentPublicService/GetTableEvents',
            agent_dot_agent_dot_v1alpha_dot_table__pb2.GetTableEventsRequest.SerializeToString,
            agent_dot_agent_dot_v1alpha_dot_table__pb2.GetTableEventsResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ExportTable(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/agent.agent.v1alpha.AgentPublicService/ExportTable',
            agent_dot_agent_dot_v1alpha_dot_table__pb2.ExportTableRequest.SerializeToString,
            agent_dot_agent_dot_v1alpha_dot_table__pb2.ExportTableResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
