# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: service.proto

import sys
_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
from google.protobuf import descriptor as _descriptor
from google.protobuf import message as _message
from google.protobuf import reflection as _reflection
from google.protobuf import symbol_database as _symbol_database
# @@protoc_insertion_point(imports)

_sym_db = _symbol_database.Default()




DESCRIPTOR = _descriptor.FileDescriptor(
  name='service.proto',
  package='co.treelab.api',
  syntax='proto3',
  serialized_options=None,
  serialized_pb=_b('\n\rservice.proto\x12\x0e\x63o.treelab.api\"\x0c\n\nEmptyInput\"G\n\x10WorkspacesResult\x12\x33\n\x06result\x18\x01 \x03(\x0b\x32#.co.treelab.api.WorkspaceProjection\"=\n\x0b\x43oresResult\x12.\n\x06result\x18\x01 \x03(\x0b\x32\x1e.co.treelab.api.CoreProjection\"?\n\x0cTablesResult\x12/\n\x06result\x18\x01 \x03(\x0b\x32\x1f.co.treelab.api.TableProjection\"T\n\"GetLookupCellByColumnAndRowIdInput\x12\x10\n\x08\x63olumnId\x18\x01 \x01(\t\x12\r\n\x05rowId\x18\x02 \x01(\t\x12\r\n\x05\x64\x65pth\x18\x03 \x01(\x05\"?\n\x1cGetCellByColumnAndRowIdInput\x12\x10\n\x08\x63olumnId\x18\x01 \x01(\t\x12\r\n\x05rowId\x18\x02 \x01(\t\"T\n\x0fTableProjection\x12\n\n\x02id\x18\x03 \x01(\t\x12\x0c\n\x04name\x18\x04 \x01(\t\x12\'\n\x05views\x18\x05 \x03(\x0b\x32\x18.co.treelab.api.ViewData\"2\n\tTableData\x12%\n\x04rows\x18\x01 \x03(\x0b\x32\x17.co.treelab.api.RowData\"M\n\x07RowData\x12\n\n\x02id\x18\x01 \x01(\t\x12\r\n\x05order\x18\x02 \x01(\x05\x12\'\n\x05\x63\x65lls\x18\x03 \x03(\x0b\x32\x18.co.treelab.api.CellData\"@\n\x14LookupCellDataResult\x12(\n\x06result\x18\x01 \x03(\x0b\x32\x18.co.treelab.api.CellData\"\x9e\x02\n\x08\x43\x65llData\x12\x10\n\x08\x63olumnId\x18\x01 \x01(\t\x12\x0c\n\x04type\x18\x02 \x01(\t\x12\x0c\n\x04text\x18\x03 \x01(\t\x12\x33\n\nforeignRow\x18\x04 \x03(\x0b\x32\x1f.co.treelab.api.ForeignRowValue\x12\x0e\n\x06number\x18\x05 \x01(\x02\x12\x14\n\x0cselectedItem\x18\x06 \x01(\t\x12\x15\n\rselectedItems\x18\x07 \x01(\t\x12\x13\n\x0b\x61ttachments\x18\x08 \x01(\t\x12\x10\n\x08\x64\x61teTime\x18\t \x01(\t\x12(\n\x06lookup\x18\n \x03(\x0b\x32\x18.co.treelab.api.CellData\x12\x0f\n\x07\x63hecked\x18\x0b \x01(\x08\x12\x10\n\x08uniqueId\x18\x0c \x01(\t\"\xbe\x01\n\x08ViewData\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0c\n\x04type\x18\x02 \x01(\t\x12\x0c\n\x04name\x18\x03 \x01(\t\x12%\n\x04rows\x18\x04 \x03(\x0b\x32\x17.co.treelab.api.RowData\x12\x30\n\x0bviewOptions\x18\x05 \x01(\x0b\x32\x1b.co.treelab.api.ViewOptions\x12\x31\n\x07\x63olumns\x18\x06 \x03(\x0b\x32 .co.treelab.api.ColumnDefinition\"r\n\x0bViewOptions\x12\x11\n\tstartDate\x18\x01 \x01(\t\x12\x0f\n\x07\x65ndDate\x18\x02 \x01(\t\x12.\n\nviewFilter\x18\x03 \x03(\x0b\x32\x1a.co.treelab.api.ViewFilter\x12\x0f\n\x07\x63olumns\x18\x04 \x03(\t\"S\n\nViewFilter\x12\x0c\n\x04type\x18\x01 \x01(\t\x12\x0e\n\x06\x63olumn\x18\x02 \x01(\t\x12\'\n\x05value\x18\x03 \x01(\x0b\x32\x18.co.treelab.api.CellData\"\x9a\x03\n\x10\x43olumnDefinition\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0c\n\x04type\x18\x02 \x01(\t\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\r\n\x05order\x18\x04 \x01(\x05\x12\x12\n\nvisibility\x18\x05 \x01(\x08\x12\x16\n\x0e\x66oreignTableId\x18\x06 \x01(\t\x12\x15\n\rdefaultNumber\x18\x07 \x01(\x02\x12\x11\n\tprecision\x18\x08 \x01(\x05\x12\x0f\n\x07\x63hoices\x18\t \x01(\t\x12\x12\n\ndateFormat\x18\n \x01(\t\x12\x13\n\x0bincludeTime\x18\x0b \x01(\x08\x12\x12\n\ntimeFormat\x18\x0c \x01(\t\x12\x0e\n\x06useGMT\x18\r \x01(\x08\x12\x16\n\x0e\x64\x65\x66\x61ultChecked\x18\x0e \x01(\x08\x12\x10\n\x08idPrefix\x18\x0f \x01(\t\x12\x15\n\rforeignCoreId\x18\x10 \x01(\t\x12\x1a\n\x12\x66oreignWorkspaceId\x18\x11 \x01(\t\x12\x1f\n\x17recordReferenceColumnId\x18\x12 \x01(\t\x12\x1d\n\x15\x66oreignLookupColumnId\x18\x13 \x01(\t\"1\n\x06\x43hoice\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\r\n\x05\x63olor\x18\x03 \x01(\t\"/\n\x13WorkspaceProjection\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\"G\n\x0e\x43oreProjection\x12\n\n\x02id\x18\x02 \x01(\t\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\r\n\x05\x63olor\x18\x04 \x01(\t\x12\x0c\n\x04icon\x18\x05 \x01(\t\"+\n\x1a\x46oreignRowVisibleNameValue\x12\r\n\x05value\x18\x01 \x01(\t\"\xc8\x02\n\x0f\x46oreignRowValue\x12\n\n\x02id\x18\x01 \x01(\t\x12?\n\x0bvisibleName\x18\x02 \x03(\x0b\x32*.co.treelab.api.ForeignRowVisibleNameValue\x12\x34\n\x05table\x18\x03 \x03(\x0b\x32%.co.treelab.api.ForeignRowValue.Table\x1a\x17\n\tWorkspace\x12\n\n\x02id\x18\x01 \x01(\t\x1aP\n\x04\x43ore\x12\n\n\x02id\x18\x01 \x01(\t\x12<\n\tworkspace\x18\x02 \x03(\x0b\x32).co.treelab.api.ForeignRowValue.Workspace\x1aG\n\x05Table\x12\n\n\x02id\x18\x01 \x01(\t\x12\x32\n\x04\x63ore\x18\x02 \x03(\x0b\x32$.co.treelab.api.ForeignRowValue.Core\"\'\n\nAttachment\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0b\n\x03url\x18\x02 \x01(\t\"9\n\x0c\x43olumnConfig\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0c\n\x04type\x18\x02 \x01(\t\x12\r\n\x05order\x18\x03 \x01(\x05\"8\n\x0eViewDefinition\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x0c\n\x04type\x18\x03 \x01(\t\"\x1f\n\rEventMetadata\x12\x0e\n\x06source\x18\x01 \x01(\t\"\xd6\x03\n\x0c\x45ventPayload\x12\x11\n\teventName\x18\x01 \x01(\t\x12\x13\n\x0bworkspaceId\x18\x02 \x01(\t\x12\x0e\n\x06\x63oreId\x18\x03 \x01(\t\x12\x0f\n\x07tableId\x18\x04 \x01(\t\x12\x10\n\x08\x63olumnId\x18\x05 \x01(\t\x12\r\n\x05rowId\x18\x06 \x01(\t\x12\x11\n\ttableName\x18\x07 \x01(\t\x12\x36\n\x0e\x63oreCreatedDto\x18\x08 \x01(\x0b\x32\x1e.co.treelab.api.CoreCreatedDTO\x12\x36\n\x0e\x63oreUpdatedDto\x18\t \x01(\x0b\x32\x1e.co.treelab.api.CoreUpdatedDTO\x12\x32\n\x0c\x63olumnConfig\x18\n \x01(\x0b\x32\x1c.co.treelab.api.ColumnConfig\x12,\n\x04view\x18\x0b \x01(\x0b\x32\x1e.co.treelab.api.ViewDefinition\x12\x35\n\x06\x61\x63tion\x18\x0c \x01(\x0b\x32%.co.treelab.api.UpdateCellActionInput\x12\x30\n\t_metadata\x18\r \x01(\x0b\x32\x1d.co.treelab.api.EventMetadata\x12\x0e\n\x06viewId\x18\x0e \x01(\t\"d\n\x0e\x43oreCreatedDTO\x12\x13\n\x0bworkspaceId\x18\x01 \x01(\t\x12\x0e\n\x06\x63oreId\x18\x02 \x01(\t\x12\x10\n\x08\x63oreName\x18\x03 \x01(\t\x12\r\n\x05\x63olor\x18\x04 \x01(\t\x12\x0c\n\x04icon\x18\x05 \x01(\t\"d\n\x0e\x43oreUpdatedDTO\x12\x13\n\x0bworkspaceId\x18\x01 \x01(\t\x12\x0e\n\x06\x63oreId\x18\x02 \x01(\t\x12\x10\n\x08\x63oreName\x18\x03 \x01(\t\x12\r\n\x05\x63olor\x18\x04 \x01(\t\x12\x0c\n\x04icon\x18\x05 \x01(\t\"@\n\x1aWorkspaceSubscriptionInput\x12\x13\n\x0bworkspaceId\x18\x01 \x01(\t\x12\r\n\x05topic\x18\x02 \x01(\t\"h\n\x13ViewDefinitionInput\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0c\n\x04type\x18\x02 \x01(\t\x12\x35\n\x0bviewOptions\x18\x03 \x01(\x0b\x32 .co.treelab.api.ViewOptionsInput\"y\n\x10ViewOptionsInput\x12\x0f\n\x07\x63olumns\x18\x01 \x03(\t\x12\x30\n\x07\x66ilters\x18\x02 \x03(\x0b\x32\x1f.co.treelab.api.ViewFilterInput\x12\x11\n\tstartDate\x18\x03 \x01(\t\x12\x0f\n\x07\x65ndDate\x18\x04 \x01(\t\"^\n\x0fViewFilterInput\x12\x0c\n\x04type\x18\x01 \x01(\t\x12\x0e\n\x06\x63olumn\x18\x02 \x01(\t\x12-\n\x05value\x18\x03 \x01(\x0b\x32\x1e.co.treelab.api.CellValueInput\"w\n\x0c\x41\x64\x64ViewInput\x12\x13\n\x0bworkspaceId\x18\x01 \x01(\t\x12\x0e\n\x06\x63oreId\x18\x02 \x01(\t\x12\x0f\n\x07tableId\x18\x03 \x01(\t\x12\x31\n\x04view\x18\x04 \x01(\x0b\x32#.co.treelab.api.ViewDefinitionInput\"\x86\x01\n\x0fUpdateViewInput\x12\x13\n\x0bworkspaceId\x18\x01 \x01(\t\x12\x0e\n\x06\x63oreId\x18\x02 \x01(\t\x12\x0f\n\x07tableId\x18\x03 \x01(\t\x12\x0e\n\x06viewId\x18\x04 \x01(\t\x12-\n\x04view\x18\x05 \x01(\x0b\x32\x1f.co.treelab.api.ViewUpdateInput\"V\n\x0fViewUpdateInput\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x35\n\x0bviewOptions\x18\x02 \x01(\x0b\x32 .co.treelab.api.ViewOptionsInput\"W\n\x0fRemoveViewInput\x12\x13\n\x0bworkspaceId\x18\x01 \x01(\t\x12\x0e\n\x06\x63oreId\x18\x02 \x01(\t\x12\x0f\n\x07tableId\x18\x03 \x01(\t\x12\x0e\n\x06viewId\x18\x04 \x01(\t\"\x7f\n\x0e\x41\x64\x64\x43olumnInput\x12\x13\n\x0bworkspaceId\x18\x01 \x01(\t\x12\x0e\n\x06\x63oreId\x18\x02 \x01(\t\x12\x0f\n\x07tableId\x18\x03 \x01(\t\x12\x37\n\x0c\x63olumnConfig\x18\x04 \x01(\x0b\x32!.co.treelab.api.ColumnConfigInput\"\x94\x01\n\x11UpdateColumnInput\x12\x13\n\x0bworkspaceId\x18\x01 \x01(\t\x12\x0e\n\x06\x63oreId\x18\x02 \x01(\t\x12\x0f\n\x07tableId\x18\x03 \x01(\t\x12\x37\n\x0c\x63olumnConfig\x18\x04 \x01(\x0b\x32!.co.treelab.api.ColumnConfigInput\x12\x10\n\x08\x63olumnId\x18\x05 \x01(\t\"\x85\x01\n\x16UpdateColumnWidthInput\x12\x13\n\x0bworkspaceId\x18\x01 \x01(\t\x12\x0e\n\x06\x63oreId\x18\x02 \x01(\t\x12\x0f\n\x07tableId\x18\x03 \x01(\t\x12\x0e\n\x06viewId\x18\x04 \x01(\t\x12\x10\n\x08\x63olumnId\x18\x05 \x01(\t\x12\x13\n\x0b\x63olumnWidth\x18\x06 \x01(\x05\"\x83\x01\n\x12ReorderColumnInput\x12\x13\n\x0bworkspaceId\x18\x01 \x01(\t\x12\x0e\n\x06\x63oreId\x18\x02 \x01(\t\x12\x0f\n\x07tableId\x18\x03 \x01(\t\x12\x0e\n\x06viewId\x18\x04 \x01(\t\x12\x10\n\x08\x63olumnId\x18\x05 \x01(\t\x12\x15\n\rafterColumnId\x18\x06 \x01(\t\"z\n\x0fReorderRowInput\x12\x13\n\x0bworkspaceId\x18\x01 \x01(\t\x12\x0e\n\x06\x63oreId\x18\x02 \x01(\t\x12\x0f\n\x07tableId\x18\x03 \x01(\t\x12\x0e\n\x06viewId\x18\x04 \x01(\t\x12\r\n\x05rowId\x18\x05 \x01(\t\x12\x12\n\nafterRowId\x18\x06 \x01(\t\"[\n\x11RemoveColumnInput\x12\x13\n\x0bworkspaceId\x18\x01 \x01(\t\x12\x0e\n\x06\x63oreId\x18\x02 \x01(\t\x12\x0f\n\x07tableId\x18\x03 \x01(\t\x12\x10\n\x08\x63olumnId\x18\x04 \x01(\t\"s\n\x19RemoveColumnFromViewInput\x12\x13\n\x0bworkspaceId\x18\x01 \x01(\t\x12\x0e\n\x06\x63oreId\x18\x02 \x01(\t\x12\x0f\n\x07tableId\x18\x03 \x01(\t\x12\x10\n\x08\x63olumnId\x18\x04 \x01(\t\x12\x0e\n\x06viewId\x18\x05 \x01(\t\"\x84\x03\n\x11\x43olumnConfigInput\x12\x0c\n\x04type\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x16\n\x0e\x66oreignTableId\x18\x05 \x01(\t\x12\x1f\n\x17recordReferenceColumnId\x18\x06 \x01(\t\x12\x1d\n\x15\x66oreignLookupColumnId\x18\x07 \x01(\t\x12\x15\n\rdefaultNumber\x18\x08 \x01(\x02\x12\x11\n\tprecision\x18\t \x01(\x05\x12\'\n\x07\x63hoices\x18\n \x03(\x0b\x32\x16.co.treelab.api.Choice\x12\x12\n\ndateFormat\x18\x0b \x01(\t\x12\x13\n\x0bincludeTime\x18\x0c \x01(\x08\x12\x12\n\ntimeFormat\x18\r \x01(\t\x12\x0e\n\x06useGMT\x18\x0e \x01(\x08\x12\x16\n\x0e\x64\x65\x66\x61ultChecked\x18\x0f \x01(\x08\x12\x10\n\x08idPrefix\x18\x10 \x01(\t\x12\x15\n\rforeignCoreId\x18\x11 \x01(\t\x12\x1a\n\x12\x66oreignWorkspaceId\x18\x12 \x01(\t\"C\n\x0b\x41\x64\x64RowInput\x12\x13\n\x0bworkspaceId\x18\x01 \x01(\t\x12\x0e\n\x06\x63oreId\x18\x02 \x01(\t\x12\x0f\n\x07tableId\x18\x03 \x01(\t\"m\n\x16RemoveRowFromViewInput\x12\x13\n\x0bworkspaceId\x18\x01 \x01(\t\x12\x0e\n\x06\x63oreId\x18\x02 \x01(\t\x12\x0f\n\x07tableId\x18\x03 \x01(\t\x12\r\n\x05rowId\x18\x04 \x01(\t\x12\x0e\n\x06viewId\x18\x05 \x01(\t\"U\n\x0eRemoveRowInput\x12\x13\n\x0bworkspaceId\x18\x01 \x01(\t\x12\x0e\n\x06\x63oreId\x18\x02 \x01(\t\x12\x0f\n\x07tableId\x18\x03 \x01(\t\x12\r\n\x05rowId\x18\x04 \x01(\t\"\x95\x02\n\x0e\x43\x65llValueInput\x12\x0c\n\x04type\x18\x01 \x01(\t\x12\x0c\n\x04text\x18\x02 \x01(\t\x12\x14\n\x0c\x66oreignRowId\x18\x03 \x01(\t\x12\x0e\n\x06number\x18\x04 \x01(\x02\x12,\n\x0cselectedItem\x18\x05 \x01(\x0b\x32\x16.co.treelab.api.Choice\x12-\n\rselectedItems\x18\x06 \x03(\x0b\x32\x16.co.treelab.api.Choice\x12/\n\x0b\x61ttachments\x18\x07 \x03(\x0b\x32\x1a.co.treelab.api.Attachment\x12\x10\n\x08\x64\x61teTime\x18\x08 \x01(\t\x12\x0f\n\x07\x63hecked\x18\t \x01(\x08\x12\x10\n\x08uniqueId\x18\n \x01(\t\"T\n\x15UpdateCellActionInput\x12\x0c\n\x04type\x18\x01 \x01(\t\x12-\n\x05value\x18\x02 \x01(\x0b\x32\x1e.co.treelab.api.CellValueInput\"h\n\x0fRemoveCellInput\x12\x13\n\x0bworkspaceId\x18\x01 \x01(\t\x12\x0e\n\x06\x63oreId\x18\x02 \x01(\t\x12\x0f\n\x07tableId\x18\x03 \x01(\t\x12\x10\n\x08\x63olumnId\x18\x04 \x01(\t\x12\r\n\x05rowId\x18\x05 \x01(\t\"\x9f\x01\n\x0fUpdateCellInput\x12\x13\n\x0bworkspaceId\x18\x01 \x01(\t\x12\x0e\n\x06\x63oreId\x18\x02 \x01(\t\x12\x0f\n\x07tableId\x18\x03 \x01(\t\x12\x10\n\x08\x63olumnId\x18\x04 \x01(\t\x12\r\n\x05rowId\x18\x05 \x01(\t\x12\x35\n\x06\x61\x63tion\x18\x06 \x01(\x0b\x32%.co.treelab.api.UpdateCellActionInput\"$\n\x14\x43reateWorkspaceInput\x12\x0c\n\x04name\x18\x01 \x01(\t\"9\n\x14UpdateWorkspaceInput\x12\x13\n\x0bworkspaceId\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\"R\n\x0c\x41\x64\x64\x43oreInput\x12\x13\n\x0bworkspaceId\x18\x01 \x01(\t\x12\x10\n\x08\x63oreName\x18\x02 \x01(\t\x12\r\n\x05\x63olor\x18\x03 \x01(\t\x12\x0c\n\x04icon\x18\x04 \x01(\t\"e\n\x0fUpdateCoreInput\x12\x13\n\x0bworkspaceId\x18\x01 \x01(\t\x12\x0e\n\x06\x63oreId\x18\x02 \x01(\t\x12\x10\n\x08\x63oreName\x18\x03 \x01(\t\x12\r\n\x05\x63olor\x18\x04 \x01(\t\x12\x0c\n\x04icon\x18\x05 \x01(\t\"6\n\x0fRemoveCoreInput\x12\x13\n\x0bworkspaceId\x18\x01 \x01(\t\x12\x0e\n\x06\x63oreId\x18\x02 \x01(\t\"G\n\rAddTableInput\x12\x13\n\x0bworkspaceId\x18\x01 \x01(\t\x12\x0e\n\x06\x63oreId\x18\x02 \x01(\t\x12\x11\n\ttableName\x18\x03 \x01(\t\"_\n\x14UpdateTableNameInput\x12\x13\n\x0bworkspaceId\x18\x01 \x01(\t\x12\x0e\n\x06\x63oreId\x18\x02 \x01(\t\x12\x0f\n\x07tableId\x18\x03 \x01(\t\x12\x11\n\ttableName\x18\x04 \x01(\t\"E\n\rGetTableInput\x12\x13\n\x0bworkspaceId\x18\x01 \x01(\t\x12\x0e\n\x06\x63oreId\x18\x02 \x01(\t\x12\x0f\n\x07tableId\x18\x03 \x01(\t\"H\n\x10RemoveTableInput\x12\x13\n\x0bworkspaceId\x18\x01 \x01(\t\x12\x0e\n\x06\x63oreId\x18\x02 \x01(\t\x12\x0f\n\x07tableId\x18\x03 \x01(\t\"\x1f\n\x11GetWorkspaceInput\x12\n\n\x02id\x18\x01 \x01(\t\"3\n\x0cGetCoreInput\x12\x13\n\x0bworkspaceId\x18\x01 \x01(\t\x12\x0e\n\x06\x63oreId\x18\x02 \x01(\t\"$\n\rGetCoresInput\x12\x13\n\x0bworkspaceId\x18\x01 \x01(\t\"5\n\x0eGetTablesInput\x12\x13\n\x0bworkspaceId\x18\x01 \x01(\t\x12\x0e\n\x06\x63oreId\x18\x02 \x01(\t\"\x19\n\x0bWorkspaceId\x12\n\n\x02id\x18\x01 \x01(\t\"\x14\n\x06\x43oreId\x12\n\n\x02id\x18\x01 \x01(\t\"\x15\n\x07TableId\x12\n\n\x02id\x18\x01 \x01(\t\"\x16\n\x08\x43olumnId\x12\n\n\x02id\x18\x01 \x01(\t\"\x13\n\x05RowId\x12\n\n\x02id\x18\x01 \x01(\t\"\x14\n\x06ViewId\x12\n\n\x02id\x18\x01 \x01(\t2\xa7\x14\n\x11TreeLabApiService\x12V\n\x0f\x43reateWorkspace\x12$.co.treelab.api.CreateWorkspaceInput\x1a\x1b.co.treelab.api.WorkspaceId\"\x00\x12V\n\x0fUpdateWorkspace\x12$.co.treelab.api.UpdateWorkspaceInput\x1a\x1b.co.treelab.api.WorkspaceId\"\x00\x12\x41\n\x07\x41\x64\x64\x43ore\x12\x1c.co.treelab.api.AddCoreInput\x1a\x16.co.treelab.api.CoreId\"\x00\x12G\n\nUpdateCore\x12\x1f.co.treelab.api.UpdateCoreInput\x1a\x16.co.treelab.api.CoreId\"\x00\x12G\n\nRemoveCore\x12\x1f.co.treelab.api.RemoveCoreInput\x1a\x16.co.treelab.api.CoreId\"\x00\x12\x44\n\x08\x41\x64\x64Table\x12\x1d.co.treelab.api.AddTableInput\x1a\x17.co.treelab.api.TableId\"\x00\x12R\n\x0fUpdateTableName\x12$.co.treelab.api.UpdateTableNameInput\x1a\x17.co.treelab.api.TableId\"\x00\x12J\n\x0bRemoveTable\x12 .co.treelab.api.RemoveTableInput\x1a\x17.co.treelab.api.TableId\"\x00\x12\x41\n\x07\x41\x64\x64View\x12\x1c.co.treelab.api.AddViewInput\x1a\x16.co.treelab.api.ViewId\"\x00\x12G\n\nUpdateView\x12\x1f.co.treelab.api.UpdateViewInput\x1a\x16.co.treelab.api.ViewId\"\x00\x12G\n\nRemoveView\x12\x1f.co.treelab.api.RemoveViewInput\x1a\x16.co.treelab.api.ViewId\"\x00\x12G\n\tAddColumn\x12\x1e.co.treelab.api.AddColumnInput\x1a\x18.co.treelab.api.ColumnId\"\x00\x12M\n\x0cUpdateColumn\x12!.co.treelab.api.UpdateColumnInput\x1a\x18.co.treelab.api.ColumnId\"\x00\x12M\n\x0cRemoveColumn\x12!.co.treelab.api.RemoveColumnInput\x1a\x18.co.treelab.api.ColumnId\"\x00\x12]\n\x14RemoveColumnFromView\x12).co.treelab.api.RemoveColumnFromViewInput\x1a\x18.co.treelab.api.ColumnId\"\x00\x12W\n\x11UpdateColumnWidth\x12&.co.treelab.api.UpdateColumnWidthInput\x1a\x18.co.treelab.api.ColumnId\"\x00\x12O\n\rReorderColumn\x12\".co.treelab.api.ReorderColumnInput\x1a\x18.co.treelab.api.ColumnId\"\x00\x12>\n\x06\x41\x64\x64Row\x12\x1b.co.treelab.api.AddRowInput\x1a\x15.co.treelab.api.RowId\"\x00\x12\x46\n\nReorderRow\x12\x1f.co.treelab.api.ReorderRowInput\x1a\x15.co.treelab.api.RowId\"\x00\x12\x44\n\tRemoveRow\x12\x1e.co.treelab.api.RemoveRowInput\x1a\x15.co.treelab.api.RowId\"\x00\x12T\n\x11RemoveRowFromView\x12&.co.treelab.api.RemoveRowFromViewInput\x1a\x15.co.treelab.api.RowId\"\x00\x12H\n\nUpdateCell\x12\x1f.co.treelab.api.UpdateCellInput\x1a\x17.co.treelab.api.TableId\"\x00\x12H\n\nRemoveCell\x12\x1f.co.treelab.api.RemoveCellInput\x1a\x17.co.treelab.api.TableId\"\x00\x12\x64\n\x14SubscribeToWorkspace\x12*.co.treelab.api.WorkspaceSubscriptionInput\x1a\x1c.co.treelab.api.EventPayload\"\x00\x30\x01\x12X\n\x0cGetWorkspace\x12!.co.treelab.api.GetWorkspaceInput\x1a#.co.treelab.api.WorkspaceProjection\"\x00\x12I\n\x07GetCore\x12\x1c.co.treelab.api.GetCoreInput\x1a\x1e.co.treelab.api.CoreProjection\"\x00\x12L\n\x08GetTable\x12\x1d.co.treelab.api.GetTableInput\x1a\x1f.co.treelab.api.TableProjection\"\x00\x12\x63\n\x17GetCellByColumnAndRowId\x12,.co.treelab.api.GetCellByColumnAndRowIdInput\x1a\x18.co.treelab.api.CellData\"\x00\x12{\n\x1dGetLookupCellByColumnAndRowId\x12\x32.co.treelab.api.GetLookupCellByColumnAndRowIdInput\x1a$.co.treelab.api.LookupCellDataResult\"\x00\x12R\n\x10GetAllWorkspaces\x12\x1a.co.treelab.api.EmptyInput\x1a .co.treelab.api.WorkspacesResult\"\x00\x12K\n\x0bGetAllCores\x12\x1d.co.treelab.api.GetCoresInput\x1a\x1b.co.treelab.api.CoresResult\"\x00\x12N\n\x0cGetAllTables\x12\x1e.co.treelab.api.GetTablesInput\x1a\x1c.co.treelab.api.TablesResult\"\x00\x62\x06proto3')
)




