{
  "HostConfig": {
    "AgentString": "'User-Agent' used when communicating with Sia/ScPrime's API.",
    "ApiPassword": "Password used when communicating with Sia/ScPrime's API.\n\nThis is not the same as your wallet's password, so please do not enter it here. Sia/ScPrime typically auto-generate this value. It is exclusively used for API authentication purposes.",
    "ApiPort": "API port used to connect to Sia/ScPrime's daemon.",
    "HostNameOrIp": "IP address or host name of Sia/ScPrime daemon.",
    "TimeoutMs": "Number of milliseconds to wait for Sia/ScPrime API responses before timing out."
  },
  "RemoteMount": {
    "EnableRemoteMount": "Allow mounting this location over TCP.",
    "RemoteClientPoolSize": "Number of threads to use for each unique client.",
    "RemoteHostNameOrIp": "Host name or IP of host to connect to for remote mounting.",
    "RemoteMaxConnections": "Maximum number of TCP connections to use when communicating with remote instances.",
    "RemotePort": "TCP port used for remote mounting.",
    "RemoteReceiveTimeoutSeconds": "Number of seconds to wait for a response before failing.",
    "RemoteSendTimeoutSeconds": "Number of seconds to wait for a request to be written before failing.",
    "RemoteToken": "Encryption token used for remote mounts. This value must be the same on local and remote systems."
  },
  "Settings": {
    "ApiAuth": "Password used to communicate with Repertory's API. Auto-generated by default.",
    "ApiPort": "Repertory API port to use for JSON-RPC requests.",
    "ApiUser": "Username used to communicate with Repertory's API.",
    "ChunkDownloaderTimeoutSeconds": "Files that are not cached locally will download data in ChunkSize chunks when a read or write operation occurs. This timeout value specifies the amount of time chunks should continue downloading after the last file handle has been closed.",
    "ChunkSize": "This is the minimum data size (converted to KiB - value of 8 means 8KiB) used for downloads. This value cannot be less than 8 and should also be a multiple of 8.",
    "EnableChunkDownloaderTimeout": "This setting applies to full allocation downloads. When set to true, downloads will timeout after ChunkDownloaderTimeoutSeconds if the file has no more open handles. If set to false, the entire file will always download.",
    "EnableCommDurationEvents": "Debug setting. Enable this to log API call durations.",
    "EnableDriveEvents": "When set to true, additional logging for FUSE on UNIX or WinFSP on Windows will occur. It's best to leave this value set to 'false' unless troubleshooting an issue as enabling it may have an adverse affect on performance.",
    "EnableMaxCacheSize": "If set to true, files will begin to be removed from the local cache as soon as MaxCacheSizeBytes and MinimumRedundancy have been met. This does not mean further attempts to write will fail when MaxCacheSizeBytes is reached. Writes will continue as long as there is enough local drive space to accommodate the operation.\n\nIf set to false, files will begin to be removed from the local cache as soon as MinimumRedundancy has been met.\n\nIn both cases, files that do not have any open handles will be chosen by oldest modification date for removal.",
    "EnableMountManager": "[EXPERIMENTAL]\n\nEnabling this setting will allow all users and background services to have access to the mounted location. By default, only the user executing the mount has access to the drive.\n\nNOTE:Requires UAC Administrator elevation.",
    "EventLevel": "Internally, events are fired during certain operations. This setting determines which events should be logged to repertory.log. Valid values are Error, Warn, Normal, Debug, and Verbose.",
    "EvictionDelaySeconds": "Number of seconds to wait after all file handles are closed before allowing file to be evicted from cache.",
    "EvictionDelayMinutes": "Number of minutes to wait after all file handles are closed before allowing file to be evicted from cache.",
    "MaxCacheSizeBytes": "This value specifies the maximum amount of local space to consume before files are removed from cache. EnableMaxCacheSize must also be set to true for this value to take affect.",
    "MinimumRedundancy": "Files are elected for removal once this value has been reached. Be aware that this value cannot be set to less than 1.5x.",
    "OnlineCheckRetrySeconds": "Number of seconds to wait for Sia/ScPrime daemon to become available/connectable.",
    "OrphanedFileRetentionDays": "Repertory attempts to keep modifications between Sia-UI and the mounted location in sync as much as possible. In the event a file is removed from Sia-UI, it will be marked as orphaned in Repertory and moved into an 'orphaned' directory within Repertory's data directory. This setting specifies the number of days this file is retained before final deletion.",
    "PreferredDownloadType": "Repertory supports 3 download modes for reading files that are not cached locally: full file allocation, ring buffer mode and direct mode.\n\nFull file allocation mode pre-allocates the entire file prior to downloading. This mode is required for writes but also ensures the best performance when reading data.\n\nRing buffer mode utilizes a fixed size file buffer to enable a reasonable amount of seeking. This alleviates the need to fully allocate a file. By default, it is 512MiB. When the buffer is full, it attempts to maintain the ability to seek 50% ahead or behind the current read location without the need to re-download data from Sia/ScPrime.\n\nDirect mode utilizes no disk space. All data is read directly from Sia/ScPrime.\n\nPreferred download type modes are:\n\nFallback - If there isn't enough local space to allocate the full file, ring buffer mode is used. If there isn't enough local space to create the ring buffer's file, then direct mode is used.\nRingBuffer - Full file allocation is always bypassed; however, if there isn't enough space to create the ring buffer's file, then direct mode will be chosen.\nDirect - All files will be read directly from Sia/ScPrime.",
    "ReadAheadCount": "This value specifies the number of read-ahead chunks to use when downloading a file. This is a per-open file setting and will result in the creation of an equal number of threads.",
    "RetryReadCount": "Number of times to retry a failed read operation. A 1 second delay is used between retries. This setting applies to downloads only.",
    "RingBufferFileSize": "The size of the ring buffer file in MiB. Default is 512. Valid values are: 64, 128, 256, 512, 1024."
  },
  "SkynetConfig": {
    "EncryptionToken": "Encryption token used to encrypt files in Skynet. Set this value once as it applies to all files stored.",
    "PortalList": "List of Skynet portals used to load-balance uploads and downloads."
  }
}
