{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://catalog.lintel.tools/schemas/schemastore/streamlit-configuration-file/latest.json",
  "title": "JSON schema for Streamlit config.toml files",
  "description": "Schema for Streamlit configuration files that define settings for your working directory or global development environment",
  "x-lintel": {
    "source": "https://www.schemastore.org/streamlit-config.json",
    "sourceSha256": "109da5ce7a0515e5a1936480bb7808dfb887c3adfe5d9ab987867bd0371927bb",
    "fileMatch": [
      "**/.streamlit/config.toml"
    ],
    "parsers": [
      "toml"
    ]
  },
  "type": "object",
  "properties": {
    "global": {
      "$ref": "#/$defs/Global"
    },
    "logger": {
      "$ref": "#/$defs/Logger"
    },
    "client": {
      "$ref": "#/$defs/Client"
    },
    "runner": {
      "$ref": "#/$defs/Runner"
    },
    "server": {
      "$ref": "#/$defs/Server"
    },
    "browser": {
      "$ref": "#/$defs/Browser"
    },
    "mapbox": {
      "$ref": "#/$defs/Mapbox"
    },
    "theme": {
      "$ref": "#/$defs/Theme"
    },
    "secrets": {
      "$ref": "#/$defs/Secrets"
    }
  },
  "x-tombi-table-keys-order": "schema",
  "$defs": {
    "Global": {
      "title": "Global",
      "description": "Global configuration options for Streamlit",
      "x-tombi-table-keys-order": "schema",
      "type": "object",
      "properties": {
        "disableWidgetStateDuplicationWarning": {
          "title": "Disable Widget State Duplication Warning",
          "description": "By default, Streamlit displays a warning when a user sets both a widget default value in the function defining the widget and a widget value via the widget's key in st.session_state. If you'd like to turn off this warning, set this to True.",
          "type": "boolean",
          "default": false
        },
        "showWarningOnDirectExecution": {
          "title": "Show Warning On Direct Execution",
          "description": "If True, will show a warning when you run a Streamlit-enabled script via 'python my_script.py'.",
          "type": "boolean",
          "default": true
        }
      }
    },
    "Logger": {
      "title": "Logger",
      "description": "Configuration for Streamlit's internal logger",
      "x-tombi-table-keys-order": "schema",
      "type": "object",
      "properties": {
        "level": {
          "title": "Log Level",
          "description": "Level of logging for Streamlit's internal logger",
          "type": "string",
          "enum": [
            "error",
            "warning",
            "info",
            "debug"
          ],
          "default": "info"
        },
        "messageFormat": {
          "title": "Message Format",
          "description": "String format for logging messages. If logger.datetimeFormat is set, logger messages will default to '%(asctime)s.%(msecs)03d %(message)s'. See Python's documentation for available attributes.",
          "type": "string",
          "default": "%(asctime)s %(message)s"
        }
      }
    },
    "Client": {
      "title": "Client",
      "description": "Client-side configuration options",
      "x-tombi-table-keys-order": "schema",
      "type": "object",
      "properties": {
        "showErrorDetails": {
          "title": "Show Error Details",
          "description": "Controls whether uncaught app exceptions and deprecation warnings are displayed in the browser",
          "type": "string",
          "enum": [
            "full",
            "stacktrace",
            "type",
            "none"
          ],
          "default": "full"
        },
        "toolbarMode": {
          "title": "Toolbar Mode",
          "description": "Change the visibility of items in the toolbar, options menu, and settings dialog (top right of the app)",
          "type": "string",
          "enum": [
            "auto",
            "developer",
            "viewer",
            "minimal"
          ],
          "default": "auto"
        },
        "showSidebarNavigation": {
          "title": "Show Sidebar Navigation",
          "description": "Controls whether to display the default sidebar page navigation in a multi-page app. This only applies when app's pages are defined by the 'pages/' directory.",
          "type": "boolean",
          "default": true
        }
      }
    },
    "Runner": {
      "title": "Runner",
      "description": "Configuration for Streamlit's script runner",
      "x-tombi-table-keys-order": "schema",
      "type": "object",
      "properties": {
        "magicEnabled": {
          "title": "Magic Enabled",
          "description": "Allows you to type a variable or string by itself in a single line of Python code to write it to the app.",
          "type": "boolean",
          "default": true
        },
        "fastReruns": {
          "title": "Fast Reruns",
          "description": "Handle script rerun requests immediately, rather than waiting for script execution to reach a yield point. This makes Streamlit much more responsive to user interaction, but it can lead to race conditions in apps that mutate session_state data outside of explicit session_state assignment statements.",
          "type": "boolean",
          "default": true
        },
        "enforceSerializableSessionState": {
          "title": "Enforce Serializable Session State",
          "description": "Raise an exception after adding unserializable data to Session State. Some execution environments may require serializing all data in Session State, so it may be useful to detect incompatibility during development, or when the execution environment will stop supporting it in the future.",
          "type": "boolean",
          "default": false
        },
        "enumCoercion": {
          "title": "Enum Coercion",
          "description": "Controls how 'options' widgets (radio, selectbox, multiselect) coerce Enum members. This is particularly useful when Enum classes are redefined during script reruns. 'off' disables coercion completely, 'nameOnly' allows coercion when member names match, and 'nameAndValue' requires both member names and values to match for coercion.",
          "type": "string",
          "enum": [
            "off",
            "nameOnly",
            "nameAndValue"
          ],
          "default": "nameOnly"
        }
      }
    },
    "Color": {
      "title": "Color",
      "oneOf": [
        {
          "type": "string",
          "pattern": "^#[0-9A-Fa-f]{6}$"
        },
        {
          "type": "string"
        }
      ]
    },
    "Font": {
      "title": "Font",
      "description": "The font family for all text, except code blocks. Can be 'sans-serif', 'serif', 'monospace', a custom font family value, or a comma-separated list of these for fallbacks",
      "oneOf": [
        {
          "type": "string",
          "enum": [
            "sans-serif",
            "serif",
            "monospace"
          ]
        },
        {
          "type": "string"
        }
      ]
    },
    "FontFace": {
      "title": "Font Face",
      "type": "object",
      "properties": {
        "family": {
          "type": "string",
          "description": "The font family name",
          "minLength": 1
        },
        "url": {
          "type": "string",
          "description": "URL or path to the font file",
          "format": "uri"
        },
        "weight": {
          "type": "string",
          "description": "Font weight (e.g. '400', '700')"
        },
        "style": {
          "type": "string",
          "description": "Font style (e.g. 'normal', 'italic')"
        },
        "unicodeRange": {
          "type": "string",
          "description": "Unicode range for the font"
        }
      },
      "required": [
        "family",
        "url"
      ]
    },
    "FontSize": {
      "title": "Font Size",
      "oneOf": [
        {
          "type": "string",
          "pattern": "^\\d+(\\.\\d+)?(px|rem)$"
        },
        {
          "type": "string"
        }
      ]
    },
    "FontWeight": {
      "title": "Font Weight",
      "type": "integer",
      "minimum": 100,
      "maximum": 900,
      "multipleOf": 100
    },
    "Radius": {
      "title": "Radius",
      "oneOf": [
        {
          "type": "string",
          "enum": [
            "none",
            "small",
            "medium",
            "large",
            "full"
          ]
        },
        {
          "type": "string",
          "pattern": "^\\d+(\\.\\d+)?(px|rem)$"
        },
        {
          "type": "string"
        }
      ]
    },
    "Theme": {
      "title": "Theme",
      "description": "Theme configuration for Streamlit apps",
      "x-tombi-table-keys-order": "schema",
      "type": "object",
      "properties": {
        "base": {
          "title": "Base Theme",
          "description": "The preset Streamlit theme that your custom theme inherits from. Can be either 'light' or 'dark'.",
          "type": "string",
          "enum": [
            "light",
            "dark"
          ]
        },
        "primaryColor": {
          "$ref": "#/$defs/Color",
          "title": "Primary Color",
          "description": "Primary accent color for interactive elements"
        },
        "backgroundColor": {
          "$ref": "#/$defs/Color",
          "title": "Background Color",
          "description": "Background color of the app"
        },
        "secondaryBackgroundColor": {
          "$ref": "#/$defs/Color",
          "title": "Secondary Background Color",
          "description": "Background color used for most interactive widgets"
        },
        "textColor": {
          "$ref": "#/$defs/Color",
          "title": "Text Color",
          "description": "Color used for almost all text"
        },
        "linkColor": {
          "$ref": "#/$defs/Color",
          "title": "Link Color",
          "description": "Color used for all links"
        },
        "linkUnderline": {
          "title": "Link Underline",
          "description": "Whether or not links should be displayed with an underline",
          "type": "boolean"
        },
        "codeBackgroundColor": {
          "$ref": "#/$defs/Color",
          "title": "Code Background Color",
          "description": "Background color used for code blocks"
        },
        "font": {
          "$ref": "#/$defs/Font",
          "title": "Font",
          "description": "The font family for all text, except code blocks. Can be 'sans-serif', 'serif', 'monospace', a custom font family value, or a comma-separated list of these for fallbacks"
        },
        "fontFaces": {
          "title": "Font Faces",
          "description": "An array of fonts to use in your app. Each font is a dictionary with attributes like family, url, weight, style, and unicodeRange",
          "type": "array",
          "items": {
            "$ref": "#/$defs/FontFace"
          }
        },
        "baseFontSize": {
          "title": "Base Font Size",
          "description": "The root font size in pixels for the app. Must be a positive integer. Defaults to 16px if not set",
          "type": "integer",
          "minimum": 1,
          "default": 16
        },
        "baseFontWeight": {
          "title": "Base Font Weight",
          "description": "The root font weight for the app.",
          "type": "integer",
          "minimum": 100,
          "maximum": 600,
          "multipleOf": 100,
          "default": 400
        },
        "headingFont": {
          "$ref": "#/$defs/Font",
          "title": "Heading Font",
          "description": "The font family to use for headings. Can be 'sans-serif', 'serif', 'monospace', a custom font family value, or a comma-separated list for fallbacks. Uses theme.font if not set"
        },
        "headingFontSizes": {
          "title": "Heading Font Sizes",
          "description": "Font sizes for h1-h6 headings. Can be a single value or array of up to 6 values in pixels or rem",
          "oneOf": [
            {
              "$ref": "#/$defs/FontSize"
            },
            {
              "type": "array",
              "items": {
                "$ref": "#/$defs/FontSize"
              },
              "maxItems": 6
            }
          ]
        },
        "headingFontWeights": {
          "title": "Heading Font Weights",
          "description": "Font weights for h1-h6 headings. Can be a single value or array of up to 6 values between 100 and 900",
          "oneOf": [
            {
              "$ref": "#/$defs/FontWeight"
            },
            {
              "type": "array",
              "items": {
                "$ref": "#/$defs/FontWeight"
              },
              "maxItems": 6
            }
          ]
        },
        "codeFont": {
          "$ref": "#/$defs/Font",
          "title": "Code Font",
          "description": "The font family to use for code (monospace) in the sidebar. Can be 'sans-serif', 'serif', 'monospace', a custom font family value, or a comma-separated list for fallbacks"
        },
        "codeFontSize": {
          "$ref": "#/$defs/FontSize",
          "title": "Code Font Size",
          "description": "The font size for code blocks and code text in pixels or rem. Defaults to 0.875rem if not set"
        },
        "codeFontWeight": {
          "$ref": "#/$defs/FontWeight",
          "title": "Code Font Weight",
          "description": "The font weight for code blocks and code text."
        },
        "baseRadius": {
          "$ref": "#/$defs/Radius",
          "title": "Base Radius",
          "description": "The radius used as basis for the corners of most UI elements"
        },
        "buttonRadius": {
          "$ref": "#/$defs/Radius",
          "title": "Button Radius",
          "description": "The radius used as basis for the corners of buttons. Uses theme.baseRadius if not set"
        },
        "borderColor": {
          "$ref": "#/$defs/Color",
          "title": "Border Color",
          "description": "The color of the border around elements"
        },
        "dataframeBorderColor": {
          "$ref": "#/$defs/Color",
          "title": "Dataframe Border Color",
          "description": "The color of the border around dataframes and tables. Uses theme.borderColor if not set"
        },
        "dataframeHeaderBackgroundColor": {
          "$ref": "#/$defs/Color",
          "title": "Dataframe Header Background Color",
          "description": "The background color of the dataframe's header. Uses a mix of theme.backgroundColor and theme.secondaryBackgroundColor if not set"
        },
        "showWidgetBorder": {
          "title": "Show Widget Border",
          "description": "Whether to show a border around input widgets",
          "type": "boolean"
        },
        "showSidebarBorder": {
          "title": "Show Sidebar Border",
          "description": "Whether to show a vertical separator between the sidebar and the main content area",
          "type": "boolean"
        },
        "chartCategoricalColors": {
          "title": "Chart Categorical Colors",
          "description": "An array of colors to use for categorical chart data in Plotly, Altair, and Vega-Lite charts",
          "type": "array",
          "items": {
            "$ref": "#/$defs/Color"
          }
        },
        "chartSequentialColors": {
          "title": "Chart Sequential Colors",
          "description": "An array of exactly ten colors to use for sequential or continuous chart data in Plotly, Altair, and Vega-Lite charts",
          "type": "array",
          "items": {
            "$ref": "#/$defs/Color"
          },
          "minItems": 10,
          "maxItems": 10
        },
        "sidebar": {
          "$ref": "#/$defs/ThemeSidebar"
        }
      }
    },
    "ThemeSidebar": {
      "title": "Theme Sidebar",
      "description": "Theme configuration specifically for the sidebar",
      "x-tombi-table-keys-order": "schema",
      "type": "object",
      "properties": {
        "primaryColor": {
          "$ref": "#/$defs/Color",
          "title": "Primary Color",
          "description": "Primary accent color for sidebar elements"
        },
        "backgroundColor": {
          "$ref": "#/$defs/Color",
          "title": "Background Color",
          "description": "Background color of the sidebar"
        },
        "secondaryBackgroundColor": {
          "$ref": "#/$defs/Color",
          "title": "Secondary Background Color",
          "description": "Background color used for most interactive widgets in the sidebar"
        },
        "textColor": {
          "$ref": "#/$defs/Color",
          "title": "Text Color",
          "description": "Color used for almost all text in the sidebar"
        },
        "linkColor": {
          "$ref": "#/$defs/Color",
          "title": "Link Color",
          "description": "Color used for all links in the sidebar"
        },
        "linkUnderline": {
          "title": "Link Underline",
          "description": "Whether or not links should be displayed with an underline in the sidebar",
          "type": "boolean"
        },
        "codeBackgroundColor": {
          "$ref": "#/$defs/Color",
          "title": "Code Background Color",
          "description": "Background color used for code blocks in the sidebar"
        },
        "font": {
          "$ref": "#/$defs/Font",
          "title": "Font",
          "description": "The font family for all text in the sidebar, except code blocks"
        },
        "headingFont": {
          "$ref": "#/$defs/Font",
          "title": "Heading Font",
          "description": "The font family to use for headings in the sidebar. If this isn't set, Streamlit uses theme.font for headings"
        },
        "headingFontSizes": {
          "title": "Heading Font Sizes",
          "description": "One or more font sizes for h1-h6 headings in the sidebar",
          "oneOf": [
            {
              "$ref": "#/$defs/FontSize"
            },
            {
              "type": "array",
              "items": {
                "$ref": "#/$defs/FontSize"
              },
              "minItems": 1,
              "maxItems": 6
            }
          ]
        },
        "headingFontWeights": {
          "title": "Heading Font Weights",
          "description": "One or more font weights for h1-h6 headings in the sidebar",
          "oneOf": [
            {
              "$ref": "#/$defs/FontWeight"
            },
            {
              "type": "array",
              "items": {
                "$ref": "#/$defs/FontWeight"
              },
              "minItems": 1,
              "maxItems": 6
            }
          ],
          "default": [
            700,
            600,
            600,
            600,
            600,
            600
          ]
        },
        "codeFont": {
          "$ref": "#/$defs/Font",
          "title": "Code Font",
          "description": "The font family to use for code (monospace) in the sidebar"
        },
        "codeFontSize": {
          "$ref": "#/$defs/FontSize",
          "title": "Code Font Size",
          "description": "The font size (in pixels or rem) for code blocks and code text in the sidebar"
        },
        "baseRadius": {
          "$ref": "#/$defs/Radius",
          "title": "Base Radius",
          "description": "The radius used as basis for the corners of most UI elements in the sidebar"
        },
        "buttonRadius": {
          "$ref": "#/$defs/Radius",
          "title": "Button Radius",
          "description": "The radius used as basis for the corners of buttons in the sidebar. If this isn't set, Streamlit uses theme.baseRadius instead"
        },
        "borderColor": {
          "$ref": "#/$defs/Color",
          "title": "Border Color",
          "description": "The color of the border around elements in the sidebar. If this isn't set, Streamlit uses theme.borderColor instead"
        },
        "dataframeBorderColor": {
          "$ref": "#/$defs/Color",
          "title": "Dataframe Border Color",
          "description": "The color of the border around dataframes and tables in the sidebar. If this isn't set, Streamlit uses theme.borderColor instead"
        },
        "dataframeHeaderBackgroundColor": {
          "$ref": "#/$defs/Color",
          "title": "Dataframe Header Background Color",
          "description": "The background color of the dataframe's header in the sidebar. If this isn't set, Streamlit uses a mix of theme.backgroundColor and theme.secondaryBackgroundColor"
        },
        "showWidgetBorder": {
          "title": "Show Widget Border",
          "description": "Whether to show a border around input widgets in the sidebar",
          "type": "boolean"
        }
      }
    },
    "Secrets": {
      "title": "Secrets",
      "description": "Configuration for Streamlit secrets management",
      "x-tombi-table-keys-order": "schema",
      "type": "object",
      "properties": {
        "files": {
          "title": "List of locations where secrets are searched.",
          "description": "An entry can be a path to a TOML file or directory path where Kubernetes style secrets are saved. Order is important, import is first to last, so secrets in later files will take precedence over earlier ones.",
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      }
    },
    "Server": {
      "title": "Server",
      "description": "Server configuration options for Streamlit",
      "x-tombi-table-keys-order": "schema",
      "type": "object",
      "properties": {
        "folderWatchList": {
          "title": "Folder Watch List",
          "description": "List of directories to watch for changes. By default, Streamlit watches files in the current working directory and its subdirectories. Use this option to specify additional directories to watch. Paths must be absolute.",
          "type": "array",
          "items": {
            "type": "string"
          },
          "default": []
        },
        "folderWatchBlacklist": {
          "title": "Folder Watch Blacklist",
          "description": "List of directories to ignore for changes. By default, Streamlit watches files in the current working directory and its subdirectories. Use this option to specify exceptions within watched directories. Paths can be absolute or relative to the current working directory.",
          "type": "array",
          "items": {
            "type": "string"
          },
          "default": []
        },
        "fileWatcherType": {
          "title": "File Watcher Type",
          "description": "Change the type of file watcher used by Streamlit, or turn it off completely. 'auto' attempts to use watchdog module and falls back to polling, 'watchdog' forces watchdog module, 'poll' forces polling, 'none' disables file watching.",
          "type": "string",
          "enum": [
            "auto",
            "watchdog",
            "poll",
            "none"
          ],
          "default": "auto"
        },
        "cookieSecret": {
          "title": "Cookie Secret",
          "description": "Symmetric key used to produce signed cookies. If deploying on multiple replicas, this should be set to the same value across all replicas to ensure they all share the same secret.",
          "type": "string"
        },
        "headless": {
          "title": "Headless",
          "description": "If false, will attempt to open a browser window on start. Default is false unless on a Linux box where DISPLAY is unset, or running in the Streamlit Atom plugin.",
          "type": "boolean",
          "default": false
        },
        "showEmailPrompt": {
          "title": "Show Email Prompt",
          "description": "Whether to show a terminal prompt for the user's email address when they run Streamlit (locally) for the first time. If server.headless=True, Streamlit will not show this prompt.",
          "type": "boolean",
          "default": true
        },
        "runOnSave": {
          "title": "Run On Save",
          "description": "Automatically rerun script when the file is modified on disk.",
          "type": "boolean",
          "default": false
        },
        "address": {
          "title": "Address",
          "description": "The address where the server will listen for client and browser connections. If set, the server will only be accessible from this address, and not from any aliases (like localhost).",
          "type": "string"
        },
        "port": {
          "title": "Port",
          "description": "The port where the server will listen for browser connections.",
          "type": "integer",
          "minimum": 1,
          "default": 8501
        },
        "baseUrlPath": {
          "title": "Base URL Path",
          "description": "The base path for the URL where Streamlit should be served from.",
          "type": "string",
          "default": ""
        },
        "enableCORS": {
          "title": "Enable CORS",
          "description": "Enables support for Cross-Origin Resource Sharing (CORS) protection, for added security. If XSRF protection is enabled and CORS protection is disabled at the same time, Streamlit will enable them both instead.",
          "type": "boolean",
          "default": true
        },
        "corsAllowedOrigins": {
          "title": "CORS Allowed Origins",
          "description": "If CORS protection is enabled, use this option to set a list of allowed origins that the Streamlit server will accept traffic from. This config option does nothing if CORS protection is disabled.",
          "type": "array",
          "items": {
            "type": "string"
          },
          "default": []
        },
        "enableXsrfProtection": {
          "title": "Enable XSRF Protection",
          "description": "Enables support for Cross-Site Request Forgery (XSRF) protection, for added security. If XSRF protection is enabled and CORS protection is disabled at the same time, Streamlit will enable them both instead.",
          "type": "boolean",
          "default": true
        },
        "maxUploadSize": {
          "title": "Max Upload Size",
          "description": "Max size, in megabytes, for files uploaded with the file_uploader.",
          "type": "integer",
          "minimum": 1,
          "default": 200
        },
        "maxMessageSize": {
          "title": "Max Message Size",
          "description": "Max size, in megabytes, of messages that can be sent via the WebSocket connection.",
          "type": "integer",
          "minimum": 1,
          "default": 200
        },
        "enableWebsocketCompression": {
          "title": "Enable Websocket Compression",
          "description": "Enables support for websocket compression.",
          "type": "boolean",
          "default": false
        },
        "enableStaticServing": {
          "title": "Enable Static Serving",
          "description": "Enable serving files from a 'static' directory in the running app's directory.",
          "type": "boolean",
          "default": false
        },
        "disconnectedSessionTTL": {
          "title": "Disconnected Session TTL",
          "description": "TTL in seconds for sessions whose websockets have been disconnected. The server may choose to clean up session state, uploaded files, etc for a given session with no active websocket connection at any point after this time has passed.",
          "type": "integer",
          "minimum": 1,
          "default": 120
        },
        "sslCertFile": {
          "title": "SSL Certificate File",
          "description": "Server certificate file for connecting via HTTPS. Must be set at the same time as 'server.sslKeyFile'. DO NOT USE THIS OPTION IN A PRODUCTION ENVIRONMENT. It has not gone through security audits or performance tests. For the production environment, we recommend performing SSL termination by the load balancer or the reverse proxy.",
          "type": "string"
        },
        "sslKeyFile": {
          "title": "SSL Key File",
          "description": "Cryptographic key file for connecting via HTTPS. Must be set at the same time as 'server.sslCertFile'. DO NOT USE THIS OPTION IN A PRODUCTION ENVIRONMENT. It has not gone through security audits or performance tests. For the production environment, we recommend performing SSL termination by the load balancer or the reverse proxy.",
          "type": "string"
        }
      }
    },
    "Browser": {
      "title": "Browser",
      "description": "Browser configuration options for Streamlit",
      "x-tombi-table-keys-order": "schema",
      "type": "object",
      "properties": {
        "serverAddress": {
          "title": "Server Address",
          "description": "Address to connect to when opening browser",
          "type": "string",
          "default": "localhost"
        },
        "gatherUsageStats": {
          "title": "Gather Usage Stats",
          "description": "Whether to send usage statistics to Streamlit",
          "type": "boolean",
          "default": true
        },
        "serverPort": {
          "title": "Server Port",
          "description": "Port where users should point their browsers to connect to the app. This is used to set the correct URL for XSRF protection, show the URL on the terminal, and open the browser automatically. This option is for advanced use cases - to change the port of your app, use server.Port instead. Defaults to whatever value is set in server.port.",
          "type": "integer",
          "minimum": 1,
          "default": 8501
        }
      }
    },
    "Mapbox": {
      "title": "Mapbox",
      "description": "Configuration for Mapbox integration (DEPRECATED)",
      "x-tombi-table-keys-order": "schema",
      "type": "object",
      "deprecated": true,
      "properties": {
        "token": {
          "title": "Token",
          "description": "Mapbox API token for displaying maps. DEPRECATED: Use MAPBOX_API_KEY environment variable or PyDeck's api_keys argument instead. This option will be removed on or after 2026-05-01.",
          "type": "string",
          "default": ""
        }
      }
    }
  }
}