_EMPTYINPUT = _descriptor.Descriptor(
  name='EmptyInput',
  full_name='co.treelab.api.EmptyInput',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=33,
  serialized_end=45,
)


_WORKSPACESRESULT = _descriptor.Descriptor(
  name='WorkspacesResult',
  full_name='co.treelab.api.WorkspacesResult',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='result', full_name='co.treelab.api.WorkspacesResult.result', index=0,
      number=1, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=47,
  serialized_end=118,
)


_CORESRESULT = _descriptor.Descriptor(
  name='CoresResult',
  full_name='co.treelab.api.CoresResult',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='result', full_name='co.treelab.api.CoresResult.result', index=0,
      number=1, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=120,
  serialized_end=181,
)


_TABLESRESULT = _descriptor.Descriptor(
  name='TablesResult',
  full_name='co.treelab.api.TablesResult',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='result', full_name='co.treelab.api.TablesResult.result', index=0,
      number=1, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=183,
  serialized_end=246,
)


_GETLOOKUPCELLBYCOLUMNANDROWIDINPUT = _descriptor.Descriptor(
  name='GetLookupCellByColumnAndRowIdInput',
  full_name='co.treelab.api.GetLookupCellByColumnAndRowIdInput',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='columnId', full_name='co.treelab.api.GetLookupCellByColumnAndRowIdInput.columnId', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='rowId', full_name='co.treelab.api.GetLookupCellByColumnAndRowIdInput.rowId', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='depth', full_name='co.treelab.api.GetLookupCellByColumnAndRowIdInput.depth', index=2,
      number=3, type=5, cpp_type=1, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=248,
  serialized_end=332,
)


