{
  "protocol": "gregor",
  "imports": [],
  "types": [
    {
      "type": "record",
      "name": "GenericPayload",
      "fields": [
        {
          "type": "string",
          "name": "Action",
          "lint": "ignore"
        }
      ]
    },
    {
      "type": "record",
      "name": "NewConversationPayload",
      "fields": [
        {
          "type": "string",
          "name": "Action",
          "lint": "ignore"
        },
        {
          "type": "ConversationID",
          "name": "convID"
        },
        {
          "type": "InboxVers",
          "name": "inboxVers"
        },
        {
          "type": [
            null,
            "UnreadUpdate"
          ],
          "name": "unreadUpdate"
        }
      ]
    },
    {
      "type": "record",
      "name": "NewMessagePayload",
      "fields": [
        {
          "type": "string",
          "name": "Action",
          "lint": "ignore"
        },
        {
          "type": "ConversationID",
          "name": "convID"
        },
        {
          "type": "MessageBoxed",
          "name": "message"
        },
        {
          "type": "InboxVers",
          "name": "inboxVers"
        },
        {
          "type": [
            null,
            "UnreadUpdate"
          ],
          "name": "unreadUpdate"
        }
      ]
    },
    {
      "type": "record",
      "name": "ReadMessagePayload",
      "fields": [
        {
          "type": "string",
          "name": "Action",
          "lint": "ignore"
        },
        {
          "type": "ConversationID",
          "name": "convID"
        },
        {
          "type": "MessageID",
          "name": "msgID"
        },
        {
          "type": "InboxVers",
          "name": "inboxVers"
        },
        {
          "type": [
            null,
            "UnreadUpdate"
          ],
          "name": "unreadUpdate"
        }
      ]
    },
    {
      "type": "record",
      "name": "SetStatusPayload",
      "fields": [
        {
          "type": "string",
          "name": "Action",
          "lint": "ignore"
        },
        {
          "type": "ConversationID",
          "name": "convID"
        },
        {
          "type": "ConversationStatus",
          "name": "status"
        },
        {
          "type": "InboxVers",
          "name": "inboxVers"
        },
        {
          "type": [
            null,
            "UnreadUpdate"
          ],
          "name": "unreadUpdate"
        }
      ]
    },
    {
      "type": "record",
      "name": "UnreadUpdate",
      "fields": [
        {
          "type": "ConversationID",
          "name": "convID"
        },
        {
          "type": "int",
          "name": "UnreadMessages",
          "lint": "ignore"
        }
      ]
    },
    {
      "type": "record",
      "name": "TLFFinalizeUpdate",
      "fields": [
        {
          "type": "ConversationFinalizeInfo",
          "name": "finalizeInfo"
        },
        {
          "type": {
            "type": "array",
            "items": "ConversationID"
          },
          "name": "convIDs"
        },
        {
          "type": "InboxVers",
          "name": "inboxVers"
        }
      ]
    },
    {
      "type": "record",
      "name": "TLFResolveUpdate",
      "fields": [
        {
          "type": "ConversationID",
          "name": "convID"
        },
        {
          "type": "InboxVers",
          "name": "inboxVers"
        }
      ]
    }
  ],
  "messages": {},
  "namespace": "chat.1"
}