This document outlines a way for third-party Discord clients, plugins, or other modifications to persist custom settings, data, and user preferences to a given Discord account. Settings are to be persisted in a way where they do not interfere with the normal operation of the Discord client or with other third-party modifications. Settings will also support real-time updates through Discord's existing Real Time Gateway.
This goal is accomplished through Discord's existing user settings API. The current implementation uses protobufs, with three distinct settings types:
export enum UserSettingsTypes {