_GETCELLBYCOLUMNANDROWIDINPUT = _descriptor.Descriptor(
  name='GetCellByColumnAndRowIdInput',
  full_name='co.treelab.api.GetCellByColumnAndRowIdInput',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='columnId', full_name='co.treelab.api.GetCellByColumnAndRowIdInput.columnId', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='rowId', full_name='co.treelab.api.GetCellByColumnAndRowIdInput.rowId', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=334,
  serialized_end=397,
)


_TABLEPROJECTION = _descriptor.Descriptor(
  name='TableProjection',
  full_name='co.treelab.api.TableProjection',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='id', full_name='co.treelab.api.TableProjection.id', index=0,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='name', full_name='co.treelab.api.TableProjection.name', index=1,
      number=4, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='views', full_name='co.treelab.api.TableProjection.views', index=2,
      number=5, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=399,
  serialized_end=483,
)


_TABLEDATA = _descriptor.Descriptor(
  name='TableData',
  full_name='co.treelab.api.TableData',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='rows', full_name='co.treelab.api.TableData.rows', index=0,
      number=1, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=485,
  serialized_end=535,
)


_ROWDATA = _descriptor.Descriptor(
  name='RowData',
  full_name='co.treelab.api.RowData',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='id', full_name='co.treelab.api.RowData.id', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='order', full_name='co.treelab.api.RowData.order', index=1,
      number=2, type=5, cpp_type=1, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='cells', full_name='co.treelab.api.RowData.cells', index=2,
      number=3, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=537,
  serialized_end=614,
)


_LOOKUPCELLDATARESULT = _descriptor.Descriptor(
  name='LookupCellDataResult',
  full_name='co.treelab.api.LookupCellDataResult',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='result', full_name='co.treelab.api.LookupCellDataResult.result', index=0,
      number=1, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=616,
  serialized_end=680,
)


_CELLDATA = _descriptor.Descriptor(
  name='CellData',
  full_name='co.treelab.api.CellData',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='columnId', full_name='co.treelab.api.CellData.columnId', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='type', full_name='co.treelab.api.CellData.type', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='text', full_name='co.treelab.api.CellData.text', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='foreignRow', full_name='co.treelab.api.CellData.foreignRow', index=3,
      number=4, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='number', full_name='co.treelab.api.CellData.number', index=4,
      number=5, type=2, cpp_type=6, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='selectedItem', full_name='co.treelab.api.CellData.selectedItem', index=5,
      number=6, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='selectedItems', full_name='co.treelab.api.CellData.selectedItems', index=6,
      number=7, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='attachments', full_name='co.treelab.api.CellData.attachments', index=7,
      number=8, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='dateTime', full_name='co.treelab.api.CellData.dateTime', index=8,
      number=9, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='lookup', full_name='co.treelab.api.CellData.lookup', index=9,
      number=10, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='checked', full_name='co.treelab.api.CellData.checked', index=10,
      number=11, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='uniqueId', full_name='co.treelab.api.CellData.uniqueId', index=11,
      number=12, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=683,
  serialized_end=969,
)


_VIEWDATA = _descriptor.Descriptor(
  name='ViewData',
  full_name='co.treelab.api.ViewData',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='id', full_name='co.treelab.api.ViewData.id', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='type', full_name='co.treelab.api.ViewData.type', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='name', full_name='co.treelab.api.ViewData.name', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='rows', full_name='co.treelab.api.ViewData.rows', index=3,
      number=4, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='viewOptions', full_name='co.treelab.api.ViewData.viewOptions', index=4,
      number=5, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='columns', full_name='co.treelab.api.ViewData.columns', index=5,
      number=6, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=972,
  serialized_end=1162,
)


_VIEWOPTIONS = _descriptor.Descriptor(
  name='ViewOptions',
  full_name='co.treelab.api.ViewOptions',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='startDate', full_name='co.treelab.api.ViewOptions.startDate', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='endDate', full_name='co.treelab.api.ViewOptions.endDate', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='viewFilter', full_name='co.treelab.api.ViewOptions.viewFilter', index=2,
      number=3, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='columns', full_name='co.treelab.api.ViewOptions.columns', index=3,
      number=4, type=9, cpp_type=9, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1164,
  serialized_end=1278,
)


_VIEWFILTER = _descriptor.Descriptor(
  name='ViewFilter',
  full_name='co.treelab.api.ViewFilter',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='co.treelab.api.ViewFilter.type', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='column', full_name='co.treelab.api.ViewFilter.column', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='value', full_name='co.treelab.api.ViewFilter.value', index=2,
      number=3, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1280,
  serialized_end=1363,
)


_COLUMNDEFINITION = _descriptor.Descriptor(
  name='ColumnDefinition',
  full_name='co.treelab.api.ColumnDefinition',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='id', full_name='co.treelab.api.ColumnDefinition.id', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='type', full_name='co.treelab.api.ColumnDefinition.type', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='name', full_name='co.treelab.api.ColumnDefinition.name', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='order', full_name='co.treelab.api.ColumnDefinition.order', index=3,
      number=4, type=5, cpp_type=1, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='visibility', full_name='co.treelab.api.ColumnDefinition.visibility', index=4,
      number=5, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='foreignTableId', full_name='co.treelab.api.ColumnDefinition.foreignTableId', index=5,
      number=6, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='defaultNumber', full_name='co.treelab.api.ColumnDefinition.defaultNumber', index=6,
      number=7, type=2, cpp_type=6, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='precision', full_name='co.treelab.api.ColumnDefinition.precision', index=7,
      number=8, type=5, cpp_type=1, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='choices', full_name='co.treelab.api.ColumnDefinition.choices', index=8,
      number=9, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='dateFormat', full_name='co.treelab.api.ColumnDefinition.dateFormat', index=9,
      number=10, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='includeTime', full_name='co.treelab.api.ColumnDefinition.includeTime', index=10,
      number=11, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='timeFormat', full_name='co.treelab.api.ColumnDefinition.timeFormat', index=11,
      number=12, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='useGMT', full_name='co.treelab.api.ColumnDefinition.useGMT', index=12,
      number=13, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='defaultChecked', full_name='co.treelab.api.ColumnDefinition.defaultChecked', index=13,
      number=14, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='idPrefix', full_name='co.treelab.api.ColumnDefinition.idPrefix', index=14,
      number=15, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='foreignCoreId', full_name='co.treelab.api.ColumnDefinition.foreignCoreId', index=15,
      number=16, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='foreignWorkspaceId', full_name='co.treelab.api.ColumnDefinition.foreignWorkspaceId', index=16,
      number=17, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='recordReferenceColumnId', full_name='co.treelab.api.ColumnDefinition.recordReferenceColumnId', index=17,
      number=18, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='foreignLookupColumnId', full_name='co.treelab.api.ColumnDefinition.foreignLookupColumnId', index=18,
      number=19, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1366,
  serialized_end=1776,
)


_CHOICE = _descriptor.Descriptor(
  name='Choice',
  full_name='co.treelab.api.Choice',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='id', full_name='co.treelab.api.Choice.id', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='name', full_name='co.treelab.api.Choice.name', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='color', full_name='co.treelab.api.Choice.color', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1778,
  serialized_end=1827,
)


_WORKSPACEPROJECTION = _descriptor.Descriptor(
  name='WorkspaceProjection',
  full_name='co.treelab.api.WorkspaceProjection',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='id', full_name='co.treelab.api.WorkspaceProjection.id', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='name', full_name='co.treelab.api.WorkspaceProjection.name', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1829,
  serialized_end=1876,
)


_COREPROJECTION = _descriptor.Descriptor(
  name='CoreProjection',
  full_name='co.treelab.api.CoreProjection',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='id', full_name='co.treelab.api.CoreProjection.id', index=0,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='name', full_name='co.treelab.api.CoreProjection.name', index=1,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='color', full_name='co.treelab.api.CoreProjection.color', index=2,
      number=4, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='icon', full_name='co.treelab.api.CoreProjection.icon', index=3,
      number=5, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1878,
  serialized_end=1949,
)


_FOREIGNROWVISIBLENAMEVALUE = _descriptor.Descriptor(
  name='ForeignRowVisibleNameValue',
  full_name='co.treelab.api.ForeignRowVisibleNameValue',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='value', full_name='co.treelab.api.ForeignRowVisibleNameValue.value', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1951,
  serialized_end=1994,
)


_FOREIGNROWVALUE_WORKSPACE = _descriptor.Descriptor(
  name='Workspace',
  full_name='co.treelab.api.ForeignRowValue.Workspace',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='id', full_name='co.treelab.api.ForeignRowValue.Workspace.id', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2147,
  serialized_end=2170,
)

_FOREIGNROWVALUE_CORE = _descriptor.Descriptor(
  name='Core',
  full_name='co.treelab.api.ForeignRowValue.Core',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='id', full_name='co.treelab.api.ForeignRowValue.Core.id', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='workspace', full_name='co.treelab.api.ForeignRowValue.Core.workspace', index=1,
      number=2, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2172,
  serialized_end=2252,
)

_FOREIGNROWVALUE_TABLE = _descriptor.Descriptor(
  name='Table',
  full_name='co.treelab.api.ForeignRowValue.Table',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='id', full_name='co.treelab.api.ForeignRowValue.Table.id', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='core', full_name='co.treelab.api.ForeignRowValue.Table.core', index=1,
      number=2, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2254,
  serialized_end=2325,
)

_FOREIGNROWVALUE = _descriptor.Descriptor(
  name='ForeignRowValue',
  full_name='co.treelab.api.ForeignRowValue',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='id', full_name='co.treelab.api.ForeignRowValue.id', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='visibleName', full_name='co.treelab.api.ForeignRowValue.visibleName', index=1,
      number=2, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='table', full_name='co.treelab.api.ForeignRowValue.table', index=2,
      number=3, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[_FOREIGNROWVALUE_WORKSPACE, _FOREIGNROWVALUE_CORE, _FOREIGNROWVALUE_TABLE, ],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1997,
  serialized_end=2325,
)


_ATTACHMENT = _descriptor.Descriptor(
  name='Attachment',
  full_name='co.treelab.api.Attachment',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='name', full_name='co.treelab.api.Attachment.name', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='url', full_name='co.treelab.api.Attachment.url', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2327,
  serialized_end=2366,
)


_COLUMNCONFIG = _descriptor.Descriptor(
  name='ColumnConfig',
  full_name='co.treelab.api.ColumnConfig',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='name', full_name='co.treelab.api.ColumnConfig.name', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='type', full_name='co.treelab.api.ColumnConfig.type', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='order', full_name='co.treelab.api.ColumnConfig.order', index=2,
      number=3, type=5, cpp_type=1, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2368,
  serialized_end=2425,
)


_VIEWDEFINITION = _descriptor.Descriptor(
  name='ViewDefinition',
  full_name='co.treelab.api.ViewDefinition',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='id', full_name='co.treelab.api.ViewDefinition.id', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='name', full_name='co.treelab.api.ViewDefinition.name', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='type', full_name='co.treelab.api.ViewDefinition.type', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2427,
  serialized_end=2483,
)


_EVENTMETADATA = _descriptor.Descriptor(
  name='EventMetadata',
  full_name='co.treelab.api.EventMetadata',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='source', full_name='co.treelab.api.EventMetadata.source', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2485,
  serialized_end=2516,
)


_EVENTPAYLOAD = _descriptor.Descriptor(
  name='EventPayload',
  full_name='co.treelab.api.EventPayload',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='eventName', full_name='co.treelab.api.EventPayload.eventName', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='workspaceId', full_name='co.treelab.api.EventPayload.workspaceId', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='coreId', full_name='co.treelab.api.EventPayload.coreId', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='tableId', full_name='co.treelab.api.EventPayload.tableId', index=3,
      number=4, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='columnId', full_name='co.treelab.api.EventPayload.columnId', index=4,
      number=5, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='rowId', full_name='co.treelab.api.EventPayload.rowId', index=5,
      number=6, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='tableName', full_name='co.treelab.api.EventPayload.tableName', index=6,
      number=7, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='coreCreatedDto', full_name='co.treelab.api.EventPayload.coreCreatedDto', index=7,
      number=8, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='coreUpdatedDto', full_name='co.treelab.api.EventPayload.coreUpdatedDto', index=8,
      number=9, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='columnConfig', full_name='co.treelab.api.EventPayload.columnConfig', index=9,
      number=10, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='view', full_name='co.treelab.api.EventPayload.view', index=10,
      number=11, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='action', full_name='co.treelab.api.EventPayload.action', index=11,
      number=12, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='_metadata', full_name='co.treelab.api.EventPayload._metadata', index=12,
      number=13, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='viewId', full_name='co.treelab.api.EventPayload.viewId', index=13,
      number=14, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2519,
  serialized_end=2989,
)


_CORECREATEDDTO = _descriptor.Descriptor(
  name='CoreCreatedDTO',
  full_name='co.treelab.api.CoreCreatedDTO',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='workspaceId', full_name='co.treelab.api.CoreCreatedDTO.workspaceId', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='coreId', full_name='co.treelab.api.CoreCreatedDTO.coreId', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='coreName', full_name='co.treelab.api.CoreCreatedDTO.coreName', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='color', full_name='co.treelab.api.CoreCreatedDTO.color', index=3,
      number=4, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='icon', full_name='co.treelab.api.CoreCreatedDTO.icon', index=4,
      number=5, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2991,
  serialized_end=3091,
)


_COREUPDATEDDTO = _descriptor.Descriptor(
  name='CoreUpdatedDTO',
  full_name='co.treelab.api.CoreUpdatedDTO',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='workspaceId', full_name='co.treelab.api.CoreUpdatedDTO.workspaceId', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='coreId', full_name='co.treelab.api.CoreUpdatedDTO.coreId', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='coreName', full_name='co.treelab.api.CoreUpdatedDTO.coreName', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='color', full_name='co.treelab.api.CoreUpdatedDTO.color', index=3,
      number=4, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='icon', full_name='co.treelab.api.CoreUpdatedDTO.icon', index=4,
      number=5, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3093,
  serialized_end=3193,
)


_WORKSPACESUBSCRIPTIONINPUT = _descriptor.Descriptor(
  name='WorkspaceSubscriptionInput',
  full_name='co.treelab.api.WorkspaceSubscriptionInput',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='workspaceId', full_name='co.treelab.api.WorkspaceSubscriptionInput.workspaceId', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='topic', full_name='co.treelab.api.WorkspaceSubscriptionInput.topic', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3195,
  serialized_end=3259,
)


_VIEWDEFINITIONINPUT = _descriptor.Descriptor(
  name='ViewDefinitionInput',
  full_name='co.treelab.api.ViewDefinitionInput',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='name', full_name='co.treelab.api.ViewDefinitionInput.name', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='type', full_name='co.treelab.api.ViewDefinitionInput.type', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='viewOptions', full_name='co.treelab.api.ViewDefinitionInput.viewOptions', index=2,
      number=3, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3261,
  serialized_end=3365,
)


_VIEWOPTIONSINPUT = _descriptor.Descriptor(
  name='ViewOptionsInput',
  full_name='co.treelab.api.ViewOptionsInput',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='columns', full_name='co.treelab.api.ViewOptionsInput.columns', index=0,
      number=1, type=9, cpp_type=9, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='filters', full_name='co.treelab.api.ViewOptionsInput.filters', index=1,
      number=2, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='startDate', full_name='co.treelab.api.ViewOptionsInput.startDate', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='endDate', full_name='co.treelab.api.ViewOptionsInput.endDate', index=3,
      number=4, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3367,
  serialized_end=3488,
)


_VIEWFILTERINPUT = _descriptor.Descriptor(
  name='ViewFilterInput',
  full_name='co.treelab.api.ViewFilterInput',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='co.treelab.api.ViewFilterInput.type', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='column', full_name='co.treelab.api.ViewFilterInput.column', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='value', full_name='co.treelab.api.ViewFilterInput.value', index=2,
      number=3, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3490,
  serialized_end=3584,
)


_ADDVIEWINPUT = _descriptor.Descriptor(
  name='AddViewInput',
  full_name='co.treelab.api.AddViewInput',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='workspaceId', full_name='co.treelab.api.AddViewInput.workspaceId', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='coreId', full_name='co.treelab.api.AddViewInput.coreId', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='tableId', full_name='co.treelab.api.AddViewInput.tableId', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='view', full_name='co.treelab.api.AddViewInput.view', index=3,
      number=4, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3586,
  serialized_end=3705,
)


_UPDATEVIEWINPUT = _descriptor.Descriptor(
  name='UpdateViewInput',
  full_name='co.treelab.api.UpdateViewInput',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='workspaceId', full_name='co.treelab.api.UpdateViewInput.workspaceId', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='coreId', full_name='co.treelab.api.UpdateViewInput.coreId', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='tableId', full_name='co.treelab.api.UpdateViewInput.tableId', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='viewId', full_name='co.treelab.api.UpdateViewInput.viewId', index=3,
      number=4, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='view', full_name='co.treelab.api.UpdateViewInput.view', index=4,
      number=5, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3708,
  serialized_end=3842,
)


_VIEWUPDATEINPUT = _descriptor.Descriptor(
  name='ViewUpdateInput',
  full_name='co.treelab.api.ViewUpdateInput',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='name', full_name='co.treelab.api.ViewUpdateInput.name', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='viewOptions', full_name='co.treelab.api.ViewUpdateInput.viewOptions', index=1,
      number=2, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3844,
  serialized_end=3930,
)


_REMOVEVIEWINPUT = _descriptor.Descriptor(
  name='RemoveViewInput',
  full_name='co.treelab.api.RemoveViewInput',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='workspaceId', full_name='co.treelab.api.RemoveViewInput.workspaceId', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='coreId', full_name='co.treelab.api.RemoveViewInput.coreId', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='tableId', full_name='co.treelab.api.RemoveViewInput.tableId', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='viewId', full_name='co.treelab.api.RemoveViewInput.viewId', index=3,
      number=4, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3932,
  serialized_end=4019,
)


_ADDCOLUMNINPUT = _descriptor.Descriptor(
  name='AddColumnInput',
  full_name='co.treelab.api.AddColumnInput',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='workspaceId', full_name='co.treelab.api.AddColumnInput.workspaceId', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='coreId', full_name='co.treelab.api.AddColumnInput.coreId', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='tableId', full_name='co.treelab.api.AddColumnInput.tableId', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='columnConfig', full_name='co.treelab.api.AddColumnInput.columnConfig', index=3,
      number=4, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=4021,
  serialized_end=4148,
)


_UPDATECOLUMNINPUT = _descriptor.Descriptor(
  name='UpdateColumnInput',
  full_name='co.treelab.api.UpdateColumnInput',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='workspaceId', full_name='co.treelab.api.UpdateColumnInput.workspaceId', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='coreId', full_name='co.treelab.api.UpdateColumnInput.coreId', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='tableId', full_name='co.treelab.api.UpdateColumnInput.tableId', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='columnConfig', full_name='co.treelab.api.UpdateColumnInput.columnConfig', index=3,
      number=4, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='columnId', full_name='co.treelab.api.UpdateColumnInput.columnId', index=4,
      number=5, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=4151,
  serialized_end=4299,
)


_UPDATECOLUMNWIDTHINPUT = _descriptor.Descriptor(
  name='UpdateColumnWidthInput',
  full_name='co.treelab.api.UpdateColumnWidthInput',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='workspaceId', full_name='co.treelab.api.UpdateColumnWidthInput.workspaceId', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='coreId', full_name='co.treelab.api.UpdateColumnWidthInput.coreId', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='tableId', full_name='co.treelab.api.UpdateColumnWidthInput.tableId', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='viewId', full_name='co.treelab.api.UpdateColumnWidthInput.viewId', index=3,
      number=4, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='columnId', full_name='co.treelab.api.UpdateColumnWidthInput.columnId', index=4,
      number=5, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='columnWidth', full_name='co.treelab.api.UpdateColumnWidthInput.columnWidth', index=5,
      number=6, type=5, cpp_type=1, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=4302,
  serialized_end=4435,
)


_REORDERCOLUMNINPUT = _descriptor.Descriptor(
  name='ReorderColumnInput',
  full_name='co.treelab.api.ReorderColumnInput',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='workspaceId', full_name='co.treelab.api.ReorderColumnInput.workspaceId', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='coreId', full_name='co.treelab.api.ReorderColumnInput.coreId', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='tableId', full_name='co.treelab.api.ReorderColumnInput.tableId', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='viewId', full_name='co.treelab.api.ReorderColumnInput.viewId', index=3,
      number=4, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='columnId', full_name='co.treelab.api.ReorderColumnInput.columnId', index=4,
      number=5, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='afterColumnId', full_name='co.treelab.api.ReorderColumnInput.afterColumnId', index=5,
      number=6, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=4438,
  serialized_end=4569,
)


_REORDERROWINPUT = _descriptor.Descriptor(
  name='ReorderRowInput',
  full_name='co.treelab.api.ReorderRowInput',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='workspaceId', full_name='co.treelab.api.ReorderRowInput.workspaceId', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='coreId', full_name='co.treelab.api.ReorderRowInput.coreId', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='tableId', full_name='co.treelab.api.ReorderRowInput.tableId', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='viewId', full_name='co.treelab.api.ReorderRowInput.viewId', index=3,
      number=4, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='rowId', full_name='co.treelab.api.ReorderRowInput.rowId', index=4,
      number=5, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='afterRowId', full_name='co.treelab.api.ReorderRowInput.afterRowId', index=5,
      number=6, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=4571,
  serialized_end=4693,
)


_REMOVECOLUMNINPUT = _descriptor.Descriptor(
  name='RemoveColumnInput',
  full_name='co.treelab.api.RemoveColumnInput',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='workspaceId', full_name='co.treelab.api.RemoveColumnInput.workspaceId', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='coreId', full_name='co.treelab.api.RemoveColumnInput.coreId', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='tableId', full_name='co.treelab.api.RemoveColumnInput.tableId', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='columnId', full_name='co.treelab.api.RemoveColumnInput.columnId', index=3,
      number=4, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=4695,
  serialized_end=4786,
)


_REMOVECOLUMNFROMVIEWINPUT = _descriptor.Descriptor(
  name='RemoveColumnFromViewInput',
  full_name='co.treelab.api.RemoveColumnFromViewInput',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='workspaceId', full_name='co.treelab.api.RemoveColumnFromViewInput.workspaceId', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='coreId', full_name='co.treelab.api.RemoveColumnFromViewInput.coreId', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='tableId', full_name='co.treelab.api.RemoveColumnFromViewInput.tableId', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='columnId', full_name='co.treelab.api.RemoveColumnFromViewInput.columnId', index=3,
      number=4, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='viewId', full_name='co.treelab.api.RemoveColumnFromViewInput.viewId', index=4,
      number=5, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=4788,
  serialized_end=4903,
)


_COLUMNCONFIGINPUT = _descriptor.Descriptor(
  name='ColumnConfigInput',
  full_name='co.treelab.api.ColumnConfigInput',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='co.treelab.api.ColumnConfigInput.type', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='name', full_name='co.treelab.api.ColumnConfigInput.name', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='foreignTableId', full_name='co.treelab.api.ColumnConfigInput.foreignTableId', index=2,
      number=5, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='recordReferenceColumnId', full_name='co.treelab.api.ColumnConfigInput.recordReferenceColumnId', index=3,
      number=6, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='foreignLookupColumnId', full_name='co.treelab.api.ColumnConfigInput.foreignLookupColumnId', index=4,
      number=7, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='defaultNumber', full_name='co.treelab.api.ColumnConfigInput.defaultNumber', index=5,
      number=8, type=2, cpp_type=6, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='precision', full_name='co.treelab.api.ColumnConfigInput.precision', index=6,
      number=9, type=5, cpp_type=1, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='choices', full_name='co.treelab.api.ColumnConfigInput.choices', index=7,
      number=10, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='dateFormat', full_name='co.treelab.api.ColumnConfigInput.dateFormat', index=8,
      number=11, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='includeTime', full_name='co.treelab.api.ColumnConfigInput.includeTime', index=9,
      number=12, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='timeFormat', full_name='co.treelab.api.ColumnConfigInput.timeFormat', index=10,
      number=13, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='useGMT', full_name='co.treelab.api.ColumnConfigInput.useGMT', index=11,
      number=14, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='defaultChecked', full_name='co.treelab.api.ColumnConfigInput.defaultChecked', index=12,
      number=15, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='idPrefix', full_name='co.treelab.api.ColumnConfigInput.idPrefix', index=13,
      number=16, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='foreignCoreId', full_name='co.treelab.api.ColumnConfigInput.foreignCoreId', index=14,
      number=17, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='foreignWorkspaceId', full_name='co.treelab.api.ColumnConfigInput.foreignWorkspaceId', index=15,
      number=18, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=4906,
  serialized_end=5294,
)


_ADDROWINPUT = _descriptor.Descriptor(
  name='AddRowInput',
  full_name='co.treelab.api.AddRowInput',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='workspaceId', full_name='co.treelab.api.AddRowInput.workspaceId', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='coreId', full_name='co.treelab.api.AddRowInput.coreId', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='tableId', full_name='co.treelab.api.AddRowInput.tableId', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=5296,
  serialized_end=5363,
)


_REMOVEROWFROMVIEWINPUT = _descriptor.Descriptor(
  name='RemoveRowFromViewInput',
  full_name='co.treelab.api.RemoveRowFromViewInput',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='workspaceId', full_name='co.treelab.api.RemoveRowFromViewInput.workspaceId', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='coreId', full_name='co.treelab.api.RemoveRowFromViewInput.coreId', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='tableId', full_name='co.treelab.api.RemoveRowFromViewInput.tableId', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='rowId', full_name='co.treelab.api.RemoveRowFromViewInput.rowId', index=3,
      number=4, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='viewId', full_name='co.treelab.api.RemoveRowFromViewInput.viewId', index=4,
      number=5, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=5365,
  serialized_end=5474,
)


_REMOVEROWINPUT = _descriptor.Descriptor(
  name='RemoveRowInput',
  full_name='co.treelab.api.RemoveRowInput',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='workspaceId', full_name='co.treelab.api.RemoveRowInput.workspaceId', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='coreId', full_name='co.treelab.api.RemoveRowInput.coreId', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='tableId', full_name='co.treelab.api.RemoveRowInput.tableId', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='rowId', full_name='co.treelab.api.RemoveRowInput.rowId', index=3,
      number=4, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=5476,
  serialized_end=5561,
)


_CELLVALUEINPUT = _descriptor.Descriptor(
  name='CellValueInput',
  full_name='co.treelab.api.CellValueInput',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='co.treelab.api.CellValueInput.type', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='text', full_name='co.treelab.api.CellValueInput.text', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='foreignRowId', full_name='co.treelab.api.CellValueInput.foreignRowId', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='number', full_name='co.treelab.api.CellValueInput.number', index=3,
      number=4, type=2, cpp_type=6, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='selectedItem', full_name='co.treelab.api.CellValueInput.selectedItem', index=4,
      number=5, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='selectedItems', full_name='co.treelab.api.CellValueInput.selectedItems', index=5,
      number=6, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='attachments', full_name='co.treelab.api.CellValueInput.attachments', index=6,
      number=7, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='dateTime', full_name='co.treelab.api.CellValueInput.dateTime', index=7,
      number=8, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='checked', full_name='co.treelab.api.CellValueInput.checked', index=8,
      number=9, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='uniqueId', full_name='co.treelab.api.CellValueInput.uniqueId', index=9,
      number=10, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=5564,
  serialized_end=5841,
)


_UPDATECELLACTIONINPUT = _descriptor.Descriptor(
  name='UpdateCellActionInput',
  full_name='co.treelab.api.UpdateCellActionInput',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='co.treelab.api.UpdateCellActionInput.type', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='value', full_name='co.treelab.api.UpdateCellActionInput.value', index=1,
      number=2, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=5843,
  serialized_end=5927,
)


_REMOVECELLINPUT = _descriptor.Descriptor(
  name='RemoveCellInput',
  full_name='co.treelab.api.RemoveCellInput',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='workspaceId', full_name='co.treelab.api.RemoveCellInput.workspaceId', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='coreId', full_name='co.treelab.api.RemoveCellInput.coreId', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='tableId', full_name='co.treelab.api.RemoveCellInput.tableId', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='columnId', full_name='co.treelab.api.RemoveCellInput.columnId', index=3,
      number=4, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='rowId', full_name='co.treelab.api.RemoveCellInput.rowId', index=4,
      number=5, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=5929,
  serialized_end=6033,
)


_UPDATECELLINPUT = _descriptor.Descriptor(
  name='UpdateCellInput',
  full_name='co.treelab.api.UpdateCellInput',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='workspaceId', full_name='co.treelab.api.UpdateCellInput.workspaceId', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='coreId', full_name='co.treelab.api.UpdateCellInput.coreId', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='tableId', full_name='co.treelab.api.UpdateCellInput.tableId', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='columnId', full_name='co.treelab.api.UpdateCellInput.columnId', index=3,
      number=4, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='rowId', full_name='co.treelab.api.UpdateCellInput.rowId', index=4,
      number=5, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='action', full_name='co.treelab.api.UpdateCellInput.action', index=5,
      number=6, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=6036,
  serialized_end=6195,
)


_CREATEWORKSPACEINPUT = _descriptor.Descriptor(
  name='CreateWorkspaceInput',
  full_name='co.treelab.api.CreateWorkspaceInput',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='name', full_name='co.treelab.api.CreateWorkspaceInput.name', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=6197,
  serialized_end=6233,
)


_UPDATEWORKSPACEINPUT = _descriptor.Descriptor(
  name='UpdateWorkspaceInput',
  full_name='co.treelab.api.UpdateWorkspaceInput',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='workspaceId', full_name='co.treelab.api.UpdateWorkspaceInput.workspaceId', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='name', full_name='co.treelab.api.UpdateWorkspaceInput.name', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=6235,
  serialized_end=6292,
)


_ADDCOREINPUT = _descriptor.Descriptor(
  name='AddCoreInput',
  full_name='co.treelab.api.AddCoreInput',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='workspaceId', full_name='co.treelab.api.AddCoreInput.workspaceId', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='coreName', full_name='co.treelab.api.AddCoreInput.coreName', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='color', full_name='co.treelab.api.AddCoreInput.color', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='icon', full_name='co.treelab.api.AddCoreInput.icon', index=3,
      number=4, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=6294,
  serialized_end=6376,
)


_UPDATECOREINPUT = _descriptor.Descriptor(
  name='UpdateCoreInput',
  full_name='co.treelab.api.UpdateCoreInput',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='workspaceId', full_name='co.treelab.api.UpdateCoreInput.workspaceId', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='coreId', full_name='co.treelab.api.UpdateCoreInput.coreId', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='coreName', full_name='co.treelab.api.UpdateCoreInput.coreName', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='color', full_name='co.treelab.api.UpdateCoreInput.color', index=3,
      number=4, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='icon', full_name='co.treelab.api.UpdateCoreInput.icon', index=4,
      number=5, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=6378,
  serialized_end=6479,
)


_REMOVECOREINPUT = _descriptor.Descriptor(
  name='RemoveCoreInput',
  full_name='co.treelab.api.RemoveCoreInput',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='workspaceId', full_name='co.treelab.api.RemoveCoreInput.workspaceId', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='coreId', full_name='co.treelab.api.RemoveCoreInput.coreId', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=6481,
  serialized_end=6535,
)


_ADDTABLEINPUT = _descriptor.Descriptor(
  name='AddTableInput',
  full_name='co.treelab.api.AddTableInput',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='workspaceId', full_name='co.treelab.api.AddTableInput.workspaceId', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='coreId', full_name='co.treelab.api.AddTableInput.coreId', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='tableName', full_name='co.treelab.api.AddTableInput.tableName', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=6537,
  serialized_end=6608,
)


_UPDATETABLENAMEINPUT = _descriptor.Descriptor(
  name='UpdateTableNameInput',
  full_name='co.treelab.api.UpdateTableNameInput',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='workspaceId', full_name='co.treelab.api.UpdateTableNameInput.workspaceId', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='coreId', full_name='co.treelab.api.UpdateTableNameInput.coreId', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='tableId', full_name='co.treelab.api.UpdateTableNameInput.tableId', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='tableName', full_name='co.treelab.api.UpdateTableNameInput.tableName', index=3,
      number=4, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=6610,
  serialized_end=6705,
)


_GETTABLEINPUT = _descriptor.Descriptor(
  name='GetTableInput',
  full_name='co.treelab.api.GetTableInput',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='workspaceId', full_name='co.treelab.api.GetTableInput.workspaceId', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='coreId', full_name='co.treelab.api.GetTableInput.coreId', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='tableId', full_name='co.treelab.api.GetTableInput.tableId', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=6707,
  serialized_end=6776,
)


_REMOVETABLEINPUT = _descriptor.Descriptor(
  name='RemoveTableInput',
  full_name='co.treelab.api.RemoveTableInput',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='workspaceId', full_name='co.treelab.api.RemoveTableInput.workspaceId', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='coreId', full_name='co.treelab.api.RemoveTableInput.coreId', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='tableId', full_name='co.treelab.api.RemoveTableInput.tableId', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=6778,
  serialized_end=6850,
)


_GETWORKSPACEINPUT = _descriptor.Descriptor(
  name='GetWorkspaceInput',
  full_name='co.treelab.api.GetWorkspaceInput',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='id', full_name='co.treelab.api.GetWorkspaceInput.id', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=6852,
  serialized_end=6883,
)


_GETCOREINPUT = _descriptor.Descriptor(
  name='GetCoreInput',
  full_name='co.treelab.api.GetCoreInput',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='workspaceId', full_name='co.treelab.api.GetCoreInput.workspaceId', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='coreId', full_name='co.treelab.api.GetCoreInput.coreId', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=6885,
  serialized_end=6936,
)


_GETCORESINPUT = _descriptor.Descriptor(
  name='GetCoresInput',
  full_name='co.treelab.api.GetCoresInput',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='workspaceId', full_name='co.treelab.api.GetCoresInput.workspaceId', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=6938,
  serialized_end=6974,
)


_GETTABLESINPUT = _descriptor.Descriptor(
  name='GetTablesInput',
  full_name='co.treelab.api.GetTablesInput',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='workspaceId', full_name='co.treelab.api.GetTablesInput.workspaceId', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='coreId', full_name='co.treelab.api.GetTablesInput.coreId', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=6976,
  serialized_end=7029,
)


_WORKSPACEID = _descriptor.Descriptor(
  name='WorkspaceId',
  full_name='co.treelab.api.WorkspaceId',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='id', full_name='co.treelab.api.WorkspaceId.id', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=7031,
  serialized_end=7056,
)


_COREID = _descriptor.Descriptor(
  name='CoreId',
  full_name='co.treelab.api.CoreId',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='id', full_name='co.treelab.api.CoreId.id', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=7058,
  serialized_end=7078,
)


_TABLEID = _descriptor.Descriptor(
  name='TableId',
  full_name='co.treelab.api.TableId',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='id', full_name='co.treelab.api.TableId.id', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=7080,
  serialized_end=7101,
)


_COLUMNID = _descriptor.Descriptor(
  name='ColumnId',
  full_name='co.treelab.api.ColumnId',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='id', full_name='co.treelab.api.ColumnId.id', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=7103,
  serialized_end=7125,
)


_ROWID = _descriptor.Descriptor(
  name='RowId',
  full_name='co.treelab.api.RowId',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='id', full_name='co.treelab.api.RowId.id', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=7127,
  serialized_end=7146,
)


_VIEWID = _descriptor.Descriptor(
  name='ViewId',
  full_name='co.treelab.api.ViewId',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='id', full_name='co.treelab.api.ViewId.id', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=7148,
  serialized_end=7168,
)

_WORKSPACESRESULT.fields_by_name['result'].message_type = _WORKSPACEPROJECTION
_CORESRESULT.fields_by_name['result'].message_type = _COREPROJECTION
_TABLESRESULT.fields_by_name['result'].message_type = _TABLEPROJECTION
_TABLEPROJECTION.fields_by_name['views'].message_type = _VIEWDATA
_TABLEDATA.fields_by_name['rows'].message_type = _ROWDATA
_ROWDATA.fields_by_name['cells'].message_type = _CELLDATA
_LOOKUPCELLDATARESULT.fields_by_name['result'].message_type = _CELLDATA
_CELLDATA.fields_by_name['foreignRow'].message_type = _FOREIGNROWVALUE
_CELLDATA.fields_by_name['lookup'].message_type = _CELLDATA
_VIEWDATA.fields_by_name['rows'].message_type = _ROWDATA
_VIEWDATA.fields_by_name['viewOptions'].message_type = _VIEWOPTIONS
_VIEWDATA.fields_by_name['columns'].message_type = _COLUMNDEFINITION
_VIEWOPTIONS.fields_by_name['viewFilter'].message_type = _VIEWFILTER
_VIEWFILTER.fields_by_name['value'].message_type = _CELLDATA
_FOREIGNROWVALUE_WORKSPACE.containing_type = _FOREIGNROWVALUE
_FOREIGNROWVALUE_CORE.fields_by_name['workspace'].message_type = _FOREIGNROWVALUE_WORKSPACE
_FOREIGNROWVALUE_CORE.containing_type = _FOREIGNROWVALUE
_FOREIGNROWVALUE_TABLE.fields_by_name['core'].message_type = _FOREIGNROWVALUE_CORE
_FOREIGNROWVALUE_TABLE.containing_type = _FOREIGNROWVALUE
_FOREIGNROWVALUE.fields_by_name['visibleName'].message_type = _FOREIGNROWVISIBLENAMEVALUE
_FOREIGNROWVALUE.fields_by_name['table'].message_type = _FOREIGNROWVALUE_TABLE
_EVENTPAYLOAD.fields_by_name['coreCreatedDto'].message_type = _CORECREATEDDTO
_EVENTPAYLOAD.fields_by_name['coreUpdatedDto'].message_type = _COREUPDATEDDTO
_EVENTPAYLOAD.fields_by_name['columnConfig'].message_type = _COLUMNCONFIG
_EVENTPAYLOAD.fields_by_name['view'].message_type = _VIEWDEFINITION
_EVENTPAYLOAD.fields_by_name['action'].message_type = _UPDATECELLACTIONINPUT
_EVENTPAYLOAD.fields_by_name['_metadata'].message_type = _EVENTMETADATA
_VIEWDEFINITIONINPUT.fields_by_name['viewOptions'].message_type = _VIEWOPTIONSINPUT
_VIEWOPTIONSINPUT.fields_by_name['filters'].message_type = _VIEWFILTERINPUT
_VIEWFILTERINPUT.fields_by_name['value'].message_type = _CELLVALUEINPUT
_ADDVIEWINPUT.fields_by_name['view'].message_type = _VIEWDEFINITIONINPUT
_UPDATEVIEWINPUT.fields_by_name['view'].message_type = _VIEWUPDATEINPUT
_VIEWUPDATEINPUT.fields_by_name['viewOptions'].message_type = _VIEWOPTIONSINPUT
_ADDCOLUMNINPUT.fields_by_name['columnConfig'].message_type = _COLUMNCONFIGINPUT
_UPDATECOLUMNINPUT.fields_by_name['columnConfig'].message_type = _COLUMNCONFIGINPUT
_COLUMNCONFIGINPUT.fields_by_name['choices'].message_type = _CHOICE
_CELLVALUEINPUT.fields_by_name['selectedItem'].message_type = _CHOICE
_CELLVALUEINPUT.fields_by_name['selectedItems'].message_type = _CHOICE
_CELLVALUEINPUT.fields_by_name['attachments'].message_type = _ATTACHMENT
_UPDATECELLACTIONINPUT.fields_by_name['value'].message_type = _CELLVALUEINPUT
_UPDATECELLINPUT.fields_by_name['action'].message_type = _UPDATECELLACTIONINPUT
DESCRIPTOR.message_types_by_name['EmptyInput'] = _EMPTYINPUT
DESCRIPTOR.message_types_by_name['WorkspacesResult'] = _WORKSPACESRESULT
DESCRIPTOR.message_types_by_name['CoresResult'] = _CORESRESULT
DESCRIPTOR.message_types_by_name['TablesResult'] = _TABLESRESULT
DESCRIPTOR.message_types_by_name['GetLookupCellByColumnAndRowIdInput'] = _GETLOOKUPCELLBYCOLUMNANDROWIDINPUT
DESCRIPTOR.message_types_by_name['GetCellByColumnAndRowIdInput'] = _GETCELLBYCOLUMNANDROWIDINPUT
DESCRIPTOR.message_types_by_name['TableProjection'] = _TABLEPROJECTION
DESCRIPTOR.message_types_by_name['TableData'] = _TABLEDATA
DESCRIPTOR.message_types_by_name['RowData'] = _ROWDATA
DESCRIPTOR.message_types_by_name['LookupCellDataResult'] = _LOOKUPCELLDATARESULT
DESCRIPTOR.message_types_by_name['CellData'] = _CELLDATA
DESCRIPTOR.message_types_by_name['ViewData'] = _VIEWDATA
DESCRIPTOR.message_types_by_name['ViewOptions'] = _VIEWOPTIONS
DESCRIPTOR.message_types_by_name['ViewFilter'] = _VIEWFILTER
DESCRIPTOR.message_types_by_name['ColumnDefinition'] = _COLUMNDEFINITION
DESCRIPTOR.message_types_by_name['Choice'] = _CHOICE
DESCRIPTOR.message_types_by_name['WorkspaceProjection'] = _WORKSPACEPROJECTION
DESCRIPTOR.message_types_by_name['CoreProjection'] = _COREPROJECTION
DESCRIPTOR.message_types_by_name['ForeignRowVisibleNameValue'] = _FOREIGNROWVISIBLENAMEVALUE
DESCRIPTOR.message_types_by_name['ForeignRowValue'] = _FOREIGNROWVALUE
DESCRIPTOR.message_types_by_name['Attachment'] = _ATTACHMENT
DESCRIPTOR.message_types_by_name['ColumnConfig'] = _COLUMNCONFIG
DESCRIPTOR.message_types_by_name['ViewDefinition'] = _VIEWDEFINITION
DESCRIPTOR.message_types_by_name['EventMetadata'] = _EVENTMETADATA
DESCRIPTOR.message_types_by_name['EventPayload'] = _EVENTPAYLOAD
DESCRIPTOR.message_types_by_name['CoreCreatedDTO'] = _CORECREATEDDTO
DESCRIPTOR.message_types_by_name['CoreUpdatedDTO'] = _COREUPDATEDDTO
DESCRIPTOR.message_types_by_name['WorkspaceSubscriptionInput'] = _WORKSPACESUBSCRIPTIONINPUT
DESCRIPTOR.message_types_by_name['ViewDefinitionInput'] = _VIEWDEFINITIONINPUT
DESCRIPTOR.message_types_by_name['ViewOptionsInput'] = _VIEWOPTIONSINPUT
DESCRIPTOR.message_types_by_name['ViewFilterInput'] = _VIEWFILTERINPUT
DESCRIPTOR.message_types_by_name['AddViewInput'] = _ADDVIEWINPUT
DESCRIPTOR.message_types_by_name['UpdateViewInput'] = _UPDATEVIEWINPUT
DESCRIPTOR.message_types_by_name['ViewUpdateInput'] = _VIEWUPDATEINPUT
DESCRIPTOR.message_types_by_name['RemoveViewInput'] = _REMOVEVIEWINPUT
DESCRIPTOR.message_types_by_name['AddColumnInput'] = _ADDCOLUMNINPUT
DESCRIPTOR.message_types_by_name['UpdateColumnInput'] = _UPDATECOLUMNINPUT
DESCRIPTOR.message_types_by_name['UpdateColumnWidthInput'] = _UPDATECOLUMNWIDTHINPUT
DESCRIPTOR.message_types_by_name['ReorderColumnInput'] = _REORDERCOLUMNINPUT
DESCRIPTOR.message_types_by_name['ReorderRowInput'] = _REORDERROWINPUT
DESCRIPTOR.message_types_by_name['RemoveColumnInput'] = _REMOVECOLUMNINPUT
DESCRIPTOR.message_types_by_name['RemoveColumnFromViewInput'] = _REMOVECOLUMNFROMVIEWINPUT
DESCRIPTOR.message_types_by_name['ColumnConfigInput'] = _COLUMNCONFIGINPUT
DESCRIPTOR.message_types_by_name['AddRowInput'] = _ADDROWINPUT
DESCRIPTOR.message_types_by_name['RemoveRowFromViewInput'] = _REMOVEROWFROMVIEWINPUT
DESCRIPTOR.message_types_by_name['RemoveRowInput'] = _REMOVEROWINPUT
DESCRIPTOR.message_types_by_name['CellValueInput'] = _CELLVALUEINPUT
DESCRIPTOR.message_types_by_name['UpdateCellActionInput'] = _UPDATECELLACTIONINPUT
DESCRIPTOR.message_types_by_name['RemoveCellInput'] = _REMOVECELLINPUT
DESCRIPTOR.message_types_by_name['UpdateCellInput'] = _UPDATECELLINPUT
DESCRIPTOR.message_types_by_name['CreateWorkspaceInput'] = _CREATEWORKSPACEINPUT
DESCRIPTOR.message_types_by_name['UpdateWorkspaceInput'] = _UPDATEWORKSPACEINPUT
DESCRIPTOR.message_types_by_name['AddCoreInput'] = _ADDCOREINPUT
DESCRIPTOR.message_types_by_name['UpdateCoreInput'] = _UPDATECOREINPUT
DESCRIPTOR.message_types_by_name['RemoveCoreInput'] = _REMOVECOREINPUT
DESCRIPTOR.message_types_by_name['AddTableInput'] = _ADDTABLEINPUT
DESCRIPTOR.message_types_by_name['UpdateTableNameInput'] = _UPDATETABLENAMEINPUT
DESCRIPTOR.message_types_by_name['GetTableInput'] = _GETTABLEINPUT
DESCRIPTOR.message_types_by_name['RemoveTableInput'] = _REMOVETABLEINPUT
DESCRIPTOR.message_types_by_name['GetWorkspaceInput'] = _GETWORKSPACEINPUT
DESCRIPTOR.message_types_by_name['GetCoreInput'] = _GETCOREINPUT
DESCRIPTOR.message_types_by_name['GetCoresInput'] = _GETCORESINPUT
DESCRIPTOR.message_types_by_name['GetTablesInput'] = _GETTABLESINPUT
DESCRIPTOR.message_types_by_name['WorkspaceId'] = _WORKSPACEID
DESCRIPTOR.message_types_by_name['CoreId'] = _COREID
DESCRIPTOR.message_types_by_name['TableId'] = _TABLEID
DESCRIPTOR.message_types_by_name['ColumnId'] = _COLUMNID
DESCRIPTOR.message_types_by_name['RowId'] = _ROWID
DESCRIPTOR.message_types_by_name['ViewId'] = _VIEWID
_sym_db.RegisterFileDescriptor(DESCRIPTOR)

EmptyInput = _reflection.GeneratedProtocolMessageType('EmptyInput', (_message.Message,), dict(
  DESCRIPTOR = _EMPTYINPUT,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.EmptyInput)
  ))
_sym_db.RegisterMessage(EmptyInput)

WorkspacesResult = _reflection.GeneratedProtocolMessageType('WorkspacesResult', (_message.Message,), dict(
  DESCRIPTOR = _WORKSPACESRESULT,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.WorkspacesResult)
  ))
_sym_db.RegisterMessage(WorkspacesResult)

CoresResult = _reflection.GeneratedProtocolMessageType('CoresResult', (_message.Message,), dict(
  DESCRIPTOR = _CORESRESULT,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.CoresResult)
  ))
_sym_db.RegisterMessage(CoresResult)

TablesResult = _reflection.GeneratedProtocolMessageType('TablesResult', (_message.Message,), dict(
  DESCRIPTOR = _TABLESRESULT,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.TablesResult)
  ))
_sym_db.RegisterMessage(TablesResult)

GetLookupCellByColumnAndRowIdInput = _reflection.GeneratedProtocolMessageType('GetLookupCellByColumnAndRowIdInput', (_message.Message,), dict(
  DESCRIPTOR = _GETLOOKUPCELLBYCOLUMNANDROWIDINPUT,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.GetLookupCellByColumnAndRowIdInput)
  ))
_sym_db.RegisterMessage(GetLookupCellByColumnAndRowIdInput)

GetCellByColumnAndRowIdInput = _reflection.GeneratedProtocolMessageType('GetCellByColumnAndRowIdInput', (_message.Message,), dict(
  DESCRIPTOR = _GETCELLBYCOLUMNANDROWIDINPUT,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.GetCellByColumnAndRowIdInput)
  ))
_sym_db.RegisterMessage(GetCellByColumnAndRowIdInput)

TableProjection = _reflection.GeneratedProtocolMessageType('TableProjection', (_message.Message,), dict(
  DESCRIPTOR = _TABLEPROJECTION,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.TableProjection)
  ))
_sym_db.RegisterMessage(TableProjection)

TableData = _reflection.GeneratedProtocolMessageType('TableData', (_message.Message,), dict(
  DESCRIPTOR = _TABLEDATA,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.TableData)
  ))
_sym_db.RegisterMessage(TableData)

RowData = _reflection.GeneratedProtocolMessageType('RowData', (_message.Message,), dict(
  DESCRIPTOR = _ROWDATA,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.RowData)
  ))
_sym_db.RegisterMessage(RowData)

LookupCellDataResult = _reflection.GeneratedProtocolMessageType('LookupCellDataResult', (_message.Message,), dict(
  DESCRIPTOR = _LOOKUPCELLDATARESULT,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.LookupCellDataResult)
  ))
_sym_db.RegisterMessage(LookupCellDataResult)

CellData = _reflection.GeneratedProtocolMessageType('CellData', (_message.Message,), dict(
  DESCRIPTOR = _CELLDATA,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.CellData)
  ))
_sym_db.RegisterMessage(CellData)

ViewData = _reflection.GeneratedProtocolMessageType('ViewData', (_message.Message,), dict(
  DESCRIPTOR = _VIEWDATA,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.ViewData)
  ))
_sym_db.RegisterMessage(ViewData)

ViewOptions = _reflection.GeneratedProtocolMessageType('ViewOptions', (_message.Message,), dict(
  DESCRIPTOR = _VIEWOPTIONS,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.ViewOptions)
  ))
_sym_db.RegisterMessage(ViewOptions)

ViewFilter = _reflection.GeneratedProtocolMessageType('ViewFilter', (_message.Message,), dict(
  DESCRIPTOR = _VIEWFILTER,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.ViewFilter)
  ))
_sym_db.RegisterMessage(ViewFilter)

ColumnDefinition = _reflection.GeneratedProtocolMessageType('ColumnDefinition', (_message.Message,), dict(
  DESCRIPTOR = _COLUMNDEFINITION,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.ColumnDefinition)
  ))
_sym_db.RegisterMessage(ColumnDefinition)

Choice = _reflection.GeneratedProtocolMessageType('Choice', (_message.Message,), dict(
  DESCRIPTOR = _CHOICE,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.Choice)
  ))
_sym_db.RegisterMessage(Choice)

WorkspaceProjection = _reflection.GeneratedProtocolMessageType('WorkspaceProjection', (_message.Message,), dict(
  DESCRIPTOR = _WORKSPACEPROJECTION,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.WorkspaceProjection)
  ))
_sym_db.RegisterMessage(WorkspaceProjection)

CoreProjection = _reflection.GeneratedProtocolMessageType('CoreProjection', (_message.Message,), dict(
  DESCRIPTOR = _COREPROJECTION,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.CoreProjection)
  ))
_sym_db.RegisterMessage(CoreProjection)

ForeignRowVisibleNameValue = _reflection.GeneratedProtocolMessageType('ForeignRowVisibleNameValue', (_message.Message,), dict(
  DESCRIPTOR = _FOREIGNROWVISIBLENAMEVALUE,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.ForeignRowVisibleNameValue)
  ))
_sym_db.RegisterMessage(ForeignRowVisibleNameValue)

ForeignRowValue = _reflection.GeneratedProtocolMessageType('ForeignRowValue', (_message.Message,), dict(

  Workspace = _reflection.GeneratedProtocolMessageType('Workspace', (_message.Message,), dict(
    DESCRIPTOR = _FOREIGNROWVALUE_WORKSPACE,
    __module__ = 'service_pb2'
    # @@protoc_insertion_point(class_scope:co.treelab.api.ForeignRowValue.Workspace)
    ))
  ,

  Core = _reflection.GeneratedProtocolMessageType('Core', (_message.Message,), dict(
    DESCRIPTOR = _FOREIGNROWVALUE_CORE,
    __module__ = 'service_pb2'
    # @@protoc_insertion_point(class_scope:co.treelab.api.ForeignRowValue.Core)
    ))
  ,

  Table = _reflection.GeneratedProtocolMessageType('Table', (_message.Message,), dict(
    DESCRIPTOR = _FOREIGNROWVALUE_TABLE,
    __module__ = 'service_pb2'
    # @@protoc_insertion_point(class_scope:co.treelab.api.ForeignRowValue.Table)
    ))
  ,
  DESCRIPTOR = _FOREIGNROWVALUE,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.ForeignRowValue)
  ))
_sym_db.RegisterMessage(ForeignRowValue)
_sym_db.RegisterMessage(ForeignRowValue.Workspace)
_sym_db.RegisterMessage(ForeignRowValue.Core)
_sym_db.RegisterMessage(ForeignRowValue.Table)

Attachment = _reflection.GeneratedProtocolMessageType('Attachment', (_message.Message,), dict(
  DESCRIPTOR = _ATTACHMENT,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.Attachment)
  ))
_sym_db.RegisterMessage(Attachment)

ColumnConfig = _reflection.GeneratedProtocolMessageType('ColumnConfig', (_message.Message,), dict(
  DESCRIPTOR = _COLUMNCONFIG,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.ColumnConfig)
  ))
_sym_db.RegisterMessage(ColumnConfig)

ViewDefinition = _reflection.GeneratedProtocolMessageType('ViewDefinition', (_message.Message,), dict(
  DESCRIPTOR = _VIEWDEFINITION,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.ViewDefinition)
  ))
_sym_db.RegisterMessage(ViewDefinition)

EventMetadata = _reflection.GeneratedProtocolMessageType('EventMetadata', (_message.Message,), dict(
  DESCRIPTOR = _EVENTMETADATA,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.EventMetadata)
  ))
_sym_db.RegisterMessage(EventMetadata)

EventPayload = _reflection.GeneratedProtocolMessageType('EventPayload', (_message.Message,), dict(
  DESCRIPTOR = _EVENTPAYLOAD,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.EventPayload)
  ))
_sym_db.RegisterMessage(EventPayload)

CoreCreatedDTO = _reflection.GeneratedProtocolMessageType('CoreCreatedDTO', (_message.Message,), dict(
  DESCRIPTOR = _CORECREATEDDTO,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.CoreCreatedDTO)
  ))
_sym_db.RegisterMessage(CoreCreatedDTO)

CoreUpdatedDTO = _reflection.GeneratedProtocolMessageType('CoreUpdatedDTO', (_message.Message,), dict(
  DESCRIPTOR = _COREUPDATEDDTO,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.CoreUpdatedDTO)
  ))
_sym_db.RegisterMessage(CoreUpdatedDTO)

WorkspaceSubscriptionInput = _reflection.GeneratedProtocolMessageType('WorkspaceSubscriptionInput', (_message.Message,), dict(
  DESCRIPTOR = _WORKSPACESUBSCRIPTIONINPUT,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.WorkspaceSubscriptionInput)
  ))
_sym_db.RegisterMessage(WorkspaceSubscriptionInput)

ViewDefinitionInput = _reflection.GeneratedProtocolMessageType('ViewDefinitionInput', (_message.Message,), dict(
  DESCRIPTOR = _VIEWDEFINITIONINPUT,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.ViewDefinitionInput)
  ))
_sym_db.RegisterMessage(ViewDefinitionInput)

ViewOptionsInput = _reflection.GeneratedProtocolMessageType('ViewOptionsInput', (_message.Message,), dict(
  DESCRIPTOR = _VIEWOPTIONSINPUT,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.ViewOptionsInput)
  ))
_sym_db.RegisterMessage(ViewOptionsInput)

ViewFilterInput = _reflection.GeneratedProtocolMessageType('ViewFilterInput', (_message.Message,), dict(
  DESCRIPTOR = _VIEWFILTERINPUT,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.ViewFilterInput)
  ))
_sym_db.RegisterMessage(ViewFilterInput)

AddViewInput = _reflection.GeneratedProtocolMessageType('AddViewInput', (_message.Message,), dict(
  DESCRIPTOR = _ADDVIEWINPUT,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.AddViewInput)
  ))
_sym_db.RegisterMessage(AddViewInput)

UpdateViewInput = _reflection.GeneratedProtocolMessageType('UpdateViewInput', (_message.Message,), dict(
  DESCRIPTOR = _UPDATEVIEWINPUT,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.UpdateViewInput)
  ))
_sym_db.RegisterMessage(UpdateViewInput)

ViewUpdateInput = _reflection.GeneratedProtocolMessageType('ViewUpdateInput', (_message.Message,), dict(
  DESCRIPTOR = _VIEWUPDATEINPUT,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.ViewUpdateInput)
  ))
_sym_db.RegisterMessage(ViewUpdateInput)

RemoveViewInput = _reflection.GeneratedProtocolMessageType('RemoveViewInput', (_message.Message,), dict(
  DESCRIPTOR = _REMOVEVIEWINPUT,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.RemoveViewInput)
  ))
_sym_db.RegisterMessage(RemoveViewInput)

AddColumnInput = _reflection.GeneratedProtocolMessageType('AddColumnInput', (_message.Message,), dict(
  DESCRIPTOR = _ADDCOLUMNINPUT,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.AddColumnInput)
  ))
_sym_db.RegisterMessage(AddColumnInput)

UpdateColumnInput = _reflection.GeneratedProtocolMessageType('UpdateColumnInput', (_message.Message,), dict(
  DESCRIPTOR = _UPDATECOLUMNINPUT,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.UpdateColumnInput)
  ))
_sym_db.RegisterMessage(UpdateColumnInput)

UpdateColumnWidthInput = _reflection.GeneratedProtocolMessageType('UpdateColumnWidthInput', (_message.Message,), dict(
  DESCRIPTOR = _UPDATECOLUMNWIDTHINPUT,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.UpdateColumnWidthInput)
  ))
_sym_db.RegisterMessage(UpdateColumnWidthInput)

ReorderColumnInput = _reflection.GeneratedProtocolMessageType('ReorderColumnInput', (_message.Message,), dict(
  DESCRIPTOR = _REORDERCOLUMNINPUT,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.ReorderColumnInput)
  ))
_sym_db.RegisterMessage(ReorderColumnInput)

ReorderRowInput = _reflection.GeneratedProtocolMessageType('ReorderRowInput', (_message.Message,), dict(
  DESCRIPTOR = _REORDERROWINPUT,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.ReorderRowInput)
  ))
_sym_db.RegisterMessage(ReorderRowInput)

RemoveColumnInput = _reflection.GeneratedProtocolMessageType('RemoveColumnInput', (_message.Message,), dict(
  DESCRIPTOR = _REMOVECOLUMNINPUT,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.RemoveColumnInput)
  ))
_sym_db.RegisterMessage(RemoveColumnInput)

RemoveColumnFromViewInput = _reflection.GeneratedProtocolMessageType('RemoveColumnFromViewInput', (_message.Message,), dict(
  DESCRIPTOR = _REMOVECOLUMNFROMVIEWINPUT,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.RemoveColumnFromViewInput)
  ))
_sym_db.RegisterMessage(RemoveColumnFromViewInput)

ColumnConfigInput = _reflection.GeneratedProtocolMessageType('ColumnConfigInput', (_message.Message,), dict(
  DESCRIPTOR = _COLUMNCONFIGINPUT,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.ColumnConfigInput)
  ))
_sym_db.RegisterMessage(ColumnConfigInput)

AddRowInput = _reflection.GeneratedProtocolMessageType('AddRowInput', (_message.Message,), dict(
  DESCRIPTOR = _ADDROWINPUT,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.AddRowInput)
  ))
_sym_db.RegisterMessage(AddRowInput)

RemoveRowFromViewInput = _reflection.GeneratedProtocolMessageType('RemoveRowFromViewInput', (_message.Message,), dict(
  DESCRIPTOR = _REMOVEROWFROMVIEWINPUT,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.RemoveRowFromViewInput)
  ))
_sym_db.RegisterMessage(RemoveRowFromViewInput)

RemoveRowInput = _reflection.GeneratedProtocolMessageType('RemoveRowInput', (_message.Message,), dict(
  DESCRIPTOR = _REMOVEROWINPUT,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.RemoveRowInput)
  ))
_sym_db.RegisterMessage(RemoveRowInput)

CellValueInput = _reflection.GeneratedProtocolMessageType('CellValueInput', (_message.Message,), dict(
  DESCRIPTOR = _CELLVALUEINPUT,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.CellValueInput)
  ))
_sym_db.RegisterMessage(CellValueInput)

UpdateCellActionInput = _reflection.GeneratedProtocolMessageType('UpdateCellActionInput', (_message.Message,), dict(
  DESCRIPTOR = _UPDATECELLACTIONINPUT,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.UpdateCellActionInput)
  ))
_sym_db.RegisterMessage(UpdateCellActionInput)

RemoveCellInput = _reflection.GeneratedProtocolMessageType('RemoveCellInput', (_message.Message,), dict(
  DESCRIPTOR = _REMOVECELLINPUT,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.RemoveCellInput)
  ))
_sym_db.RegisterMessage(RemoveCellInput)

UpdateCellInput = _reflection.GeneratedProtocolMessageType('UpdateCellInput', (_message.Message,), dict(
  DESCRIPTOR = _UPDATECELLINPUT,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.UpdateCellInput)
  ))
_sym_db.RegisterMessage(UpdateCellInput)

CreateWorkspaceInput = _reflection.GeneratedProtocolMessageType('CreateWorkspaceInput', (_message.Message,), dict(
  DESCRIPTOR = _CREATEWORKSPACEINPUT,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.CreateWorkspaceInput)
  ))
_sym_db.RegisterMessage(CreateWorkspaceInput)

UpdateWorkspaceInput = _reflection.GeneratedProtocolMessageType('UpdateWorkspaceInput', (_message.Message,), dict(
  DESCRIPTOR = _UPDATEWORKSPACEINPUT,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.UpdateWorkspaceInput)
  ))
_sym_db.RegisterMessage(UpdateWorkspaceInput)

AddCoreInput = _reflection.GeneratedProtocolMessageType('AddCoreInput', (_message.Message,), dict(
  DESCRIPTOR = _ADDCOREINPUT,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.AddCoreInput)
  ))
_sym_db.RegisterMessage(AddCoreInput)

UpdateCoreInput = _reflection.GeneratedProtocolMessageType('UpdateCoreInput', (_message.Message,), dict(
  DESCRIPTOR = _UPDATECOREINPUT,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.UpdateCoreInput)
  ))
_sym_db.RegisterMessage(UpdateCoreInput)

RemoveCoreInput = _reflection.GeneratedProtocolMessageType('RemoveCoreInput', (_message.Message,), dict(
  DESCRIPTOR = _REMOVECOREINPUT,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.RemoveCoreInput)
  ))
_sym_db.RegisterMessage(RemoveCoreInput)

AddTableInput = _reflection.GeneratedProtocolMessageType('AddTableInput', (_message.Message,), dict(
  DESCRIPTOR = _ADDTABLEINPUT,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.AddTableInput)
  ))
_sym_db.RegisterMessage(AddTableInput)

UpdateTableNameInput = _reflection.GeneratedProtocolMessageType('UpdateTableNameInput', (_message.Message,), dict(
  DESCRIPTOR = _UPDATETABLENAMEINPUT,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.UpdateTableNameInput)
  ))
_sym_db.RegisterMessage(UpdateTableNameInput)

GetTableInput = _reflection.GeneratedProtocolMessageType('GetTableInput', (_message.Message,), dict(
  DESCRIPTOR = _GETTABLEINPUT,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.GetTableInput)
  ))
_sym_db.RegisterMessage(GetTableInput)

RemoveTableInput = _reflection.GeneratedProtocolMessageType('RemoveTableInput', (_message.Message,), dict(
  DESCRIPTOR = _REMOVETABLEINPUT,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.RemoveTableInput)
  ))
_sym_db.RegisterMessage(RemoveTableInput)

GetWorkspaceInput = _reflection.GeneratedProtocolMessageType('GetWorkspaceInput', (_message.Message,), dict(
  DESCRIPTOR = _GETWORKSPACEINPUT,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.GetWorkspaceInput)
  ))
_sym_db.RegisterMessage(GetWorkspaceInput)

GetCoreInput = _reflection.GeneratedProtocolMessageType('GetCoreInput', (_message.Message,), dict(
  DESCRIPTOR = _GETCOREINPUT,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.GetCoreInput)
  ))
_sym_db.RegisterMessage(GetCoreInput)

GetCoresInput = _reflection.GeneratedProtocolMessageType('GetCoresInput', (_message.Message,), dict(
  DESCRIPTOR = _GETCORESINPUT,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.GetCoresInput)
  ))
_sym_db.RegisterMessage(GetCoresInput)

GetTablesInput = _reflection.GeneratedProtocolMessageType('GetTablesInput', (_message.Message,), dict(
  DESCRIPTOR = _GETTABLESINPUT,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.GetTablesInput)
  ))
_sym_db.RegisterMessage(GetTablesInput)

WorkspaceId = _reflection.GeneratedProtocolMessageType('WorkspaceId', (_message.Message,), dict(
  DESCRIPTOR = _WORKSPACEID,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.WorkspaceId)
  ))
_sym_db.RegisterMessage(WorkspaceId)

CoreId = _reflection.GeneratedProtocolMessageType('CoreId', (_message.Message,), dict(
  DESCRIPTOR = _COREID,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.CoreId)
  ))
_sym_db.RegisterMessage(CoreId)

TableId = _reflection.GeneratedProtocolMessageType('TableId', (_message.Message,), dict(
  DESCRIPTOR = _TABLEID,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.TableId)
  ))
_sym_db.RegisterMessage(TableId)

ColumnId = _reflection.GeneratedProtocolMessageType('ColumnId', (_message.Message,), dict(
  DESCRIPTOR = _COLUMNID,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.ColumnId)
  ))
_sym_db.RegisterMessage(ColumnId)

RowId = _reflection.GeneratedProtocolMessageType('RowId', (_message.Message,), dict(
  DESCRIPTOR = _ROWID,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.RowId)
  ))
_sym_db.RegisterMessage(RowId)

ViewId = _reflection.GeneratedProtocolMessageType('ViewId', (_message.Message,), dict(
  DESCRIPTOR = _VIEWID,
  __module__ = 'service_pb2'
  # @@protoc_insertion_point(class_scope:co.treelab.api.ViewId)
  ))
_sym_db.RegisterMessage(ViewId)



_TREELABAPISERVICE = _descriptor.ServiceDescriptor(
  name='TreeLabApiService',
  full_name='co.treelab.api.TreeLabApiService',
  file=DESCRIPTOR,
  index=0,
  serialized_options=None,
  serialized_start=7171,
  serialized_end=9770,
  methods=[
  _descriptor.MethodDescriptor(
    name='CreateWorkspace',
    full_name='co.treelab.api.TreeLabApiService.CreateWorkspace',
    index=0,
    containing_service=None,
    input_type=_CREATEWORKSPACEINPUT,
    output_type=_WORKSPACEID,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='UpdateWorkspace',
    full_name='co.treelab.api.TreeLabApiService.UpdateWorkspace',
    index=1,
    containing_service=None,
    input_type=_UPDATEWORKSPACEINPUT,
    output_type=_WORKSPACEID,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='AddCore',
    full_name='co.treelab.api.TreeLabApiService.AddCore',
    index=2,
    containing_service=None,
    input_type=_ADDCOREINPUT,
    output_type=_COREID,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='UpdateCore',
    full_name='co.treelab.api.TreeLabApiService.UpdateCore',
    index=3,
    containing_service=None,
    input_type=_UPDATECOREINPUT,
    output_type=_COREID,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='RemoveCore',
    full_name='co.treelab.api.TreeLabApiService.RemoveCore',
    index=4,
    containing_service=None,
    input_type=_REMOVECOREINPUT,
    output_type=_COREID,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='AddTable',
    full_name='co.treelab.api.TreeLabApiService.AddTable',
    index=5,
    containing_service=None,
    input_type=_ADDTABLEINPUT,
    output_type=_TABLEID,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='UpdateTableName',
    full_name='co.treelab.api.TreeLabApiService.UpdateTableName',
    index=6,
    containing_service=None,
    input_type=_UPDATETABLENAMEINPUT,
    output_type=_TABLEID,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='RemoveTable',
    full_name='co.treelab.api.TreeLabApiService.RemoveTable',
    index=7,
    containing_service=None,
    input_type=_REMOVETABLEINPUT,
    output_type=_TABLEID,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='AddView',
    full_name='co.treelab.api.TreeLabApiService.AddView',
    index=8,
    containing_service=None,
    input_type=_ADDVIEWINPUT,
    output_type=_VIEWID,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='UpdateView',
    full_name='co.treelab.api.TreeLabApiService.UpdateView',
    index=9,
    containing_service=None,
    input_type=_UPDATEVIEWINPUT,
    output_type=_VIEWID,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='RemoveView',
    full_name='co.treelab.api.TreeLabApiService.RemoveView',
    index=10,
    containing_service=None,
    input_type=_REMOVEVIEWINPUT,
    output_type=_VIEWID,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='AddColumn',
    full_name='co.treelab.api.TreeLabApiService.AddColumn',
    index=11,
    containing_service=None,
    input_type=_ADDCOLUMNINPUT,
    output_type=_COLUMNID,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='UpdateColumn',
    full_name='co.treelab.api.TreeLabApiService.UpdateColumn',
    index=12,
    containing_service=None,
    input_type=_UPDATECOLUMNINPUT,
    output_type=_COLUMNID,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='RemoveColumn',
    full_name='co.treelab.api.TreeLabApiService.RemoveColumn',
    index=13,
    containing_service=None,
    input_type=_REMOVECOLUMNINPUT,
    output_type=_COLUMNID,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='RemoveColumnFromView',
    full_name='co.treelab.api.TreeLabApiService.RemoveColumnFromView',
    index=14,
    containing_service=None,
    input_type=_REMOVECOLUMNFROMVIEWINPUT,
    output_type=_COLUMNID,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='UpdateColumnWidth',
    full_name='co.treelab.api.TreeLabApiService.UpdateColumnWidth',
    index=15,
    containing_service=None,
    input_type=_UPDATECOLUMNWIDTHINPUT,
    output_type=_COLUMNID,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='ReorderColumn',
    full_name='co.treelab.api.TreeLabApiService.ReorderColumn',
    index=16,
    containing_service=None,
    input_type=_REORDERCOLUMNINPUT,
    output_type=_COLUMNID,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='AddRow',
    full_name='co.treelab.api.TreeLabApiService.AddRow',
    index=17,
    containing_service=None,
    input_type=_ADDROWINPUT,
    output_type=_ROWID,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='ReorderRow',
    full_name='co.treelab.api.TreeLabApiService.ReorderRow',
    index=18,
    containing_service=None,
    input_type=_REORDERROWINPUT,
    output_type=_ROWID,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='RemoveRow',
    full_name='co.treelab.api.TreeLabApiService.RemoveRow',
    index=19,
    containing_service=None,
    input_type=_REMOVEROWINPUT,
    output_type=_ROWID,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='RemoveRowFromView',
    full_name='co.treelab.api.TreeLabApiService.RemoveRowFromView',
    index=20,
    containing_service=None,
    input_type=_REMOVEROWFROMVIEWINPUT,
    output_type=_ROWID,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='UpdateCell',
    full_name='co.treelab.api.TreeLabApiService.UpdateCell',
    index=21,
    containing_service=None,
    input_type=_UPDATECELLINPUT,
    output_type=_TABLEID,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='RemoveCell',
    full_name='co.treelab.api.TreeLabApiService.RemoveCell',
    index=22,
    containing_service=None,
    input_type=_REMOVECELLINPUT,
    output_type=_TABLEID,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='SubscribeToWorkspace',
    full_name='co.treelab.api.TreeLabApiService.SubscribeToWorkspace',
    index=23,
    containing_service=None,
    input_type=_WORKSPACESUBSCRIPTIONINPUT,
    output_type=_EVENTPAYLOAD,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='GetWorkspace',
    full_name='co.treelab.api.TreeLabApiService.GetWorkspace',
    index=24,
    containing_service=None,
    input_type=_GETWORKSPACEINPUT,
    output_type=_WORKSPACEPROJECTION,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='GetCore',
    full_name='co.treelab.api.TreeLabApiService.GetCore',
    index=25,
    containing_service=None,
    input_type=_GETCOREINPUT,
    output_type=_COREPROJECTION,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='GetTable',
    full_name='co.treelab.api.TreeLabApiService.GetTable',
    index=26,
    containing_service=None,
    input_type=_GETTABLEINPUT,
    output_type=_TABLEPROJECTION,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='GetCellByColumnAndRowId',
    full_name='co.treelab.api.TreeLabApiService.GetCellByColumnAndRowId',
    index=27,
    containing_service=None,
    input_type=_GETCELLBYCOLUMNANDROWIDINPUT,
    output_type=_CELLDATA,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='GetLookupCellByColumnAndRowId',
    full_name='co.treelab.api.TreeLabApiService.GetLookupCellByColumnAndRowId',
    index=28,
    containing_service=None,
    input_type=_GETLOOKUPCELLBYCOLUMNANDROWIDINPUT,
    output_type=_LOOKUPCELLDATARESULT,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='GetAllWorkspaces',
    full_name='co.treelab.api.TreeLabApiService.GetAllWorkspaces',
    index=29,
    containing_service=None,
    input_type=_EMPTYINPUT,
    output_type=_WORKSPACESRESULT,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='GetAllCores',
    full_name='co.treelab.api.TreeLabApiService.GetAllCores',
    index=30,
    containing_service=None,
    input_type=_GETCORESINPUT,
    output_type=_CORESRESULT,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='GetAllTables',
    full_name='co.treelab.api.TreeLabApiService.GetAllTables',
    index=31,
    containing_service=None,
    input_type=_GETTABLESINPUT,
    output_type=_TABLESRESULT,
    serialized_options=None,
  ),
])
_sym_db.RegisterServiceDescriptor(_TREELABAPISERVICE)

DESCRIPTOR.services_by_name['TreeLabApiService'] = _TREELABAPISERVICE

# @@protoc_insertion_point(module_scope)
