diff --git a/backend/Cargo.lock b/backend/Cargo.lock index 9b62b8698d..e489656508 100644 --- a/backend/Cargo.lock +++ b/backend/Cargo.lock @@ -1312,6 +1312,7 @@ dependencies = [ "mime", "mlua", "nanoid", + "nix 0.29.0", "num_cpus", "nyanpasu-ipc", "nyanpasu-utils", @@ -1381,6 +1382,7 @@ dependencies = [ "whoami", "window-vibrancy", "windows-core 0.58.0", + "windows-registry", "windows-sys 0.59.0", "winreg 0.52.0", "zip", diff --git a/backend/tauri/Cargo.toml b/backend/tauri/Cargo.toml index 65cc9e130f..311cf795f4 100644 --- a/backend/tauri/Cargo.toml +++ b/backend/tauri/Cargo.toml @@ -165,9 +165,13 @@ objc2-app-kit = { version = "0.2.2", features = [ ] } objc2-foundation = { version = "0.2.2", features = ["NSGeometry"] } +[target.'cfg(unix)'.dependencies] +nix = { version = "0.29.0", features = ["user", "fs"] } + [target.'cfg(windows)'.dependencies] deelevate = "0.2.0" winreg = { version = "0.52", features = ["transactions"] } +windows-registry = "0.2" windows-sys = { version = "0.59", features = [ "Win32_System_LibraryLoader", "Win32_System_SystemInformation", diff --git a/backend/tauri/gen/schemas/linux-schema.json b/backend/tauri/gen/schemas/linux-schema.json index 3fe03ed0f2..8a06ae4c93 100644 --- a/backend/tauri/gen/schemas/linux-schema.json +++ b/backend/tauri/gen/schemas/linux-schema.json @@ -133,6972 +133,5089 @@ { "description": "Reference a permission or permission set by identifier and extends its scope.", "type": "object", - "oneOf": [ + "allOf": [ { - "type": "object", - "required": [ - "identifier" - ], - "properties": { - "identifier": { - "oneOf": [ - { - "description": "fs:default -> This set of permissions describes the what kind of\nfile system access the `fs` plugin has enabled or denied by default.\n\n#### Granted Permissions\n\nThis default permission set enables read access to the\napplication specific directories (AppConfig, AppData, AppLocalData, AppCache,\nAppLog) and all files and sub directories created in it.\nThe location of these directories depends on the operating system,\nwhere the application is run.\n\nIn general these directories need to be manually created\nby the application at runtime, before accessing files or folders\nin it is possible.\n\nTherefore, it is also allowed to create all of these folders via\nthe `mkdir` command.\n\n#### Denied Permissions\n\nThis default permission set prevents access to critical components\nof the Tauri application by default.\nOn Windows the webview data folder access is denied.\n\n", - "type": "string", - "enum": [ - "fs:default" - ] - }, - { - "description": "fs:allow-app-meta -> This allows non-recursive read access to metadata of the `$APP` folder, including file listing and statistics.", - "type": "string", - "enum": [ - "fs:allow-app-meta" - ] - }, - { - "description": "fs:allow-app-meta-recursive -> This allows full recursive read access to metadata of the `$APP` folder, including file listing and statistics.", - "type": "string", - "enum": [ - "fs:allow-app-meta-recursive" - ] - }, - { - "description": "fs:allow-app-read -> This allows non-recursive read access to the `$APP` folder.", - "type": "string", - "enum": [ - "fs:allow-app-read" - ] - }, - { - "description": "fs:allow-app-read-recursive -> This allows full recursive read access to the complete `$APP` folder, files and subdirectories.", - "type": "string", - "enum": [ - "fs:allow-app-read-recursive" - ] - }, - { - "description": "fs:allow-app-write -> This allows non-recursive write access to the `$APP` folder.", - "type": "string", - "enum": [ - "fs:allow-app-write" - ] - }, - { - "description": "fs:allow-app-write-recursive -> This allows full recursive write access to the complete `$APP` folder, files and subdirectories.", - "type": "string", - "enum": [ - "fs:allow-app-write-recursive" - ] - }, - { - "description": "fs:allow-appcache-meta -> This allows non-recursive read access to metadata of the `$APPCACHE` folder, including file listing and statistics.", - "type": "string", - "enum": [ - "fs:allow-appcache-meta" - ] - }, - { - "description": "fs:allow-appcache-meta-recursive -> This allows full recursive read access to metadata of the `$APPCACHE` folder, including file listing and statistics.", - "type": "string", - "enum": [ - "fs:allow-appcache-meta-recursive" - ] - }, - { - "description": "fs:allow-appcache-read -> This allows non-recursive read access to the `$APPCACHE` folder.", - "type": "string", - "enum": [ - "fs:allow-appcache-read" - ] - }, - { - "description": "fs:allow-appcache-read-recursive -> This allows full recursive read access to the complete `$APPCACHE` folder, files and subdirectories.", - "type": "string", - "enum": [ - "fs:allow-appcache-read-recursive" - ] - }, - { - "description": "fs:allow-appcache-write -> This allows non-recursive write access to the `$APPCACHE` folder.", - "type": "string", - "enum": [ - "fs:allow-appcache-write" - ] - }, - { - "description": "fs:allow-appcache-write-recursive -> This allows full recursive write access to the complete `$APPCACHE` folder, files and subdirectories.", - "type": "string", - "enum": [ - "fs:allow-appcache-write-recursive" - ] - }, - { - "description": "fs:allow-appconfig-meta -> This allows non-recursive read access to metadata of the `$APPCONFIG` folder, including file listing and statistics.", - "type": "string", - "enum": [ - "fs:allow-appconfig-meta" - ] - }, - { - "description": "fs:allow-appconfig-meta-recursive -> This allows full recursive read access to metadata of the `$APPCONFIG` folder, including file listing and statistics.", - "type": "string", - "enum": [ - "fs:allow-appconfig-meta-recursive" - ] - }, - { - "description": "fs:allow-appconfig-read -> This allows non-recursive read access to the `$APPCONFIG` folder.", - "type": "string", - "enum": [ - "fs:allow-appconfig-read" - ] - }, - { - "description": "fs:allow-appconfig-read-recursive -> This allows full recursive read access to the complete `$APPCONFIG` folder, files and subdirectories.", - "type": "string", - "enum": [ - "fs:allow-appconfig-read-recursive" - ] - }, - { - "description": "fs:allow-appconfig-write -> This allows non-recursive write access to the `$APPCONFIG` folder.", - "type": "string", - "enum": [ - "fs:allow-appconfig-write" - ] - }, - { - "description": "fs:allow-appconfig-write-recursive -> This allows full recursive write access to the complete `$APPCONFIG` folder, files and subdirectories.", - "type": "string", - "enum": [ - "fs:allow-appconfig-write-recursive" - ] - }, - { - "description": "fs:allow-appdata-meta -> This allows non-recursive read access to metadata of the `$APPDATA` folder, including file listing and statistics.", - "type": "string", - "enum": [ - "fs:allow-appdata-meta" - ] - }, - { - "description": "fs:allow-appdata-meta-recursive -> This allows full recursive read access to metadata of the `$APPDATA` folder, including file listing and statistics.", - "type": "string", - "enum": [ - "fs:allow-appdata-meta-recursive" - ] - }, - { - "description": "fs:allow-appdata-read -> This allows non-recursive read access to the `$APPDATA` folder.", - "type": "string", - "enum": [ - "fs:allow-appdata-read" - ] - }, - { - "description": "fs:allow-appdata-read-recursive -> This allows full recursive read access to the complete `$APPDATA` folder, files and subdirectories.", - "type": "string", - "enum": [ - "fs:allow-appdata-read-recursive" - ] - }, - { - "description": "fs:allow-appdata-write -> This allows non-recursive write access to the `$APPDATA` folder.", - "type": "string", - "enum": [ - "fs:allow-appdata-write" - ] - }, - { - "description": "fs:allow-appdata-write-recursive -> This allows full recursive write access to the complete `$APPDATA` folder, files and subdirectories.", - "type": "string", - "enum": [ - "fs:allow-appdata-write-recursive" - ] - }, - { - "description": "fs:allow-applocaldata-meta -> This allows non-recursive read access to metadata of the `$APPLOCALDATA` folder, including file listing and statistics.", - "type": "string", - "enum": [ - "fs:allow-applocaldata-meta" - ] - }, - { - "description": "fs:allow-applocaldata-meta-recursive -> This allows full recursive read access to metadata of the `$APPLOCALDATA` folder, including file listing and statistics.", - "type": "string", - "enum": [ - "fs:allow-applocaldata-meta-recursive" - ] - }, - { - "description": "fs:allow-applocaldata-read -> This allows non-recursive read access to the `$APPLOCALDATA` folder.", - "type": "string", - "enum": [ - "fs:allow-applocaldata-read" - ] - }, - { - "description": "fs:allow-applocaldata-read-recursive -> This allows full recursive read access to the complete `$APPLOCALDATA` folder, files and subdirectories.", - "type": "string", - "enum": [ - "fs:allow-applocaldata-read-recursive" - ] - }, - { - "description": "fs:allow-applocaldata-write -> This allows non-recursive write access to the `$APPLOCALDATA` folder.", - "type": "string", - "enum": [ - "fs:allow-applocaldata-write" - ] - }, - { - "description": "fs:allow-applocaldata-write-recursive -> This allows full recursive write access to the complete `$APPLOCALDATA` folder, files and subdirectories.", - "type": "string", - "enum": [ - "fs:allow-applocaldata-write-recursive" - ] - }, - { - "description": "fs:allow-applog-meta -> This allows non-recursive read access to metadata of the `$APPLOG` folder, including file listing and statistics.", - "type": "string", - "enum": [ - "fs:allow-applog-meta" - ] - }, - { - "description": "fs:allow-applog-meta-recursive -> This allows full recursive read access to metadata of the `$APPLOG` folder, including file listing and statistics.", - "type": "string", - "enum": [ - "fs:allow-applog-meta-recursive" - ] - }, - { - "description": "fs:allow-applog-read -> This allows non-recursive read access to the `$APPLOG` folder.", - "type": "string", - "enum": [ - "fs:allow-applog-read" - ] - }, - { - "description": "fs:allow-applog-read-recursive -> This allows full recursive read access to the complete `$APPLOG` folder, files and subdirectories.", - "type": "string", - "enum": [ - "fs:allow-applog-read-recursive" - ] - }, - { - "description": "fs:allow-applog-write -> This allows non-recursive write access to the `$APPLOG` folder.", - "type": "string", - "enum": [ - "fs:allow-applog-write" - ] - }, - { - "description": "fs:allow-applog-write-recursive -> This allows full recursive write access to the complete `$APPLOG` folder, files and subdirectories.", - "type": "string", - "enum": [ - "fs:allow-applog-write-recursive" - ] - }, - { - "description": "fs:allow-audio-meta -> This allows non-recursive read access to metadata of the `$AUDIO` folder, including file listing and statistics.", - "type": "string", - "enum": [ - "fs:allow-audio-meta" - ] - }, - { - "description": "fs:allow-audio-meta-recursive -> This allows full recursive read access to metadata of the `$AUDIO` folder, including file listing and statistics.", - "type": "string", - "enum": [ - "fs:allow-audio-meta-recursive" - ] - }, - { - "description": "fs:allow-audio-read -> This allows non-recursive read access to the `$AUDIO` folder.", - "type": "string", - "enum": [ - "fs:allow-audio-read" - ] - }, - { - "description": "fs:allow-audio-read-recursive -> This allows full recursive read access to the complete `$AUDIO` folder, files and subdirectories.", - "type": "string", - "enum": [ - "fs:allow-audio-read-recursive" - ] - }, - { - "description": "fs:allow-audio-write -> This allows non-recursive write access to the `$AUDIO` folder.", - "type": "string", - "enum": [ - "fs:allow-audio-write" - ] - }, - { - "description": "fs:allow-audio-write-recursive -> This allows full recursive write access to the complete `$AUDIO` folder, files and subdirectories.", - "type": "string", - "enum": [ - "fs:allow-audio-write-recursive" - ] - }, - { - "description": "fs:allow-cache-meta -> This allows non-recursive read access to metadata of the `$CACHE` folder, including file listing and statistics.", - "type": "string", - "enum": [ - "fs:allow-cache-meta" - ] - }, - { - "description": "fs:allow-cache-meta-recursive -> This allows full recursive read access to metadata of the `$CACHE` folder, including file listing and statistics.", - "type": "string", - "enum": [ - "fs:allow-cache-meta-recursive" - ] - }, - { - "description": "fs:allow-cache-read -> This allows non-recursive read access to the `$CACHE` folder.", - "type": "string", - "enum": [ - "fs:allow-cache-read" - ] - }, - { - "description": "fs:allow-cache-read-recursive -> This allows full recursive read access to the complete `$CACHE` folder, files and subdirectories.", - "type": "string", - "enum": [ - "fs:allow-cache-read-recursive" - ] - }, - { - "description": "fs:allow-cache-write -> This allows non-recursive write access to the `$CACHE` folder.", - "type": "string", - "enum": [ - "fs:allow-cache-write" - ] - }, - { - "description": "fs:allow-cache-write-recursive -> This allows full recursive write access to the complete `$CACHE` folder, files and subdirectories.", - "type": "string", - "enum": [ - "fs:allow-cache-write-recursive" - ] - }, - { - "description": "fs:allow-config-meta -> This allows non-recursive read access to metadata of the `$CONFIG` folder, including file listing and statistics.", - "type": "string", - "enum": [ - "fs:allow-config-meta" - ] - }, - { - "description": "fs:allow-config-meta-recursive -> This allows full recursive read access to metadata of the `$CONFIG` folder, including file listing and statistics.", - "type": "string", - "enum": [ - "fs:allow-config-meta-recursive" - ] - }, - { - "description": "fs:allow-config-read -> This allows non-recursive read access to the `$CONFIG` folder.", - "type": "string", - "enum": [ - "fs:allow-config-read" - ] - }, - { - "description": "fs:allow-config-read-recursive -> This allows full recursive read access to the complete `$CONFIG` folder, files and subdirectories.", - "type": "string", - "enum": [ - "fs:allow-config-read-recursive" - ] - }, - { - "description": "fs:allow-config-write -> This allows non-recursive write access to the `$CONFIG` folder.", - "type": "string", - "enum": [ - "fs:allow-config-write" - ] - }, - { - "description": "fs:allow-config-write-recursive -> This allows full recursive write access to the complete `$CONFIG` folder, files and subdirectories.", - "type": "string", - "enum": [ - "fs:allow-config-write-recursive" - ] - }, - { - "description": "fs:allow-data-meta -> This allows non-recursive read access to metadata of the `$DATA` folder, including file listing and statistics.", - "type": "string", - "enum": [ - "fs:allow-data-meta" - ] - }, - { - "description": "fs:allow-data-meta-recursive -> This allows full recursive read access to metadata of the `$DATA` folder, including file listing and statistics.", - "type": "string", - "enum": [ - "fs:allow-data-meta-recursive" - ] - }, - { - "description": "fs:allow-data-read -> This allows non-recursive read access to the `$DATA` folder.", - "type": "string", - "enum": [ - "fs:allow-data-read" - ] - }, - { - "description": "fs:allow-data-read-recursive -> This allows full recursive read access to the complete `$DATA` folder, files and subdirectories.", - "type": "string", - "enum": [ - "fs:allow-data-read-recursive" - ] - }, - { - "description": "fs:allow-data-write -> This allows non-recursive write access to the `$DATA` folder.", - "type": "string", - "enum": [ - "fs:allow-data-write" - ] - }, - { - "description": "fs:allow-data-write-recursive -> This allows full recursive write access to the complete `$DATA` folder, files and subdirectories.", - "type": "string", - "enum": [ - "fs:allow-data-write-recursive" - ] - }, - { - "description": "fs:allow-desktop-meta -> This allows non-recursive read access to metadata of the `$DESKTOP` folder, including file listing and statistics.", - "type": "string", - "enum": [ - "fs:allow-desktop-meta" - ] - }, - { - "description": "fs:allow-desktop-meta-recursive -> This allows full recursive read access to metadata of the `$DESKTOP` folder, including file listing and statistics.", - "type": "string", - "enum": [ - "fs:allow-desktop-meta-recursive" - ] - }, - { - "description": "fs:allow-desktop-read -> This allows non-recursive read access to the `$DESKTOP` folder.", - "type": "string", - "enum": [ - "fs:allow-desktop-read" - ] - }, - { - "description": "fs:allow-desktop-read-recursive -> This allows full recursive read access to the complete `$DESKTOP` folder, files and subdirectories.", - "type": "string", - "enum": [ - "fs:allow-desktop-read-recursive" - ] - }, - { - "description": "fs:allow-desktop-write -> This allows non-recursive write access to the `$DESKTOP` folder.", - "type": "string", - "enum": [ - "fs:allow-desktop-write" - ] - }, - { - "description": "fs:allow-desktop-write-recursive -> This allows full recursive write access to the complete `$DESKTOP` folder, files and subdirectories.", - "type": "string", - "enum": [ - "fs:allow-desktop-write-recursive" - ] - }, - { - "description": "fs:allow-document-meta -> This allows non-recursive read access to metadata of the `$DOCUMENT` folder, including file listing and statistics.", - "type": "string", - "enum": [ - "fs:allow-document-meta" - ] - }, - { - "description": "fs:allow-document-meta-recursive -> This allows full recursive read access to metadata of the `$DOCUMENT` folder, including file listing and statistics.", - "type": "string", - "enum": [ - "fs:allow-document-meta-recursive" - ] - }, - { - "description": "fs:allow-document-read -> This allows non-recursive read access to the `$DOCUMENT` folder.", - "type": "string", - "enum": [ - "fs:allow-document-read" - ] - }, - { - "description": "fs:allow-document-read-recursive -> This allows full recursive read access to the complete `$DOCUMENT` folder, files and subdirectories.", - "type": "string", - "enum": [ - "fs:allow-document-read-recursive" - ] - }, - { - "description": "fs:allow-document-write -> This allows non-recursive write access to the `$DOCUMENT` folder.", - "type": "string", - "enum": [ - "fs:allow-document-write" - ] - }, - { - "description": "fs:allow-document-write-recursive -> This allows full recursive write access to the complete `$DOCUMENT` folder, files and subdirectories.", - "type": "string", - "enum": [ - "fs:allow-document-write-recursive" - ] - }, - { - "description": "fs:allow-download-meta -> This allows non-recursive read access to metadata of the `$DOWNLOAD` folder, including file listing and statistics.", - "type": "string", - "enum": [ - "fs:allow-download-meta" - ] - }, - { - "description": "fs:allow-download-meta-recursive -> This allows full recursive read access to metadata of the `$DOWNLOAD` folder, including file listing and statistics.", - "type": "string", - "enum": [ - "fs:allow-download-meta-recursive" - ] - }, - { - "description": "fs:allow-download-read -> This allows non-recursive read access to the `$DOWNLOAD` folder.", - "type": "string", - "enum": [ - "fs:allow-download-read" - ] - }, - { - "description": "fs:allow-download-read-recursive -> This allows full recursive read access to the complete `$DOWNLOAD` folder, files and subdirectories.", - "type": "string", - "enum": [ - "fs:allow-download-read-recursive" - ] - }, - { - "description": "fs:allow-download-write -> This allows non-recursive write access to the `$DOWNLOAD` folder.", - "type": "string", - "enum": [ - "fs:allow-download-write" - ] - }, - { - "description": "fs:allow-download-write-recursive -> This allows full recursive write access to the complete `$DOWNLOAD` folder, files and subdirectories.", - "type": "string", - "enum": [ - "fs:allow-download-write-recursive" - ] - }, - { - "description": "fs:allow-exe-meta -> This allows non-recursive read access to metadata of the `$EXE` folder, including file listing and statistics.", - "type": "string", - "enum": [ - "fs:allow-exe-meta" - ] - }, - { - "description": "fs:allow-exe-meta-recursive -> This allows full recursive read access to metadata of the `$EXE` folder, including file listing and statistics.", - "type": "string", - "enum": [ - "fs:allow-exe-meta-recursive" - ] - }, - { - "description": "fs:allow-exe-read -> This allows non-recursive read access to the `$EXE` folder.", - "type": "string", - "enum": [ - "fs:allow-exe-read" - ] - }, - { - "description": "fs:allow-exe-read-recursive -> This allows full recursive read access to the complete `$EXE` folder, files and subdirectories.", - "type": "string", - "enum": [ - "fs:allow-exe-read-recursive" - ] - }, - { - "description": "fs:allow-exe-write -> This allows non-recursive write access to the `$EXE` folder.", - "type": "string", - "enum": [ - "fs:allow-exe-write" - ] - }, - { - "description": "fs:allow-exe-write-recursive -> This allows full recursive write access to the complete `$EXE` folder, files and subdirectories.", - "type": "string", - "enum": [ - "fs:allow-exe-write-recursive" - ] - }, - { - "description": "fs:allow-font-meta -> This allows non-recursive read access to metadata of the `$FONT` folder, including file listing and statistics.", - "type": "string", - "enum": [ - "fs:allow-font-meta" - ] - }, - { - "description": "fs:allow-font-meta-recursive -> This allows full recursive read access to metadata of the `$FONT` folder, including file listing and statistics.", - "type": "string", - "enum": [ - "fs:allow-font-meta-recursive" - ] - }, - { - "description": "fs:allow-font-read -> This allows non-recursive read access to the `$FONT` folder.", - "type": "string", - "enum": [ - "fs:allow-font-read" - ] - }, - { - "description": "fs:allow-font-read-recursive -> This allows full recursive read access to the complete `$FONT` folder, files and subdirectories.", - "type": "string", - "enum": [ - "fs:allow-font-read-recursive" - ] - }, - { - "description": "fs:allow-font-write -> This allows non-recursive write access to the `$FONT` folder.", - "type": "string", - "enum": [ - "fs:allow-font-write" - ] - }, - { - "description": "fs:allow-font-write-recursive -> This allows full recursive write access to the complete `$FONT` folder, files and subdirectories.", - "type": "string", - "enum": [ - "fs:allow-font-write-recursive" - ] - }, - { - "description": "fs:allow-home-meta -> This allows non-recursive read access to metadata of the `$HOME` folder, including file listing and statistics.", - "type": "string", - "enum": [ - "fs:allow-home-meta" - ] - }, - { - "description": "fs:allow-home-meta-recursive -> This allows full recursive read access to metadata of the `$HOME` folder, including file listing and statistics.", - "type": "string", - "enum": [ - "fs:allow-home-meta-recursive" - ] - }, - { - "description": "fs:allow-home-read -> This allows non-recursive read access to the `$HOME` folder.", - "type": "string", - "enum": [ - "fs:allow-home-read" - ] - }, - { - "description": "fs:allow-home-read-recursive -> This allows full recursive read access to the complete `$HOME` folder, files and subdirectories.", - "type": "string", - "enum": [ - "fs:allow-home-read-recursive" - ] - }, - { - "description": "fs:allow-home-write -> This allows non-recursive write access to the `$HOME` folder.", - "type": "string", - "enum": [ - "fs:allow-home-write" - ] - }, - { - "description": "fs:allow-home-write-recursive -> This allows full recursive write access to the complete `$HOME` folder, files and subdirectories.", - "type": "string", - "enum": [ - "fs:allow-home-write-recursive" - ] - }, - { - "description": "fs:allow-localdata-meta -> This allows non-recursive read access to metadata of the `$LOCALDATA` folder, including file listing and statistics.", - "type": "string", - "enum": [ - "fs:allow-localdata-meta" - ] - }, - { - "description": "fs:allow-localdata-meta-recursive -> This allows full recursive read access to metadata of the `$LOCALDATA` folder, including file listing and statistics.", - "type": "string", - "enum": [ - "fs:allow-localdata-meta-recursive" - ] - }, - { - "description": "fs:allow-localdata-read -> This allows non-recursive read access to the `$LOCALDATA` folder.", - "type": "string", - "enum": [ - "fs:allow-localdata-read" - ] - }, - { - "description": "fs:allow-localdata-read-recursive -> This allows full recursive read access to the complete `$LOCALDATA` folder, files and subdirectories.", - "type": "string", - "enum": [ - "fs:allow-localdata-read-recursive" - ] - }, - { - "description": "fs:allow-localdata-write -> This allows non-recursive write access to the `$LOCALDATA` folder.", - "type": "string", - "enum": [ - "fs:allow-localdata-write" - ] - }, - { - "description": "fs:allow-localdata-write-recursive -> This allows full recursive write access to the complete `$LOCALDATA` folder, files and subdirectories.", - "type": "string", - "enum": [ - "fs:allow-localdata-write-recursive" - ] - }, - { - "description": "fs:allow-log-meta -> This allows non-recursive read access to metadata of the `$LOG` folder, including file listing and statistics.", - "type": "string", - "enum": [ - "fs:allow-log-meta" - ] - }, - { - "description": "fs:allow-log-meta-recursive -> This allows full recursive read access to metadata of the `$LOG` folder, including file listing and statistics.", - "type": "string", - "enum": [ - "fs:allow-log-meta-recursive" - ] - }, - { - "description": "fs:allow-log-read -> This allows non-recursive read access to the `$LOG` folder.", - "type": "string", - "enum": [ - "fs:allow-log-read" - ] - }, - { - "description": "fs:allow-log-read-recursive -> This allows full recursive read access to the complete `$LOG` folder, files and subdirectories.", - "type": "string", - "enum": [ - "fs:allow-log-read-recursive" - ] - }, - { - "description": "fs:allow-log-write -> This allows non-recursive write access to the `$LOG` folder.", - "type": "string", - "enum": [ - "fs:allow-log-write" - ] - }, - { - "description": "fs:allow-log-write-recursive -> This allows full recursive write access to the complete `$LOG` folder, files and subdirectories.", - "type": "string", - "enum": [ - "fs:allow-log-write-recursive" - ] - }, - { - "description": "fs:allow-picture-meta -> This allows non-recursive read access to metadata of the `$PICTURE` folder, including file listing and statistics.", - "type": "string", - "enum": [ - "fs:allow-picture-meta" - ] - }, - { - "description": "fs:allow-picture-meta-recursive -> This allows full recursive read access to metadata of the `$PICTURE` folder, including file listing and statistics.", - "type": "string", - "enum": [ - "fs:allow-picture-meta-recursive" - ] - }, - { - "description": "fs:allow-picture-read -> This allows non-recursive read access to the `$PICTURE` folder.", - "type": "string", - "enum": [ - "fs:allow-picture-read" - ] - }, - { - "description": "fs:allow-picture-read-recursive -> This allows full recursive read access to the complete `$PICTURE` folder, files and subdirectories.", - "type": "string", - "enum": [ - "fs:allow-picture-read-recursive" - ] - }, - { - "description": "fs:allow-picture-write -> This allows non-recursive write access to the `$PICTURE` folder.", - "type": "string", - "enum": [ - "fs:allow-picture-write" - ] - }, - { - "description": "fs:allow-picture-write-recursive -> This allows full recursive write access to the complete `$PICTURE` folder, files and subdirectories.", - "type": "string", - "enum": [ - "fs:allow-picture-write-recursive" - ] - }, - { - "description": "fs:allow-public-meta -> This allows non-recursive read access to metadata of the `$PUBLIC` folder, including file listing and statistics.", - "type": "string", - "enum": [ - "fs:allow-public-meta" - ] - }, - { - "description": "fs:allow-public-meta-recursive -> This allows full recursive read access to metadata of the `$PUBLIC` folder, including file listing and statistics.", - "type": "string", - "enum": [ - "fs:allow-public-meta-recursive" - ] - }, - { - "description": "fs:allow-public-read -> This allows non-recursive read access to the `$PUBLIC` folder.", - "type": "string", - "enum": [ - "fs:allow-public-read" - ] - }, - { - "description": "fs:allow-public-read-recursive -> This allows full recursive read access to the complete `$PUBLIC` folder, files and subdirectories.", - "type": "string", - "enum": [ - "fs:allow-public-read-recursive" - ] - }, - { - "description": "fs:allow-public-write -> This allows non-recursive write access to the `$PUBLIC` folder.", - "type": "string", - "enum": [ - "fs:allow-public-write" - ] - }, - { - "description": "fs:allow-public-write-recursive -> This allows full recursive write access to the complete `$PUBLIC` folder, files and subdirectories.", - "type": "string", - "enum": [ - "fs:allow-public-write-recursive" - ] - }, - { - "description": "fs:allow-resource-meta -> This allows non-recursive read access to metadata of the `$RESOURCE` folder, including file listing and statistics.", - "type": "string", - "enum": [ - "fs:allow-resource-meta" - ] - }, - { - "description": "fs:allow-resource-meta-recursive -> This allows full recursive read access to metadata of the `$RESOURCE` folder, including file listing and statistics.", - "type": "string", - "enum": [ - "fs:allow-resource-meta-recursive" - ] - }, - { - "description": "fs:allow-resource-read -> This allows non-recursive read access to the `$RESOURCE` folder.", - "type": "string", - "enum": [ - "fs:allow-resource-read" - ] - }, - { - "description": "fs:allow-resource-read-recursive -> This allows full recursive read access to the complete `$RESOURCE` folder, files and subdirectories.", - "type": "string", - "enum": [ - "fs:allow-resource-read-recursive" - ] - }, - { - "description": "fs:allow-resource-write -> This allows non-recursive write access to the `$RESOURCE` folder.", - "type": "string", - "enum": [ - "fs:allow-resource-write" - ] - }, - { - "description": "fs:allow-resource-write-recursive -> This allows full recursive write access to the complete `$RESOURCE` folder, files and subdirectories.", - "type": "string", - "enum": [ - "fs:allow-resource-write-recursive" - ] - }, - { - "description": "fs:allow-runtime-meta -> This allows non-recursive read access to metadata of the `$RUNTIME` folder, including file listing and statistics.", - "type": "string", - "enum": [ - "fs:allow-runtime-meta" - ] - }, - { - "description": "fs:allow-runtime-meta-recursive -> This allows full recursive read access to metadata of the `$RUNTIME` folder, including file listing and statistics.", - "type": "string", - "enum": [ - "fs:allow-runtime-meta-recursive" - ] - }, - { - "description": "fs:allow-runtime-read -> This allows non-recursive read access to the `$RUNTIME` folder.", - "type": "string", - "enum": [ - "fs:allow-runtime-read" - ] - }, - { - "description": "fs:allow-runtime-read-recursive -> This allows full recursive read access to the complete `$RUNTIME` folder, files and subdirectories.", - "type": "string", - "enum": [ - "fs:allow-runtime-read-recursive" - ] - }, - { - "description": "fs:allow-runtime-write -> This allows non-recursive write access to the `$RUNTIME` folder.", - "type": "string", - "enum": [ - "fs:allow-runtime-write" - ] - }, - { - "description": "fs:allow-runtime-write-recursive -> This allows full recursive write access to the complete `$RUNTIME` folder, files and subdirectories.", - "type": "string", - "enum": [ - "fs:allow-runtime-write-recursive" - ] - }, - { - "description": "fs:allow-temp-meta -> This allows non-recursive read access to metadata of the `$TEMP` folder, including file listing and statistics.", - "type": "string", - "enum": [ - "fs:allow-temp-meta" - ] - }, - { - "description": "fs:allow-temp-meta-recursive -> This allows full recursive read access to metadata of the `$TEMP` folder, including file listing and statistics.", - "type": "string", - "enum": [ - "fs:allow-temp-meta-recursive" - ] - }, - { - "description": "fs:allow-temp-read -> This allows non-recursive read access to the `$TEMP` folder.", - "type": "string", - "enum": [ - "fs:allow-temp-read" - ] - }, - { - "description": "fs:allow-temp-read-recursive -> This allows full recursive read access to the complete `$TEMP` folder, files and subdirectories.", - "type": "string", - "enum": [ - "fs:allow-temp-read-recursive" - ] - }, - { - "description": "fs:allow-temp-write -> This allows non-recursive write access to the `$TEMP` folder.", - "type": "string", - "enum": [ - "fs:allow-temp-write" - ] - }, - { - "description": "fs:allow-temp-write-recursive -> This allows full recursive write access to the complete `$TEMP` folder, files and subdirectories.", - "type": "string", - "enum": [ - "fs:allow-temp-write-recursive" - ] - }, - { - "description": "fs:allow-template-meta -> This allows non-recursive read access to metadata of the `$TEMPLATE` folder, including file listing and statistics.", - "type": "string", - "enum": [ - "fs:allow-template-meta" - ] - }, - { - "description": "fs:allow-template-meta-recursive -> This allows full recursive read access to metadata of the `$TEMPLATE` folder, including file listing and statistics.", - "type": "string", - "enum": [ - "fs:allow-template-meta-recursive" - ] - }, - { - "description": "fs:allow-template-read -> This allows non-recursive read access to the `$TEMPLATE` folder.", - "type": "string", - "enum": [ - "fs:allow-template-read" - ] - }, - { - "description": "fs:allow-template-read-recursive -> This allows full recursive read access to the complete `$TEMPLATE` folder, files and subdirectories.", - "type": "string", - "enum": [ - "fs:allow-template-read-recursive" - ] - }, - { - "description": "fs:allow-template-write -> This allows non-recursive write access to the `$TEMPLATE` folder.", - "type": "string", - "enum": [ - "fs:allow-template-write" - ] - }, - { - "description": "fs:allow-template-write-recursive -> This allows full recursive write access to the complete `$TEMPLATE` folder, files and subdirectories.", - "type": "string", - "enum": [ - "fs:allow-template-write-recursive" - ] - }, - { - "description": "fs:allow-video-meta -> This allows non-recursive read access to metadata of the `$VIDEO` folder, including file listing and statistics.", - "type": "string", - "enum": [ - "fs:allow-video-meta" - ] - }, - { - "description": "fs:allow-video-meta-recursive -> This allows full recursive read access to metadata of the `$VIDEO` folder, including file listing and statistics.", - "type": "string", - "enum": [ - "fs:allow-video-meta-recursive" - ] - }, - { - "description": "fs:allow-video-read -> This allows non-recursive read access to the `$VIDEO` folder.", - "type": "string", - "enum": [ - "fs:allow-video-read" - ] - }, - { - "description": "fs:allow-video-read-recursive -> This allows full recursive read access to the complete `$VIDEO` folder, files and subdirectories.", - "type": "string", - "enum": [ - "fs:allow-video-read-recursive" - ] - }, - { - "description": "fs:allow-video-write -> This allows non-recursive write access to the `$VIDEO` folder.", - "type": "string", - "enum": [ - "fs:allow-video-write" - ] - }, - { - "description": "fs:allow-video-write-recursive -> This allows full recursive write access to the complete `$VIDEO` folder, files and subdirectories.", - "type": "string", - "enum": [ - "fs:allow-video-write-recursive" - ] - }, - { - "description": "fs:deny-default -> This denies access to dangerous Tauri relevant files and folders by default.", - "type": "string", - "enum": [ - "fs:deny-default" - ] - }, - { - "description": "fs:allow-copy-file -> Enables the copy_file command without any pre-configured scope.", - "type": "string", - "enum": [ - "fs:allow-copy-file" - ] - }, - { - "description": "fs:allow-create -> Enables the create command without any pre-configured scope.", - "type": "string", - "enum": [ - "fs:allow-create" - ] - }, - { - "description": "fs:allow-exists -> Enables the exists command without any pre-configured scope.", - "type": "string", - "enum": [ - "fs:allow-exists" - ] - }, - { - "description": "fs:allow-fstat -> Enables the fstat command without any pre-configured scope.", - "type": "string", - "enum": [ - "fs:allow-fstat" - ] - }, - { - "description": "fs:allow-ftruncate -> Enables the ftruncate command without any pre-configured scope.", - "type": "string", - "enum": [ - "fs:allow-ftruncate" - ] - }, - { - "description": "fs:allow-lstat -> Enables the lstat command without any pre-configured scope.", - "type": "string", - "enum": [ - "fs:allow-lstat" - ] - }, - { - "description": "fs:allow-mkdir -> Enables the mkdir command without any pre-configured scope.", - "type": "string", - "enum": [ - "fs:allow-mkdir" - ] - }, - { - "description": "fs:allow-open -> Enables the open command without any pre-configured scope.", - "type": "string", - "enum": [ - "fs:allow-open" - ] - }, - { - "description": "fs:allow-read -> Enables the read command without any pre-configured scope.", - "type": "string", - "enum": [ - "fs:allow-read" - ] - }, - { - "description": "fs:allow-read-dir -> Enables the read_dir command without any pre-configured scope.", - "type": "string", - "enum": [ - "fs:allow-read-dir" - ] - }, - { - "description": "fs:allow-read-file -> Enables the read_file command without any pre-configured scope.", - "type": "string", - "enum": [ - "fs:allow-read-file" - ] - }, - { - "description": "fs:allow-read-text-file -> Enables the read_text_file command without any pre-configured scope.", - "type": "string", - "enum": [ - "fs:allow-read-text-file" - ] - }, - { - "description": "fs:allow-read-text-file-lines -> Enables the read_text_file_lines command without any pre-configured scope.", - "type": "string", - "enum": [ - "fs:allow-read-text-file-lines" - ] - }, - { - "description": "fs:allow-read-text-file-lines-next -> Enables the read_text_file_lines_next command without any pre-configured scope.", - "type": "string", - "enum": [ - "fs:allow-read-text-file-lines-next" - ] - }, - { - "description": "fs:allow-remove -> Enables the remove command without any pre-configured scope.", - "type": "string", - "enum": [ - "fs:allow-remove" - ] - }, - { - "description": "fs:allow-rename -> Enables the rename command without any pre-configured scope.", - "type": "string", - "enum": [ - "fs:allow-rename" - ] - }, - { - "description": "fs:allow-seek -> Enables the seek command without any pre-configured scope.", - "type": "string", - "enum": [ - "fs:allow-seek" - ] - }, - { - "description": "fs:allow-stat -> Enables the stat command without any pre-configured scope.", - "type": "string", - "enum": [ - "fs:allow-stat" - ] - }, - { - "description": "fs:allow-truncate -> Enables the truncate command without any pre-configured scope.", - "type": "string", - "enum": [ - "fs:allow-truncate" - ] - }, - { - "description": "fs:allow-unwatch -> Enables the unwatch command without any pre-configured scope.", - "type": "string", - "enum": [ - "fs:allow-unwatch" - ] - }, - { - "description": "fs:allow-watch -> Enables the watch command without any pre-configured scope.", - "type": "string", - "enum": [ - "fs:allow-watch" - ] - }, - { - "description": "fs:allow-write -> Enables the write command without any pre-configured scope.", - "type": "string", - "enum": [ - "fs:allow-write" - ] - }, - { - "description": "fs:allow-write-file -> Enables the write_file command without any pre-configured scope.", - "type": "string", - "enum": [ - "fs:allow-write-file" - ] - }, - { - "description": "fs:allow-write-text-file -> Enables the write_text_file command without any pre-configured scope.", - "type": "string", - "enum": [ - "fs:allow-write-text-file" - ] - }, - { - "description": "fs:create-app-specific-dirs -> This permissions allows to create the application specific directories.\n", - "type": "string", - "enum": [ - "fs:create-app-specific-dirs" - ] - }, - { - "description": "fs:deny-copy-file -> Denies the copy_file command without any pre-configured scope.", - "type": "string", - "enum": [ - "fs:deny-copy-file" - ] - }, - { - "description": "fs:deny-create -> Denies the create command without any pre-configured scope.", - "type": "string", - "enum": [ - "fs:deny-create" - ] - }, - { - "description": "fs:deny-exists -> Denies the exists command without any pre-configured scope.", - "type": "string", - "enum": [ - "fs:deny-exists" - ] - }, - { - "description": "fs:deny-fstat -> Denies the fstat command without any pre-configured scope.", - "type": "string", - "enum": [ - "fs:deny-fstat" - ] - }, - { - "description": "fs:deny-ftruncate -> Denies the ftruncate command without any pre-configured scope.", - "type": "string", - "enum": [ - "fs:deny-ftruncate" - ] - }, - { - "description": "fs:deny-lstat -> Denies the lstat command without any pre-configured scope.", - "type": "string", - "enum": [ - "fs:deny-lstat" - ] - }, - { - "description": "fs:deny-mkdir -> Denies the mkdir command without any pre-configured scope.", - "type": "string", - "enum": [ - "fs:deny-mkdir" - ] - }, - { - "description": "fs:deny-open -> Denies the open command without any pre-configured scope.", - "type": "string", - "enum": [ - "fs:deny-open" - ] - }, - { - "description": "fs:deny-read -> Denies the read command without any pre-configured scope.", - "type": "string", - "enum": [ - "fs:deny-read" - ] - }, - { - "description": "fs:deny-read-dir -> Denies the read_dir command without any pre-configured scope.", - "type": "string", - "enum": [ - "fs:deny-read-dir" - ] - }, - { - "description": "fs:deny-read-file -> Denies the read_file command without any pre-configured scope.", - "type": "string", - "enum": [ - "fs:deny-read-file" - ] - }, - { - "description": "fs:deny-read-text-file -> Denies the read_text_file command without any pre-configured scope.", - "type": "string", - "enum": [ - "fs:deny-read-text-file" - ] - }, - { - "description": "fs:deny-read-text-file-lines -> Denies the read_text_file_lines command without any pre-configured scope.", - "type": "string", - "enum": [ - "fs:deny-read-text-file-lines" - ] - }, - { - "description": "fs:deny-read-text-file-lines-next -> Denies the read_text_file_lines_next command without any pre-configured scope.", - "type": "string", - "enum": [ - "fs:deny-read-text-file-lines-next" - ] - }, - { - "description": "fs:deny-remove -> Denies the remove command without any pre-configured scope.", - "type": "string", - "enum": [ - "fs:deny-remove" - ] - }, - { - "description": "fs:deny-rename -> Denies the rename command without any pre-configured scope.", - "type": "string", - "enum": [ - "fs:deny-rename" - ] - }, - { - "description": "fs:deny-seek -> Denies the seek command without any pre-configured scope.", - "type": "string", - "enum": [ - "fs:deny-seek" - ] - }, - { - "description": "fs:deny-stat -> Denies the stat command without any pre-configured scope.", - "type": "string", - "enum": [ - "fs:deny-stat" - ] - }, - { - "description": "fs:deny-truncate -> Denies the truncate command without any pre-configured scope.", - "type": "string", - "enum": [ - "fs:deny-truncate" - ] - }, - { - "description": "fs:deny-unwatch -> Denies the unwatch command without any pre-configured scope.", - "type": "string", - "enum": [ - "fs:deny-unwatch" - ] - }, - { - "description": "fs:deny-watch -> Denies the watch command without any pre-configured scope.", - "type": "string", - "enum": [ - "fs:deny-watch" - ] - }, - { - "description": "fs:deny-webview-data-linux -> This denies read access to the\n`$APPLOCALDATA` folder on linux as the webview data and configuration values are stored here.\nAllowing access can lead to sensitive information disclosure and should be well considered.", - "type": "string", - "enum": [ - "fs:deny-webview-data-linux" - ] - }, - { - "description": "fs:deny-webview-data-windows -> This denies read access to the\n`$APPLOCALDATA/EBWebView` folder on windows as the webview data and configuration values are stored here.\nAllowing access can lead to sensitive information disclosure and should be well considered.", - "type": "string", - "enum": [ - "fs:deny-webview-data-windows" - ] - }, - { - "description": "fs:deny-write -> Denies the write command without any pre-configured scope.", - "type": "string", - "enum": [ - "fs:deny-write" - ] - }, - { - "description": "fs:deny-write-file -> Denies the write_file command without any pre-configured scope.", - "type": "string", - "enum": [ - "fs:deny-write-file" - ] - }, - { - "description": "fs:deny-write-text-file -> Denies the write_text_file command without any pre-configured scope.", - "type": "string", - "enum": [ - "fs:deny-write-text-file" - ] - }, - { - "description": "fs:read-all -> This enables all read related commands without any pre-configured accessible paths.", - "type": "string", - "enum": [ - "fs:read-all" - ] - }, - { - "description": "fs:read-app-specific-dirs-recursive -> This permission allows recursive read functionality on the application\nspecific base directories. \n", - "type": "string", - "enum": [ - "fs:read-app-specific-dirs-recursive" - ] - }, - { - "description": "fs:read-dirs -> This enables directory read and file metadata related commands without any pre-configured accessible paths.", - "type": "string", - "enum": [ - "fs:read-dirs" - ] - }, - { - "description": "fs:read-files -> This enables file read related commands without any pre-configured accessible paths.", - "type": "string", - "enum": [ - "fs:read-files" - ] - }, - { - "description": "fs:read-meta -> This enables all index or metadata related commands without any pre-configured accessible paths.", - "type": "string", - "enum": [ - "fs:read-meta" - ] - }, - { - "description": "fs:scope -> An empty permission you can use to modify the global scope.", - "type": "string", - "enum": [ - "fs:scope" - ] - }, - { - "description": "fs:scope-app -> This scope permits access to all files and list content of top level directories in the `$APP`folder.", - "type": "string", - "enum": [ - "fs:scope-app" - ] - }, - { - "description": "fs:scope-app-index -> This scope permits to list all files and folders in the `$APP`folder.", - "type": "string", - "enum": [ - "fs:scope-app-index" - ] - }, - { - "description": "fs:scope-app-recursive -> This scope permits recursive access to the complete `$APP` folder, including sub directories and files.", - "type": "string", - "enum": [ - "fs:scope-app-recursive" - ] - }, - { - "description": "fs:scope-appcache -> This scope permits access to all files and list content of top level directories in the `$APPCACHE`folder.", - "type": "string", - "enum": [ - "fs:scope-appcache" - ] - }, - { - "description": "fs:scope-appcache-index -> This scope permits to list all files and folders in the `$APPCACHE`folder.", - "type": "string", - "enum": [ - "fs:scope-appcache-index" - ] - }, - { - "description": "fs:scope-appcache-recursive -> This scope permits recursive access to the complete `$APPCACHE` folder, including sub directories and files.", - "type": "string", - "enum": [ - "fs:scope-appcache-recursive" - ] - }, - { - "description": "fs:scope-appconfig -> This scope permits access to all files and list content of top level directories in the `$APPCONFIG`folder.", - "type": "string", - "enum": [ - "fs:scope-appconfig" - ] - }, - { - "description": "fs:scope-appconfig-index -> This scope permits to list all files and folders in the `$APPCONFIG`folder.", - "type": "string", - "enum": [ - "fs:scope-appconfig-index" - ] - }, - { - "description": "fs:scope-appconfig-recursive -> This scope permits recursive access to the complete `$APPCONFIG` folder, including sub directories and files.", - "type": "string", - "enum": [ - "fs:scope-appconfig-recursive" - ] - }, - { - "description": "fs:scope-appdata -> This scope permits access to all files and list content of top level directories in the `$APPDATA`folder.", - "type": "string", - "enum": [ - "fs:scope-appdata" - ] - }, - { - "description": "fs:scope-appdata-index -> This scope permits to list all files and folders in the `$APPDATA`folder.", - "type": "string", - "enum": [ - "fs:scope-appdata-index" - ] - }, - { - "description": "fs:scope-appdata-recursive -> This scope permits recursive access to the complete `$APPDATA` folder, including sub directories and files.", - "type": "string", - "enum": [ - "fs:scope-appdata-recursive" - ] - }, - { - "description": "fs:scope-applocaldata -> This scope permits access to all files and list content of top level directories in the `$APPLOCALDATA`folder.", - "type": "string", - "enum": [ - "fs:scope-applocaldata" - ] - }, - { - "description": "fs:scope-applocaldata-index -> This scope permits to list all files and folders in the `$APPLOCALDATA`folder.", - "type": "string", - "enum": [ - "fs:scope-applocaldata-index" - ] - }, - { - "description": "fs:scope-applocaldata-recursive -> This scope permits recursive access to the complete `$APPLOCALDATA` folder, including sub directories and files.", - "type": "string", - "enum": [ - "fs:scope-applocaldata-recursive" - ] - }, - { - "description": "fs:scope-applog -> This scope permits access to all files and list content of top level directories in the `$APPLOG`folder.", - "type": "string", - "enum": [ - "fs:scope-applog" - ] - }, - { - "description": "fs:scope-applog-index -> This scope permits to list all files and folders in the `$APPLOG`folder.", - "type": "string", - "enum": [ - "fs:scope-applog-index" - ] - }, - { - "description": "fs:scope-applog-recursive -> This scope permits recursive access to the complete `$APPLOG` folder, including sub directories and files.", - "type": "string", - "enum": [ - "fs:scope-applog-recursive" - ] - }, - { - "description": "fs:scope-audio -> This scope permits access to all files and list content of top level directories in the `$AUDIO`folder.", - "type": "string", - "enum": [ - "fs:scope-audio" - ] - }, - { - "description": "fs:scope-audio-index -> This scope permits to list all files and folders in the `$AUDIO`folder.", - "type": "string", - "enum": [ - "fs:scope-audio-index" - ] - }, - { - "description": "fs:scope-audio-recursive -> This scope permits recursive access to the complete `$AUDIO` folder, including sub directories and files.", - "type": "string", - "enum": [ - "fs:scope-audio-recursive" - ] - }, - { - "description": "fs:scope-cache -> This scope permits access to all files and list content of top level directories in the `$CACHE`folder.", - "type": "string", - "enum": [ - "fs:scope-cache" - ] - }, - { - "description": "fs:scope-cache-index -> This scope permits to list all files and folders in the `$CACHE`folder.", - "type": "string", - "enum": [ - "fs:scope-cache-index" - ] - }, - { - "description": "fs:scope-cache-recursive -> This scope permits recursive access to the complete `$CACHE` folder, including sub directories and files.", - "type": "string", - "enum": [ - "fs:scope-cache-recursive" - ] - }, - { - "description": "fs:scope-config -> This scope permits access to all files and list content of top level directories in the `$CONFIG`folder.", - "type": "string", - "enum": [ - "fs:scope-config" - ] - }, - { - "description": "fs:scope-config-index -> This scope permits to list all files and folders in the `$CONFIG`folder.", - "type": "string", - "enum": [ - "fs:scope-config-index" - ] - }, - { - "description": "fs:scope-config-recursive -> This scope permits recursive access to the complete `$CONFIG` folder, including sub directories and files.", - "type": "string", - "enum": [ - "fs:scope-config-recursive" - ] - }, - { - "description": "fs:scope-data -> This scope permits access to all files and list content of top level directories in the `$DATA`folder.", - "type": "string", - "enum": [ - "fs:scope-data" - ] - }, - { - "description": "fs:scope-data-index -> This scope permits to list all files and folders in the `$DATA`folder.", - "type": "string", - "enum": [ - "fs:scope-data-index" - ] - }, - { - "description": "fs:scope-data-recursive -> This scope permits recursive access to the complete `$DATA` folder, including sub directories and files.", - "type": "string", - "enum": [ - "fs:scope-data-recursive" - ] - }, - { - "description": "fs:scope-desktop -> This scope permits access to all files and list content of top level directories in the `$DESKTOP`folder.", - "type": "string", - "enum": [ - "fs:scope-desktop" - ] - }, - { - "description": "fs:scope-desktop-index -> This scope permits to list all files and folders in the `$DESKTOP`folder.", - "type": "string", - "enum": [ - "fs:scope-desktop-index" - ] - }, - { - "description": "fs:scope-desktop-recursive -> This scope permits recursive access to the complete `$DESKTOP` folder, including sub directories and files.", - "type": "string", - "enum": [ - "fs:scope-desktop-recursive" - ] - }, - { - "description": "fs:scope-document -> This scope permits access to all files and list content of top level directories in the `$DOCUMENT`folder.", - "type": "string", - "enum": [ - "fs:scope-document" - ] - }, - { - "description": "fs:scope-document-index -> This scope permits to list all files and folders in the `$DOCUMENT`folder.", - "type": "string", - "enum": [ - "fs:scope-document-index" - ] - }, - { - "description": "fs:scope-document-recursive -> This scope permits recursive access to the complete `$DOCUMENT` folder, including sub directories and files.", - "type": "string", - "enum": [ - "fs:scope-document-recursive" - ] - }, - { - "description": "fs:scope-download -> This scope permits access to all files and list content of top level directories in the `$DOWNLOAD`folder.", - "type": "string", - "enum": [ - "fs:scope-download" - ] - }, - { - "description": "fs:scope-download-index -> This scope permits to list all files and folders in the `$DOWNLOAD`folder.", - "type": "string", - "enum": [ - "fs:scope-download-index" - ] - }, - { - "description": "fs:scope-download-recursive -> This scope permits recursive access to the complete `$DOWNLOAD` folder, including sub directories and files.", - "type": "string", - "enum": [ - "fs:scope-download-recursive" - ] - }, - { - "description": "fs:scope-exe -> This scope permits access to all files and list content of top level directories in the `$EXE`folder.", - "type": "string", - "enum": [ - "fs:scope-exe" - ] - }, - { - "description": "fs:scope-exe-index -> This scope permits to list all files and folders in the `$EXE`folder.", - "type": "string", - "enum": [ - "fs:scope-exe-index" - ] - }, - { - "description": "fs:scope-exe-recursive -> This scope permits recursive access to the complete `$EXE` folder, including sub directories and files.", - "type": "string", - "enum": [ - "fs:scope-exe-recursive" - ] - }, - { - "description": "fs:scope-font -> This scope permits access to all files and list content of top level directories in the `$FONT`folder.", - "type": "string", - "enum": [ - "fs:scope-font" - ] - }, - { - "description": "fs:scope-font-index -> This scope permits to list all files and folders in the `$FONT`folder.", - "type": "string", - "enum": [ - "fs:scope-font-index" - ] - }, - { - "description": "fs:scope-font-recursive -> This scope permits recursive access to the complete `$FONT` folder, including sub directories and files.", - "type": "string", - "enum": [ - "fs:scope-font-recursive" - ] - }, - { - "description": "fs:scope-home -> This scope permits access to all files and list content of top level directories in the `$HOME`folder.", - "type": "string", - "enum": [ - "fs:scope-home" - ] - }, - { - "description": "fs:scope-home-index -> This scope permits to list all files and folders in the `$HOME`folder.", - "type": "string", - "enum": [ - "fs:scope-home-index" - ] - }, - { - "description": "fs:scope-home-recursive -> This scope permits recursive access to the complete `$HOME` folder, including sub directories and files.", - "type": "string", - "enum": [ - "fs:scope-home-recursive" - ] - }, - { - "description": "fs:scope-localdata -> This scope permits access to all files and list content of top level directories in the `$LOCALDATA`folder.", - "type": "string", - "enum": [ - "fs:scope-localdata" - ] - }, - { - "description": "fs:scope-localdata-index -> This scope permits to list all files and folders in the `$LOCALDATA`folder.", - "type": "string", - "enum": [ - "fs:scope-localdata-index" - ] - }, - { - "description": "fs:scope-localdata-recursive -> This scope permits recursive access to the complete `$LOCALDATA` folder, including sub directories and files.", - "type": "string", - "enum": [ - "fs:scope-localdata-recursive" - ] - }, - { - "description": "fs:scope-log -> This scope permits access to all files and list content of top level directories in the `$LOG`folder.", - "type": "string", - "enum": [ - "fs:scope-log" - ] - }, - { - "description": "fs:scope-log-index -> This scope permits to list all files and folders in the `$LOG`folder.", - "type": "string", - "enum": [ - "fs:scope-log-index" - ] - }, - { - "description": "fs:scope-log-recursive -> This scope permits recursive access to the complete `$LOG` folder, including sub directories and files.", - "type": "string", - "enum": [ - "fs:scope-log-recursive" - ] - }, - { - "description": "fs:scope-picture -> This scope permits access to all files and list content of top level directories in the `$PICTURE`folder.", - "type": "string", - "enum": [ - "fs:scope-picture" - ] - }, - { - "description": "fs:scope-picture-index -> This scope permits to list all files and folders in the `$PICTURE`folder.", - "type": "string", - "enum": [ - "fs:scope-picture-index" - ] - }, - { - "description": "fs:scope-picture-recursive -> This scope permits recursive access to the complete `$PICTURE` folder, including sub directories and files.", - "type": "string", - "enum": [ - "fs:scope-picture-recursive" - ] - }, - { - "description": "fs:scope-public -> This scope permits access to all files and list content of top level directories in the `$PUBLIC`folder.", - "type": "string", - "enum": [ - "fs:scope-public" - ] - }, - { - "description": "fs:scope-public-index -> This scope permits to list all files and folders in the `$PUBLIC`folder.", - "type": "string", - "enum": [ - "fs:scope-public-index" - ] - }, - { - "description": "fs:scope-public-recursive -> This scope permits recursive access to the complete `$PUBLIC` folder, including sub directories and files.", - "type": "string", - "enum": [ - "fs:scope-public-recursive" - ] - }, - { - "description": "fs:scope-resource -> This scope permits access to all files and list content of top level directories in the `$RESOURCE`folder.", - "type": "string", - "enum": [ - "fs:scope-resource" - ] - }, - { - "description": "fs:scope-resource-index -> This scope permits to list all files and folders in the `$RESOURCE`folder.", - "type": "string", - "enum": [ - "fs:scope-resource-index" - ] - }, - { - "description": "fs:scope-resource-recursive -> This scope permits recursive access to the complete `$RESOURCE` folder, including sub directories and files.", - "type": "string", - "enum": [ - "fs:scope-resource-recursive" - ] - }, - { - "description": "fs:scope-runtime -> This scope permits access to all files and list content of top level directories in the `$RUNTIME`folder.", - "type": "string", - "enum": [ - "fs:scope-runtime" - ] - }, - { - "description": "fs:scope-runtime-index -> This scope permits to list all files and folders in the `$RUNTIME`folder.", - "type": "string", - "enum": [ - "fs:scope-runtime-index" - ] - }, - { - "description": "fs:scope-runtime-recursive -> This scope permits recursive access to the complete `$RUNTIME` folder, including sub directories and files.", - "type": "string", - "enum": [ - "fs:scope-runtime-recursive" - ] - }, - { - "description": "fs:scope-temp -> This scope permits access to all files and list content of top level directories in the `$TEMP`folder.", - "type": "string", - "enum": [ - "fs:scope-temp" - ] - }, - { - "description": "fs:scope-temp-index -> This scope permits to list all files and folders in the `$TEMP`folder.", - "type": "string", - "enum": [ - "fs:scope-temp-index" - ] - }, - { - "description": "fs:scope-temp-recursive -> This scope permits recursive access to the complete `$TEMP` folder, including sub directories and files.", - "type": "string", - "enum": [ - "fs:scope-temp-recursive" - ] - }, - { - "description": "fs:scope-template -> This scope permits access to all files and list content of top level directories in the `$TEMPLATE`folder.", - "type": "string", - "enum": [ - "fs:scope-template" - ] - }, - { - "description": "fs:scope-template-index -> This scope permits to list all files and folders in the `$TEMPLATE`folder.", - "type": "string", - "enum": [ - "fs:scope-template-index" - ] - }, - { - "description": "fs:scope-template-recursive -> This scope permits recursive access to the complete `$TEMPLATE` folder, including sub directories and files.", - "type": "string", - "enum": [ - "fs:scope-template-recursive" - ] - }, - { - "description": "fs:scope-video -> This scope permits access to all files and list content of top level directories in the `$VIDEO`folder.", - "type": "string", - "enum": [ - "fs:scope-video" - ] - }, - { - "description": "fs:scope-video-index -> This scope permits to list all files and folders in the `$VIDEO`folder.", - "type": "string", - "enum": [ - "fs:scope-video-index" - ] - }, - { - "description": "fs:scope-video-recursive -> This scope permits recursive access to the complete `$VIDEO` folder, including sub directories and files.", - "type": "string", - "enum": [ - "fs:scope-video-recursive" + "if": { + "properties": { + "identifier": { + "anyOf": [ + { + "description": "This set of permissions describes the what kind of\nfile system access the `fs` plugin has enabled or denied by default.\n\n#### Granted Permissions\n\nThis default permission set enables read access to the\napplication specific directories (AppConfig, AppData, AppLocalData, AppCache,\nAppLog) and all files and sub directories created in it.\nThe location of these directories depends on the operating system,\nwhere the application is run.\n\nIn general these directories need to be manually created\nby the application at runtime, before accessing files or folders\nin it is possible.\n\nTherefore, it is also allowed to create all of these folders via\nthe `mkdir` command.\n\n#### Denied Permissions\n\nThis default permission set prevents access to critical components\nof the Tauri application by default.\nOn Windows the webview data folder access is denied.\n\n", + "type": "string", + "const": "fs:default" + }, + { + "description": "This allows non-recursive read access to metadata of the application folders, including file listing and statistics.", + "type": "string", + "const": "fs:allow-app-meta" + }, + { + "description": "This allows full recursive read access to metadata of the application folders, including file listing and statistics.", + "type": "string", + "const": "fs:allow-app-meta-recursive" + }, + { + "description": "This allows non-recursive read access to the application folders.", + "type": "string", + "const": "fs:allow-app-read" + }, + { + "description": "This allows full recursive read access to the complete application folders, files and subdirectories.", + "type": "string", + "const": "fs:allow-app-read-recursive" + }, + { + "description": "This allows non-recursive write access to the application folders.", + "type": "string", + "const": "fs:allow-app-write" + }, + { + "description": "This allows full recursive write access to the complete application folders, files and subdirectories.", + "type": "string", + "const": "fs:allow-app-write-recursive" + }, + { + "description": "This allows non-recursive read access to metadata of the `$APPCACHE` folder, including file listing and statistics.", + "type": "string", + "const": "fs:allow-appcache-meta" + }, + { + "description": "This allows full recursive read access to metadata of the `$APPCACHE` folder, including file listing and statistics.", + "type": "string", + "const": "fs:allow-appcache-meta-recursive" + }, + { + "description": "This allows non-recursive read access to the `$APPCACHE` folder.", + "type": "string", + "const": "fs:allow-appcache-read" + }, + { + "description": "This allows full recursive read access to the complete `$APPCACHE` folder, files and subdirectories.", + "type": "string", + "const": "fs:allow-appcache-read-recursive" + }, + { + "description": "This allows non-recursive write access to the `$APPCACHE` folder.", + "type": "string", + "const": "fs:allow-appcache-write" + }, + { + "description": "This allows full recursive write access to the complete `$APPCACHE` folder, files and subdirectories.", + "type": "string", + "const": "fs:allow-appcache-write-recursive" + }, + { + "description": "This allows non-recursive read access to metadata of the `$APPCONFIG` folder, including file listing and statistics.", + "type": "string", + "const": "fs:allow-appconfig-meta" + }, + { + "description": "This allows full recursive read access to metadata of the `$APPCONFIG` folder, including file listing and statistics.", + "type": "string", + "const": "fs:allow-appconfig-meta-recursive" + }, + { + "description": "This allows non-recursive read access to the `$APPCONFIG` folder.", + "type": "string", + "const": "fs:allow-appconfig-read" + }, + { + "description": "This allows full recursive read access to the complete `$APPCONFIG` folder, files and subdirectories.", + "type": "string", + "const": "fs:allow-appconfig-read-recursive" + }, + { + "description": "This allows non-recursive write access to the `$APPCONFIG` folder.", + "type": "string", + "const": "fs:allow-appconfig-write" + }, + { + "description": "This allows full recursive write access to the complete `$APPCONFIG` folder, files and subdirectories.", + "type": "string", + "const": "fs:allow-appconfig-write-recursive" + }, + { + "description": "This allows non-recursive read access to metadata of the `$APPDATA` folder, including file listing and statistics.", + "type": "string", + "const": "fs:allow-appdata-meta" + }, + { + "description": "This allows full recursive read access to metadata of the `$APPDATA` folder, including file listing and statistics.", + "type": "string", + "const": "fs:allow-appdata-meta-recursive" + }, + { + "description": "This allows non-recursive read access to the `$APPDATA` folder.", + "type": "string", + "const": "fs:allow-appdata-read" + }, + { + "description": "This allows full recursive read access to the complete `$APPDATA` folder, files and subdirectories.", + "type": "string", + "const": "fs:allow-appdata-read-recursive" + }, + { + "description": "This allows non-recursive write access to the `$APPDATA` folder.", + "type": "string", + "const": "fs:allow-appdata-write" + }, + { + "description": "This allows full recursive write access to the complete `$APPDATA` folder, files and subdirectories.", + "type": "string", + "const": "fs:allow-appdata-write-recursive" + }, + { + "description": "This allows non-recursive read access to metadata of the `$APPLOCALDATA` folder, including file listing and statistics.", + "type": "string", + "const": "fs:allow-applocaldata-meta" + }, + { + "description": "This allows full recursive read access to metadata of the `$APPLOCALDATA` folder, including file listing and statistics.", + "type": "string", + "const": "fs:allow-applocaldata-meta-recursive" + }, + { + "description": "This allows non-recursive read access to the `$APPLOCALDATA` folder.", + "type": "string", + "const": "fs:allow-applocaldata-read" + }, + { + "description": "This allows full recursive read access to the complete `$APPLOCALDATA` folder, files and subdirectories.", + "type": "string", + "const": "fs:allow-applocaldata-read-recursive" + }, + { + "description": "This allows non-recursive write access to the `$APPLOCALDATA` folder.", + "type": "string", + "const": "fs:allow-applocaldata-write" + }, + { + "description": "This allows full recursive write access to the complete `$APPLOCALDATA` folder, files and subdirectories.", + "type": "string", + "const": "fs:allow-applocaldata-write-recursive" + }, + { + "description": "This allows non-recursive read access to metadata of the `$APPLOG` folder, including file listing and statistics.", + "type": "string", + "const": "fs:allow-applog-meta" + }, + { + "description": "This allows full recursive read access to metadata of the `$APPLOG` folder, including file listing and statistics.", + "type": "string", + "const": "fs:allow-applog-meta-recursive" + }, + { + "description": "This allows non-recursive read access to the `$APPLOG` folder.", + "type": "string", + "const": "fs:allow-applog-read" + }, + { + "description": "This allows full recursive read access to the complete `$APPLOG` folder, files and subdirectories.", + "type": "string", + "const": "fs:allow-applog-read-recursive" + }, + { + "description": "This allows non-recursive write access to the `$APPLOG` folder.", + "type": "string", + "const": "fs:allow-applog-write" + }, + { + "description": "This allows full recursive write access to the complete `$APPLOG` folder, files and subdirectories.", + "type": "string", + "const": "fs:allow-applog-write-recursive" + }, + { + "description": "This allows non-recursive read access to metadata of the `$AUDIO` folder, including file listing and statistics.", + "type": "string", + "const": "fs:allow-audio-meta" + }, + { + "description": "This allows full recursive read access to metadata of the `$AUDIO` folder, including file listing and statistics.", + "type": "string", + "const": "fs:allow-audio-meta-recursive" + }, + { + "description": "This allows non-recursive read access to the `$AUDIO` folder.", + "type": "string", + "const": "fs:allow-audio-read" + }, + { + "description": "This allows full recursive read access to the complete `$AUDIO` folder, files and subdirectories.", + "type": "string", + "const": "fs:allow-audio-read-recursive" + }, + { + "description": "This allows non-recursive write access to the `$AUDIO` folder.", + "type": "string", + "const": "fs:allow-audio-write" + }, + { + "description": "This allows full recursive write access to the complete `$AUDIO` folder, files and subdirectories.", + "type": "string", + "const": "fs:allow-audio-write-recursive" + }, + { + "description": "This allows non-recursive read access to metadata of the `$CACHE` folder, including file listing and statistics.", + "type": "string", + "const": "fs:allow-cache-meta" + }, + { + "description": "This allows full recursive read access to metadata of the `$CACHE` folder, including file listing and statistics.", + "type": "string", + "const": "fs:allow-cache-meta-recursive" + }, + { + "description": "This allows non-recursive read access to the `$CACHE` folder.", + "type": "string", + "const": "fs:allow-cache-read" + }, + { + "description": "This allows full recursive read access to the complete `$CACHE` folder, files and subdirectories.", + "type": "string", + "const": "fs:allow-cache-read-recursive" + }, + { + "description": "This allows non-recursive write access to the `$CACHE` folder.", + "type": "string", + "const": "fs:allow-cache-write" + }, + { + "description": "This allows full recursive write access to the complete `$CACHE` folder, files and subdirectories.", + "type": "string", + "const": "fs:allow-cache-write-recursive" + }, + { + "description": "This allows non-recursive read access to metadata of the `$CONFIG` folder, including file listing and statistics.", + "type": "string", + "const": "fs:allow-config-meta" + }, + { + "description": "This allows full recursive read access to metadata of the `$CONFIG` folder, including file listing and statistics.", + "type": "string", + "const": "fs:allow-config-meta-recursive" + }, + { + "description": "This allows non-recursive read access to the `$CONFIG` folder.", + "type": "string", + "const": "fs:allow-config-read" + }, + { + "description": "This allows full recursive read access to the complete `$CONFIG` folder, files and subdirectories.", + "type": "string", + "const": "fs:allow-config-read-recursive" + }, + { + "description": "This allows non-recursive write access to the `$CONFIG` folder.", + "type": "string", + "const": "fs:allow-config-write" + }, + { + "description": "This allows full recursive write access to the complete `$CONFIG` folder, files and subdirectories.", + "type": "string", + "const": "fs:allow-config-write-recursive" + }, + { + "description": "This allows non-recursive read access to metadata of the `$DATA` folder, including file listing and statistics.", + "type": "string", + "const": "fs:allow-data-meta" + }, + { + "description": "This allows full recursive read access to metadata of the `$DATA` folder, including file listing and statistics.", + "type": "string", + "const": "fs:allow-data-meta-recursive" + }, + { + "description": "This allows non-recursive read access to the `$DATA` folder.", + "type": "string", + "const": "fs:allow-data-read" + }, + { + "description": "This allows full recursive read access to the complete `$DATA` folder, files and subdirectories.", + "type": "string", + "const": "fs:allow-data-read-recursive" + }, + { + "description": "This allows non-recursive write access to the `$DATA` folder.", + "type": "string", + "const": "fs:allow-data-write" + }, + { + "description": "This allows full recursive write access to the complete `$DATA` folder, files and subdirectories.", + "type": "string", + "const": "fs:allow-data-write-recursive" + }, + { + "description": "This allows non-recursive read access to metadata of the `$DESKTOP` folder, including file listing and statistics.", + "type": "string", + "const": "fs:allow-desktop-meta" + }, + { + "description": "This allows full recursive read access to metadata of the `$DESKTOP` folder, including file listing and statistics.", + "type": "string", + "const": "fs:allow-desktop-meta-recursive" + }, + { + "description": "This allows non-recursive read access to the `$DESKTOP` folder.", + "type": "string", + "const": "fs:allow-desktop-read" + }, + { + "description": "This allows full recursive read access to the complete `$DESKTOP` folder, files and subdirectories.", + "type": "string", + "const": "fs:allow-desktop-read-recursive" + }, + { + "description": "This allows non-recursive write access to the `$DESKTOP` folder.", + "type": "string", + "const": "fs:allow-desktop-write" + }, + { + "description": "This allows full recursive write access to the complete `$DESKTOP` folder, files and subdirectories.", + "type": "string", + "const": "fs:allow-desktop-write-recursive" + }, + { + "description": "This allows non-recursive read access to metadata of the `$DOCUMENT` folder, including file listing and statistics.", + "type": "string", + "const": "fs:allow-document-meta" + }, + { + "description": "This allows full recursive read access to metadata of the `$DOCUMENT` folder, including file listing and statistics.", + "type": "string", + "const": "fs:allow-document-meta-recursive" + }, + { + "description": "This allows non-recursive read access to the `$DOCUMENT` folder.", + "type": "string", + "const": "fs:allow-document-read" + }, + { + "description": "This allows full recursive read access to the complete `$DOCUMENT` folder, files and subdirectories.", + "type": "string", + "const": "fs:allow-document-read-recursive" + }, + { + "description": "This allows non-recursive write access to the `$DOCUMENT` folder.", + "type": "string", + "const": "fs:allow-document-write" + }, + { + "description": "This allows full recursive write access to the complete `$DOCUMENT` folder, files and subdirectories.", + "type": "string", + "const": "fs:allow-document-write-recursive" + }, + { + "description": "This allows non-recursive read access to metadata of the `$DOWNLOAD` folder, including file listing and statistics.", + "type": "string", + "const": "fs:allow-download-meta" + }, + { + "description": "This allows full recursive read access to metadata of the `$DOWNLOAD` folder, including file listing and statistics.", + "type": "string", + "const": "fs:allow-download-meta-recursive" + }, + { + "description": "This allows non-recursive read access to the `$DOWNLOAD` folder.", + "type": "string", + "const": "fs:allow-download-read" + }, + { + "description": "This allows full recursive read access to the complete `$DOWNLOAD` folder, files and subdirectories.", + "type": "string", + "const": "fs:allow-download-read-recursive" + }, + { + "description": "This allows non-recursive write access to the `$DOWNLOAD` folder.", + "type": "string", + "const": "fs:allow-download-write" + }, + { + "description": "This allows full recursive write access to the complete `$DOWNLOAD` folder, files and subdirectories.", + "type": "string", + "const": "fs:allow-download-write-recursive" + }, + { + "description": "This allows non-recursive read access to metadata of the `$EXE` folder, including file listing and statistics.", + "type": "string", + "const": "fs:allow-exe-meta" + }, + { + "description": "This allows full recursive read access to metadata of the `$EXE` folder, including file listing and statistics.", + "type": "string", + "const": "fs:allow-exe-meta-recursive" + }, + { + "description": "This allows non-recursive read access to the `$EXE` folder.", + "type": "string", + "const": "fs:allow-exe-read" + }, + { + "description": "This allows full recursive read access to the complete `$EXE` folder, files and subdirectories.", + "type": "string", + "const": "fs:allow-exe-read-recursive" + }, + { + "description": "This allows non-recursive write access to the `$EXE` folder.", + "type": "string", + "const": "fs:allow-exe-write" + }, + { + "description": "This allows full recursive write access to the complete `$EXE` folder, files and subdirectories.", + "type": "string", + "const": "fs:allow-exe-write-recursive" + }, + { + "description": "This allows non-recursive read access to metadata of the `$FONT` folder, including file listing and statistics.", + "type": "string", + "const": "fs:allow-font-meta" + }, + { + "description": "This allows full recursive read access to metadata of the `$FONT` folder, including file listing and statistics.", + "type": "string", + "const": "fs:allow-font-meta-recursive" + }, + { + "description": "This allows non-recursive read access to the `$FONT` folder.", + "type": "string", + "const": "fs:allow-font-read" + }, + { + "description": "This allows full recursive read access to the complete `$FONT` folder, files and subdirectories.", + "type": "string", + "const": "fs:allow-font-read-recursive" + }, + { + "description": "This allows non-recursive write access to the `$FONT` folder.", + "type": "string", + "const": "fs:allow-font-write" + }, + { + "description": "This allows full recursive write access to the complete `$FONT` folder, files and subdirectories.", + "type": "string", + "const": "fs:allow-font-write-recursive" + }, + { + "description": "This allows non-recursive read access to metadata of the `$HOME` folder, including file listing and statistics.", + "type": "string", + "const": "fs:allow-home-meta" + }, + { + "description": "This allows full recursive read access to metadata of the `$HOME` folder, including file listing and statistics.", + "type": "string", + "const": "fs:allow-home-meta-recursive" + }, + { + "description": "This allows non-recursive read access to the `$HOME` folder.", + "type": "string", + "const": "fs:allow-home-read" + }, + { + "description": "This allows full recursive read access to the complete `$HOME` folder, files and subdirectories.", + "type": "string", + "const": "fs:allow-home-read-recursive" + }, + { + "description": "This allows non-recursive write access to the `$HOME` folder.", + "type": "string", + "const": "fs:allow-home-write" + }, + { + "description": "This allows full recursive write access to the complete `$HOME` folder, files and subdirectories.", + "type": "string", + "const": "fs:allow-home-write-recursive" + }, + { + "description": "This allows non-recursive read access to metadata of the `$LOCALDATA` folder, including file listing and statistics.", + "type": "string", + "const": "fs:allow-localdata-meta" + }, + { + "description": "This allows full recursive read access to metadata of the `$LOCALDATA` folder, including file listing and statistics.", + "type": "string", + "const": "fs:allow-localdata-meta-recursive" + }, + { + "description": "This allows non-recursive read access to the `$LOCALDATA` folder.", + "type": "string", + "const": "fs:allow-localdata-read" + }, + { + "description": "This allows full recursive read access to the complete `$LOCALDATA` folder, files and subdirectories.", + "type": "string", + "const": "fs:allow-localdata-read-recursive" + }, + { + "description": "This allows non-recursive write access to the `$LOCALDATA` folder.", + "type": "string", + "const": "fs:allow-localdata-write" + }, + { + "description": "This allows full recursive write access to the complete `$LOCALDATA` folder, files and subdirectories.", + "type": "string", + "const": "fs:allow-localdata-write-recursive" + }, + { + "description": "This allows non-recursive read access to metadata of the `$LOG` folder, including file listing and statistics.", + "type": "string", + "const": "fs:allow-log-meta" + }, + { + "description": "This allows full recursive read access to metadata of the `$LOG` folder, including file listing and statistics.", + "type": "string", + "const": "fs:allow-log-meta-recursive" + }, + { + "description": "This allows non-recursive read access to the `$LOG` folder.", + "type": "string", + "const": "fs:allow-log-read" + }, + { + "description": "This allows full recursive read access to the complete `$LOG` folder, files and subdirectories.", + "type": "string", + "const": "fs:allow-log-read-recursive" + }, + { + "description": "This allows non-recursive write access to the `$LOG` folder.", + "type": "string", + "const": "fs:allow-log-write" + }, + { + "description": "This allows full recursive write access to the complete `$LOG` folder, files and subdirectories.", + "type": "string", + "const": "fs:allow-log-write-recursive" + }, + { + "description": "This allows non-recursive read access to metadata of the `$PICTURE` folder, including file listing and statistics.", + "type": "string", + "const": "fs:allow-picture-meta" + }, + { + "description": "This allows full recursive read access to metadata of the `$PICTURE` folder, including file listing and statistics.", + "type": "string", + "const": "fs:allow-picture-meta-recursive" + }, + { + "description": "This allows non-recursive read access to the `$PICTURE` folder.", + "type": "string", + "const": "fs:allow-picture-read" + }, + { + "description": "This allows full recursive read access to the complete `$PICTURE` folder, files and subdirectories.", + "type": "string", + "const": "fs:allow-picture-read-recursive" + }, + { + "description": "This allows non-recursive write access to the `$PICTURE` folder.", + "type": "string", + "const": "fs:allow-picture-write" + }, + { + "description": "This allows full recursive write access to the complete `$PICTURE` folder, files and subdirectories.", + "type": "string", + "const": "fs:allow-picture-write-recursive" + }, + { + "description": "This allows non-recursive read access to metadata of the `$PUBLIC` folder, including file listing and statistics.", + "type": "string", + "const": "fs:allow-public-meta" + }, + { + "description": "This allows full recursive read access to metadata of the `$PUBLIC` folder, including file listing and statistics.", + "type": "string", + "const": "fs:allow-public-meta-recursive" + }, + { + "description": "This allows non-recursive read access to the `$PUBLIC` folder.", + "type": "string", + "const": "fs:allow-public-read" + }, + { + "description": "This allows full recursive read access to the complete `$PUBLIC` folder, files and subdirectories.", + "type": "string", + "const": "fs:allow-public-read-recursive" + }, + { + "description": "This allows non-recursive write access to the `$PUBLIC` folder.", + "type": "string", + "const": "fs:allow-public-write" + }, + { + "description": "This allows full recursive write access to the complete `$PUBLIC` folder, files and subdirectories.", + "type": "string", + "const": "fs:allow-public-write-recursive" + }, + { + "description": "This allows non-recursive read access to metadata of the `$RESOURCE` folder, including file listing and statistics.", + "type": "string", + "const": "fs:allow-resource-meta" + }, + { + "description": "This allows full recursive read access to metadata of the `$RESOURCE` folder, including file listing and statistics.", + "type": "string", + "const": "fs:allow-resource-meta-recursive" + }, + { + "description": "This allows non-recursive read access to the `$RESOURCE` folder.", + "type": "string", + "const": "fs:allow-resource-read" + }, + { + "description": "This allows full recursive read access to the complete `$RESOURCE` folder, files and subdirectories.", + "type": "string", + "const": "fs:allow-resource-read-recursive" + }, + { + "description": "This allows non-recursive write access to the `$RESOURCE` folder.", + "type": "string", + "const": "fs:allow-resource-write" + }, + { + "description": "This allows full recursive write access to the complete `$RESOURCE` folder, files and subdirectories.", + "type": "string", + "const": "fs:allow-resource-write-recursive" + }, + { + "description": "This allows non-recursive read access to metadata of the `$RUNTIME` folder, including file listing and statistics.", + "type": "string", + "const": "fs:allow-runtime-meta" + }, + { + "description": "This allows full recursive read access to metadata of the `$RUNTIME` folder, including file listing and statistics.", + "type": "string", + "const": "fs:allow-runtime-meta-recursive" + }, + { + "description": "This allows non-recursive read access to the `$RUNTIME` folder.", + "type": "string", + "const": "fs:allow-runtime-read" + }, + { + "description": "This allows full recursive read access to the complete `$RUNTIME` folder, files and subdirectories.", + "type": "string", + "const": "fs:allow-runtime-read-recursive" + }, + { + "description": "This allows non-recursive write access to the `$RUNTIME` folder.", + "type": "string", + "const": "fs:allow-runtime-write" + }, + { + "description": "This allows full recursive write access to the complete `$RUNTIME` folder, files and subdirectories.", + "type": "string", + "const": "fs:allow-runtime-write-recursive" + }, + { + "description": "This allows non-recursive read access to metadata of the `$TEMP` folder, including file listing and statistics.", + "type": "string", + "const": "fs:allow-temp-meta" + }, + { + "description": "This allows full recursive read access to metadata of the `$TEMP` folder, including file listing and statistics.", + "type": "string", + "const": "fs:allow-temp-meta-recursive" + }, + { + "description": "This allows non-recursive read access to the `$TEMP` folder.", + "type": "string", + "const": "fs:allow-temp-read" + }, + { + "description": "This allows full recursive read access to the complete `$TEMP` folder, files and subdirectories.", + "type": "string", + "const": "fs:allow-temp-read-recursive" + }, + { + "description": "This allows non-recursive write access to the `$TEMP` folder.", + "type": "string", + "const": "fs:allow-temp-write" + }, + { + "description": "This allows full recursive write access to the complete `$TEMP` folder, files and subdirectories.", + "type": "string", + "const": "fs:allow-temp-write-recursive" + }, + { + "description": "This allows non-recursive read access to metadata of the `$TEMPLATE` folder, including file listing and statistics.", + "type": "string", + "const": "fs:allow-template-meta" + }, + { + "description": "This allows full recursive read access to metadata of the `$TEMPLATE` folder, including file listing and statistics.", + "type": "string", + "const": "fs:allow-template-meta-recursive" + }, + { + "description": "This allows non-recursive read access to the `$TEMPLATE` folder.", + "type": "string", + "const": "fs:allow-template-read" + }, + { + "description": "This allows full recursive read access to the complete `$TEMPLATE` folder, files and subdirectories.", + "type": "string", + "const": "fs:allow-template-read-recursive" + }, + { + "description": "This allows non-recursive write access to the `$TEMPLATE` folder.", + "type": "string", + "const": "fs:allow-template-write" + }, + { + "description": "This allows full recursive write access to the complete `$TEMPLATE` folder, files and subdirectories.", + "type": "string", + "const": "fs:allow-template-write-recursive" + }, + { + "description": "This allows non-recursive read access to metadata of the `$VIDEO` folder, including file listing and statistics.", + "type": "string", + "const": "fs:allow-video-meta" + }, + { + "description": "This allows full recursive read access to metadata of the `$VIDEO` folder, including file listing and statistics.", + "type": "string", + "const": "fs:allow-video-meta-recursive" + }, + { + "description": "This allows non-recursive read access to the `$VIDEO` folder.", + "type": "string", + "const": "fs:allow-video-read" + }, + { + "description": "This allows full recursive read access to the complete `$VIDEO` folder, files and subdirectories.", + "type": "string", + "const": "fs:allow-video-read-recursive" + }, + { + "description": "This allows non-recursive write access to the `$VIDEO` folder.", + "type": "string", + "const": "fs:allow-video-write" + }, + { + "description": "This allows full recursive write access to the complete `$VIDEO` folder, files and subdirectories.", + "type": "string", + "const": "fs:allow-video-write-recursive" + }, + { + "description": "This denies access to dangerous Tauri relevant files and folders by default.", + "type": "string", + "const": "fs:deny-default" + }, + { + "description": "Enables the copy_file command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-copy-file" + }, + { + "description": "Enables the create command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-create" + }, + { + "description": "Enables the exists command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-exists" + }, + { + "description": "Enables the fstat command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-fstat" + }, + { + "description": "Enables the ftruncate command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-ftruncate" + }, + { + "description": "Enables the lstat command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-lstat" + }, + { + "description": "Enables the mkdir command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-mkdir" + }, + { + "description": "Enables the open command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-open" + }, + { + "description": "Enables the read command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-read" + }, + { + "description": "Enables the read_dir command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-read-dir" + }, + { + "description": "Enables the read_file command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-read-file" + }, + { + "description": "Enables the read_text_file command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-read-text-file" + }, + { + "description": "Enables the read_text_file_lines command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-read-text-file-lines" + }, + { + "description": "Enables the read_text_file_lines_next command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-read-text-file-lines-next" + }, + { + "description": "Enables the remove command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-remove" + }, + { + "description": "Enables the rename command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-rename" + }, + { + "description": "Enables the seek command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-seek" + }, + { + "description": "Enables the stat command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-stat" + }, + { + "description": "Enables the truncate command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-truncate" + }, + { + "description": "Enables the unwatch command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-unwatch" + }, + { + "description": "Enables the watch command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-watch" + }, + { + "description": "Enables the write command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-write" + }, + { + "description": "Enables the write_file command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-write-file" + }, + { + "description": "Enables the write_text_file command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-write-text-file" + }, + { + "description": "This permissions allows to create the application specific directories.\n", + "type": "string", + "const": "fs:create-app-specific-dirs" + }, + { + "description": "Denies the copy_file command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-copy-file" + }, + { + "description": "Denies the create command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-create" + }, + { + "description": "Denies the exists command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-exists" + }, + { + "description": "Denies the fstat command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-fstat" + }, + { + "description": "Denies the ftruncate command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-ftruncate" + }, + { + "description": "Denies the lstat command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-lstat" + }, + { + "description": "Denies the mkdir command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-mkdir" + }, + { + "description": "Denies the open command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-open" + }, + { + "description": "Denies the read command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-read" + }, + { + "description": "Denies the read_dir command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-read-dir" + }, + { + "description": "Denies the read_file command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-read-file" + }, + { + "description": "Denies the read_text_file command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-read-text-file" + }, + { + "description": "Denies the read_text_file_lines command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-read-text-file-lines" + }, + { + "description": "Denies the read_text_file_lines_next command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-read-text-file-lines-next" + }, + { + "description": "Denies the remove command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-remove" + }, + { + "description": "Denies the rename command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-rename" + }, + { + "description": "Denies the seek command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-seek" + }, + { + "description": "Denies the stat command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-stat" + }, + { + "description": "Denies the truncate command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-truncate" + }, + { + "description": "Denies the unwatch command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-unwatch" + }, + { + "description": "Denies the watch command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-watch" + }, + { + "description": "This denies read access to the\n`$APPLOCALDATA` folder on linux as the webview data and configuration values are stored here.\nAllowing access can lead to sensitive information disclosure and should be well considered.", + "type": "string", + "const": "fs:deny-webview-data-linux" + }, + { + "description": "This denies read access to the\n`$APPLOCALDATA/EBWebView` folder on windows as the webview data and configuration values are stored here.\nAllowing access can lead to sensitive information disclosure and should be well considered.", + "type": "string", + "const": "fs:deny-webview-data-windows" + }, + { + "description": "Denies the write command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-write" + }, + { + "description": "Denies the write_file command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-write-file" + }, + { + "description": "Denies the write_text_file command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-write-text-file" + }, + { + "description": "This enables all read related commands without any pre-configured accessible paths.", + "type": "string", + "const": "fs:read-all" + }, + { + "description": "This permission allows recursive read functionality on the application\nspecific base directories. \n", + "type": "string", + "const": "fs:read-app-specific-dirs-recursive" + }, + { + "description": "This enables directory read and file metadata related commands without any pre-configured accessible paths.", + "type": "string", + "const": "fs:read-dirs" + }, + { + "description": "This enables file read related commands without any pre-configured accessible paths.", + "type": "string", + "const": "fs:read-files" + }, + { + "description": "This enables all index or metadata related commands without any pre-configured accessible paths.", + "type": "string", + "const": "fs:read-meta" + }, + { + "description": "An empty permission you can use to modify the global scope.", + "type": "string", + "const": "fs:scope" + }, + { + "description": "This scope permits access to all files and list content of top level directories in the application folders.", + "type": "string", + "const": "fs:scope-app" + }, + { + "description": "This scope permits to list all files and folders in the application directories.", + "type": "string", + "const": "fs:scope-app-index" + }, + { + "description": "This scope permits recursive access to the complete application folders, including sub directories and files.", + "type": "string", + "const": "fs:scope-app-recursive" + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$APPCACHE` folder.", + "type": "string", + "const": "fs:scope-appcache" + }, + { + "description": "This scope permits to list all files and folders in the `$APPCACHE`folder.", + "type": "string", + "const": "fs:scope-appcache-index" + }, + { + "description": "This scope permits recursive access to the complete `$APPCACHE` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-appcache-recursive" + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$APPCONFIG` folder.", + "type": "string", + "const": "fs:scope-appconfig" + }, + { + "description": "This scope permits to list all files and folders in the `$APPCONFIG`folder.", + "type": "string", + "const": "fs:scope-appconfig-index" + }, + { + "description": "This scope permits recursive access to the complete `$APPCONFIG` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-appconfig-recursive" + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$APPDATA` folder.", + "type": "string", + "const": "fs:scope-appdata" + }, + { + "description": "This scope permits to list all files and folders in the `$APPDATA`folder.", + "type": "string", + "const": "fs:scope-appdata-index" + }, + { + "description": "This scope permits recursive access to the complete `$APPDATA` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-appdata-recursive" + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$APPLOCALDATA` folder.", + "type": "string", + "const": "fs:scope-applocaldata" + }, + { + "description": "This scope permits to list all files and folders in the `$APPLOCALDATA`folder.", + "type": "string", + "const": "fs:scope-applocaldata-index" + }, + { + "description": "This scope permits recursive access to the complete `$APPLOCALDATA` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-applocaldata-recursive" + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$APPLOG` folder.", + "type": "string", + "const": "fs:scope-applog" + }, + { + "description": "This scope permits to list all files and folders in the `$APPLOG`folder.", + "type": "string", + "const": "fs:scope-applog-index" + }, + { + "description": "This scope permits recursive access to the complete `$APPLOG` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-applog-recursive" + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$AUDIO` folder.", + "type": "string", + "const": "fs:scope-audio" + }, + { + "description": "This scope permits to list all files and folders in the `$AUDIO`folder.", + "type": "string", + "const": "fs:scope-audio-index" + }, + { + "description": "This scope permits recursive access to the complete `$AUDIO` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-audio-recursive" + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$CACHE` folder.", + "type": "string", + "const": "fs:scope-cache" + }, + { + "description": "This scope permits to list all files and folders in the `$CACHE`folder.", + "type": "string", + "const": "fs:scope-cache-index" + }, + { + "description": "This scope permits recursive access to the complete `$CACHE` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-cache-recursive" + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$CONFIG` folder.", + "type": "string", + "const": "fs:scope-config" + }, + { + "description": "This scope permits to list all files and folders in the `$CONFIG`folder.", + "type": "string", + "const": "fs:scope-config-index" + }, + { + "description": "This scope permits recursive access to the complete `$CONFIG` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-config-recursive" + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$DATA` folder.", + "type": "string", + "const": "fs:scope-data" + }, + { + "description": "This scope permits to list all files and folders in the `$DATA`folder.", + "type": "string", + "const": "fs:scope-data-index" + }, + { + "description": "This scope permits recursive access to the complete `$DATA` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-data-recursive" + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$DESKTOP` folder.", + "type": "string", + "const": "fs:scope-desktop" + }, + { + "description": "This scope permits to list all files and folders in the `$DESKTOP`folder.", + "type": "string", + "const": "fs:scope-desktop-index" + }, + { + "description": "This scope permits recursive access to the complete `$DESKTOP` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-desktop-recursive" + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$DOCUMENT` folder.", + "type": "string", + "const": "fs:scope-document" + }, + { + "description": "This scope permits to list all files and folders in the `$DOCUMENT`folder.", + "type": "string", + "const": "fs:scope-document-index" + }, + { + "description": "This scope permits recursive access to the complete `$DOCUMENT` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-document-recursive" + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$DOWNLOAD` folder.", + "type": "string", + "const": "fs:scope-download" + }, + { + "description": "This scope permits to list all files and folders in the `$DOWNLOAD`folder.", + "type": "string", + "const": "fs:scope-download-index" + }, + { + "description": "This scope permits recursive access to the complete `$DOWNLOAD` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-download-recursive" + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$EXE` folder.", + "type": "string", + "const": "fs:scope-exe" + }, + { + "description": "This scope permits to list all files and folders in the `$EXE`folder.", + "type": "string", + "const": "fs:scope-exe-index" + }, + { + "description": "This scope permits recursive access to the complete `$EXE` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-exe-recursive" + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$FONT` folder.", + "type": "string", + "const": "fs:scope-font" + }, + { + "description": "This scope permits to list all files and folders in the `$FONT`folder.", + "type": "string", + "const": "fs:scope-font-index" + }, + { + "description": "This scope permits recursive access to the complete `$FONT` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-font-recursive" + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$HOME` folder.", + "type": "string", + "const": "fs:scope-home" + }, + { + "description": "This scope permits to list all files and folders in the `$HOME`folder.", + "type": "string", + "const": "fs:scope-home-index" + }, + { + "description": "This scope permits recursive access to the complete `$HOME` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-home-recursive" + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$LOCALDATA` folder.", + "type": "string", + "const": "fs:scope-localdata" + }, + { + "description": "This scope permits to list all files and folders in the `$LOCALDATA`folder.", + "type": "string", + "const": "fs:scope-localdata-index" + }, + { + "description": "This scope permits recursive access to the complete `$LOCALDATA` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-localdata-recursive" + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$LOG` folder.", + "type": "string", + "const": "fs:scope-log" + }, + { + "description": "This scope permits to list all files and folders in the `$LOG`folder.", + "type": "string", + "const": "fs:scope-log-index" + }, + { + "description": "This scope permits recursive access to the complete `$LOG` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-log-recursive" + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$PICTURE` folder.", + "type": "string", + "const": "fs:scope-picture" + }, + { + "description": "This scope permits to list all files and folders in the `$PICTURE`folder.", + "type": "string", + "const": "fs:scope-picture-index" + }, + { + "description": "This scope permits recursive access to the complete `$PICTURE` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-picture-recursive" + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$PUBLIC` folder.", + "type": "string", + "const": "fs:scope-public" + }, + { + "description": "This scope permits to list all files and folders in the `$PUBLIC`folder.", + "type": "string", + "const": "fs:scope-public-index" + }, + { + "description": "This scope permits recursive access to the complete `$PUBLIC` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-public-recursive" + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$RESOURCE` folder.", + "type": "string", + "const": "fs:scope-resource" + }, + { + "description": "This scope permits to list all files and folders in the `$RESOURCE`folder.", + "type": "string", + "const": "fs:scope-resource-index" + }, + { + "description": "This scope permits recursive access to the complete `$RESOURCE` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-resource-recursive" + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$RUNTIME` folder.", + "type": "string", + "const": "fs:scope-runtime" + }, + { + "description": "This scope permits to list all files and folders in the `$RUNTIME`folder.", + "type": "string", + "const": "fs:scope-runtime-index" + }, + { + "description": "This scope permits recursive access to the complete `$RUNTIME` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-runtime-recursive" + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$TEMP` folder.", + "type": "string", + "const": "fs:scope-temp" + }, + { + "description": "This scope permits to list all files and folders in the `$TEMP`folder.", + "type": "string", + "const": "fs:scope-temp-index" + }, + { + "description": "This scope permits recursive access to the complete `$TEMP` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-temp-recursive" + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$TEMPLATE` folder.", + "type": "string", + "const": "fs:scope-template" + }, + { + "description": "This scope permits to list all files and folders in the `$TEMPLATE`folder.", + "type": "string", + "const": "fs:scope-template-index" + }, + { + "description": "This scope permits recursive access to the complete `$TEMPLATE` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-template-recursive" + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$VIDEO` folder.", + "type": "string", + "const": "fs:scope-video" + }, + { + "description": "This scope permits to list all files and folders in the `$VIDEO`folder.", + "type": "string", + "const": "fs:scope-video-index" + }, + { + "description": "This scope permits recursive access to the complete `$VIDEO` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-video-recursive" + }, + { + "description": "This enables all write related commands without any pre-configured accessible paths.", + "type": "string", + "const": "fs:write-all" + }, + { + "description": "This enables all file write related commands without any pre-configured accessible paths.", + "type": "string", + "const": "fs:write-files" + } + ] + } + } + }, + "then": { + "properties": { + "allow": { + "items": { + "title": "FsScopeEntry", + "description": "FS scope entry.", + "anyOf": [ + { + "description": "FS scope path.", + "type": "string" + }, + { + "type": "object", + "required": [ + "path" + ], + "properties": { + "path": { + "description": "FS scope path.", + "type": "string" + } + } + } ] - }, - { - "description": "fs:write-all -> This enables all write related commands without any pre-configured accessible paths.", - "type": "string", - "enum": [ - "fs:write-all" + } + }, + "deny": { + "items": { + "title": "FsScopeEntry", + "description": "FS scope entry.", + "anyOf": [ + { + "description": "FS scope path.", + "type": "string" + }, + { + "type": "object", + "required": [ + "path" + ], + "properties": { + "path": { + "description": "FS scope path.", + "type": "string" + } + } + } ] - }, + } + } + } + }, + "properties": { + "identifier": { + "description": "Identifier of the permission or permission set.", + "allOf": [ { - "description": "fs:write-files -> This enables all file write related commands without any pre-configured accessible paths.", - "type": "string", - "enum": [ - "fs:write-files" - ] + "$ref": "#/definitions/Identifier" } ] - }, - "allow": { - "items": { - "title": "FsScopeEntry", - "description": "FS scope entry.", + } + } + }, + { + "if": { + "properties": { + "identifier": { "anyOf": [ { - "description": "FS scope path.", - "type": "string" + "description": "This permission set configures which\nshell functionality is exposed by default.\n\n#### Granted Permissions\n\nIt allows to use the `open` functionality without any specific\nscope pre-configured. It will allow opening `http(s)://`,\n`tel:` and `mailto:` links.\n", + "type": "string", + "const": "shell:default" }, { - "type": "object", - "required": [ - "path" - ], - "properties": { - "path": { - "description": "FS scope path.", - "type": "string" - } - } - } - ] - } - }, - "deny": { - "items": { - "title": "FsScopeEntry", - "description": "FS scope entry.", - "anyOf": [ + "description": "Enables the execute command without any pre-configured scope.", + "type": "string", + "const": "shell:allow-execute" + }, { - "description": "FS scope path.", - "type": "string" + "description": "Enables the kill command without any pre-configured scope.", + "type": "string", + "const": "shell:allow-kill" }, { - "type": "object", - "required": [ - "path" - ], - "properties": { - "path": { - "description": "FS scope path.", - "type": "string" - } - } + "description": "Enables the open command without any pre-configured scope.", + "type": "string", + "const": "shell:allow-open" + }, + { + "description": "Enables the spawn command without any pre-configured scope.", + "type": "string", + "const": "shell:allow-spawn" + }, + { + "description": "Enables the stdin_write command without any pre-configured scope.", + "type": "string", + "const": "shell:allow-stdin-write" + }, + { + "description": "Denies the execute command without any pre-configured scope.", + "type": "string", + "const": "shell:deny-execute" + }, + { + "description": "Denies the kill command without any pre-configured scope.", + "type": "string", + "const": "shell:deny-kill" + }, + { + "description": "Denies the open command without any pre-configured scope.", + "type": "string", + "const": "shell:deny-open" + }, + { + "description": "Denies the spawn command without any pre-configured scope.", + "type": "string", + "const": "shell:deny-spawn" + }, + { + "description": "Denies the stdin_write command without any pre-configured scope.", + "type": "string", + "const": "shell:deny-stdin-write" } ] } } + }, + "then": { + "properties": { + "allow": { + "items": { + "title": "Entry", + "description": "A command allowed to be executed by the webview API.", + "type": "object", + "required": [ + "args", + "cmd", + "name", + "sidecar" + ], + "properties": { + "args": { + "description": "The allowed arguments for the command execution.", + "allOf": [ + { + "$ref": "#/definitions/ShellAllowedArgs" + } + ] + }, + "cmd": { + "description": "The command name. It can start with a variable that resolves to a system base directory. The variables are: `$AUDIO`, `$CACHE`, `$CONFIG`, `$DATA`, `$LOCALDATA`, `$DESKTOP`, `$DOCUMENT`, `$DOWNLOAD`, `$EXE`, `$FONT`, `$HOME`, `$PICTURE`, `$PUBLIC`, `$RUNTIME`, `$TEMPLATE`, `$VIDEO`, `$RESOURCE`, `$LOG`, `$TEMP`, `$APPCONFIG`, `$APPDATA`, `$APPLOCALDATA`, `$APPCACHE`, `$APPLOG`.", + "type": "string" + }, + "name": { + "description": "The name for this allowed shell command configuration.\n\nThis name will be used inside of the webview API to call this command along with any specified arguments.", + "type": "string" + }, + "sidecar": { + "description": "If this command is a sidecar command.", + "type": "boolean" + } + } + } + }, + "deny": { + "items": { + "title": "Entry", + "description": "A command allowed to be executed by the webview API.", + "type": "object", + "required": [ + "args", + "cmd", + "name", + "sidecar" + ], + "properties": { + "args": { + "description": "The allowed arguments for the command execution.", + "allOf": [ + { + "$ref": "#/definitions/ShellAllowedArgs" + } + ] + }, + "cmd": { + "description": "The command name. It can start with a variable that resolves to a system base directory. The variables are: `$AUDIO`, `$CACHE`, `$CONFIG`, `$DATA`, `$LOCALDATA`, `$DESKTOP`, `$DOCUMENT`, `$DOWNLOAD`, `$EXE`, `$FONT`, `$HOME`, `$PICTURE`, `$PUBLIC`, `$RUNTIME`, `$TEMPLATE`, `$VIDEO`, `$RESOURCE`, `$LOG`, `$TEMP`, `$APPCONFIG`, `$APPDATA`, `$APPLOCALDATA`, `$APPCACHE`, `$APPLOG`.", + "type": "string" + }, + "name": { + "description": "The name for this allowed shell command configuration.\n\nThis name will be used inside of the webview API to call this command along with any specified arguments.", + "type": "string" + }, + "sidecar": { + "description": "If this command is a sidecar command.", + "type": "boolean" + } + } + } + } + } + }, + "properties": { + "identifier": { + "description": "Identifier of the permission or permission set.", + "allOf": [ + { + "$ref": "#/definitions/Identifier" + } + ] + } } }, { - "type": "object", - "required": [ - "identifier" - ], "properties": { "identifier": { - "oneOf": [ - { - "description": "shell:default -> This permission set configures which\nshell functionality is exposed by default.\n\n#### Granted Permissions\n\nIt allows to use the `open` functionality without any specific\nscope pre-configured. It will allow opening `http(s)://`,\n`tel:` and `mailto:` links.\n", - "type": "string", - "enum": [ - "shell:default" - ] - }, - { - "description": "shell:allow-execute -> Enables the execute command without any pre-configured scope.", - "type": "string", - "enum": [ - "shell:allow-execute" - ] - }, - { - "description": "shell:allow-kill -> Enables the kill command without any pre-configured scope.", - "type": "string", - "enum": [ - "shell:allow-kill" - ] - }, - { - "description": "shell:allow-open -> Enables the open command without any pre-configured scope.", - "type": "string", - "enum": [ - "shell:allow-open" - ] - }, - { - "description": "shell:allow-spawn -> Enables the spawn command without any pre-configured scope.", - "type": "string", - "enum": [ - "shell:allow-spawn" - ] - }, - { - "description": "shell:allow-stdin-write -> Enables the stdin_write command without any pre-configured scope.", - "type": "string", - "enum": [ - "shell:allow-stdin-write" - ] - }, - { - "description": "shell:deny-execute -> Denies the execute command without any pre-configured scope.", - "type": "string", - "enum": [ - "shell:deny-execute" - ] - }, - { - "description": "shell:deny-kill -> Denies the kill command without any pre-configured scope.", - "type": "string", - "enum": [ - "shell:deny-kill" - ] - }, + "description": "Identifier of the permission or permission set.", + "allOf": [ { - "description": "shell:deny-open -> Denies the open command without any pre-configured scope.", - "type": "string", - "enum": [ - "shell:deny-open" - ] - }, - { - "description": "shell:deny-spawn -> Denies the spawn command without any pre-configured scope.", - "type": "string", - "enum": [ - "shell:deny-spawn" - ] - }, - { - "description": "shell:deny-stdin-write -> Denies the stdin_write command without any pre-configured scope.", - "type": "string", - "enum": [ - "shell:deny-stdin-write" - ] + "$ref": "#/definitions/Identifier" } ] }, "allow": { + "description": "Data that defines what is allowed by the scope.", + "type": [ + "array", + "null" + ], "items": { - "title": "Entry", - "description": "A command allowed to be executed by the webview API.", - "type": "object", - "required": [ - "args", - "cmd", - "name", - "sidecar" - ], - "properties": { - "args": { - "description": "The allowed arguments for the command execution.", - "allOf": [ - { - "$ref": "#/definitions/ShellAllowedArgs" - } - ] - }, - "cmd": { - "description": "The command name. It can start with a variable that resolves to a system base directory. The variables are: `$AUDIO`, `$CACHE`, `$CONFIG`, `$DATA`, `$LOCALDATA`, `$DESKTOP`, `$DOCUMENT`, `$DOWNLOAD`, `$EXE`, `$FONT`, `$HOME`, `$PICTURE`, `$PUBLIC`, `$RUNTIME`, `$TEMPLATE`, `$VIDEO`, `$RESOURCE`, `$APP`, `$LOG`, `$TEMP`, `$APPCONFIG`, `$APPDATA`, `$APPLOCALDATA`, `$APPCACHE`, `$APPLOG`.", - "type": "string" - }, - "name": { - "description": "The name for this allowed shell command configuration.\n\nThis name will be used inside of the webview API to call this command along with any specified arguments.", - "type": "string" - }, - "sidecar": { - "description": "If this command is a sidecar command.", - "type": "boolean" - } - } + "$ref": "#/definitions/Value" } }, "deny": { + "description": "Data that defines what is denied by the scope. This should be prioritized by validation logic.", + "type": [ + "array", + "null" + ], "items": { - "title": "Entry", - "description": "A command allowed to be executed by the webview API.", - "type": "object", - "required": [ - "args", - "cmd", - "name", - "sidecar" - ], - "properties": { - "args": { - "description": "The allowed arguments for the command execution.", - "allOf": [ - { - "$ref": "#/definitions/ShellAllowedArgs" - } - ] - }, - "cmd": { - "description": "The command name. It can start with a variable that resolves to a system base directory. The variables are: `$AUDIO`, `$CACHE`, `$CONFIG`, `$DATA`, `$LOCALDATA`, `$DESKTOP`, `$DOCUMENT`, `$DOWNLOAD`, `$EXE`, `$FONT`, `$HOME`, `$PICTURE`, `$PUBLIC`, `$RUNTIME`, `$TEMPLATE`, `$VIDEO`, `$RESOURCE`, `$APP`, `$LOG`, `$TEMP`, `$APPCONFIG`, `$APPDATA`, `$APPLOCALDATA`, `$APPCACHE`, `$APPLOG`.", - "type": "string" - }, - "name": { - "description": "The name for this allowed shell command configuration.\n\nThis name will be used inside of the webview API to call this command along with any specified arguments.", - "type": "string" - }, - "sidecar": { - "description": "If this command is a sidecar command.", - "type": "boolean" - } - } + "$ref": "#/definitions/Value" } } } } + ], + "required": [ + "identifier" ] } ] }, "Identifier": { + "description": "Permission identifier", "oneOf": [ { - "description": "clipboard-manager:default -> No features are enabled by default, as we believe\nthe clipboard can be inherently dangerous and it is \napplication specific if read and/or write access is needed.\n\nClipboard interaction needs to be explicitly enabled.\n", + "description": "No features are enabled by default, as we believe\nthe clipboard can be inherently dangerous and it is \napplication specific if read and/or write access is needed.\n\nClipboard interaction needs to be explicitly enabled.\n", "type": "string", - "enum": [ - "clipboard-manager:default" - ] + "const": "clipboard-manager:default" }, { - "description": "clipboard-manager:allow-clear -> Enables the clear command without any pre-configured scope.", + "description": "Enables the clear command without any pre-configured scope.", "type": "string", - "enum": [ - "clipboard-manager:allow-clear" - ] + "const": "clipboard-manager:allow-clear" }, { - "description": "clipboard-manager:allow-read-image -> Enables the read_image command without any pre-configured scope.", + "description": "Enables the read_image command without any pre-configured scope.", "type": "string", - "enum": [ - "clipboard-manager:allow-read-image" - ] + "const": "clipboard-manager:allow-read-image" }, { - "description": "clipboard-manager:allow-read-text -> Enables the read_text command without any pre-configured scope.", + "description": "Enables the read_text command without any pre-configured scope.", "type": "string", - "enum": [ - "clipboard-manager:allow-read-text" - ] + "const": "clipboard-manager:allow-read-text" }, { - "description": "clipboard-manager:allow-write-html -> Enables the write_html command without any pre-configured scope.", + "description": "Enables the write_html command without any pre-configured scope.", "type": "string", - "enum": [ - "clipboard-manager:allow-write-html" - ] + "const": "clipboard-manager:allow-write-html" }, { - "description": "clipboard-manager:allow-write-image -> Enables the write_image command without any pre-configured scope.", + "description": "Enables the write_image command without any pre-configured scope.", "type": "string", - "enum": [ - "clipboard-manager:allow-write-image" - ] + "const": "clipboard-manager:allow-write-image" }, { - "description": "clipboard-manager:allow-write-text -> Enables the write_text command without any pre-configured scope.", + "description": "Enables the write_text command without any pre-configured scope.", "type": "string", - "enum": [ - "clipboard-manager:allow-write-text" - ] + "const": "clipboard-manager:allow-write-text" }, { - "description": "clipboard-manager:deny-clear -> Denies the clear command without any pre-configured scope.", + "description": "Denies the clear command without any pre-configured scope.", "type": "string", - "enum": [ - "clipboard-manager:deny-clear" - ] + "const": "clipboard-manager:deny-clear" }, { - "description": "clipboard-manager:deny-read-image -> Denies the read_image command without any pre-configured scope.", + "description": "Denies the read_image command without any pre-configured scope.", "type": "string", - "enum": [ - "clipboard-manager:deny-read-image" - ] + "const": "clipboard-manager:deny-read-image" }, { - "description": "clipboard-manager:deny-read-text -> Denies the read_text command without any pre-configured scope.", + "description": "Denies the read_text command without any pre-configured scope.", "type": "string", - "enum": [ - "clipboard-manager:deny-read-text" - ] + "const": "clipboard-manager:deny-read-text" }, { - "description": "clipboard-manager:deny-write-html -> Denies the write_html command without any pre-configured scope.", + "description": "Denies the write_html command without any pre-configured scope.", "type": "string", - "enum": [ - "clipboard-manager:deny-write-html" - ] + "const": "clipboard-manager:deny-write-html" }, { - "description": "clipboard-manager:deny-write-image -> Denies the write_image command without any pre-configured scope.", + "description": "Denies the write_image command without any pre-configured scope.", "type": "string", - "enum": [ - "clipboard-manager:deny-write-image" - ] + "const": "clipboard-manager:deny-write-image" }, { - "description": "clipboard-manager:deny-write-text -> Denies the write_text command without any pre-configured scope.", + "description": "Denies the write_text command without any pre-configured scope.", "type": "string", - "enum": [ - "clipboard-manager:deny-write-text" - ] + "const": "clipboard-manager:deny-write-text" }, { - "description": "core:app:default -> Default permissions for the plugin.", + "description": "Default core plugins set which includes:\n- 'core:path:default'\n- 'core:event:default'\n- 'core:window:default'\n- 'core:webview:default'\n- 'core:app:default'\n- 'core:image:default'\n- 'core:resources:default'\n- 'core:menu:default'\n- 'core:tray:default'\n", "type": "string", - "enum": [ - "core:app:default" - ] + "const": "core:default" }, { - "description": "core:app:allow-app-hide -> Enables the app_hide command without any pre-configured scope.", + "description": "Default permissions for the plugin.", "type": "string", - "enum": [ - "core:app:allow-app-hide" - ] + "const": "core:app:default" }, { - "description": "core:app:allow-app-show -> Enables the app_show command without any pre-configured scope.", + "description": "Enables the app_hide command without any pre-configured scope.", "type": "string", - "enum": [ - "core:app:allow-app-show" - ] + "const": "core:app:allow-app-hide" }, { - "description": "core:app:allow-default-window-icon -> Enables the default_window_icon command without any pre-configured scope.", + "description": "Enables the app_show command without any pre-configured scope.", "type": "string", - "enum": [ - "core:app:allow-default-window-icon" - ] + "const": "core:app:allow-app-show" }, { - "description": "core:app:allow-name -> Enables the name command without any pre-configured scope.", + "description": "Enables the default_window_icon command without any pre-configured scope.", "type": "string", - "enum": [ - "core:app:allow-name" - ] + "const": "core:app:allow-default-window-icon" }, { - "description": "core:app:allow-tauri-version -> Enables the tauri_version command without any pre-configured scope.", + "description": "Enables the name command without any pre-configured scope.", "type": "string", - "enum": [ - "core:app:allow-tauri-version" - ] + "const": "core:app:allow-name" }, { - "description": "core:app:allow-version -> Enables the version command without any pre-configured scope.", + "description": "Enables the tauri_version command without any pre-configured scope.", "type": "string", - "enum": [ - "core:app:allow-version" - ] + "const": "core:app:allow-tauri-version" }, { - "description": "core:app:deny-app-hide -> Denies the app_hide command without any pre-configured scope.", + "description": "Enables the version command without any pre-configured scope.", "type": "string", - "enum": [ - "core:app:deny-app-hide" - ] + "const": "core:app:allow-version" }, { - "description": "core:app:deny-app-show -> Denies the app_show command without any pre-configured scope.", + "description": "Denies the app_hide command without any pre-configured scope.", "type": "string", - "enum": [ - "core:app:deny-app-show" - ] + "const": "core:app:deny-app-hide" }, { - "description": "core:app:deny-default-window-icon -> Denies the default_window_icon command without any pre-configured scope.", + "description": "Denies the app_show command without any pre-configured scope.", "type": "string", - "enum": [ - "core:app:deny-default-window-icon" - ] + "const": "core:app:deny-app-show" }, { - "description": "core:app:deny-name -> Denies the name command without any pre-configured scope.", + "description": "Denies the default_window_icon command without any pre-configured scope.", "type": "string", - "enum": [ - "core:app:deny-name" - ] + "const": "core:app:deny-default-window-icon" }, { - "description": "core:app:deny-tauri-version -> Denies the tauri_version command without any pre-configured scope.", + "description": "Denies the name command without any pre-configured scope.", "type": "string", - "enum": [ - "core:app:deny-tauri-version" - ] + "const": "core:app:deny-name" }, { - "description": "core:app:deny-version -> Denies the version command without any pre-configured scope.", + "description": "Denies the tauri_version command without any pre-configured scope.", "type": "string", - "enum": [ - "core:app:deny-version" - ] + "const": "core:app:deny-tauri-version" }, { - "description": "core:event:default -> Default permissions for the plugin.", + "description": "Denies the version command without any pre-configured scope.", "type": "string", - "enum": [ - "core:event:default" - ] + "const": "core:app:deny-version" }, { - "description": "core:event:allow-emit -> Enables the emit command without any pre-configured scope.", + "description": "Default permissions for the plugin.", "type": "string", - "enum": [ - "core:event:allow-emit" - ] + "const": "core:event:default" }, { - "description": "core:event:allow-emit-to -> Enables the emit_to command without any pre-configured scope.", + "description": "Enables the emit command without any pre-configured scope.", "type": "string", - "enum": [ - "core:event:allow-emit-to" - ] + "const": "core:event:allow-emit" }, { - "description": "core:event:allow-listen -> Enables the listen command without any pre-configured scope.", + "description": "Enables the emit_to command without any pre-configured scope.", "type": "string", - "enum": [ - "core:event:allow-listen" - ] + "const": "core:event:allow-emit-to" }, { - "description": "core:event:allow-unlisten -> Enables the unlisten command without any pre-configured scope.", + "description": "Enables the listen command without any pre-configured scope.", "type": "string", - "enum": [ - "core:event:allow-unlisten" - ] + "const": "core:event:allow-listen" }, { - "description": "core:event:deny-emit -> Denies the emit command without any pre-configured scope.", + "description": "Enables the unlisten command without any pre-configured scope.", "type": "string", - "enum": [ - "core:event:deny-emit" - ] + "const": "core:event:allow-unlisten" }, { - "description": "core:event:deny-emit-to -> Denies the emit_to command without any pre-configured scope.", + "description": "Denies the emit command without any pre-configured scope.", "type": "string", - "enum": [ - "core:event:deny-emit-to" - ] + "const": "core:event:deny-emit" }, { - "description": "core:event:deny-listen -> Denies the listen command without any pre-configured scope.", + "description": "Denies the emit_to command without any pre-configured scope.", "type": "string", - "enum": [ - "core:event:deny-listen" - ] + "const": "core:event:deny-emit-to" }, { - "description": "core:event:deny-unlisten -> Denies the unlisten command without any pre-configured scope.", + "description": "Denies the listen command without any pre-configured scope.", "type": "string", - "enum": [ - "core:event:deny-unlisten" - ] + "const": "core:event:deny-listen" }, { - "description": "core:image:default -> Default permissions for the plugin.", + "description": "Denies the unlisten command without any pre-configured scope.", "type": "string", - "enum": [ - "core:image:default" - ] + "const": "core:event:deny-unlisten" }, { - "description": "core:image:allow-from-bytes -> Enables the from_bytes command without any pre-configured scope.", + "description": "Default permissions for the plugin.", "type": "string", - "enum": [ - "core:image:allow-from-bytes" - ] + "const": "core:image:default" + }, + { + "description": "Enables the from_bytes command without any pre-configured scope.", + "type": "string", + "const": "core:image:allow-from-bytes" }, { - "description": "core:image:allow-from-path -> Enables the from_path command without any pre-configured scope.", + "description": "Enables the from_path command without any pre-configured scope.", "type": "string", - "enum": [ - "core:image:allow-from-path" - ] + "const": "core:image:allow-from-path" }, { - "description": "core:image:allow-new -> Enables the new command without any pre-configured scope.", + "description": "Enables the new command without any pre-configured scope.", "type": "string", - "enum": [ - "core:image:allow-new" - ] + "const": "core:image:allow-new" }, { - "description": "core:image:allow-rgba -> Enables the rgba command without any pre-configured scope.", + "description": "Enables the rgba command without any pre-configured scope.", "type": "string", - "enum": [ - "core:image:allow-rgba" - ] + "const": "core:image:allow-rgba" }, { - "description": "core:image:allow-size -> Enables the size command without any pre-configured scope.", + "description": "Enables the size command without any pre-configured scope.", "type": "string", - "enum": [ - "core:image:allow-size" - ] + "const": "core:image:allow-size" }, { - "description": "core:image:deny-from-bytes -> Denies the from_bytes command without any pre-configured scope.", + "description": "Denies the from_bytes command without any pre-configured scope.", "type": "string", - "enum": [ - "core:image:deny-from-bytes" - ] + "const": "core:image:deny-from-bytes" }, { - "description": "core:image:deny-from-path -> Denies the from_path command without any pre-configured scope.", + "description": "Denies the from_path command without any pre-configured scope.", "type": "string", - "enum": [ - "core:image:deny-from-path" - ] + "const": "core:image:deny-from-path" }, { - "description": "core:image:deny-new -> Denies the new command without any pre-configured scope.", + "description": "Denies the new command without any pre-configured scope.", "type": "string", - "enum": [ - "core:image:deny-new" - ] + "const": "core:image:deny-new" }, { - "description": "core:image:deny-rgba -> Denies the rgba command without any pre-configured scope.", + "description": "Denies the rgba command without any pre-configured scope.", "type": "string", - "enum": [ - "core:image:deny-rgba" - ] + "const": "core:image:deny-rgba" }, { - "description": "core:image:deny-size -> Denies the size command without any pre-configured scope.", + "description": "Denies the size command without any pre-configured scope.", "type": "string", - "enum": [ - "core:image:deny-size" - ] + "const": "core:image:deny-size" }, { - "description": "core:menu:default -> Default permissions for the plugin.", + "description": "Default permissions for the plugin.", "type": "string", - "enum": [ - "core:menu:default" - ] + "const": "core:menu:default" }, { - "description": "core:menu:allow-append -> Enables the append command without any pre-configured scope.", + "description": "Enables the append command without any pre-configured scope.", "type": "string", - "enum": [ - "core:menu:allow-append" - ] + "const": "core:menu:allow-append" }, { - "description": "core:menu:allow-create-default -> Enables the create_default command without any pre-configured scope.", + "description": "Enables the create_default command without any pre-configured scope.", "type": "string", - "enum": [ - "core:menu:allow-create-default" - ] + "const": "core:menu:allow-create-default" }, { - "description": "core:menu:allow-get -> Enables the get command without any pre-configured scope.", + "description": "Enables the get command without any pre-configured scope.", "type": "string", - "enum": [ - "core:menu:allow-get" - ] + "const": "core:menu:allow-get" }, { - "description": "core:menu:allow-insert -> Enables the insert command without any pre-configured scope.", + "description": "Enables the insert command without any pre-configured scope.", "type": "string", - "enum": [ - "core:menu:allow-insert" - ] + "const": "core:menu:allow-insert" }, { - "description": "core:menu:allow-is-checked -> Enables the is_checked command without any pre-configured scope.", + "description": "Enables the is_checked command without any pre-configured scope.", "type": "string", - "enum": [ - "core:menu:allow-is-checked" - ] + "const": "core:menu:allow-is-checked" }, { - "description": "core:menu:allow-is-enabled -> Enables the is_enabled command without any pre-configured scope.", + "description": "Enables the is_enabled command without any pre-configured scope.", "type": "string", - "enum": [ - "core:menu:allow-is-enabled" - ] + "const": "core:menu:allow-is-enabled" }, { - "description": "core:menu:allow-items -> Enables the items command without any pre-configured scope.", + "description": "Enables the items command without any pre-configured scope.", "type": "string", - "enum": [ - "core:menu:allow-items" - ] + "const": "core:menu:allow-items" }, { - "description": "core:menu:allow-new -> Enables the new command without any pre-configured scope.", + "description": "Enables the new command without any pre-configured scope.", "type": "string", - "enum": [ - "core:menu:allow-new" - ] + "const": "core:menu:allow-new" }, { - "description": "core:menu:allow-popup -> Enables the popup command without any pre-configured scope.", + "description": "Enables the popup command without any pre-configured scope.", "type": "string", - "enum": [ - "core:menu:allow-popup" - ] + "const": "core:menu:allow-popup" }, { - "description": "core:menu:allow-prepend -> Enables the prepend command without any pre-configured scope.", + "description": "Enables the prepend command without any pre-configured scope.", "type": "string", - "enum": [ - "core:menu:allow-prepend" - ] + "const": "core:menu:allow-prepend" }, { - "description": "core:menu:allow-remove -> Enables the remove command without any pre-configured scope.", + "description": "Enables the remove command without any pre-configured scope.", "type": "string", - "enum": [ - "core:menu:allow-remove" - ] + "const": "core:menu:allow-remove" }, { - "description": "core:menu:allow-remove-at -> Enables the remove_at command without any pre-configured scope.", + "description": "Enables the remove_at command without any pre-configured scope.", "type": "string", - "enum": [ - "core:menu:allow-remove-at" - ] + "const": "core:menu:allow-remove-at" }, { - "description": "core:menu:allow-set-accelerator -> Enables the set_accelerator command without any pre-configured scope.", + "description": "Enables the set_accelerator command without any pre-configured scope.", "type": "string", - "enum": [ - "core:menu:allow-set-accelerator" - ] + "const": "core:menu:allow-set-accelerator" }, { - "description": "core:menu:allow-set-as-app-menu -> Enables the set_as_app_menu command without any pre-configured scope.", + "description": "Enables the set_as_app_menu command without any pre-configured scope.", "type": "string", - "enum": [ - "core:menu:allow-set-as-app-menu" - ] + "const": "core:menu:allow-set-as-app-menu" }, { - "description": "core:menu:allow-set-as-help-menu-for-nsapp -> Enables the set_as_help_menu_for_nsapp command without any pre-configured scope.", + "description": "Enables the set_as_help_menu_for_nsapp command without any pre-configured scope.", "type": "string", - "enum": [ - "core:menu:allow-set-as-help-menu-for-nsapp" - ] + "const": "core:menu:allow-set-as-help-menu-for-nsapp" }, { - "description": "core:menu:allow-set-as-window-menu -> Enables the set_as_window_menu command without any pre-configured scope.", + "description": "Enables the set_as_window_menu command without any pre-configured scope.", "type": "string", - "enum": [ - "core:menu:allow-set-as-window-menu" - ] + "const": "core:menu:allow-set-as-window-menu" }, { - "description": "core:menu:allow-set-as-windows-menu-for-nsapp -> Enables the set_as_windows_menu_for_nsapp command without any pre-configured scope.", + "description": "Enables the set_as_windows_menu_for_nsapp command without any pre-configured scope.", "type": "string", - "enum": [ - "core:menu:allow-set-as-windows-menu-for-nsapp" - ] + "const": "core:menu:allow-set-as-windows-menu-for-nsapp" }, { - "description": "core:menu:allow-set-checked -> Enables the set_checked command without any pre-configured scope.", + "description": "Enables the set_checked command without any pre-configured scope.", "type": "string", - "enum": [ - "core:menu:allow-set-checked" - ] + "const": "core:menu:allow-set-checked" }, { - "description": "core:menu:allow-set-enabled -> Enables the set_enabled command without any pre-configured scope.", + "description": "Enables the set_enabled command without any pre-configured scope.", "type": "string", - "enum": [ - "core:menu:allow-set-enabled" - ] + "const": "core:menu:allow-set-enabled" }, { - "description": "core:menu:allow-set-icon -> Enables the set_icon command without any pre-configured scope.", + "description": "Enables the set_icon command without any pre-configured scope.", "type": "string", - "enum": [ - "core:menu:allow-set-icon" - ] + "const": "core:menu:allow-set-icon" }, { - "description": "core:menu:allow-set-text -> Enables the set_text command without any pre-configured scope.", + "description": "Enables the set_text command without any pre-configured scope.", "type": "string", - "enum": [ - "core:menu:allow-set-text" - ] + "const": "core:menu:allow-set-text" }, { - "description": "core:menu:allow-text -> Enables the text command without any pre-configured scope.", + "description": "Enables the text command without any pre-configured scope.", "type": "string", - "enum": [ - "core:menu:allow-text" - ] + "const": "core:menu:allow-text" }, { - "description": "core:menu:deny-append -> Denies the append command without any pre-configured scope.", + "description": "Denies the append command without any pre-configured scope.", "type": "string", - "enum": [ - "core:menu:deny-append" - ] + "const": "core:menu:deny-append" }, { - "description": "core:menu:deny-create-default -> Denies the create_default command without any pre-configured scope.", + "description": "Denies the create_default command without any pre-configured scope.", "type": "string", - "enum": [ - "core:menu:deny-create-default" - ] + "const": "core:menu:deny-create-default" }, { - "description": "core:menu:deny-get -> Denies the get command without any pre-configured scope.", + "description": "Denies the get command without any pre-configured scope.", "type": "string", - "enum": [ - "core:menu:deny-get" - ] + "const": "core:menu:deny-get" }, { - "description": "core:menu:deny-insert -> Denies the insert command without any pre-configured scope.", + "description": "Denies the insert command without any pre-configured scope.", "type": "string", - "enum": [ - "core:menu:deny-insert" - ] + "const": "core:menu:deny-insert" }, { - "description": "core:menu:deny-is-checked -> Denies the is_checked command without any pre-configured scope.", + "description": "Denies the is_checked command without any pre-configured scope.", "type": "string", - "enum": [ - "core:menu:deny-is-checked" - ] + "const": "core:menu:deny-is-checked" }, { - "description": "core:menu:deny-is-enabled -> Denies the is_enabled command without any pre-configured scope.", + "description": "Denies the is_enabled command without any pre-configured scope.", "type": "string", - "enum": [ - "core:menu:deny-is-enabled" - ] + "const": "core:menu:deny-is-enabled" }, { - "description": "core:menu:deny-items -> Denies the items command without any pre-configured scope.", + "description": "Denies the items command without any pre-configured scope.", "type": "string", - "enum": [ - "core:menu:deny-items" - ] + "const": "core:menu:deny-items" }, { - "description": "core:menu:deny-new -> Denies the new command without any pre-configured scope.", + "description": "Denies the new command without any pre-configured scope.", "type": "string", - "enum": [ - "core:menu:deny-new" - ] + "const": "core:menu:deny-new" }, { - "description": "core:menu:deny-popup -> Denies the popup command without any pre-configured scope.", + "description": "Denies the popup command without any pre-configured scope.", "type": "string", - "enum": [ - "core:menu:deny-popup" - ] + "const": "core:menu:deny-popup" }, { - "description": "core:menu:deny-prepend -> Denies the prepend command without any pre-configured scope.", + "description": "Denies the prepend command without any pre-configured scope.", "type": "string", - "enum": [ - "core:menu:deny-prepend" - ] + "const": "core:menu:deny-prepend" }, { - "description": "core:menu:deny-remove -> Denies the remove command without any pre-configured scope.", + "description": "Denies the remove command without any pre-configured scope.", "type": "string", - "enum": [ - "core:menu:deny-remove" - ] + "const": "core:menu:deny-remove" }, { - "description": "core:menu:deny-remove-at -> Denies the remove_at command without any pre-configured scope.", + "description": "Denies the remove_at command without any pre-configured scope.", "type": "string", - "enum": [ - "core:menu:deny-remove-at" - ] + "const": "core:menu:deny-remove-at" }, { - "description": "core:menu:deny-set-accelerator -> Denies the set_accelerator command without any pre-configured scope.", + "description": "Denies the set_accelerator command without any pre-configured scope.", "type": "string", - "enum": [ - "core:menu:deny-set-accelerator" - ] + "const": "core:menu:deny-set-accelerator" }, { - "description": "core:menu:deny-set-as-app-menu -> Denies the set_as_app_menu command without any pre-configured scope.", + "description": "Denies the set_as_app_menu command without any pre-configured scope.", "type": "string", - "enum": [ - "core:menu:deny-set-as-app-menu" - ] + "const": "core:menu:deny-set-as-app-menu" }, { - "description": "core:menu:deny-set-as-help-menu-for-nsapp -> Denies the set_as_help_menu_for_nsapp command without any pre-configured scope.", + "description": "Denies the set_as_help_menu_for_nsapp command without any pre-configured scope.", "type": "string", - "enum": [ - "core:menu:deny-set-as-help-menu-for-nsapp" - ] + "const": "core:menu:deny-set-as-help-menu-for-nsapp" }, { - "description": "core:menu:deny-set-as-window-menu -> Denies the set_as_window_menu command without any pre-configured scope.", + "description": "Denies the set_as_window_menu command without any pre-configured scope.", "type": "string", - "enum": [ - "core:menu:deny-set-as-window-menu" - ] + "const": "core:menu:deny-set-as-window-menu" }, { - "description": "core:menu:deny-set-as-windows-menu-for-nsapp -> Denies the set_as_windows_menu_for_nsapp command without any pre-configured scope.", + "description": "Denies the set_as_windows_menu_for_nsapp command without any pre-configured scope.", "type": "string", - "enum": [ - "core:menu:deny-set-as-windows-menu-for-nsapp" - ] + "const": "core:menu:deny-set-as-windows-menu-for-nsapp" }, { - "description": "core:menu:deny-set-checked -> Denies the set_checked command without any pre-configured scope.", + "description": "Denies the set_checked command without any pre-configured scope.", "type": "string", - "enum": [ - "core:menu:deny-set-checked" - ] + "const": "core:menu:deny-set-checked" }, { - "description": "core:menu:deny-set-enabled -> Denies the set_enabled command without any pre-configured scope.", + "description": "Denies the set_enabled command without any pre-configured scope.", "type": "string", - "enum": [ - "core:menu:deny-set-enabled" - ] + "const": "core:menu:deny-set-enabled" }, { - "description": "core:menu:deny-set-icon -> Denies the set_icon command without any pre-configured scope.", + "description": "Denies the set_icon command without any pre-configured scope.", "type": "string", - "enum": [ - "core:menu:deny-set-icon" - ] + "const": "core:menu:deny-set-icon" }, { - "description": "core:menu:deny-set-text -> Denies the set_text command without any pre-configured scope.", + "description": "Denies the set_text command without any pre-configured scope.", "type": "string", - "enum": [ - "core:menu:deny-set-text" - ] + "const": "core:menu:deny-set-text" }, { - "description": "core:menu:deny-text -> Denies the text command without any pre-configured scope.", + "description": "Denies the text command without any pre-configured scope.", "type": "string", - "enum": [ - "core:menu:deny-text" - ] + "const": "core:menu:deny-text" }, { - "description": "core:path:default -> Default permissions for the plugin.", + "description": "Default permissions for the plugin.", "type": "string", - "enum": [ - "core:path:default" - ] + "const": "core:path:default" }, { - "description": "core:path:allow-basename -> Enables the basename command without any pre-configured scope.", + "description": "Enables the basename command without any pre-configured scope.", "type": "string", - "enum": [ - "core:path:allow-basename" - ] + "const": "core:path:allow-basename" }, { - "description": "core:path:allow-dirname -> Enables the dirname command without any pre-configured scope.", + "description": "Enables the dirname command without any pre-configured scope.", "type": "string", - "enum": [ - "core:path:allow-dirname" - ] + "const": "core:path:allow-dirname" }, { - "description": "core:path:allow-extname -> Enables the extname command without any pre-configured scope.", + "description": "Enables the extname command without any pre-configured scope.", "type": "string", - "enum": [ - "core:path:allow-extname" - ] + "const": "core:path:allow-extname" }, { - "description": "core:path:allow-is-absolute -> Enables the is_absolute command without any pre-configured scope.", + "description": "Enables the is_absolute command without any pre-configured scope.", "type": "string", - "enum": [ - "core:path:allow-is-absolute" - ] + "const": "core:path:allow-is-absolute" }, { - "description": "core:path:allow-join -> Enables the join command without any pre-configured scope.", + "description": "Enables the join command without any pre-configured scope.", "type": "string", - "enum": [ - "core:path:allow-join" - ] + "const": "core:path:allow-join" }, { - "description": "core:path:allow-normalize -> Enables the normalize command without any pre-configured scope.", + "description": "Enables the normalize command without any pre-configured scope.", "type": "string", - "enum": [ - "core:path:allow-normalize" - ] + "const": "core:path:allow-normalize" }, { - "description": "core:path:allow-resolve -> Enables the resolve command without any pre-configured scope.", + "description": "Enables the resolve command without any pre-configured scope.", "type": "string", - "enum": [ - "core:path:allow-resolve" - ] + "const": "core:path:allow-resolve" }, { - "description": "core:path:allow-resolve-directory -> Enables the resolve_directory command without any pre-configured scope.", + "description": "Enables the resolve_directory command without any pre-configured scope.", "type": "string", - "enum": [ - "core:path:allow-resolve-directory" - ] + "const": "core:path:allow-resolve-directory" }, { - "description": "core:path:deny-basename -> Denies the basename command without any pre-configured scope.", + "description": "Denies the basename command without any pre-configured scope.", "type": "string", - "enum": [ - "core:path:deny-basename" - ] + "const": "core:path:deny-basename" }, { - "description": "core:path:deny-dirname -> Denies the dirname command without any pre-configured scope.", + "description": "Denies the dirname command without any pre-configured scope.", "type": "string", - "enum": [ - "core:path:deny-dirname" - ] + "const": "core:path:deny-dirname" }, { - "description": "core:path:deny-extname -> Denies the extname command without any pre-configured scope.", + "description": "Denies the extname command without any pre-configured scope.", "type": "string", - "enum": [ - "core:path:deny-extname" - ] + "const": "core:path:deny-extname" }, { - "description": "core:path:deny-is-absolute -> Denies the is_absolute command without any pre-configured scope.", + "description": "Denies the is_absolute command without any pre-configured scope.", "type": "string", - "enum": [ - "core:path:deny-is-absolute" - ] + "const": "core:path:deny-is-absolute" }, { - "description": "core:path:deny-join -> Denies the join command without any pre-configured scope.", + "description": "Denies the join command without any pre-configured scope.", "type": "string", - "enum": [ - "core:path:deny-join" - ] + "const": "core:path:deny-join" }, { - "description": "core:path:deny-normalize -> Denies the normalize command without any pre-configured scope.", + "description": "Denies the normalize command without any pre-configured scope.", "type": "string", - "enum": [ - "core:path:deny-normalize" - ] + "const": "core:path:deny-normalize" }, { - "description": "core:path:deny-resolve -> Denies the resolve command without any pre-configured scope.", + "description": "Denies the resolve command without any pre-configured scope.", "type": "string", - "enum": [ - "core:path:deny-resolve" - ] + "const": "core:path:deny-resolve" }, { - "description": "core:path:deny-resolve-directory -> Denies the resolve_directory command without any pre-configured scope.", + "description": "Denies the resolve_directory command without any pre-configured scope.", "type": "string", - "enum": [ - "core:path:deny-resolve-directory" - ] + "const": "core:path:deny-resolve-directory" }, { - "description": "core:resources:default -> Default permissions for the plugin.", + "description": "Default permissions for the plugin.", "type": "string", - "enum": [ - "core:resources:default" - ] + "const": "core:resources:default" }, { - "description": "core:resources:allow-close -> Enables the close command without any pre-configured scope.", + "description": "Enables the close command without any pre-configured scope.", "type": "string", - "enum": [ - "core:resources:allow-close" - ] + "const": "core:resources:allow-close" }, { - "description": "core:resources:deny-close -> Denies the close command without any pre-configured scope.", + "description": "Denies the close command without any pre-configured scope.", "type": "string", - "enum": [ - "core:resources:deny-close" - ] + "const": "core:resources:deny-close" }, { - "description": "core:tray:default -> Default permissions for the plugin.", + "description": "Default permissions for the plugin.", "type": "string", - "enum": [ - "core:tray:default" - ] + "const": "core:tray:default" }, { - "description": "core:tray:allow-get-by-id -> Enables the get_by_id command without any pre-configured scope.", + "description": "Enables the get_by_id command without any pre-configured scope.", "type": "string", - "enum": [ - "core:tray:allow-get-by-id" - ] + "const": "core:tray:allow-get-by-id" }, { - "description": "core:tray:allow-new -> Enables the new command without any pre-configured scope.", + "description": "Enables the new command without any pre-configured scope.", "type": "string", - "enum": [ - "core:tray:allow-new" - ] + "const": "core:tray:allow-new" }, { - "description": "core:tray:allow-remove-by-id -> Enables the remove_by_id command without any pre-configured scope.", + "description": "Enables the remove_by_id command without any pre-configured scope.", "type": "string", - "enum": [ - "core:tray:allow-remove-by-id" - ] + "const": "core:tray:allow-remove-by-id" }, { - "description": "core:tray:allow-set-icon -> Enables the set_icon command without any pre-configured scope.", + "description": "Enables the set_icon command without any pre-configured scope.", "type": "string", - "enum": [ - "core:tray:allow-set-icon" - ] + "const": "core:tray:allow-set-icon" }, { - "description": "core:tray:allow-set-icon-as-template -> Enables the set_icon_as_template command without any pre-configured scope.", + "description": "Enables the set_icon_as_template command without any pre-configured scope.", "type": "string", - "enum": [ - "core:tray:allow-set-icon-as-template" - ] + "const": "core:tray:allow-set-icon-as-template" }, { - "description": "core:tray:allow-set-menu -> Enables the set_menu command without any pre-configured scope.", + "description": "Enables the set_menu command without any pre-configured scope.", "type": "string", - "enum": [ - "core:tray:allow-set-menu" - ] + "const": "core:tray:allow-set-menu" }, { - "description": "core:tray:allow-set-show-menu-on-left-click -> Enables the set_show_menu_on_left_click command without any pre-configured scope.", + "description": "Enables the set_show_menu_on_left_click command without any pre-configured scope.", "type": "string", - "enum": [ - "core:tray:allow-set-show-menu-on-left-click" - ] + "const": "core:tray:allow-set-show-menu-on-left-click" }, { - "description": "core:tray:allow-set-temp-dir-path -> Enables the set_temp_dir_path command without any pre-configured scope.", + "description": "Enables the set_temp_dir_path command without any pre-configured scope.", "type": "string", - "enum": [ - "core:tray:allow-set-temp-dir-path" - ] + "const": "core:tray:allow-set-temp-dir-path" }, { - "description": "core:tray:allow-set-title -> Enables the set_title command without any pre-configured scope.", + "description": "Enables the set_title command without any pre-configured scope.", "type": "string", - "enum": [ - "core:tray:allow-set-title" - ] + "const": "core:tray:allow-set-title" }, { - "description": "core:tray:allow-set-tooltip -> Enables the set_tooltip command without any pre-configured scope.", + "description": "Enables the set_tooltip command without any pre-configured scope.", "type": "string", - "enum": [ - "core:tray:allow-set-tooltip" - ] + "const": "core:tray:allow-set-tooltip" }, { - "description": "core:tray:allow-set-visible -> Enables the set_visible command without any pre-configured scope.", + "description": "Enables the set_visible command without any pre-configured scope.", "type": "string", - "enum": [ - "core:tray:allow-set-visible" - ] + "const": "core:tray:allow-set-visible" }, { - "description": "core:tray:deny-get-by-id -> Denies the get_by_id command without any pre-configured scope.", + "description": "Denies the get_by_id command without any pre-configured scope.", "type": "string", - "enum": [ - "core:tray:deny-get-by-id" - ] + "const": "core:tray:deny-get-by-id" }, { - "description": "core:tray:deny-new -> Denies the new command without any pre-configured scope.", + "description": "Denies the new command without any pre-configured scope.", "type": "string", - "enum": [ - "core:tray:deny-new" - ] + "const": "core:tray:deny-new" }, { - "description": "core:tray:deny-remove-by-id -> Denies the remove_by_id command without any pre-configured scope.", + "description": "Denies the remove_by_id command without any pre-configured scope.", "type": "string", - "enum": [ - "core:tray:deny-remove-by-id" - ] + "const": "core:tray:deny-remove-by-id" }, { - "description": "core:tray:deny-set-icon -> Denies the set_icon command without any pre-configured scope.", + "description": "Denies the set_icon command without any pre-configured scope.", "type": "string", - "enum": [ - "core:tray:deny-set-icon" - ] + "const": "core:tray:deny-set-icon" }, { - "description": "core:tray:deny-set-icon-as-template -> Denies the set_icon_as_template command without any pre-configured scope.", + "description": "Denies the set_icon_as_template command without any pre-configured scope.", "type": "string", - "enum": [ - "core:tray:deny-set-icon-as-template" - ] + "const": "core:tray:deny-set-icon-as-template" }, { - "description": "core:tray:deny-set-menu -> Denies the set_menu command without any pre-configured scope.", + "description": "Denies the set_menu command without any pre-configured scope.", "type": "string", - "enum": [ - "core:tray:deny-set-menu" - ] + "const": "core:tray:deny-set-menu" }, { - "description": "core:tray:deny-set-show-menu-on-left-click -> Denies the set_show_menu_on_left_click command without any pre-configured scope.", + "description": "Denies the set_show_menu_on_left_click command without any pre-configured scope.", "type": "string", - "enum": [ - "core:tray:deny-set-show-menu-on-left-click" - ] + "const": "core:tray:deny-set-show-menu-on-left-click" }, { - "description": "core:tray:deny-set-temp-dir-path -> Denies the set_temp_dir_path command without any pre-configured scope.", + "description": "Denies the set_temp_dir_path command without any pre-configured scope.", "type": "string", - "enum": [ - "core:tray:deny-set-temp-dir-path" - ] + "const": "core:tray:deny-set-temp-dir-path" }, { - "description": "core:tray:deny-set-title -> Denies the set_title command without any pre-configured scope.", + "description": "Denies the set_title command without any pre-configured scope.", "type": "string", - "enum": [ - "core:tray:deny-set-title" - ] + "const": "core:tray:deny-set-title" }, { - "description": "core:tray:deny-set-tooltip -> Denies the set_tooltip command without any pre-configured scope.", + "description": "Denies the set_tooltip command without any pre-configured scope.", "type": "string", - "enum": [ - "core:tray:deny-set-tooltip" - ] + "const": "core:tray:deny-set-tooltip" }, { - "description": "core:tray:deny-set-visible -> Denies the set_visible command without any pre-configured scope.", + "description": "Denies the set_visible command without any pre-configured scope.", "type": "string", - "enum": [ - "core:tray:deny-set-visible" - ] + "const": "core:tray:deny-set-visible" }, { - "description": "core:webview:default -> Default permissions for the plugin.", + "description": "Default permissions for the plugin.", "type": "string", - "enum": [ - "core:webview:default" - ] + "const": "core:webview:default" }, { - "description": "core:webview:allow-create-webview -> Enables the create_webview command without any pre-configured scope.", + "description": "Enables the create_webview command without any pre-configured scope.", "type": "string", - "enum": [ - "core:webview:allow-create-webview" - ] + "const": "core:webview:allow-create-webview" }, { - "description": "core:webview:allow-create-webview-window -> Enables the create_webview_window command without any pre-configured scope.", + "description": "Enables the create_webview_window command without any pre-configured scope.", "type": "string", - "enum": [ - "core:webview:allow-create-webview-window" - ] + "const": "core:webview:allow-create-webview-window" }, { - "description": "core:webview:allow-get-all-webviews -> Enables the get_all_webviews command without any pre-configured scope.", + "description": "Enables the get_all_webviews command without any pre-configured scope.", "type": "string", - "enum": [ - "core:webview:allow-get-all-webviews" - ] + "const": "core:webview:allow-get-all-webviews" }, { - "description": "core:webview:allow-internal-toggle-devtools -> Enables the internal_toggle_devtools command without any pre-configured scope.", + "description": "Enables the internal_toggle_devtools command without any pre-configured scope.", "type": "string", - "enum": [ - "core:webview:allow-internal-toggle-devtools" - ] + "const": "core:webview:allow-internal-toggle-devtools" }, { - "description": "core:webview:allow-print -> Enables the print command without any pre-configured scope.", + "description": "Enables the print command without any pre-configured scope.", "type": "string", - "enum": [ - "core:webview:allow-print" - ] + "const": "core:webview:allow-print" }, { - "description": "core:webview:allow-reparent -> Enables the reparent command without any pre-configured scope.", + "description": "Enables the reparent command without any pre-configured scope.", "type": "string", - "enum": [ - "core:webview:allow-reparent" - ] + "const": "core:webview:allow-reparent" }, { - "description": "core:webview:allow-set-webview-focus -> Enables the set_webview_focus command without any pre-configured scope.", + "description": "Enables the set_webview_focus command without any pre-configured scope.", "type": "string", - "enum": [ - "core:webview:allow-set-webview-focus" - ] + "const": "core:webview:allow-set-webview-focus" }, { - "description": "core:webview:allow-set-webview-position -> Enables the set_webview_position command without any pre-configured scope.", + "description": "Enables the set_webview_position command without any pre-configured scope.", "type": "string", - "enum": [ - "core:webview:allow-set-webview-position" - ] + "const": "core:webview:allow-set-webview-position" }, { - "description": "core:webview:allow-set-webview-size -> Enables the set_webview_size command without any pre-configured scope.", + "description": "Enables the set_webview_size command without any pre-configured scope.", "type": "string", - "enum": [ - "core:webview:allow-set-webview-size" - ] + "const": "core:webview:allow-set-webview-size" }, { - "description": "core:webview:allow-set-webview-zoom -> Enables the set_webview_zoom command without any pre-configured scope.", + "description": "Enables the set_webview_zoom command without any pre-configured scope.", "type": "string", - "enum": [ - "core:webview:allow-set-webview-zoom" - ] + "const": "core:webview:allow-set-webview-zoom" }, { - "description": "core:webview:allow-webview-close -> Enables the webview_close command without any pre-configured scope.", + "description": "Enables the webview_close command without any pre-configured scope.", "type": "string", - "enum": [ - "core:webview:allow-webview-close" - ] + "const": "core:webview:allow-webview-close" }, { - "description": "core:webview:allow-webview-position -> Enables the webview_position command without any pre-configured scope.", + "description": "Enables the webview_position command without any pre-configured scope.", "type": "string", - "enum": [ - "core:webview:allow-webview-position" - ] + "const": "core:webview:allow-webview-position" }, { - "description": "core:webview:allow-webview-size -> Enables the webview_size command without any pre-configured scope.", + "description": "Enables the webview_size command without any pre-configured scope.", "type": "string", - "enum": [ - "core:webview:allow-webview-size" - ] + "const": "core:webview:allow-webview-size" }, { - "description": "core:webview:deny-create-webview -> Denies the create_webview command without any pre-configured scope.", + "description": "Denies the create_webview command without any pre-configured scope.", "type": "string", - "enum": [ - "core:webview:deny-create-webview" - ] + "const": "core:webview:deny-create-webview" }, { - "description": "core:webview:deny-create-webview-window -> Denies the create_webview_window command without any pre-configured scope.", + "description": "Denies the create_webview_window command without any pre-configured scope.", "type": "string", - "enum": [ - "core:webview:deny-create-webview-window" - ] + "const": "core:webview:deny-create-webview-window" }, { - "description": "core:webview:deny-get-all-webviews -> Denies the get_all_webviews command without any pre-configured scope.", + "description": "Denies the get_all_webviews command without any pre-configured scope.", "type": "string", - "enum": [ - "core:webview:deny-get-all-webviews" - ] + "const": "core:webview:deny-get-all-webviews" }, { - "description": "core:webview:deny-internal-toggle-devtools -> Denies the internal_toggle_devtools command without any pre-configured scope.", + "description": "Denies the internal_toggle_devtools command without any pre-configured scope.", "type": "string", - "enum": [ - "core:webview:deny-internal-toggle-devtools" - ] + "const": "core:webview:deny-internal-toggle-devtools" }, { - "description": "core:webview:deny-print -> Denies the print command without any pre-configured scope.", + "description": "Denies the print command without any pre-configured scope.", "type": "string", - "enum": [ - "core:webview:deny-print" - ] + "const": "core:webview:deny-print" }, { - "description": "core:webview:deny-reparent -> Denies the reparent command without any pre-configured scope.", + "description": "Denies the reparent command without any pre-configured scope.", "type": "string", - "enum": [ - "core:webview:deny-reparent" - ] + "const": "core:webview:deny-reparent" }, { - "description": "core:webview:deny-set-webview-focus -> Denies the set_webview_focus command without any pre-configured scope.", + "description": "Denies the set_webview_focus command without any pre-configured scope.", "type": "string", - "enum": [ - "core:webview:deny-set-webview-focus" - ] + "const": "core:webview:deny-set-webview-focus" }, { - "description": "core:webview:deny-set-webview-position -> Denies the set_webview_position command without any pre-configured scope.", + "description": "Denies the set_webview_position command without any pre-configured scope.", "type": "string", - "enum": [ - "core:webview:deny-set-webview-position" - ] + "const": "core:webview:deny-set-webview-position" }, { - "description": "core:webview:deny-set-webview-size -> Denies the set_webview_size command without any pre-configured scope.", + "description": "Denies the set_webview_size command without any pre-configured scope.", "type": "string", - "enum": [ - "core:webview:deny-set-webview-size" - ] + "const": "core:webview:deny-set-webview-size" }, { - "description": "core:webview:deny-set-webview-zoom -> Denies the set_webview_zoom command without any pre-configured scope.", + "description": "Denies the set_webview_zoom command without any pre-configured scope.", "type": "string", - "enum": [ - "core:webview:deny-set-webview-zoom" - ] + "const": "core:webview:deny-set-webview-zoom" }, { - "description": "core:webview:deny-webview-close -> Denies the webview_close command without any pre-configured scope.", + "description": "Denies the webview_close command without any pre-configured scope.", "type": "string", - "enum": [ - "core:webview:deny-webview-close" - ] + "const": "core:webview:deny-webview-close" }, { - "description": "core:webview:deny-webview-position -> Denies the webview_position command without any pre-configured scope.", + "description": "Denies the webview_position command without any pre-configured scope.", "type": "string", - "enum": [ - "core:webview:deny-webview-position" - ] + "const": "core:webview:deny-webview-position" }, { - "description": "core:webview:deny-webview-size -> Denies the webview_size command without any pre-configured scope.", + "description": "Denies the webview_size command without any pre-configured scope.", "type": "string", - "enum": [ - "core:webview:deny-webview-size" - ] + "const": "core:webview:deny-webview-size" }, { - "description": "core:window:default -> Default permissions for the plugin.", + "description": "Default permissions for the plugin.", "type": "string", - "enum": [ - "core:window:default" - ] + "const": "core:window:default" }, { - "description": "core:window:allow-available-monitors -> Enables the available_monitors command without any pre-configured scope.", + "description": "Enables the available_monitors command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-available-monitors" - ] + "const": "core:window:allow-available-monitors" }, { - "description": "core:window:allow-center -> Enables the center command without any pre-configured scope.", + "description": "Enables the center command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-center" - ] + "const": "core:window:allow-center" }, { - "description": "core:window:allow-close -> Enables the close command without any pre-configured scope.", + "description": "Enables the close command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-close" - ] + "const": "core:window:allow-close" }, { - "description": "core:window:allow-create -> Enables the create command without any pre-configured scope.", + "description": "Enables the create command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-create" - ] + "const": "core:window:allow-create" }, { - "description": "core:window:allow-current-monitor -> Enables the current_monitor command without any pre-configured scope.", + "description": "Enables the current_monitor command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-current-monitor" - ] + "const": "core:window:allow-current-monitor" }, { - "description": "core:window:allow-cursor-position -> Enables the cursor_position command without any pre-configured scope.", + "description": "Enables the cursor_position command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-cursor-position" - ] + "const": "core:window:allow-cursor-position" }, { - "description": "core:window:allow-destroy -> Enables the destroy command without any pre-configured scope.", + "description": "Enables the destroy command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-destroy" - ] + "const": "core:window:allow-destroy" }, { - "description": "core:window:allow-get-all-windows -> Enables the get_all_windows command without any pre-configured scope.", + "description": "Enables the get_all_windows command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-get-all-windows" - ] + "const": "core:window:allow-get-all-windows" }, { - "description": "core:window:allow-hide -> Enables the hide command without any pre-configured scope.", + "description": "Enables the hide command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-hide" - ] + "const": "core:window:allow-hide" }, { - "description": "core:window:allow-inner-position -> Enables the inner_position command without any pre-configured scope.", + "description": "Enables the inner_position command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-inner-position" - ] + "const": "core:window:allow-inner-position" }, { - "description": "core:window:allow-inner-size -> Enables the inner_size command without any pre-configured scope.", + "description": "Enables the inner_size command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-inner-size" - ] + "const": "core:window:allow-inner-size" }, { - "description": "core:window:allow-internal-toggle-maximize -> Enables the internal_toggle_maximize command without any pre-configured scope.", + "description": "Enables the internal_toggle_maximize command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-internal-toggle-maximize" - ] + "const": "core:window:allow-internal-toggle-maximize" }, { - "description": "core:window:allow-is-closable -> Enables the is_closable command without any pre-configured scope.", + "description": "Enables the is_closable command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-is-closable" - ] + "const": "core:window:allow-is-closable" }, { - "description": "core:window:allow-is-decorated -> Enables the is_decorated command without any pre-configured scope.", + "description": "Enables the is_decorated command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-is-decorated" - ] + "const": "core:window:allow-is-decorated" }, { - "description": "core:window:allow-is-focused -> Enables the is_focused command without any pre-configured scope.", + "description": "Enables the is_focused command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-is-focused" - ] + "const": "core:window:allow-is-focused" }, { - "description": "core:window:allow-is-fullscreen -> Enables the is_fullscreen command without any pre-configured scope.", + "description": "Enables the is_fullscreen command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-is-fullscreen" - ] + "const": "core:window:allow-is-fullscreen" }, { - "description": "core:window:allow-is-maximizable -> Enables the is_maximizable command without any pre-configured scope.", + "description": "Enables the is_maximizable command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-is-maximizable" - ] + "const": "core:window:allow-is-maximizable" }, { - "description": "core:window:allow-is-maximized -> Enables the is_maximized command without any pre-configured scope.", + "description": "Enables the is_maximized command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-is-maximized" - ] + "const": "core:window:allow-is-maximized" }, { - "description": "core:window:allow-is-minimizable -> Enables the is_minimizable command without any pre-configured scope.", + "description": "Enables the is_minimizable command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-is-minimizable" - ] + "const": "core:window:allow-is-minimizable" }, { - "description": "core:window:allow-is-minimized -> Enables the is_minimized command without any pre-configured scope.", + "description": "Enables the is_minimized command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-is-minimized" - ] + "const": "core:window:allow-is-minimized" }, { - "description": "core:window:allow-is-resizable -> Enables the is_resizable command without any pre-configured scope.", + "description": "Enables the is_resizable command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-is-resizable" - ] + "const": "core:window:allow-is-resizable" }, { - "description": "core:window:allow-is-visible -> Enables the is_visible command without any pre-configured scope.", + "description": "Enables the is_visible command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-is-visible" - ] + "const": "core:window:allow-is-visible" }, { - "description": "core:window:allow-maximize -> Enables the maximize command without any pre-configured scope.", + "description": "Enables the maximize command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-maximize" - ] + "const": "core:window:allow-maximize" }, { - "description": "core:window:allow-minimize -> Enables the minimize command without any pre-configured scope.", + "description": "Enables the minimize command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-minimize" - ] + "const": "core:window:allow-minimize" }, { - "description": "core:window:allow-monitor-from-point -> Enables the monitor_from_point command without any pre-configured scope.", + "description": "Enables the monitor_from_point command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-monitor-from-point" - ] + "const": "core:window:allow-monitor-from-point" }, { - "description": "core:window:allow-outer-position -> Enables the outer_position command without any pre-configured scope.", + "description": "Enables the outer_position command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-outer-position" - ] + "const": "core:window:allow-outer-position" }, { - "description": "core:window:allow-outer-size -> Enables the outer_size command without any pre-configured scope.", + "description": "Enables the outer_size command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-outer-size" - ] + "const": "core:window:allow-outer-size" }, { - "description": "core:window:allow-primary-monitor -> Enables the primary_monitor command without any pre-configured scope.", + "description": "Enables the primary_monitor command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-primary-monitor" - ] + "const": "core:window:allow-primary-monitor" }, { - "description": "core:window:allow-request-user-attention -> Enables the request_user_attention command without any pre-configured scope.", + "description": "Enables the request_user_attention command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-request-user-attention" - ] + "const": "core:window:allow-request-user-attention" }, { - "description": "core:window:allow-scale-factor -> Enables the scale_factor command without any pre-configured scope.", + "description": "Enables the scale_factor command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-scale-factor" - ] + "const": "core:window:allow-scale-factor" }, { - "description": "core:window:allow-set-always-on-bottom -> Enables the set_always_on_bottom command without any pre-configured scope.", + "description": "Enables the set_always_on_bottom command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-set-always-on-bottom" - ] + "const": "core:window:allow-set-always-on-bottom" }, { - "description": "core:window:allow-set-always-on-top -> Enables the set_always_on_top command without any pre-configured scope.", + "description": "Enables the set_always_on_top command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-set-always-on-top" - ] + "const": "core:window:allow-set-always-on-top" }, { - "description": "core:window:allow-set-closable -> Enables the set_closable command without any pre-configured scope.", + "description": "Enables the set_closable command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-set-closable" - ] + "const": "core:window:allow-set-closable" }, { - "description": "core:window:allow-set-content-protected -> Enables the set_content_protected command without any pre-configured scope.", + "description": "Enables the set_content_protected command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-set-content-protected" - ] + "const": "core:window:allow-set-content-protected" }, { - "description": "core:window:allow-set-cursor-grab -> Enables the set_cursor_grab command without any pre-configured scope.", + "description": "Enables the set_cursor_grab command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-set-cursor-grab" - ] + "const": "core:window:allow-set-cursor-grab" }, { - "description": "core:window:allow-set-cursor-icon -> Enables the set_cursor_icon command without any pre-configured scope.", + "description": "Enables the set_cursor_icon command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-set-cursor-icon" - ] + "const": "core:window:allow-set-cursor-icon" }, { - "description": "core:window:allow-set-cursor-position -> Enables the set_cursor_position command without any pre-configured scope.", + "description": "Enables the set_cursor_position command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-set-cursor-position" - ] + "const": "core:window:allow-set-cursor-position" }, { - "description": "core:window:allow-set-cursor-visible -> Enables the set_cursor_visible command without any pre-configured scope.", + "description": "Enables the set_cursor_visible command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-set-cursor-visible" - ] + "const": "core:window:allow-set-cursor-visible" }, { - "description": "core:window:allow-set-decorations -> Enables the set_decorations command without any pre-configured scope.", + "description": "Enables the set_decorations command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-set-decorations" - ] + "const": "core:window:allow-set-decorations" }, { - "description": "core:window:allow-set-effects -> Enables the set_effects command without any pre-configured scope.", + "description": "Enables the set_effects command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-set-effects" - ] + "const": "core:window:allow-set-effects" }, { - "description": "core:window:allow-set-focus -> Enables the set_focus command without any pre-configured scope.", + "description": "Enables the set_focus command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-set-focus" - ] + "const": "core:window:allow-set-focus" }, { - "description": "core:window:allow-set-fullscreen -> Enables the set_fullscreen command without any pre-configured scope.", + "description": "Enables the set_fullscreen command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-set-fullscreen" - ] + "const": "core:window:allow-set-fullscreen" }, { - "description": "core:window:allow-set-icon -> Enables the set_icon command without any pre-configured scope.", + "description": "Enables the set_icon command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-set-icon" - ] + "const": "core:window:allow-set-icon" }, { - "description": "core:window:allow-set-ignore-cursor-events -> Enables the set_ignore_cursor_events command without any pre-configured scope.", + "description": "Enables the set_ignore_cursor_events command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-set-ignore-cursor-events" - ] + "const": "core:window:allow-set-ignore-cursor-events" }, { - "description": "core:window:allow-set-max-size -> Enables the set_max_size command without any pre-configured scope.", + "description": "Enables the set_max_size command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-set-max-size" - ] + "const": "core:window:allow-set-max-size" }, { - "description": "core:window:allow-set-maximizable -> Enables the set_maximizable command without any pre-configured scope.", + "description": "Enables the set_maximizable command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-set-maximizable" - ] + "const": "core:window:allow-set-maximizable" }, { - "description": "core:window:allow-set-min-size -> Enables the set_min_size command without any pre-configured scope.", + "description": "Enables the set_min_size command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-set-min-size" - ] + "const": "core:window:allow-set-min-size" }, { - "description": "core:window:allow-set-minimizable -> Enables the set_minimizable command without any pre-configured scope.", + "description": "Enables the set_minimizable command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-set-minimizable" - ] + "const": "core:window:allow-set-minimizable" }, { - "description": "core:window:allow-set-position -> Enables the set_position command without any pre-configured scope.", + "description": "Enables the set_position command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-set-position" - ] + "const": "core:window:allow-set-position" }, { - "description": "core:window:allow-set-progress-bar -> Enables the set_progress_bar command without any pre-configured scope.", + "description": "Enables the set_progress_bar command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-set-progress-bar" - ] + "const": "core:window:allow-set-progress-bar" }, { - "description": "core:window:allow-set-resizable -> Enables the set_resizable command without any pre-configured scope.", + "description": "Enables the set_resizable command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-set-resizable" - ] + "const": "core:window:allow-set-resizable" }, { - "description": "core:window:allow-set-shadow -> Enables the set_shadow command without any pre-configured scope.", + "description": "Enables the set_shadow command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-set-shadow" - ] + "const": "core:window:allow-set-shadow" }, { - "description": "core:window:allow-set-size -> Enables the set_size command without any pre-configured scope.", + "description": "Enables the set_size command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-set-size" - ] + "const": "core:window:allow-set-size" }, { - "description": "core:window:allow-set-size-constraints -> Enables the set_size_constraints command without any pre-configured scope.", + "description": "Enables the set_size_constraints command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-set-size-constraints" - ] + "const": "core:window:allow-set-size-constraints" }, { - "description": "core:window:allow-set-skip-taskbar -> Enables the set_skip_taskbar command without any pre-configured scope.", + "description": "Enables the set_skip_taskbar command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-set-skip-taskbar" - ] + "const": "core:window:allow-set-skip-taskbar" }, { - "description": "core:window:allow-set-title -> Enables the set_title command without any pre-configured scope.", + "description": "Enables the set_title command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-set-title" - ] + "const": "core:window:allow-set-title" }, { - "description": "core:window:allow-set-title-bar-style -> Enables the set_title_bar_style command without any pre-configured scope.", + "description": "Enables the set_title_bar_style command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-set-title-bar-style" - ] + "const": "core:window:allow-set-title-bar-style" }, { - "description": "core:window:allow-set-visible-on-all-workspaces -> Enables the set_visible_on_all_workspaces command without any pre-configured scope.", + "description": "Enables the set_visible_on_all_workspaces command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-set-visible-on-all-workspaces" - ] + "const": "core:window:allow-set-visible-on-all-workspaces" }, { - "description": "core:window:allow-show -> Enables the show command without any pre-configured scope.", + "description": "Enables the show command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-show" - ] + "const": "core:window:allow-show" }, { - "description": "core:window:allow-start-dragging -> Enables the start_dragging command without any pre-configured scope.", + "description": "Enables the start_dragging command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-start-dragging" - ] + "const": "core:window:allow-start-dragging" }, { - "description": "core:window:allow-start-resize-dragging -> Enables the start_resize_dragging command without any pre-configured scope.", + "description": "Enables the start_resize_dragging command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-start-resize-dragging" - ] + "const": "core:window:allow-start-resize-dragging" }, { - "description": "core:window:allow-theme -> Enables the theme command without any pre-configured scope.", + "description": "Enables the theme command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-theme" - ] + "const": "core:window:allow-theme" }, { - "description": "core:window:allow-title -> Enables the title command without any pre-configured scope.", + "description": "Enables the title command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-title" - ] + "const": "core:window:allow-title" }, { - "description": "core:window:allow-toggle-maximize -> Enables the toggle_maximize command without any pre-configured scope.", + "description": "Enables the toggle_maximize command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-toggle-maximize" - ] + "const": "core:window:allow-toggle-maximize" }, { - "description": "core:window:allow-unmaximize -> Enables the unmaximize command without any pre-configured scope.", + "description": "Enables the unmaximize command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-unmaximize" - ] + "const": "core:window:allow-unmaximize" }, { - "description": "core:window:allow-unminimize -> Enables the unminimize command without any pre-configured scope.", + "description": "Enables the unminimize command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:allow-unminimize" - ] + "const": "core:window:allow-unminimize" }, { - "description": "core:window:deny-available-monitors -> Denies the available_monitors command without any pre-configured scope.", + "description": "Denies the available_monitors command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-available-monitors" - ] + "const": "core:window:deny-available-monitors" }, { - "description": "core:window:deny-center -> Denies the center command without any pre-configured scope.", + "description": "Denies the center command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-center" - ] + "const": "core:window:deny-center" }, { - "description": "core:window:deny-close -> Denies the close command without any pre-configured scope.", + "description": "Denies the close command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-close" - ] + "const": "core:window:deny-close" }, { - "description": "core:window:deny-create -> Denies the create command without any pre-configured scope.", + "description": "Denies the create command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-create" - ] + "const": "core:window:deny-create" }, { - "description": "core:window:deny-current-monitor -> Denies the current_monitor command without any pre-configured scope.", + "description": "Denies the current_monitor command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-current-monitor" - ] + "const": "core:window:deny-current-monitor" }, { - "description": "core:window:deny-cursor-position -> Denies the cursor_position command without any pre-configured scope.", + "description": "Denies the cursor_position command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-cursor-position" - ] + "const": "core:window:deny-cursor-position" }, { - "description": "core:window:deny-destroy -> Denies the destroy command without any pre-configured scope.", + "description": "Denies the destroy command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-destroy" - ] + "const": "core:window:deny-destroy" }, { - "description": "core:window:deny-get-all-windows -> Denies the get_all_windows command without any pre-configured scope.", + "description": "Denies the get_all_windows command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-get-all-windows" - ] + "const": "core:window:deny-get-all-windows" }, { - "description": "core:window:deny-hide -> Denies the hide command without any pre-configured scope.", + "description": "Denies the hide command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-hide" - ] + "const": "core:window:deny-hide" }, { - "description": "core:window:deny-inner-position -> Denies the inner_position command without any pre-configured scope.", + "description": "Denies the inner_position command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-inner-position" - ] + "const": "core:window:deny-inner-position" }, { - "description": "core:window:deny-inner-size -> Denies the inner_size command without any pre-configured scope.", + "description": "Denies the inner_size command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-inner-size" - ] + "const": "core:window:deny-inner-size" }, { - "description": "core:window:deny-internal-toggle-maximize -> Denies the internal_toggle_maximize command without any pre-configured scope.", + "description": "Denies the internal_toggle_maximize command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-internal-toggle-maximize" - ] + "const": "core:window:deny-internal-toggle-maximize" }, { - "description": "core:window:deny-is-closable -> Denies the is_closable command without any pre-configured scope.", + "description": "Denies the is_closable command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-is-closable" - ] + "const": "core:window:deny-is-closable" }, { - "description": "core:window:deny-is-decorated -> Denies the is_decorated command without any pre-configured scope.", + "description": "Denies the is_decorated command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-is-decorated" - ] + "const": "core:window:deny-is-decorated" }, { - "description": "core:window:deny-is-focused -> Denies the is_focused command without any pre-configured scope.", + "description": "Denies the is_focused command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-is-focused" - ] + "const": "core:window:deny-is-focused" }, { - "description": "core:window:deny-is-fullscreen -> Denies the is_fullscreen command without any pre-configured scope.", + "description": "Denies the is_fullscreen command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-is-fullscreen" - ] + "const": "core:window:deny-is-fullscreen" }, { - "description": "core:window:deny-is-maximizable -> Denies the is_maximizable command without any pre-configured scope.", + "description": "Denies the is_maximizable command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-is-maximizable" - ] + "const": "core:window:deny-is-maximizable" }, { - "description": "core:window:deny-is-maximized -> Denies the is_maximized command without any pre-configured scope.", + "description": "Denies the is_maximized command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-is-maximized" - ] + "const": "core:window:deny-is-maximized" }, { - "description": "core:window:deny-is-minimizable -> Denies the is_minimizable command without any pre-configured scope.", + "description": "Denies the is_minimizable command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-is-minimizable" - ] + "const": "core:window:deny-is-minimizable" }, { - "description": "core:window:deny-is-minimized -> Denies the is_minimized command without any pre-configured scope.", + "description": "Denies the is_minimized command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-is-minimized" - ] + "const": "core:window:deny-is-minimized" }, { - "description": "core:window:deny-is-resizable -> Denies the is_resizable command without any pre-configured scope.", + "description": "Denies the is_resizable command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-is-resizable" - ] + "const": "core:window:deny-is-resizable" }, { - "description": "core:window:deny-is-visible -> Denies the is_visible command without any pre-configured scope.", + "description": "Denies the is_visible command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-is-visible" - ] + "const": "core:window:deny-is-visible" }, { - "description": "core:window:deny-maximize -> Denies the maximize command without any pre-configured scope.", + "description": "Denies the maximize command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-maximize" - ] + "const": "core:window:deny-maximize" }, { - "description": "core:window:deny-minimize -> Denies the minimize command without any pre-configured scope.", + "description": "Denies the minimize command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-minimize" - ] + "const": "core:window:deny-minimize" }, { - "description": "core:window:deny-monitor-from-point -> Denies the monitor_from_point command without any pre-configured scope.", + "description": "Denies the monitor_from_point command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-monitor-from-point" - ] + "const": "core:window:deny-monitor-from-point" }, { - "description": "core:window:deny-outer-position -> Denies the outer_position command without any pre-configured scope.", + "description": "Denies the outer_position command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-outer-position" - ] + "const": "core:window:deny-outer-position" }, { - "description": "core:window:deny-outer-size -> Denies the outer_size command without any pre-configured scope.", + "description": "Denies the outer_size command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-outer-size" - ] + "const": "core:window:deny-outer-size" }, { - "description": "core:window:deny-primary-monitor -> Denies the primary_monitor command without any pre-configured scope.", + "description": "Denies the primary_monitor command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-primary-monitor" - ] + "const": "core:window:deny-primary-monitor" }, { - "description": "core:window:deny-request-user-attention -> Denies the request_user_attention command without any pre-configured scope.", + "description": "Denies the request_user_attention command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-request-user-attention" - ] + "const": "core:window:deny-request-user-attention" }, { - "description": "core:window:deny-scale-factor -> Denies the scale_factor command without any pre-configured scope.", + "description": "Denies the scale_factor command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-scale-factor" - ] + "const": "core:window:deny-scale-factor" }, { - "description": "core:window:deny-set-always-on-bottom -> Denies the set_always_on_bottom command without any pre-configured scope.", + "description": "Denies the set_always_on_bottom command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-set-always-on-bottom" - ] + "const": "core:window:deny-set-always-on-bottom" }, { - "description": "core:window:deny-set-always-on-top -> Denies the set_always_on_top command without any pre-configured scope.", + "description": "Denies the set_always_on_top command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-set-always-on-top" - ] + "const": "core:window:deny-set-always-on-top" }, { - "description": "core:window:deny-set-closable -> Denies the set_closable command without any pre-configured scope.", + "description": "Denies the set_closable command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-set-closable" - ] + "const": "core:window:deny-set-closable" }, { - "description": "core:window:deny-set-content-protected -> Denies the set_content_protected command without any pre-configured scope.", + "description": "Denies the set_content_protected command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-set-content-protected" - ] + "const": "core:window:deny-set-content-protected" }, { - "description": "core:window:deny-set-cursor-grab -> Denies the set_cursor_grab command without any pre-configured scope.", + "description": "Denies the set_cursor_grab command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-set-cursor-grab" - ] + "const": "core:window:deny-set-cursor-grab" }, { - "description": "core:window:deny-set-cursor-icon -> Denies the set_cursor_icon command without any pre-configured scope.", + "description": "Denies the set_cursor_icon command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-set-cursor-icon" - ] + "const": "core:window:deny-set-cursor-icon" }, { - "description": "core:window:deny-set-cursor-position -> Denies the set_cursor_position command without any pre-configured scope.", + "description": "Denies the set_cursor_position command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-set-cursor-position" - ] + "const": "core:window:deny-set-cursor-position" }, { - "description": "core:window:deny-set-cursor-visible -> Denies the set_cursor_visible command without any pre-configured scope.", + "description": "Denies the set_cursor_visible command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-set-cursor-visible" - ] + "const": "core:window:deny-set-cursor-visible" }, { - "description": "core:window:deny-set-decorations -> Denies the set_decorations command without any pre-configured scope.", + "description": "Denies the set_decorations command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-set-decorations" - ] + "const": "core:window:deny-set-decorations" }, { - "description": "core:window:deny-set-effects -> Denies the set_effects command without any pre-configured scope.", + "description": "Denies the set_effects command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-set-effects" - ] + "const": "core:window:deny-set-effects" }, { - "description": "core:window:deny-set-focus -> Denies the set_focus command without any pre-configured scope.", + "description": "Denies the set_focus command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-set-focus" - ] + "const": "core:window:deny-set-focus" }, { - "description": "core:window:deny-set-fullscreen -> Denies the set_fullscreen command without any pre-configured scope.", + "description": "Denies the set_fullscreen command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-set-fullscreen" - ] + "const": "core:window:deny-set-fullscreen" }, { - "description": "core:window:deny-set-icon -> Denies the set_icon command without any pre-configured scope.", + "description": "Denies the set_icon command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-set-icon" - ] + "const": "core:window:deny-set-icon" }, { - "description": "core:window:deny-set-ignore-cursor-events -> Denies the set_ignore_cursor_events command without any pre-configured scope.", + "description": "Denies the set_ignore_cursor_events command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-set-ignore-cursor-events" - ] + "const": "core:window:deny-set-ignore-cursor-events" }, { - "description": "core:window:deny-set-max-size -> Denies the set_max_size command without any pre-configured scope.", + "description": "Denies the set_max_size command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-set-max-size" - ] + "const": "core:window:deny-set-max-size" }, { - "description": "core:window:deny-set-maximizable -> Denies the set_maximizable command without any pre-configured scope.", + "description": "Denies the set_maximizable command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-set-maximizable" - ] + "const": "core:window:deny-set-maximizable" }, { - "description": "core:window:deny-set-min-size -> Denies the set_min_size command without any pre-configured scope.", + "description": "Denies the set_min_size command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-set-min-size" - ] + "const": "core:window:deny-set-min-size" }, { - "description": "core:window:deny-set-minimizable -> Denies the set_minimizable command without any pre-configured scope.", + "description": "Denies the set_minimizable command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-set-minimizable" - ] + "const": "core:window:deny-set-minimizable" }, { - "description": "core:window:deny-set-position -> Denies the set_position command without any pre-configured scope.", + "description": "Denies the set_position command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-set-position" - ] + "const": "core:window:deny-set-position" }, { - "description": "core:window:deny-set-progress-bar -> Denies the set_progress_bar command without any pre-configured scope.", + "description": "Denies the set_progress_bar command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-set-progress-bar" - ] + "const": "core:window:deny-set-progress-bar" }, { - "description": "core:window:deny-set-resizable -> Denies the set_resizable command without any pre-configured scope.", + "description": "Denies the set_resizable command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-set-resizable" - ] + "const": "core:window:deny-set-resizable" }, { - "description": "core:window:deny-set-shadow -> Denies the set_shadow command without any pre-configured scope.", + "description": "Denies the set_shadow command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-set-shadow" - ] + "const": "core:window:deny-set-shadow" }, { - "description": "core:window:deny-set-size -> Denies the set_size command without any pre-configured scope.", + "description": "Denies the set_size command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-set-size" - ] + "const": "core:window:deny-set-size" }, { - "description": "core:window:deny-set-size-constraints -> Denies the set_size_constraints command without any pre-configured scope.", + "description": "Denies the set_size_constraints command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-set-size-constraints" - ] + "const": "core:window:deny-set-size-constraints" }, { - "description": "core:window:deny-set-skip-taskbar -> Denies the set_skip_taskbar command without any pre-configured scope.", + "description": "Denies the set_skip_taskbar command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-set-skip-taskbar" - ] + "const": "core:window:deny-set-skip-taskbar" }, { - "description": "core:window:deny-set-title -> Denies the set_title command without any pre-configured scope.", + "description": "Denies the set_title command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-set-title" - ] + "const": "core:window:deny-set-title" }, { - "description": "core:window:deny-set-title-bar-style -> Denies the set_title_bar_style command without any pre-configured scope.", + "description": "Denies the set_title_bar_style command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-set-title-bar-style" - ] + "const": "core:window:deny-set-title-bar-style" }, { - "description": "core:window:deny-set-visible-on-all-workspaces -> Denies the set_visible_on_all_workspaces command without any pre-configured scope.", + "description": "Denies the set_visible_on_all_workspaces command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-set-visible-on-all-workspaces" - ] + "const": "core:window:deny-set-visible-on-all-workspaces" }, { - "description": "core:window:deny-show -> Denies the show command without any pre-configured scope.", + "description": "Denies the show command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-show" - ] + "const": "core:window:deny-show" }, { - "description": "core:window:deny-start-dragging -> Denies the start_dragging command without any pre-configured scope.", + "description": "Denies the start_dragging command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-start-dragging" - ] + "const": "core:window:deny-start-dragging" }, { - "description": "core:window:deny-start-resize-dragging -> Denies the start_resize_dragging command without any pre-configured scope.", + "description": "Denies the start_resize_dragging command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-start-resize-dragging" - ] + "const": "core:window:deny-start-resize-dragging" }, { - "description": "core:window:deny-theme -> Denies the theme command without any pre-configured scope.", + "description": "Denies the theme command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-theme" - ] + "const": "core:window:deny-theme" }, { - "description": "core:window:deny-title -> Denies the title command without any pre-configured scope.", + "description": "Denies the title command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-title" - ] + "const": "core:window:deny-title" }, { - "description": "core:window:deny-toggle-maximize -> Denies the toggle_maximize command without any pre-configured scope.", + "description": "Denies the toggle_maximize command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-toggle-maximize" - ] + "const": "core:window:deny-toggle-maximize" }, { - "description": "core:window:deny-unmaximize -> Denies the unmaximize command without any pre-configured scope.", + "description": "Denies the unmaximize command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-unmaximize" - ] + "const": "core:window:deny-unmaximize" }, { - "description": "core:window:deny-unminimize -> Denies the unminimize command without any pre-configured scope.", + "description": "Denies the unminimize command without any pre-configured scope.", "type": "string", - "enum": [ - "core:window:deny-unminimize" - ] + "const": "core:window:deny-unminimize" }, { - "description": "dialog:default -> This permission set configures the types of dialogs\navailable from the dialog plugin.\n\n#### Granted Permissions\n\nAll dialog types are enabled.\n\n\n", + "description": "This permission set configures the types of dialogs\navailable from the dialog plugin.\n\n#### Granted Permissions\n\nAll dialog types are enabled.\n\n\n", "type": "string", - "enum": [ - "dialog:default" - ] + "const": "dialog:default" }, { - "description": "dialog:allow-ask -> Enables the ask command without any pre-configured scope.", + "description": "Enables the ask command without any pre-configured scope.", "type": "string", - "enum": [ - "dialog:allow-ask" - ] + "const": "dialog:allow-ask" }, { - "description": "dialog:allow-confirm -> Enables the confirm command without any pre-configured scope.", + "description": "Enables the confirm command without any pre-configured scope.", "type": "string", - "enum": [ - "dialog:allow-confirm" - ] + "const": "dialog:allow-confirm" }, { - "description": "dialog:allow-message -> Enables the message command without any pre-configured scope.", + "description": "Enables the message command without any pre-configured scope.", "type": "string", - "enum": [ - "dialog:allow-message" - ] + "const": "dialog:allow-message" }, { - "description": "dialog:allow-open -> Enables the open command without any pre-configured scope.", + "description": "Enables the open command without any pre-configured scope.", "type": "string", - "enum": [ - "dialog:allow-open" - ] + "const": "dialog:allow-open" }, { - "description": "dialog:allow-save -> Enables the save command without any pre-configured scope.", + "description": "Enables the save command without any pre-configured scope.", "type": "string", - "enum": [ - "dialog:allow-save" - ] + "const": "dialog:allow-save" }, { - "description": "dialog:deny-ask -> Denies the ask command without any pre-configured scope.", + "description": "Denies the ask command without any pre-configured scope.", "type": "string", - "enum": [ - "dialog:deny-ask" - ] + "const": "dialog:deny-ask" }, { - "description": "dialog:deny-confirm -> Denies the confirm command without any pre-configured scope.", + "description": "Denies the confirm command without any pre-configured scope.", "type": "string", - "enum": [ - "dialog:deny-confirm" - ] + "const": "dialog:deny-confirm" }, { - "description": "dialog:deny-message -> Denies the message command without any pre-configured scope.", + "description": "Denies the message command without any pre-configured scope.", "type": "string", - "enum": [ - "dialog:deny-message" - ] + "const": "dialog:deny-message" }, { - "description": "dialog:deny-open -> Denies the open command without any pre-configured scope.", + "description": "Denies the open command without any pre-configured scope.", "type": "string", - "enum": [ - "dialog:deny-open" - ] + "const": "dialog:deny-open" }, { - "description": "dialog:deny-save -> Denies the save command without any pre-configured scope.", + "description": "Denies the save command without any pre-configured scope.", "type": "string", - "enum": [ - "dialog:deny-save" - ] + "const": "dialog:deny-save" }, { - "description": "fs:allow-app-meta -> This allows non-recursive read access to metadata of the `$APP` folder, including file listing and statistics.", + "description": "This set of permissions describes the what kind of\nfile system access the `fs` plugin has enabled or denied by default.\n\n#### Granted Permissions\n\nThis default permission set enables read access to the\napplication specific directories (AppConfig, AppData, AppLocalData, AppCache,\nAppLog) and all files and sub directories created in it.\nThe location of these directories depends on the operating system,\nwhere the application is run.\n\nIn general these directories need to be manually created\nby the application at runtime, before accessing files or folders\nin it is possible.\n\nTherefore, it is also allowed to create all of these folders via\nthe `mkdir` command.\n\n#### Denied Permissions\n\nThis default permission set prevents access to critical components\nof the Tauri application by default.\nOn Windows the webview data folder access is denied.\n\n", "type": "string", - "enum": [ - "fs:allow-app-meta" - ] + "const": "fs:default" }, { - "description": "fs:allow-app-meta-recursive -> This allows full recursive read access to metadata of the `$APP` folder, including file listing and statistics.", + "description": "This allows non-recursive read access to metadata of the application folders, including file listing and statistics.", "type": "string", - "enum": [ - "fs:allow-app-meta-recursive" - ] + "const": "fs:allow-app-meta" }, { - "description": "fs:allow-app-read -> This allows non-recursive read access to the `$APP` folder.", + "description": "This allows full recursive read access to metadata of the application folders, including file listing and statistics.", "type": "string", - "enum": [ - "fs:allow-app-read" - ] + "const": "fs:allow-app-meta-recursive" }, { - "description": "fs:allow-app-read-recursive -> This allows full recursive read access to the complete `$APP` folder, files and subdirectories.", + "description": "This allows non-recursive read access to the application folders.", "type": "string", - "enum": [ - "fs:allow-app-read-recursive" - ] + "const": "fs:allow-app-read" }, { - "description": "fs:allow-app-write -> This allows non-recursive write access to the `$APP` folder.", + "description": "This allows full recursive read access to the complete application folders, files and subdirectories.", "type": "string", - "enum": [ - "fs:allow-app-write" - ] + "const": "fs:allow-app-read-recursive" }, { - "description": "fs:allow-app-write-recursive -> This allows full recursive write access to the complete `$APP` folder, files and subdirectories.", + "description": "This allows non-recursive write access to the application folders.", "type": "string", - "enum": [ - "fs:allow-app-write-recursive" - ] + "const": "fs:allow-app-write" }, { - "description": "fs:allow-appcache-meta -> This allows non-recursive read access to metadata of the `$APPCACHE` folder, including file listing and statistics.", + "description": "This allows full recursive write access to the complete application folders, files and subdirectories.", "type": "string", - "enum": [ - "fs:allow-appcache-meta" - ] + "const": "fs:allow-app-write-recursive" }, { - "description": "fs:allow-appcache-meta-recursive -> This allows full recursive read access to metadata of the `$APPCACHE` folder, including file listing and statistics.", + "description": "This allows non-recursive read access to metadata of the `$APPCACHE` folder, including file listing and statistics.", "type": "string", - "enum": [ - "fs:allow-appcache-meta-recursive" - ] + "const": "fs:allow-appcache-meta" }, { - "description": "fs:allow-appcache-read -> This allows non-recursive read access to the `$APPCACHE` folder.", + "description": "This allows full recursive read access to metadata of the `$APPCACHE` folder, including file listing and statistics.", "type": "string", - "enum": [ - "fs:allow-appcache-read" - ] + "const": "fs:allow-appcache-meta-recursive" }, { - "description": "fs:allow-appcache-read-recursive -> This allows full recursive read access to the complete `$APPCACHE` folder, files and subdirectories.", + "description": "This allows non-recursive read access to the `$APPCACHE` folder.", "type": "string", - "enum": [ - "fs:allow-appcache-read-recursive" - ] + "const": "fs:allow-appcache-read" }, { - "description": "fs:allow-appcache-write -> This allows non-recursive write access to the `$APPCACHE` folder.", + "description": "This allows full recursive read access to the complete `$APPCACHE` folder, files and subdirectories.", "type": "string", - "enum": [ - "fs:allow-appcache-write" - ] + "const": "fs:allow-appcache-read-recursive" }, { - "description": "fs:allow-appcache-write-recursive -> This allows full recursive write access to the complete `$APPCACHE` folder, files and subdirectories.", + "description": "This allows non-recursive write access to the `$APPCACHE` folder.", "type": "string", - "enum": [ - "fs:allow-appcache-write-recursive" - ] + "const": "fs:allow-appcache-write" }, { - "description": "fs:allow-appconfig-meta -> This allows non-recursive read access to metadata of the `$APPCONFIG` folder, including file listing and statistics.", + "description": "This allows full recursive write access to the complete `$APPCACHE` folder, files and subdirectories.", "type": "string", - "enum": [ - "fs:allow-appconfig-meta" - ] + "const": "fs:allow-appcache-write-recursive" }, { - "description": "fs:allow-appconfig-meta-recursive -> This allows full recursive read access to metadata of the `$APPCONFIG` folder, including file listing and statistics.", + "description": "This allows non-recursive read access to metadata of the `$APPCONFIG` folder, including file listing and statistics.", "type": "string", - "enum": [ - "fs:allow-appconfig-meta-recursive" - ] + "const": "fs:allow-appconfig-meta" }, { - "description": "fs:allow-appconfig-read -> This allows non-recursive read access to the `$APPCONFIG` folder.", + "description": "This allows full recursive read access to metadata of the `$APPCONFIG` folder, including file listing and statistics.", "type": "string", - "enum": [ - "fs:allow-appconfig-read" - ] + "const": "fs:allow-appconfig-meta-recursive" }, { - "description": "fs:allow-appconfig-read-recursive -> This allows full recursive read access to the complete `$APPCONFIG` folder, files and subdirectories.", + "description": "This allows non-recursive read access to the `$APPCONFIG` folder.", "type": "string", - "enum": [ - "fs:allow-appconfig-read-recursive" - ] + "const": "fs:allow-appconfig-read" }, { - "description": "fs:allow-appconfig-write -> This allows non-recursive write access to the `$APPCONFIG` folder.", + "description": "This allows full recursive read access to the complete `$APPCONFIG` folder, files and subdirectories.", "type": "string", - "enum": [ - "fs:allow-appconfig-write" - ] + "const": "fs:allow-appconfig-read-recursive" }, { - "description": "fs:allow-appconfig-write-recursive -> This allows full recursive write access to the complete `$APPCONFIG` folder, files and subdirectories.", + "description": "This allows non-recursive write access to the `$APPCONFIG` folder.", "type": "string", - "enum": [ - "fs:allow-appconfig-write-recursive" - ] + "const": "fs:allow-appconfig-write" }, { - "description": "fs:allow-appdata-meta -> This allows non-recursive read access to metadata of the `$APPDATA` folder, including file listing and statistics.", + "description": "This allows full recursive write access to the complete `$APPCONFIG` folder, files and subdirectories.", "type": "string", - "enum": [ - "fs:allow-appdata-meta" - ] + "const": "fs:allow-appconfig-write-recursive" }, { - "description": "fs:allow-appdata-meta-recursive -> This allows full recursive read access to metadata of the `$APPDATA` folder, including file listing and statistics.", + "description": "This allows non-recursive read access to metadata of the `$APPDATA` folder, including file listing and statistics.", "type": "string", - "enum": [ - "fs:allow-appdata-meta-recursive" - ] + "const": "fs:allow-appdata-meta" }, { - "description": "fs:allow-appdata-read -> This allows non-recursive read access to the `$APPDATA` folder.", + "description": "This allows full recursive read access to metadata of the `$APPDATA` folder, including file listing and statistics.", "type": "string", - "enum": [ - "fs:allow-appdata-read" - ] + "const": "fs:allow-appdata-meta-recursive" }, { - "description": "fs:allow-appdata-read-recursive -> This allows full recursive read access to the complete `$APPDATA` folder, files and subdirectories.", + "description": "This allows non-recursive read access to the `$APPDATA` folder.", "type": "string", - "enum": [ - "fs:allow-appdata-read-recursive" - ] + "const": "fs:allow-appdata-read" }, { - "description": "fs:allow-appdata-write -> This allows non-recursive write access to the `$APPDATA` folder.", + "description": "This allows full recursive read access to the complete `$APPDATA` folder, files and subdirectories.", "type": "string", - "enum": [ - "fs:allow-appdata-write" - ] + "const": "fs:allow-appdata-read-recursive" }, { - "description": "fs:allow-appdata-write-recursive -> This allows full recursive write access to the complete `$APPDATA` folder, files and subdirectories.", + "description": "This allows non-recursive write access to the `$APPDATA` folder.", "type": "string", - "enum": [ - "fs:allow-appdata-write-recursive" - ] + "const": "fs:allow-appdata-write" }, { - "description": "fs:allow-applocaldata-meta -> This allows non-recursive read access to metadata of the `$APPLOCALDATA` folder, including file listing and statistics.", + "description": "This allows full recursive write access to the complete `$APPDATA` folder, files and subdirectories.", "type": "string", - "enum": [ - "fs:allow-applocaldata-meta" - ] + "const": "fs:allow-appdata-write-recursive" }, { - "description": "fs:allow-applocaldata-meta-recursive -> This allows full recursive read access to metadata of the `$APPLOCALDATA` folder, including file listing and statistics.", + "description": "This allows non-recursive read access to metadata of the `$APPLOCALDATA` folder, including file listing and statistics.", "type": "string", - "enum": [ - "fs:allow-applocaldata-meta-recursive" - ] + "const": "fs:allow-applocaldata-meta" }, { - "description": "fs:allow-applocaldata-read -> This allows non-recursive read access to the `$APPLOCALDATA` folder.", + "description": "This allows full recursive read access to metadata of the `$APPLOCALDATA` folder, including file listing and statistics.", "type": "string", - "enum": [ - "fs:allow-applocaldata-read" - ] + "const": "fs:allow-applocaldata-meta-recursive" }, { - "description": "fs:allow-applocaldata-read-recursive -> This allows full recursive read access to the complete `$APPLOCALDATA` folder, files and subdirectories.", + "description": "This allows non-recursive read access to the `$APPLOCALDATA` folder.", "type": "string", - "enum": [ - "fs:allow-applocaldata-read-recursive" - ] + "const": "fs:allow-applocaldata-read" }, { - "description": "fs:allow-applocaldata-write -> This allows non-recursive write access to the `$APPLOCALDATA` folder.", + "description": "This allows full recursive read access to the complete `$APPLOCALDATA` folder, files and subdirectories.", "type": "string", - "enum": [ - "fs:allow-applocaldata-write" - ] + "const": "fs:allow-applocaldata-read-recursive" }, { - "description": "fs:allow-applocaldata-write-recursive -> This allows full recursive write access to the complete `$APPLOCALDATA` folder, files and subdirectories.", + "description": "This allows non-recursive write access to the `$APPLOCALDATA` folder.", "type": "string", - "enum": [ - "fs:allow-applocaldata-write-recursive" - ] + "const": "fs:allow-applocaldata-write" }, { - "description": "fs:allow-applog-meta -> This allows non-recursive read access to metadata of the `$APPLOG` folder, including file listing and statistics.", + "description": "This allows full recursive write access to the complete `$APPLOCALDATA` folder, files and subdirectories.", "type": "string", - "enum": [ - "fs:allow-applog-meta" - ] + "const": "fs:allow-applocaldata-write-recursive" }, { - "description": "fs:allow-applog-meta-recursive -> This allows full recursive read access to metadata of the `$APPLOG` folder, including file listing and statistics.", + "description": "This allows non-recursive read access to metadata of the `$APPLOG` folder, including file listing and statistics.", "type": "string", - "enum": [ - "fs:allow-applog-meta-recursive" - ] + "const": "fs:allow-applog-meta" }, { - "description": "fs:allow-applog-read -> This allows non-recursive read access to the `$APPLOG` folder.", + "description": "This allows full recursive read access to metadata of the `$APPLOG` folder, including file listing and statistics.", "type": "string", - "enum": [ - "fs:allow-applog-read" - ] + "const": "fs:allow-applog-meta-recursive" }, { - "description": "fs:allow-applog-read-recursive -> This allows full recursive read access to the complete `$APPLOG` folder, files and subdirectories.", + "description": "This allows non-recursive read access to the `$APPLOG` folder.", "type": "string", - "enum": [ - "fs:allow-applog-read-recursive" - ] + "const": "fs:allow-applog-read" }, { - "description": "fs:allow-applog-write -> This allows non-recursive write access to the `$APPLOG` folder.", + "description": "This allows full recursive read access to the complete `$APPLOG` folder, files and subdirectories.", "type": "string", - "enum": [ - "fs:allow-applog-write" - ] + "const": "fs:allow-applog-read-recursive" }, { - "description": "fs:allow-applog-write-recursive -> This allows full recursive write access to the complete `$APPLOG` folder, files and subdirectories.", + "description": "This allows non-recursive write access to the `$APPLOG` folder.", "type": "string", - "enum": [ - "fs:allow-applog-write-recursive" - ] + "const": "fs:allow-applog-write" }, { - "description": "fs:allow-audio-meta -> This allows non-recursive read access to metadata of the `$AUDIO` folder, including file listing and statistics.", + "description": "This allows full recursive write access to the complete `$APPLOG` folder, files and subdirectories.", "type": "string", - "enum": [ - "fs:allow-audio-meta" - ] + "const": "fs:allow-applog-write-recursive" }, { - "description": "fs:allow-audio-meta-recursive -> This allows full recursive read access to metadata of the `$AUDIO` folder, including file listing and statistics.", + "description": "This allows non-recursive read access to metadata of the `$AUDIO` folder, including file listing and statistics.", "type": "string", - "enum": [ - "fs:allow-audio-meta-recursive" - ] + "const": "fs:allow-audio-meta" }, { - "description": "fs:allow-audio-read -> This allows non-recursive read access to the `$AUDIO` folder.", + "description": "This allows full recursive read access to metadata of the `$AUDIO` folder, including file listing and statistics.", "type": "string", - "enum": [ - "fs:allow-audio-read" - ] + "const": "fs:allow-audio-meta-recursive" }, { - "description": "fs:allow-audio-read-recursive -> This allows full recursive read access to the complete `$AUDIO` folder, files and subdirectories.", + "description": "This allows non-recursive read access to the `$AUDIO` folder.", "type": "string", - "enum": [ - "fs:allow-audio-read-recursive" - ] + "const": "fs:allow-audio-read" }, { - "description": "fs:allow-audio-write -> This allows non-recursive write access to the `$AUDIO` folder.", + "description": "This allows full recursive read access to the complete `$AUDIO` folder, files and subdirectories.", "type": "string", - "enum": [ - "fs:allow-audio-write" - ] + "const": "fs:allow-audio-read-recursive" }, { - "description": "fs:allow-audio-write-recursive -> This allows full recursive write access to the complete `$AUDIO` folder, files and subdirectories.", + "description": "This allows non-recursive write access to the `$AUDIO` folder.", "type": "string", - "enum": [ - "fs:allow-audio-write-recursive" - ] + "const": "fs:allow-audio-write" }, { - "description": "fs:allow-cache-meta -> This allows non-recursive read access to metadata of the `$CACHE` folder, including file listing and statistics.", + "description": "This allows full recursive write access to the complete `$AUDIO` folder, files and subdirectories.", "type": "string", - "enum": [ - "fs:allow-cache-meta" - ] + "const": "fs:allow-audio-write-recursive" }, { - "description": "fs:allow-cache-meta-recursive -> This allows full recursive read access to metadata of the `$CACHE` folder, including file listing and statistics.", + "description": "This allows non-recursive read access to metadata of the `$CACHE` folder, including file listing and statistics.", "type": "string", - "enum": [ - "fs:allow-cache-meta-recursive" - ] + "const": "fs:allow-cache-meta" }, { - "description": "fs:allow-cache-read -> This allows non-recursive read access to the `$CACHE` folder.", + "description": "This allows full recursive read access to metadata of the `$CACHE` folder, including file listing and statistics.", "type": "string", - "enum": [ - "fs:allow-cache-read" - ] + "const": "fs:allow-cache-meta-recursive" }, { - "description": "fs:allow-cache-read-recursive -> This allows full recursive read access to the complete `$CACHE` folder, files and subdirectories.", + "description": "This allows non-recursive read access to the `$CACHE` folder.", "type": "string", - "enum": [ - "fs:allow-cache-read-recursive" - ] + "const": "fs:allow-cache-read" }, { - "description": "fs:allow-cache-write -> This allows non-recursive write access to the `$CACHE` folder.", + "description": "This allows full recursive read access to the complete `$CACHE` folder, files and subdirectories.", "type": "string", - "enum": [ - "fs:allow-cache-write" - ] + "const": "fs:allow-cache-read-recursive" }, { - "description": "fs:allow-cache-write-recursive -> This allows full recursive write access to the complete `$CACHE` folder, files and subdirectories.", + "description": "This allows non-recursive write access to the `$CACHE` folder.", "type": "string", - "enum": [ - "fs:allow-cache-write-recursive" - ] + "const": "fs:allow-cache-write" }, { - "description": "fs:allow-config-meta -> This allows non-recursive read access to metadata of the `$CONFIG` folder, including file listing and statistics.", + "description": "This allows full recursive write access to the complete `$CACHE` folder, files and subdirectories.", "type": "string", - "enum": [ - "fs:allow-config-meta" - ] + "const": "fs:allow-cache-write-recursive" }, { - "description": "fs:allow-config-meta-recursive -> This allows full recursive read access to metadata of the `$CONFIG` folder, including file listing and statistics.", + "description": "This allows non-recursive read access to metadata of the `$CONFIG` folder, including file listing and statistics.", "type": "string", - "enum": [ - "fs:allow-config-meta-recursive" - ] + "const": "fs:allow-config-meta" }, { - "description": "fs:allow-config-read -> This allows non-recursive read access to the `$CONFIG` folder.", + "description": "This allows full recursive read access to metadata of the `$CONFIG` folder, including file listing and statistics.", "type": "string", - "enum": [ - "fs:allow-config-read" - ] + "const": "fs:allow-config-meta-recursive" }, { - "description": "fs:allow-config-read-recursive -> This allows full recursive read access to the complete `$CONFIG` folder, files and subdirectories.", + "description": "This allows non-recursive read access to the `$CONFIG` folder.", "type": "string", - "enum": [ - "fs:allow-config-read-recursive" - ] + "const": "fs:allow-config-read" }, { - "description": "fs:allow-config-write -> This allows non-recursive write access to the `$CONFIG` folder.", + "description": "This allows full recursive read access to the complete `$CONFIG` folder, files and subdirectories.", "type": "string", - "enum": [ - "fs:allow-config-write" - ] + "const": "fs:allow-config-read-recursive" }, { - "description": "fs:allow-config-write-recursive -> This allows full recursive write access to the complete `$CONFIG` folder, files and subdirectories.", + "description": "This allows non-recursive write access to the `$CONFIG` folder.", "type": "string", - "enum": [ - "fs:allow-config-write-recursive" - ] + "const": "fs:allow-config-write" }, { - "description": "fs:allow-data-meta -> This allows non-recursive read access to metadata of the `$DATA` folder, including file listing and statistics.", + "description": "This allows full recursive write access to the complete `$CONFIG` folder, files and subdirectories.", "type": "string", - "enum": [ - "fs:allow-data-meta" - ] + "const": "fs:allow-config-write-recursive" }, { - "description": "fs:allow-data-meta-recursive -> This allows full recursive read access to metadata of the `$DATA` folder, including file listing and statistics.", + "description": "This allows non-recursive read access to metadata of the `$DATA` folder, including file listing and statistics.", "type": "string", - "enum": [ - "fs:allow-data-meta-recursive" - ] + "const": "fs:allow-data-meta" }, { - "description": "fs:allow-data-read -> This allows non-recursive read access to the `$DATA` folder.", + "description": "This allows full recursive read access to metadata of the `$DATA` folder, including file listing and statistics.", "type": "string", - "enum": [ - "fs:allow-data-read" - ] + "const": "fs:allow-data-meta-recursive" }, { - "description": "fs:allow-data-read-recursive -> This allows full recursive read access to the complete `$DATA` folder, files and subdirectories.", + "description": "This allows non-recursive read access to the `$DATA` folder.", "type": "string", - "enum": [ - "fs:allow-data-read-recursive" - ] + "const": "fs:allow-data-read" }, { - "description": "fs:allow-data-write -> This allows non-recursive write access to the `$DATA` folder.", + "description": "This allows full recursive read access to the complete `$DATA` folder, files and subdirectories.", "type": "string", - "enum": [ - "fs:allow-data-write" - ] + "const": "fs:allow-data-read-recursive" }, { - "description": "fs:allow-data-write-recursive -> This allows full recursive write access to the complete `$DATA` folder, files and subdirectories.", + "description": "This allows non-recursive write access to the `$DATA` folder.", "type": "string", - "enum": [ - "fs:allow-data-write-recursive" - ] + "const": "fs:allow-data-write" }, { - "description": "fs:allow-desktop-meta -> This allows non-recursive read access to metadata of the `$DESKTOP` folder, including file listing and statistics.", + "description": "This allows full recursive write access to the complete `$DATA` folder, files and subdirectories.", "type": "string", - "enum": [ - "fs:allow-desktop-meta" - ] + "const": "fs:allow-data-write-recursive" }, { - "description": "fs:allow-desktop-meta-recursive -> This allows full recursive read access to metadata of the `$DESKTOP` folder, including file listing and statistics.", + "description": "This allows non-recursive read access to metadata of the `$DESKTOP` folder, including file listing and statistics.", "type": "string", - "enum": [ - "fs:allow-desktop-meta-recursive" - ] + "const": "fs:allow-desktop-meta" }, { - "description": "fs:allow-desktop-read -> This allows non-recursive read access to the `$DESKTOP` folder.", + "description": "This allows full recursive read access to metadata of the `$DESKTOP` folder, including file listing and statistics.", "type": "string", - "enum": [ - "fs:allow-desktop-read" - ] + "const": "fs:allow-desktop-meta-recursive" }, { - "description": "fs:allow-desktop-read-recursive -> This allows full recursive read access to the complete `$DESKTOP` folder, files and subdirectories.", + "description": "This allows non-recursive read access to the `$DESKTOP` folder.", "type": "string", - "enum": [ - "fs:allow-desktop-read-recursive" - ] + "const": "fs:allow-desktop-read" }, { - "description": "fs:allow-desktop-write -> This allows non-recursive write access to the `$DESKTOP` folder.", + "description": "This allows full recursive read access to the complete `$DESKTOP` folder, files and subdirectories.", "type": "string", - "enum": [ - "fs:allow-desktop-write" - ] + "const": "fs:allow-desktop-read-recursive" }, { - "description": "fs:allow-desktop-write-recursive -> This allows full recursive write access to the complete `$DESKTOP` folder, files and subdirectories.", + "description": "This allows non-recursive write access to the `$DESKTOP` folder.", "type": "string", - "enum": [ - "fs:allow-desktop-write-recursive" - ] + "const": "fs:allow-desktop-write" }, { - "description": "fs:allow-document-meta -> This allows non-recursive read access to metadata of the `$DOCUMENT` folder, including file listing and statistics.", + "description": "This allows full recursive write access to the complete `$DESKTOP` folder, files and subdirectories.", "type": "string", - "enum": [ - "fs:allow-document-meta" - ] + "const": "fs:allow-desktop-write-recursive" }, { - "description": "fs:allow-document-meta-recursive -> This allows full recursive read access to metadata of the `$DOCUMENT` folder, including file listing and statistics.", + "description": "This allows non-recursive read access to metadata of the `$DOCUMENT` folder, including file listing and statistics.", "type": "string", - "enum": [ - "fs:allow-document-meta-recursive" - ] + "const": "fs:allow-document-meta" }, { - "description": "fs:allow-document-read -> This allows non-recursive read access to the `$DOCUMENT` folder.", + "description": "This allows full recursive read access to metadata of the `$DOCUMENT` folder, including file listing and statistics.", "type": "string", - "enum": [ - "fs:allow-document-read" - ] + "const": "fs:allow-document-meta-recursive" }, { - "description": "fs:allow-document-read-recursive -> This allows full recursive read access to the complete `$DOCUMENT` folder, files and subdirectories.", + "description": "This allows non-recursive read access to the `$DOCUMENT` folder.", "type": "string", - "enum": [ - "fs:allow-document-read-recursive" - ] + "const": "fs:allow-document-read" }, { - "description": "fs:allow-document-write -> This allows non-recursive write access to the `$DOCUMENT` folder.", + "description": "This allows full recursive read access to the complete `$DOCUMENT` folder, files and subdirectories.", "type": "string", - "enum": [ - "fs:allow-document-write" - ] + "const": "fs:allow-document-read-recursive" }, { - "description": "fs:allow-document-write-recursive -> This allows full recursive write access to the complete `$DOCUMENT` folder, files and subdirectories.", + "description": "This allows non-recursive write access to the `$DOCUMENT` folder.", "type": "string", - "enum": [ - "fs:allow-document-write-recursive" - ] + "const": "fs:allow-document-write" }, { - "description": "fs:allow-download-meta -> This allows non-recursive read access to metadata of the `$DOWNLOAD` folder, including file listing and statistics.", + "description": "This allows full recursive write access to the complete `$DOCUMENT` folder, files and subdirectories.", "type": "string", - "enum": [ - "fs:allow-download-meta" - ] + "const": "fs:allow-document-write-recursive" }, { - "description": "fs:allow-download-meta-recursive -> This allows full recursive read access to metadata of the `$DOWNLOAD` folder, including file listing and statistics.", + "description": "This allows non-recursive read access to metadata of the `$DOWNLOAD` folder, including file listing and statistics.", "type": "string", - "enum": [ - "fs:allow-download-meta-recursive" - ] + "const": "fs:allow-download-meta" }, { - "description": "fs:allow-download-read -> This allows non-recursive read access to the `$DOWNLOAD` folder.", + "description": "This allows full recursive read access to metadata of the `$DOWNLOAD` folder, including file listing and statistics.", "type": "string", - "enum": [ - "fs:allow-download-read" - ] + "const": "fs:allow-download-meta-recursive" }, { - "description": "fs:allow-download-read-recursive -> This allows full recursive read access to the complete `$DOWNLOAD` folder, files and subdirectories.", + "description": "This allows non-recursive read access to the `$DOWNLOAD` folder.", "type": "string", - "enum": [ - "fs:allow-download-read-recursive" - ] + "const": "fs:allow-download-read" }, { - "description": "fs:allow-download-write -> This allows non-recursive write access to the `$DOWNLOAD` folder.", + "description": "This allows full recursive read access to the complete `$DOWNLOAD` folder, files and subdirectories.", "type": "string", - "enum": [ - "fs:allow-download-write" - ] + "const": "fs:allow-download-read-recursive" }, { - "description": "fs:allow-download-write-recursive -> This allows full recursive write access to the complete `$DOWNLOAD` folder, files and subdirectories.", + "description": "This allows non-recursive write access to the `$DOWNLOAD` folder.", "type": "string", - "enum": [ - "fs:allow-download-write-recursive" - ] + "const": "fs:allow-download-write" }, { - "description": "fs:allow-exe-meta -> This allows non-recursive read access to metadata of the `$EXE` folder, including file listing and statistics.", + "description": "This allows full recursive write access to the complete `$DOWNLOAD` folder, files and subdirectories.", "type": "string", - "enum": [ - "fs:allow-exe-meta" - ] + "const": "fs:allow-download-write-recursive" }, { - "description": "fs:allow-exe-meta-recursive -> This allows full recursive read access to metadata of the `$EXE` folder, including file listing and statistics.", + "description": "This allows non-recursive read access to metadata of the `$EXE` folder, including file listing and statistics.", "type": "string", - "enum": [ - "fs:allow-exe-meta-recursive" - ] + "const": "fs:allow-exe-meta" }, { - "description": "fs:allow-exe-read -> This allows non-recursive read access to the `$EXE` folder.", + "description": "This allows full recursive read access to metadata of the `$EXE` folder, including file listing and statistics.", "type": "string", - "enum": [ - "fs:allow-exe-read" - ] + "const": "fs:allow-exe-meta-recursive" }, { - "description": "fs:allow-exe-read-recursive -> This allows full recursive read access to the complete `$EXE` folder, files and subdirectories.", + "description": "This allows non-recursive read access to the `$EXE` folder.", "type": "string", - "enum": [ - "fs:allow-exe-read-recursive" - ] + "const": "fs:allow-exe-read" }, { - "description": "fs:allow-exe-write -> This allows non-recursive write access to the `$EXE` folder.", + "description": "This allows full recursive read access to the complete `$EXE` folder, files and subdirectories.", "type": "string", - "enum": [ - "fs:allow-exe-write" - ] + "const": "fs:allow-exe-read-recursive" }, { - "description": "fs:allow-exe-write-recursive -> This allows full recursive write access to the complete `$EXE` folder, files and subdirectories.", + "description": "This allows non-recursive write access to the `$EXE` folder.", "type": "string", - "enum": [ - "fs:allow-exe-write-recursive" - ] + "const": "fs:allow-exe-write" }, { - "description": "fs:allow-font-meta -> This allows non-recursive read access to metadata of the `$FONT` folder, including file listing and statistics.", + "description": "This allows full recursive write access to the complete `$EXE` folder, files and subdirectories.", "type": "string", - "enum": [ - "fs:allow-font-meta" - ] + "const": "fs:allow-exe-write-recursive" }, { - "description": "fs:allow-font-meta-recursive -> This allows full recursive read access to metadata of the `$FONT` folder, including file listing and statistics.", + "description": "This allows non-recursive read access to metadata of the `$FONT` folder, including file listing and statistics.", "type": "string", - "enum": [ - "fs:allow-font-meta-recursive" - ] + "const": "fs:allow-font-meta" }, { - "description": "fs:allow-font-read -> This allows non-recursive read access to the `$FONT` folder.", + "description": "This allows full recursive read access to metadata of the `$FONT` folder, including file listing and statistics.", "type": "string", - "enum": [ - "fs:allow-font-read" - ] + "const": "fs:allow-font-meta-recursive" }, { - "description": "fs:allow-font-read-recursive -> This allows full recursive read access to the complete `$FONT` folder, files and subdirectories.", + "description": "This allows non-recursive read access to the `$FONT` folder.", "type": "string", - "enum": [ - "fs:allow-font-read-recursive" - ] + "const": "fs:allow-font-read" }, { - "description": "fs:allow-font-write -> This allows non-recursive write access to the `$FONT` folder.", + "description": "This allows full recursive read access to the complete `$FONT` folder, files and subdirectories.", "type": "string", - "enum": [ - "fs:allow-font-write" - ] + "const": "fs:allow-font-read-recursive" }, { - "description": "fs:allow-font-write-recursive -> This allows full recursive write access to the complete `$FONT` folder, files and subdirectories.", + "description": "This allows non-recursive write access to the `$FONT` folder.", "type": "string", - "enum": [ - "fs:allow-font-write-recursive" - ] + "const": "fs:allow-font-write" }, { - "description": "fs:allow-home-meta -> This allows non-recursive read access to metadata of the `$HOME` folder, including file listing and statistics.", + "description": "This allows full recursive write access to the complete `$FONT` folder, files and subdirectories.", "type": "string", - "enum": [ - "fs:allow-home-meta" - ] + "const": "fs:allow-font-write-recursive" }, { - "description": "fs:allow-home-meta-recursive -> This allows full recursive read access to metadata of the `$HOME` folder, including file listing and statistics.", + "description": "This allows non-recursive read access to metadata of the `$HOME` folder, including file listing and statistics.", "type": "string", - "enum": [ - "fs:allow-home-meta-recursive" - ] + "const": "fs:allow-home-meta" }, { - "description": "fs:allow-home-read -> This allows non-recursive read access to the `$HOME` folder.", + "description": "This allows full recursive read access to metadata of the `$HOME` folder, including file listing and statistics.", "type": "string", - "enum": [ - "fs:allow-home-read" - ] + "const": "fs:allow-home-meta-recursive" }, { - "description": "fs:allow-home-read-recursive -> This allows full recursive read access to the complete `$HOME` folder, files and subdirectories.", + "description": "This allows non-recursive read access to the `$HOME` folder.", "type": "string", - "enum": [ - "fs:allow-home-read-recursive" - ] + "const": "fs:allow-home-read" }, { - "description": "fs:allow-home-write -> This allows non-recursive write access to the `$HOME` folder.", + "description": "This allows full recursive read access to the complete `$HOME` folder, files and subdirectories.", "type": "string", - "enum": [ - "fs:allow-home-write" - ] + "const": "fs:allow-home-read-recursive" }, { - "description": "fs:allow-home-write-recursive -> This allows full recursive write access to the complete `$HOME` folder, files and subdirectories.", + "description": "This allows non-recursive write access to the `$HOME` folder.", "type": "string", - "enum": [ - "fs:allow-home-write-recursive" - ] + "const": "fs:allow-home-write" }, { - "description": "fs:allow-localdata-meta -> This allows non-recursive read access to metadata of the `$LOCALDATA` folder, including file listing and statistics.", + "description": "This allows full recursive write access to the complete `$HOME` folder, files and subdirectories.", "type": "string", - "enum": [ - "fs:allow-localdata-meta" - ] + "const": "fs:allow-home-write-recursive" }, { - "description": "fs:allow-localdata-meta-recursive -> This allows full recursive read access to metadata of the `$LOCALDATA` folder, including file listing and statistics.", + "description": "This allows non-recursive read access to metadata of the `$LOCALDATA` folder, including file listing and statistics.", "type": "string", - "enum": [ - "fs:allow-localdata-meta-recursive" - ] + "const": "fs:allow-localdata-meta" }, { - "description": "fs:allow-localdata-read -> This allows non-recursive read access to the `$LOCALDATA` folder.", + "description": "This allows full recursive read access to metadata of the `$LOCALDATA` folder, including file listing and statistics.", "type": "string", - "enum": [ - "fs:allow-localdata-read" - ] + "const": "fs:allow-localdata-meta-recursive" }, { - "description": "fs:allow-localdata-read-recursive -> This allows full recursive read access to the complete `$LOCALDATA` folder, files and subdirectories.", + "description": "This allows non-recursive read access to the `$LOCALDATA` folder.", "type": "string", - "enum": [ - "fs:allow-localdata-read-recursive" - ] + "const": "fs:allow-localdata-read" }, { - "description": "fs:allow-localdata-write -> This allows non-recursive write access to the `$LOCALDATA` folder.", + "description": "This allows full recursive read access to the complete `$LOCALDATA` folder, files and subdirectories.", "type": "string", - "enum": [ - "fs:allow-localdata-write" - ] + "const": "fs:allow-localdata-read-recursive" }, { - "description": "fs:allow-localdata-write-recursive -> This allows full recursive write access to the complete `$LOCALDATA` folder, files and subdirectories.", + "description": "This allows non-recursive write access to the `$LOCALDATA` folder.", "type": "string", - "enum": [ - "fs:allow-localdata-write-recursive" - ] + "const": "fs:allow-localdata-write" }, { - "description": "fs:allow-log-meta -> This allows non-recursive read access to metadata of the `$LOG` folder, including file listing and statistics.", + "description": "This allows full recursive write access to the complete `$LOCALDATA` folder, files and subdirectories.", "type": "string", - "enum": [ - "fs:allow-log-meta" - ] + "const": "fs:allow-localdata-write-recursive" }, { - "description": "fs:allow-log-meta-recursive -> This allows full recursive read access to metadata of the `$LOG` folder, including file listing and statistics.", + "description": "This allows non-recursive read access to metadata of the `$LOG` folder, including file listing and statistics.", "type": "string", - "enum": [ - "fs:allow-log-meta-recursive" - ] + "const": "fs:allow-log-meta" }, { - "description": "fs:allow-log-read -> This allows non-recursive read access to the `$LOG` folder.", + "description": "This allows full recursive read access to metadata of the `$LOG` folder, including file listing and statistics.", "type": "string", - "enum": [ - "fs:allow-log-read" - ] + "const": "fs:allow-log-meta-recursive" }, { - "description": "fs:allow-log-read-recursive -> This allows full recursive read access to the complete `$LOG` folder, files and subdirectories.", + "description": "This allows non-recursive read access to the `$LOG` folder.", "type": "string", - "enum": [ - "fs:allow-log-read-recursive" - ] + "const": "fs:allow-log-read" }, { - "description": "fs:allow-log-write -> This allows non-recursive write access to the `$LOG` folder.", + "description": "This allows full recursive read access to the complete `$LOG` folder, files and subdirectories.", "type": "string", - "enum": [ - "fs:allow-log-write" - ] + "const": "fs:allow-log-read-recursive" }, { - "description": "fs:allow-log-write-recursive -> This allows full recursive write access to the complete `$LOG` folder, files and subdirectories.", + "description": "This allows non-recursive write access to the `$LOG` folder.", "type": "string", - "enum": [ - "fs:allow-log-write-recursive" - ] + "const": "fs:allow-log-write" }, { - "description": "fs:allow-picture-meta -> This allows non-recursive read access to metadata of the `$PICTURE` folder, including file listing and statistics.", + "description": "This allows full recursive write access to the complete `$LOG` folder, files and subdirectories.", "type": "string", - "enum": [ - "fs:allow-picture-meta" - ] + "const": "fs:allow-log-write-recursive" }, { - "description": "fs:allow-picture-meta-recursive -> This allows full recursive read access to metadata of the `$PICTURE` folder, including file listing and statistics.", + "description": "This allows non-recursive read access to metadata of the `$PICTURE` folder, including file listing and statistics.", "type": "string", - "enum": [ - "fs:allow-picture-meta-recursive" - ] + "const": "fs:allow-picture-meta" }, { - "description": "fs:allow-picture-read -> This allows non-recursive read access to the `$PICTURE` folder.", + "description": "This allows full recursive read access to metadata of the `$PICTURE` folder, including file listing and statistics.", "type": "string", - "enum": [ - "fs:allow-picture-read" - ] + "const": "fs:allow-picture-meta-recursive" }, { - "description": "fs:allow-picture-read-recursive -> This allows full recursive read access to the complete `$PICTURE` folder, files and subdirectories.", + "description": "This allows non-recursive read access to the `$PICTURE` folder.", "type": "string", - "enum": [ - "fs:allow-picture-read-recursive" - ] + "const": "fs:allow-picture-read" }, { - "description": "fs:allow-picture-write -> This allows non-recursive write access to the `$PICTURE` folder.", + "description": "This allows full recursive read access to the complete `$PICTURE` folder, files and subdirectories.", "type": "string", - "enum": [ - "fs:allow-picture-write" - ] + "const": "fs:allow-picture-read-recursive" }, { - "description": "fs:allow-picture-write-recursive -> This allows full recursive write access to the complete `$PICTURE` folder, files and subdirectories.", + "description": "This allows non-recursive write access to the `$PICTURE` folder.", "type": "string", - "enum": [ - "fs:allow-picture-write-recursive" - ] + "const": "fs:allow-picture-write" }, { - "description": "fs:allow-public-meta -> This allows non-recursive read access to metadata of the `$PUBLIC` folder, including file listing and statistics.", + "description": "This allows full recursive write access to the complete `$PICTURE` folder, files and subdirectories.", "type": "string", - "enum": [ - "fs:allow-public-meta" - ] + "const": "fs:allow-picture-write-recursive" }, { - "description": "fs:allow-public-meta-recursive -> This allows full recursive read access to metadata of the `$PUBLIC` folder, including file listing and statistics.", + "description": "This allows non-recursive read access to metadata of the `$PUBLIC` folder, including file listing and statistics.", "type": "string", - "enum": [ - "fs:allow-public-meta-recursive" - ] + "const": "fs:allow-public-meta" }, { - "description": "fs:allow-public-read -> This allows non-recursive read access to the `$PUBLIC` folder.", + "description": "This allows full recursive read access to metadata of the `$PUBLIC` folder, including file listing and statistics.", "type": "string", - "enum": [ - "fs:allow-public-read" - ] + "const": "fs:allow-public-meta-recursive" }, { - "description": "fs:allow-public-read-recursive -> This allows full recursive read access to the complete `$PUBLIC` folder, files and subdirectories.", + "description": "This allows non-recursive read access to the `$PUBLIC` folder.", "type": "string", - "enum": [ - "fs:allow-public-read-recursive" - ] + "const": "fs:allow-public-read" }, { - "description": "fs:allow-public-write -> This allows non-recursive write access to the `$PUBLIC` folder.", + "description": "This allows full recursive read access to the complete `$PUBLIC` folder, files and subdirectories.", "type": "string", - "enum": [ - "fs:allow-public-write" - ] + "const": "fs:allow-public-read-recursive" }, { - "description": "fs:allow-public-write-recursive -> This allows full recursive write access to the complete `$PUBLIC` folder, files and subdirectories.", + "description": "This allows non-recursive write access to the `$PUBLIC` folder.", "type": "string", - "enum": [ - "fs:allow-public-write-recursive" - ] + "const": "fs:allow-public-write" }, { - "description": "fs:allow-resource-meta -> This allows non-recursive read access to metadata of the `$RESOURCE` folder, including file listing and statistics.", + "description": "This allows full recursive write access to the complete `$PUBLIC` folder, files and subdirectories.", "type": "string", - "enum": [ - "fs:allow-resource-meta" - ] + "const": "fs:allow-public-write-recursive" }, { - "description": "fs:allow-resource-meta-recursive -> This allows full recursive read access to metadata of the `$RESOURCE` folder, including file listing and statistics.", + "description": "This allows non-recursive read access to metadata of the `$RESOURCE` folder, including file listing and statistics.", "type": "string", - "enum": [ - "fs:allow-resource-meta-recursive" - ] + "const": "fs:allow-resource-meta" }, { - "description": "fs:allow-resource-read -> This allows non-recursive read access to the `$RESOURCE` folder.", + "description": "This allows full recursive read access to metadata of the `$RESOURCE` folder, including file listing and statistics.", "type": "string", - "enum": [ - "fs:allow-resource-read" - ] + "const": "fs:allow-resource-meta-recursive" }, { - "description": "fs:allow-resource-read-recursive -> This allows full recursive read access to the complete `$RESOURCE` folder, files and subdirectories.", + "description": "This allows non-recursive read access to the `$RESOURCE` folder.", "type": "string", - "enum": [ - "fs:allow-resource-read-recursive" - ] + "const": "fs:allow-resource-read" }, { - "description": "fs:allow-resource-write -> This allows non-recursive write access to the `$RESOURCE` folder.", + "description": "This allows full recursive read access to the complete `$RESOURCE` folder, files and subdirectories.", "type": "string", - "enum": [ - "fs:allow-resource-write" - ] + "const": "fs:allow-resource-read-recursive" }, { - "description": "fs:allow-resource-write-recursive -> This allows full recursive write access to the complete `$RESOURCE` folder, files and subdirectories.", + "description": "This allows non-recursive write access to the `$RESOURCE` folder.", "type": "string", - "enum": [ - "fs:allow-resource-write-recursive" - ] + "const": "fs:allow-resource-write" }, { - "description": "fs:allow-runtime-meta -> This allows non-recursive read access to metadata of the `$RUNTIME` folder, including file listing and statistics.", + "description": "This allows full recursive write access to the complete `$RESOURCE` folder, files and subdirectories.", "type": "string", - "enum": [ - "fs:allow-runtime-meta" - ] + "const": "fs:allow-resource-write-recursive" }, { - "description": "fs:allow-runtime-meta-recursive -> This allows full recursive read access to metadata of the `$RUNTIME` folder, including file listing and statistics.", + "description": "This allows non-recursive read access to metadata of the `$RUNTIME` folder, including file listing and statistics.", "type": "string", - "enum": [ - "fs:allow-runtime-meta-recursive" - ] + "const": "fs:allow-runtime-meta" }, { - "description": "fs:allow-runtime-read -> This allows non-recursive read access to the `$RUNTIME` folder.", + "description": "This allows full recursive read access to metadata of the `$RUNTIME` folder, including file listing and statistics.", "type": "string", - "enum": [ - "fs:allow-runtime-read" - ] + "const": "fs:allow-runtime-meta-recursive" }, { - "description": "fs:allow-runtime-read-recursive -> This allows full recursive read access to the complete `$RUNTIME` folder, files and subdirectories.", + "description": "This allows non-recursive read access to the `$RUNTIME` folder.", "type": "string", - "enum": [ - "fs:allow-runtime-read-recursive" - ] + "const": "fs:allow-runtime-read" }, { - "description": "fs:allow-runtime-write -> This allows non-recursive write access to the `$RUNTIME` folder.", + "description": "This allows full recursive read access to the complete `$RUNTIME` folder, files and subdirectories.", "type": "string", - "enum": [ - "fs:allow-runtime-write" - ] + "const": "fs:allow-runtime-read-recursive" }, { - "description": "fs:allow-runtime-write-recursive -> This allows full recursive write access to the complete `$RUNTIME` folder, files and subdirectories.", + "description": "This allows non-recursive write access to the `$RUNTIME` folder.", "type": "string", - "enum": [ - "fs:allow-runtime-write-recursive" - ] + "const": "fs:allow-runtime-write" }, { - "description": "fs:allow-temp-meta -> This allows non-recursive read access to metadata of the `$TEMP` folder, including file listing and statistics.", + "description": "This allows full recursive write access to the complete `$RUNTIME` folder, files and subdirectories.", "type": "string", - "enum": [ - "fs:allow-temp-meta" - ] + "const": "fs:allow-runtime-write-recursive" }, { - "description": "fs:allow-temp-meta-recursive -> This allows full recursive read access to metadata of the `$TEMP` folder, including file listing and statistics.", + "description": "This allows non-recursive read access to metadata of the `$TEMP` folder, including file listing and statistics.", "type": "string", - "enum": [ - "fs:allow-temp-meta-recursive" - ] + "const": "fs:allow-temp-meta" }, { - "description": "fs:allow-temp-read -> This allows non-recursive read access to the `$TEMP` folder.", + "description": "This allows full recursive read access to metadata of the `$TEMP` folder, including file listing and statistics.", "type": "string", - "enum": [ - "fs:allow-temp-read" - ] + "const": "fs:allow-temp-meta-recursive" }, { - "description": "fs:allow-temp-read-recursive -> This allows full recursive read access to the complete `$TEMP` folder, files and subdirectories.", + "description": "This allows non-recursive read access to the `$TEMP` folder.", "type": "string", - "enum": [ - "fs:allow-temp-read-recursive" - ] + "const": "fs:allow-temp-read" }, { - "description": "fs:allow-temp-write -> This allows non-recursive write access to the `$TEMP` folder.", + "description": "This allows full recursive read access to the complete `$TEMP` folder, files and subdirectories.", "type": "string", - "enum": [ - "fs:allow-temp-write" - ] + "const": "fs:allow-temp-read-recursive" }, { - "description": "fs:allow-temp-write-recursive -> This allows full recursive write access to the complete `$TEMP` folder, files and subdirectories.", + "description": "This allows non-recursive write access to the `$TEMP` folder.", "type": "string", - "enum": [ - "fs:allow-temp-write-recursive" - ] + "const": "fs:allow-temp-write" }, { - "description": "fs:allow-template-meta -> This allows non-recursive read access to metadata of the `$TEMPLATE` folder, including file listing and statistics.", + "description": "This allows full recursive write access to the complete `$TEMP` folder, files and subdirectories.", "type": "string", - "enum": [ - "fs:allow-template-meta" - ] + "const": "fs:allow-temp-write-recursive" }, { - "description": "fs:allow-template-meta-recursive -> This allows full recursive read access to metadata of the `$TEMPLATE` folder, including file listing and statistics.", + "description": "This allows non-recursive read access to metadata of the `$TEMPLATE` folder, including file listing and statistics.", "type": "string", - "enum": [ - "fs:allow-template-meta-recursive" - ] + "const": "fs:allow-template-meta" }, { - "description": "fs:allow-template-read -> This allows non-recursive read access to the `$TEMPLATE` folder.", + "description": "This allows full recursive read access to metadata of the `$TEMPLATE` folder, including file listing and statistics.", "type": "string", - "enum": [ - "fs:allow-template-read" - ] + "const": "fs:allow-template-meta-recursive" }, { - "description": "fs:allow-template-read-recursive -> This allows full recursive read access to the complete `$TEMPLATE` folder, files and subdirectories.", + "description": "This allows non-recursive read access to the `$TEMPLATE` folder.", "type": "string", - "enum": [ - "fs:allow-template-read-recursive" - ] + "const": "fs:allow-template-read" }, { - "description": "fs:allow-template-write -> This allows non-recursive write access to the `$TEMPLATE` folder.", + "description": "This allows full recursive read access to the complete `$TEMPLATE` folder, files and subdirectories.", "type": "string", - "enum": [ - "fs:allow-template-write" - ] + "const": "fs:allow-template-read-recursive" }, { - "description": "fs:allow-template-write-recursive -> This allows full recursive write access to the complete `$TEMPLATE` folder, files and subdirectories.", + "description": "This allows non-recursive write access to the `$TEMPLATE` folder.", "type": "string", - "enum": [ - "fs:allow-template-write-recursive" - ] + "const": "fs:allow-template-write" }, { - "description": "fs:allow-video-meta -> This allows non-recursive read access to metadata of the `$VIDEO` folder, including file listing and statistics.", + "description": "This allows full recursive write access to the complete `$TEMPLATE` folder, files and subdirectories.", "type": "string", - "enum": [ - "fs:allow-video-meta" - ] + "const": "fs:allow-template-write-recursive" }, { - "description": "fs:allow-video-meta-recursive -> This allows full recursive read access to metadata of the `$VIDEO` folder, including file listing and statistics.", + "description": "This allows non-recursive read access to metadata of the `$VIDEO` folder, including file listing and statistics.", "type": "string", - "enum": [ - "fs:allow-video-meta-recursive" - ] + "const": "fs:allow-video-meta" }, { - "description": "fs:allow-video-read -> This allows non-recursive read access to the `$VIDEO` folder.", + "description": "This allows full recursive read access to metadata of the `$VIDEO` folder, including file listing and statistics.", "type": "string", - "enum": [ - "fs:allow-video-read" - ] + "const": "fs:allow-video-meta-recursive" }, { - "description": "fs:allow-video-read-recursive -> This allows full recursive read access to the complete `$VIDEO` folder, files and subdirectories.", + "description": "This allows non-recursive read access to the `$VIDEO` folder.", "type": "string", - "enum": [ - "fs:allow-video-read-recursive" - ] + "const": "fs:allow-video-read" }, { - "description": "fs:allow-video-write -> This allows non-recursive write access to the `$VIDEO` folder.", + "description": "This allows full recursive read access to the complete `$VIDEO` folder, files and subdirectories.", "type": "string", - "enum": [ - "fs:allow-video-write" - ] + "const": "fs:allow-video-read-recursive" }, { - "description": "fs:allow-video-write-recursive -> This allows full recursive write access to the complete `$VIDEO` folder, files and subdirectories.", + "description": "This allows non-recursive write access to the `$VIDEO` folder.", "type": "string", - "enum": [ - "fs:allow-video-write-recursive" - ] + "const": "fs:allow-video-write" }, { - "description": "fs:deny-default -> This denies access to dangerous Tauri relevant files and folders by default.", + "description": "This allows full recursive write access to the complete `$VIDEO` folder, files and subdirectories.", "type": "string", - "enum": [ - "fs:deny-default" - ] + "const": "fs:allow-video-write-recursive" }, { - "description": "fs:default -> This set of permissions describes the what kind of\nfile system access the `fs` plugin has enabled or denied by default.\n\n#### Granted Permissions\n\nThis default permission set enables read access to the\napplication specific directories (AppConfig, AppData, AppLocalData, AppCache,\nAppLog) and all files and sub directories created in it.\nThe location of these directories depends on the operating system,\nwhere the application is run.\n\nIn general these directories need to be manually created\nby the application at runtime, before accessing files or folders\nin it is possible.\n\nTherefore, it is also allowed to create all of these folders via\nthe `mkdir` command.\n\n#### Denied Permissions\n\nThis default permission set prevents access to critical components\nof the Tauri application by default.\nOn Windows the webview data folder access is denied.\n\n", + "description": "This denies access to dangerous Tauri relevant files and folders by default.", "type": "string", - "enum": [ - "fs:default" - ] + "const": "fs:deny-default" }, { - "description": "fs:allow-copy-file -> Enables the copy_file command without any pre-configured scope.", + "description": "Enables the copy_file command without any pre-configured scope.", "type": "string", - "enum": [ - "fs:allow-copy-file" - ] + "const": "fs:allow-copy-file" }, { - "description": "fs:allow-create -> Enables the create command without any pre-configured scope.", + "description": "Enables the create command without any pre-configured scope.", "type": "string", - "enum": [ - "fs:allow-create" - ] + "const": "fs:allow-create" }, { - "description": "fs:allow-exists -> Enables the exists command without any pre-configured scope.", + "description": "Enables the exists command without any pre-configured scope.", "type": "string", - "enum": [ - "fs:allow-exists" - ] + "const": "fs:allow-exists" }, { - "description": "fs:allow-fstat -> Enables the fstat command without any pre-configured scope.", + "description": "Enables the fstat command without any pre-configured scope.", "type": "string", - "enum": [ - "fs:allow-fstat" - ] + "const": "fs:allow-fstat" }, { - "description": "fs:allow-ftruncate -> Enables the ftruncate command without any pre-configured scope.", + "description": "Enables the ftruncate command without any pre-configured scope.", "type": "string", - "enum": [ - "fs:allow-ftruncate" - ] + "const": "fs:allow-ftruncate" }, { - "description": "fs:allow-lstat -> Enables the lstat command without any pre-configured scope.", + "description": "Enables the lstat command without any pre-configured scope.", "type": "string", - "enum": [ - "fs:allow-lstat" - ] + "const": "fs:allow-lstat" }, { - "description": "fs:allow-mkdir -> Enables the mkdir command without any pre-configured scope.", + "description": "Enables the mkdir command without any pre-configured scope.", "type": "string", - "enum": [ - "fs:allow-mkdir" - ] + "const": "fs:allow-mkdir" }, { - "description": "fs:allow-open -> Enables the open command without any pre-configured scope.", + "description": "Enables the open command without any pre-configured scope.", "type": "string", - "enum": [ - "fs:allow-open" - ] + "const": "fs:allow-open" }, { - "description": "fs:allow-read -> Enables the read command without any pre-configured scope.", + "description": "Enables the read command without any pre-configured scope.", "type": "string", - "enum": [ - "fs:allow-read" - ] + "const": "fs:allow-read" }, { - "description": "fs:allow-read-dir -> Enables the read_dir command without any pre-configured scope.", + "description": "Enables the read_dir command without any pre-configured scope.", "type": "string", - "enum": [ - "fs:allow-read-dir" - ] + "const": "fs:allow-read-dir" }, { - "description": "fs:allow-read-file -> Enables the read_file command without any pre-configured scope.", + "description": "Enables the read_file command without any pre-configured scope.", "type": "string", - "enum": [ - "fs:allow-read-file" - ] + "const": "fs:allow-read-file" }, { - "description": "fs:allow-read-text-file -> Enables the read_text_file command without any pre-configured scope.", + "description": "Enables the read_text_file command without any pre-configured scope.", "type": "string", - "enum": [ - "fs:allow-read-text-file" - ] + "const": "fs:allow-read-text-file" }, { - "description": "fs:allow-read-text-file-lines -> Enables the read_text_file_lines command without any pre-configured scope.", + "description": "Enables the read_text_file_lines command without any pre-configured scope.", "type": "string", - "enum": [ - "fs:allow-read-text-file-lines" - ] + "const": "fs:allow-read-text-file-lines" }, { - "description": "fs:allow-read-text-file-lines-next -> Enables the read_text_file_lines_next command without any pre-configured scope.", + "description": "Enables the read_text_file_lines_next command without any pre-configured scope.", "type": "string", - "enum": [ - "fs:allow-read-text-file-lines-next" - ] + "const": "fs:allow-read-text-file-lines-next" }, { - "description": "fs:allow-remove -> Enables the remove command without any pre-configured scope.", + "description": "Enables the remove command without any pre-configured scope.", "type": "string", - "enum": [ - "fs:allow-remove" - ] + "const": "fs:allow-remove" }, { - "description": "fs:allow-rename -> Enables the rename command without any pre-configured scope.", + "description": "Enables the rename command without any pre-configured scope.", "type": "string", - "enum": [ - "fs:allow-rename" - ] + "const": "fs:allow-rename" }, { - "description": "fs:allow-seek -> Enables the seek command without any pre-configured scope.", + "description": "Enables the seek command without any pre-configured scope.", "type": "string", - "enum": [ - "fs:allow-seek" - ] + "const": "fs:allow-seek" }, { - "description": "fs:allow-stat -> Enables the stat command without any pre-configured scope.", + "description": "Enables the stat command without any pre-configured scope.", "type": "string", - "enum": [ - "fs:allow-stat" - ] + "const": "fs:allow-stat" }, { - "description": "fs:allow-truncate -> Enables the truncate command without any pre-configured scope.", + "description": "Enables the truncate command without any pre-configured scope.", "type": "string", - "enum": [ - "fs:allow-truncate" - ] + "const": "fs:allow-truncate" }, { - "description": "fs:allow-unwatch -> Enables the unwatch command without any pre-configured scope.", + "description": "Enables the unwatch command without any pre-configured scope.", "type": "string", - "enum": [ - "fs:allow-unwatch" - ] + "const": "fs:allow-unwatch" }, { - "description": "fs:allow-watch -> Enables the watch command without any pre-configured scope.", + "description": "Enables the watch command without any pre-configured scope.", "type": "string", - "enum": [ - "fs:allow-watch" - ] + "const": "fs:allow-watch" }, { - "description": "fs:allow-write -> Enables the write command without any pre-configured scope.", + "description": "Enables the write command without any pre-configured scope.", "type": "string", - "enum": [ - "fs:allow-write" - ] + "const": "fs:allow-write" }, { - "description": "fs:allow-write-file -> Enables the write_file command without any pre-configured scope.", + "description": "Enables the write_file command without any pre-configured scope.", "type": "string", - "enum": [ - "fs:allow-write-file" - ] + "const": "fs:allow-write-file" }, { - "description": "fs:allow-write-text-file -> Enables the write_text_file command without any pre-configured scope.", + "description": "Enables the write_text_file command without any pre-configured scope.", "type": "string", - "enum": [ - "fs:allow-write-text-file" - ] + "const": "fs:allow-write-text-file" }, { - "description": "fs:create-app-specific-dirs -> This permissions allows to create the application specific directories.\n", + "description": "This permissions allows to create the application specific directories.\n", "type": "string", - "enum": [ - "fs:create-app-specific-dirs" - ] + "const": "fs:create-app-specific-dirs" }, { - "description": "fs:deny-copy-file -> Denies the copy_file command without any pre-configured scope.", + "description": "Denies the copy_file command without any pre-configured scope.", "type": "string", - "enum": [ - "fs:deny-copy-file" - ] + "const": "fs:deny-copy-file" }, { - "description": "fs:deny-create -> Denies the create command without any pre-configured scope.", + "description": "Denies the create command without any pre-configured scope.", "type": "string", - "enum": [ - "fs:deny-create" - ] + "const": "fs:deny-create" }, { - "description": "fs:deny-exists -> Denies the exists command without any pre-configured scope.", + "description": "Denies the exists command without any pre-configured scope.", "type": "string", - "enum": [ - "fs:deny-exists" - ] + "const": "fs:deny-exists" }, { - "description": "fs:deny-fstat -> Denies the fstat command without any pre-configured scope.", + "description": "Denies the fstat command without any pre-configured scope.", "type": "string", - "enum": [ - "fs:deny-fstat" - ] + "const": "fs:deny-fstat" }, { - "description": "fs:deny-ftruncate -> Denies the ftruncate command without any pre-configured scope.", + "description": "Denies the ftruncate command without any pre-configured scope.", "type": "string", - "enum": [ - "fs:deny-ftruncate" - ] + "const": "fs:deny-ftruncate" }, { - "description": "fs:deny-lstat -> Denies the lstat command without any pre-configured scope.", + "description": "Denies the lstat command without any pre-configured scope.", "type": "string", - "enum": [ - "fs:deny-lstat" - ] + "const": "fs:deny-lstat" }, { - "description": "fs:deny-mkdir -> Denies the mkdir command without any pre-configured scope.", + "description": "Denies the mkdir command without any pre-configured scope.", "type": "string", - "enum": [ - "fs:deny-mkdir" - ] + "const": "fs:deny-mkdir" }, { - "description": "fs:deny-open -> Denies the open command without any pre-configured scope.", + "description": "Denies the open command without any pre-configured scope.", "type": "string", - "enum": [ - "fs:deny-open" - ] + "const": "fs:deny-open" }, { - "description": "fs:deny-read -> Denies the read command without any pre-configured scope.", + "description": "Denies the read command without any pre-configured scope.", "type": "string", - "enum": [ - "fs:deny-read" - ] + "const": "fs:deny-read" }, { - "description": "fs:deny-read-dir -> Denies the read_dir command without any pre-configured scope.", + "description": "Denies the read_dir command without any pre-configured scope.", "type": "string", - "enum": [ - "fs:deny-read-dir" - ] + "const": "fs:deny-read-dir" }, { - "description": "fs:deny-read-file -> Denies the read_file command without any pre-configured scope.", + "description": "Denies the read_file command without any pre-configured scope.", "type": "string", - "enum": [ - "fs:deny-read-file" - ] + "const": "fs:deny-read-file" }, { - "description": "fs:deny-read-text-file -> Denies the read_text_file command without any pre-configured scope.", + "description": "Denies the read_text_file command without any pre-configured scope.", "type": "string", - "enum": [ - "fs:deny-read-text-file" - ] + "const": "fs:deny-read-text-file" }, { - "description": "fs:deny-read-text-file-lines -> Denies the read_text_file_lines command without any pre-configured scope.", + "description": "Denies the read_text_file_lines command without any pre-configured scope.", "type": "string", - "enum": [ - "fs:deny-read-text-file-lines" - ] + "const": "fs:deny-read-text-file-lines" }, { - "description": "fs:deny-read-text-file-lines-next -> Denies the read_text_file_lines_next command without any pre-configured scope.", + "description": "Denies the read_text_file_lines_next command without any pre-configured scope.", "type": "string", - "enum": [ - "fs:deny-read-text-file-lines-next" - ] + "const": "fs:deny-read-text-file-lines-next" }, { - "description": "fs:deny-remove -> Denies the remove command without any pre-configured scope.", + "description": "Denies the remove command without any pre-configured scope.", "type": "string", - "enum": [ - "fs:deny-remove" - ] + "const": "fs:deny-remove" }, { - "description": "fs:deny-rename -> Denies the rename command without any pre-configured scope.", + "description": "Denies the rename command without any pre-configured scope.", "type": "string", - "enum": [ - "fs:deny-rename" - ] + "const": "fs:deny-rename" }, { - "description": "fs:deny-seek -> Denies the seek command without any pre-configured scope.", + "description": "Denies the seek command without any pre-configured scope.", "type": "string", - "enum": [ - "fs:deny-seek" - ] + "const": "fs:deny-seek" }, { - "description": "fs:deny-stat -> Denies the stat command without any pre-configured scope.", + "description": "Denies the stat command without any pre-configured scope.", "type": "string", - "enum": [ - "fs:deny-stat" - ] + "const": "fs:deny-stat" }, { - "description": "fs:deny-truncate -> Denies the truncate command without any pre-configured scope.", + "description": "Denies the truncate command without any pre-configured scope.", "type": "string", - "enum": [ - "fs:deny-truncate" - ] + "const": "fs:deny-truncate" }, { - "description": "fs:deny-unwatch -> Denies the unwatch command without any pre-configured scope.", + "description": "Denies the unwatch command without any pre-configured scope.", "type": "string", - "enum": [ - "fs:deny-unwatch" - ] + "const": "fs:deny-unwatch" }, { - "description": "fs:deny-watch -> Denies the watch command without any pre-configured scope.", + "description": "Denies the watch command without any pre-configured scope.", "type": "string", - "enum": [ - "fs:deny-watch" - ] + "const": "fs:deny-watch" }, { - "description": "fs:deny-webview-data-linux -> This denies read access to the\n`$APPLOCALDATA` folder on linux as the webview data and configuration values are stored here.\nAllowing access can lead to sensitive information disclosure and should be well considered.", + "description": "This denies read access to the\n`$APPLOCALDATA` folder on linux as the webview data and configuration values are stored here.\nAllowing access can lead to sensitive information disclosure and should be well considered.", "type": "string", - "enum": [ - "fs:deny-webview-data-linux" - ] + "const": "fs:deny-webview-data-linux" }, { - "description": "fs:deny-webview-data-windows -> This denies read access to the\n`$APPLOCALDATA/EBWebView` folder on windows as the webview data and configuration values are stored here.\nAllowing access can lead to sensitive information disclosure and should be well considered.", + "description": "This denies read access to the\n`$APPLOCALDATA/EBWebView` folder on windows as the webview data and configuration values are stored here.\nAllowing access can lead to sensitive information disclosure and should be well considered.", "type": "string", - "enum": [ - "fs:deny-webview-data-windows" - ] + "const": "fs:deny-webview-data-windows" }, { - "description": "fs:deny-write -> Denies the write command without any pre-configured scope.", + "description": "Denies the write command without any pre-configured scope.", "type": "string", - "enum": [ - "fs:deny-write" - ] + "const": "fs:deny-write" }, { - "description": "fs:deny-write-file -> Denies the write_file command without any pre-configured scope.", + "description": "Denies the write_file command without any pre-configured scope.", "type": "string", - "enum": [ - "fs:deny-write-file" - ] + "const": "fs:deny-write-file" }, { - "description": "fs:deny-write-text-file -> Denies the write_text_file command without any pre-configured scope.", + "description": "Denies the write_text_file command without any pre-configured scope.", "type": "string", - "enum": [ - "fs:deny-write-text-file" - ] + "const": "fs:deny-write-text-file" }, { - "description": "fs:read-all -> This enables all read related commands without any pre-configured accessible paths.", + "description": "This enables all read related commands without any pre-configured accessible paths.", "type": "string", - "enum": [ - "fs:read-all" - ] + "const": "fs:read-all" }, { - "description": "fs:read-app-specific-dirs-recursive -> This permission allows recursive read functionality on the application\nspecific base directories. \n", + "description": "This permission allows recursive read functionality on the application\nspecific base directories. \n", "type": "string", - "enum": [ - "fs:read-app-specific-dirs-recursive" - ] + "const": "fs:read-app-specific-dirs-recursive" }, { - "description": "fs:read-dirs -> This enables directory read and file metadata related commands without any pre-configured accessible paths.", + "description": "This enables directory read and file metadata related commands without any pre-configured accessible paths.", "type": "string", - "enum": [ - "fs:read-dirs" - ] + "const": "fs:read-dirs" }, { - "description": "fs:read-files -> This enables file read related commands without any pre-configured accessible paths.", + "description": "This enables file read related commands without any pre-configured accessible paths.", "type": "string", - "enum": [ - "fs:read-files" - ] + "const": "fs:read-files" }, { - "description": "fs:read-meta -> This enables all index or metadata related commands without any pre-configured accessible paths.", + "description": "This enables all index or metadata related commands without any pre-configured accessible paths.", "type": "string", - "enum": [ - "fs:read-meta" - ] + "const": "fs:read-meta" }, { - "description": "fs:scope -> An empty permission you can use to modify the global scope.", + "description": "An empty permission you can use to modify the global scope.", "type": "string", - "enum": [ - "fs:scope" - ] + "const": "fs:scope" }, { - "description": "fs:scope-app -> This scope permits access to all files and list content of top level directories in the `$APP`folder.", + "description": "This scope permits access to all files and list content of top level directories in the application folders.", "type": "string", - "enum": [ - "fs:scope-app" - ] + "const": "fs:scope-app" }, { - "description": "fs:scope-app-index -> This scope permits to list all files and folders in the `$APP`folder.", + "description": "This scope permits to list all files and folders in the application directories.", "type": "string", - "enum": [ - "fs:scope-app-index" - ] + "const": "fs:scope-app-index" }, { - "description": "fs:scope-app-recursive -> This scope permits recursive access to the complete `$APP` folder, including sub directories and files.", + "description": "This scope permits recursive access to the complete application folders, including sub directories and files.", "type": "string", - "enum": [ - "fs:scope-app-recursive" - ] + "const": "fs:scope-app-recursive" }, { - "description": "fs:scope-appcache -> This scope permits access to all files and list content of top level directories in the `$APPCACHE`folder.", + "description": "This scope permits access to all files and list content of top level directories in the `$APPCACHE` folder.", "type": "string", - "enum": [ - "fs:scope-appcache" - ] + "const": "fs:scope-appcache" }, { - "description": "fs:scope-appcache-index -> This scope permits to list all files and folders in the `$APPCACHE`folder.", + "description": "This scope permits to list all files and folders in the `$APPCACHE`folder.", "type": "string", - "enum": [ - "fs:scope-appcache-index" - ] + "const": "fs:scope-appcache-index" }, { - "description": "fs:scope-appcache-recursive -> This scope permits recursive access to the complete `$APPCACHE` folder, including sub directories and files.", + "description": "This scope permits recursive access to the complete `$APPCACHE` folder, including sub directories and files.", "type": "string", - "enum": [ - "fs:scope-appcache-recursive" - ] + "const": "fs:scope-appcache-recursive" }, { - "description": "fs:scope-appconfig -> This scope permits access to all files and list content of top level directories in the `$APPCONFIG`folder.", + "description": "This scope permits access to all files and list content of top level directories in the `$APPCONFIG` folder.", "type": "string", - "enum": [ - "fs:scope-appconfig" - ] + "const": "fs:scope-appconfig" }, { - "description": "fs:scope-appconfig-index -> This scope permits to list all files and folders in the `$APPCONFIG`folder.", + "description": "This scope permits to list all files and folders in the `$APPCONFIG`folder.", "type": "string", - "enum": [ - "fs:scope-appconfig-index" - ] + "const": "fs:scope-appconfig-index" }, { - "description": "fs:scope-appconfig-recursive -> This scope permits recursive access to the complete `$APPCONFIG` folder, including sub directories and files.", + "description": "This scope permits recursive access to the complete `$APPCONFIG` folder, including sub directories and files.", "type": "string", - "enum": [ - "fs:scope-appconfig-recursive" - ] + "const": "fs:scope-appconfig-recursive" }, { - "description": "fs:scope-appdata -> This scope permits access to all files and list content of top level directories in the `$APPDATA`folder.", + "description": "This scope permits access to all files and list content of top level directories in the `$APPDATA` folder.", "type": "string", - "enum": [ - "fs:scope-appdata" - ] + "const": "fs:scope-appdata" }, { - "description": "fs:scope-appdata-index -> This scope permits to list all files and folders in the `$APPDATA`folder.", + "description": "This scope permits to list all files and folders in the `$APPDATA`folder.", "type": "string", - "enum": [ - "fs:scope-appdata-index" - ] + "const": "fs:scope-appdata-index" }, { - "description": "fs:scope-appdata-recursive -> This scope permits recursive access to the complete `$APPDATA` folder, including sub directories and files.", + "description": "This scope permits recursive access to the complete `$APPDATA` folder, including sub directories and files.", "type": "string", - "enum": [ - "fs:scope-appdata-recursive" - ] + "const": "fs:scope-appdata-recursive" }, { - "description": "fs:scope-applocaldata -> This scope permits access to all files and list content of top level directories in the `$APPLOCALDATA`folder.", + "description": "This scope permits access to all files and list content of top level directories in the `$APPLOCALDATA` folder.", "type": "string", - "enum": [ - "fs:scope-applocaldata" - ] + "const": "fs:scope-applocaldata" }, { - "description": "fs:scope-applocaldata-index -> This scope permits to list all files and folders in the `$APPLOCALDATA`folder.", + "description": "This scope permits to list all files and folders in the `$APPLOCALDATA`folder.", "type": "string", - "enum": [ - "fs:scope-applocaldata-index" - ] + "const": "fs:scope-applocaldata-index" }, { - "description": "fs:scope-applocaldata-recursive -> This scope permits recursive access to the complete `$APPLOCALDATA` folder, including sub directories and files.", + "description": "This scope permits recursive access to the complete `$APPLOCALDATA` folder, including sub directories and files.", "type": "string", - "enum": [ - "fs:scope-applocaldata-recursive" - ] + "const": "fs:scope-applocaldata-recursive" }, { - "description": "fs:scope-applog -> This scope permits access to all files and list content of top level directories in the `$APPLOG`folder.", + "description": "This scope permits access to all files and list content of top level directories in the `$APPLOG` folder.", "type": "string", - "enum": [ - "fs:scope-applog" - ] + "const": "fs:scope-applog" }, { - "description": "fs:scope-applog-index -> This scope permits to list all files and folders in the `$APPLOG`folder.", + "description": "This scope permits to list all files and folders in the `$APPLOG`folder.", "type": "string", - "enum": [ - "fs:scope-applog-index" - ] + "const": "fs:scope-applog-index" }, { - "description": "fs:scope-applog-recursive -> This scope permits recursive access to the complete `$APPLOG` folder, including sub directories and files.", + "description": "This scope permits recursive access to the complete `$APPLOG` folder, including sub directories and files.", "type": "string", - "enum": [ - "fs:scope-applog-recursive" - ] + "const": "fs:scope-applog-recursive" }, { - "description": "fs:scope-audio -> This scope permits access to all files and list content of top level directories in the `$AUDIO`folder.", + "description": "This scope permits access to all files and list content of top level directories in the `$AUDIO` folder.", "type": "string", - "enum": [ - "fs:scope-audio" - ] + "const": "fs:scope-audio" }, { - "description": "fs:scope-audio-index -> This scope permits to list all files and folders in the `$AUDIO`folder.", + "description": "This scope permits to list all files and folders in the `$AUDIO`folder.", "type": "string", - "enum": [ - "fs:scope-audio-index" - ] + "const": "fs:scope-audio-index" }, { - "description": "fs:scope-audio-recursive -> This scope permits recursive access to the complete `$AUDIO` folder, including sub directories and files.", + "description": "This scope permits recursive access to the complete `$AUDIO` folder, including sub directories and files.", "type": "string", - "enum": [ - "fs:scope-audio-recursive" - ] + "const": "fs:scope-audio-recursive" }, { - "description": "fs:scope-cache -> This scope permits access to all files and list content of top level directories in the `$CACHE`folder.", + "description": "This scope permits access to all files and list content of top level directories in the `$CACHE` folder.", "type": "string", - "enum": [ - "fs:scope-cache" - ] + "const": "fs:scope-cache" }, { - "description": "fs:scope-cache-index -> This scope permits to list all files and folders in the `$CACHE`folder.", + "description": "This scope permits to list all files and folders in the `$CACHE`folder.", "type": "string", - "enum": [ - "fs:scope-cache-index" - ] + "const": "fs:scope-cache-index" }, { - "description": "fs:scope-cache-recursive -> This scope permits recursive access to the complete `$CACHE` folder, including sub directories and files.", + "description": "This scope permits recursive access to the complete `$CACHE` folder, including sub directories and files.", "type": "string", - "enum": [ - "fs:scope-cache-recursive" - ] + "const": "fs:scope-cache-recursive" }, { - "description": "fs:scope-config -> This scope permits access to all files and list content of top level directories in the `$CONFIG`folder.", + "description": "This scope permits access to all files and list content of top level directories in the `$CONFIG` folder.", "type": "string", - "enum": [ - "fs:scope-config" - ] + "const": "fs:scope-config" }, { - "description": "fs:scope-config-index -> This scope permits to list all files and folders in the `$CONFIG`folder.", + "description": "This scope permits to list all files and folders in the `$CONFIG`folder.", "type": "string", - "enum": [ - "fs:scope-config-index" - ] + "const": "fs:scope-config-index" }, { - "description": "fs:scope-config-recursive -> This scope permits recursive access to the complete `$CONFIG` folder, including sub directories and files.", + "description": "This scope permits recursive access to the complete `$CONFIG` folder, including sub directories and files.", "type": "string", - "enum": [ - "fs:scope-config-recursive" - ] + "const": "fs:scope-config-recursive" }, { - "description": "fs:scope-data -> This scope permits access to all files and list content of top level directories in the `$DATA`folder.", + "description": "This scope permits access to all files and list content of top level directories in the `$DATA` folder.", "type": "string", - "enum": [ - "fs:scope-data" - ] + "const": "fs:scope-data" }, { - "description": "fs:scope-data-index -> This scope permits to list all files and folders in the `$DATA`folder.", + "description": "This scope permits to list all files and folders in the `$DATA`folder.", "type": "string", - "enum": [ - "fs:scope-data-index" - ] + "const": "fs:scope-data-index" }, { - "description": "fs:scope-data-recursive -> This scope permits recursive access to the complete `$DATA` folder, including sub directories and files.", + "description": "This scope permits recursive access to the complete `$DATA` folder, including sub directories and files.", "type": "string", - "enum": [ - "fs:scope-data-recursive" - ] + "const": "fs:scope-data-recursive" }, { - "description": "fs:scope-desktop -> This scope permits access to all files and list content of top level directories in the `$DESKTOP`folder.", + "description": "This scope permits access to all files and list content of top level directories in the `$DESKTOP` folder.", "type": "string", - "enum": [ - "fs:scope-desktop" - ] + "const": "fs:scope-desktop" }, { - "description": "fs:scope-desktop-index -> This scope permits to list all files and folders in the `$DESKTOP`folder.", + "description": "This scope permits to list all files and folders in the `$DESKTOP`folder.", "type": "string", - "enum": [ - "fs:scope-desktop-index" - ] + "const": "fs:scope-desktop-index" }, { - "description": "fs:scope-desktop-recursive -> This scope permits recursive access to the complete `$DESKTOP` folder, including sub directories and files.", + "description": "This scope permits recursive access to the complete `$DESKTOP` folder, including sub directories and files.", "type": "string", - "enum": [ - "fs:scope-desktop-recursive" - ] + "const": "fs:scope-desktop-recursive" }, { - "description": "fs:scope-document -> This scope permits access to all files and list content of top level directories in the `$DOCUMENT`folder.", + "description": "This scope permits access to all files and list content of top level directories in the `$DOCUMENT` folder.", "type": "string", - "enum": [ - "fs:scope-document" - ] + "const": "fs:scope-document" }, { - "description": "fs:scope-document-index -> This scope permits to list all files and folders in the `$DOCUMENT`folder.", + "description": "This scope permits to list all files and folders in the `$DOCUMENT`folder.", "type": "string", - "enum": [ - "fs:scope-document-index" - ] + "const": "fs:scope-document-index" }, { - "description": "fs:scope-document-recursive -> This scope permits recursive access to the complete `$DOCUMENT` folder, including sub directories and files.", + "description": "This scope permits recursive access to the complete `$DOCUMENT` folder, including sub directories and files.", "type": "string", - "enum": [ - "fs:scope-document-recursive" - ] + "const": "fs:scope-document-recursive" }, { - "description": "fs:scope-download -> This scope permits access to all files and list content of top level directories in the `$DOWNLOAD`folder.", + "description": "This scope permits access to all files and list content of top level directories in the `$DOWNLOAD` folder.", "type": "string", - "enum": [ - "fs:scope-download" - ] + "const": "fs:scope-download" }, { - "description": "fs:scope-download-index -> This scope permits to list all files and folders in the `$DOWNLOAD`folder.", + "description": "This scope permits to list all files and folders in the `$DOWNLOAD`folder.", "type": "string", - "enum": [ - "fs:scope-download-index" - ] + "const": "fs:scope-download-index" }, { - "description": "fs:scope-download-recursive -> This scope permits recursive access to the complete `$DOWNLOAD` folder, including sub directories and files.", + "description": "This scope permits recursive access to the complete `$DOWNLOAD` folder, including sub directories and files.", "type": "string", - "enum": [ - "fs:scope-download-recursive" - ] + "const": "fs:scope-download-recursive" }, { - "description": "fs:scope-exe -> This scope permits access to all files and list content of top level directories in the `$EXE`folder.", + "description": "This scope permits access to all files and list content of top level directories in the `$EXE` folder.", "type": "string", - "enum": [ - "fs:scope-exe" - ] + "const": "fs:scope-exe" }, { - "description": "fs:scope-exe-index -> This scope permits to list all files and folders in the `$EXE`folder.", + "description": "This scope permits to list all files and folders in the `$EXE`folder.", "type": "string", - "enum": [ - "fs:scope-exe-index" - ] + "const": "fs:scope-exe-index" }, { - "description": "fs:scope-exe-recursive -> This scope permits recursive access to the complete `$EXE` folder, including sub directories and files.", + "description": "This scope permits recursive access to the complete `$EXE` folder, including sub directories and files.", "type": "string", - "enum": [ - "fs:scope-exe-recursive" - ] + "const": "fs:scope-exe-recursive" }, { - "description": "fs:scope-font -> This scope permits access to all files and list content of top level directories in the `$FONT`folder.", + "description": "This scope permits access to all files and list content of top level directories in the `$FONT` folder.", "type": "string", - "enum": [ - "fs:scope-font" - ] + "const": "fs:scope-font" }, { - "description": "fs:scope-font-index -> This scope permits to list all files and folders in the `$FONT`folder.", + "description": "This scope permits to list all files and folders in the `$FONT`folder.", "type": "string", - "enum": [ - "fs:scope-font-index" - ] + "const": "fs:scope-font-index" }, { - "description": "fs:scope-font-recursive -> This scope permits recursive access to the complete `$FONT` folder, including sub directories and files.", + "description": "This scope permits recursive access to the complete `$FONT` folder, including sub directories and files.", "type": "string", - "enum": [ - "fs:scope-font-recursive" - ] + "const": "fs:scope-font-recursive" }, { - "description": "fs:scope-home -> This scope permits access to all files and list content of top level directories in the `$HOME`folder.", + "description": "This scope permits access to all files and list content of top level directories in the `$HOME` folder.", "type": "string", - "enum": [ - "fs:scope-home" - ] + "const": "fs:scope-home" }, { - "description": "fs:scope-home-index -> This scope permits to list all files and folders in the `$HOME`folder.", + "description": "This scope permits to list all files and folders in the `$HOME`folder.", "type": "string", - "enum": [ - "fs:scope-home-index" - ] + "const": "fs:scope-home-index" }, { - "description": "fs:scope-home-recursive -> This scope permits recursive access to the complete `$HOME` folder, including sub directories and files.", + "description": "This scope permits recursive access to the complete `$HOME` folder, including sub directories and files.", "type": "string", - "enum": [ - "fs:scope-home-recursive" - ] + "const": "fs:scope-home-recursive" }, { - "description": "fs:scope-localdata -> This scope permits access to all files and list content of top level directories in the `$LOCALDATA`folder.", + "description": "This scope permits access to all files and list content of top level directories in the `$LOCALDATA` folder.", "type": "string", - "enum": [ - "fs:scope-localdata" - ] + "const": "fs:scope-localdata" }, { - "description": "fs:scope-localdata-index -> This scope permits to list all files and folders in the `$LOCALDATA`folder.", + "description": "This scope permits to list all files and folders in the `$LOCALDATA`folder.", "type": "string", - "enum": [ - "fs:scope-localdata-index" - ] + "const": "fs:scope-localdata-index" }, { - "description": "fs:scope-localdata-recursive -> This scope permits recursive access to the complete `$LOCALDATA` folder, including sub directories and files.", + "description": "This scope permits recursive access to the complete `$LOCALDATA` folder, including sub directories and files.", "type": "string", - "enum": [ - "fs:scope-localdata-recursive" - ] + "const": "fs:scope-localdata-recursive" }, { - "description": "fs:scope-log -> This scope permits access to all files and list content of top level directories in the `$LOG`folder.", + "description": "This scope permits access to all files and list content of top level directories in the `$LOG` folder.", "type": "string", - "enum": [ - "fs:scope-log" - ] + "const": "fs:scope-log" }, { - "description": "fs:scope-log-index -> This scope permits to list all files and folders in the `$LOG`folder.", + "description": "This scope permits to list all files and folders in the `$LOG`folder.", "type": "string", - "enum": [ - "fs:scope-log-index" - ] + "const": "fs:scope-log-index" }, { - "description": "fs:scope-log-recursive -> This scope permits recursive access to the complete `$LOG` folder, including sub directories and files.", + "description": "This scope permits recursive access to the complete `$LOG` folder, including sub directories and files.", "type": "string", - "enum": [ - "fs:scope-log-recursive" - ] + "const": "fs:scope-log-recursive" }, { - "description": "fs:scope-picture -> This scope permits access to all files and list content of top level directories in the `$PICTURE`folder.", + "description": "This scope permits access to all files and list content of top level directories in the `$PICTURE` folder.", "type": "string", - "enum": [ - "fs:scope-picture" - ] + "const": "fs:scope-picture" }, { - "description": "fs:scope-picture-index -> This scope permits to list all files and folders in the `$PICTURE`folder.", + "description": "This scope permits to list all files and folders in the `$PICTURE`folder.", "type": "string", - "enum": [ - "fs:scope-picture-index" - ] + "const": "fs:scope-picture-index" }, { - "description": "fs:scope-picture-recursive -> This scope permits recursive access to the complete `$PICTURE` folder, including sub directories and files.", + "description": "This scope permits recursive access to the complete `$PICTURE` folder, including sub directories and files.", "type": "string", - "enum": [ - "fs:scope-picture-recursive" - ] + "const": "fs:scope-picture-recursive" }, { - "description": "fs:scope-public -> This scope permits access to all files and list content of top level directories in the `$PUBLIC`folder.", + "description": "This scope permits access to all files and list content of top level directories in the `$PUBLIC` folder.", "type": "string", - "enum": [ - "fs:scope-public" - ] + "const": "fs:scope-public" }, { - "description": "fs:scope-public-index -> This scope permits to list all files and folders in the `$PUBLIC`folder.", + "description": "This scope permits to list all files and folders in the `$PUBLIC`folder.", "type": "string", - "enum": [ - "fs:scope-public-index" - ] + "const": "fs:scope-public-index" }, { - "description": "fs:scope-public-recursive -> This scope permits recursive access to the complete `$PUBLIC` folder, including sub directories and files.", + "description": "This scope permits recursive access to the complete `$PUBLIC` folder, including sub directories and files.", "type": "string", - "enum": [ - "fs:scope-public-recursive" - ] + "const": "fs:scope-public-recursive" }, { - "description": "fs:scope-resource -> This scope permits access to all files and list content of top level directories in the `$RESOURCE`folder.", + "description": "This scope permits access to all files and list content of top level directories in the `$RESOURCE` folder.", "type": "string", - "enum": [ - "fs:scope-resource" - ] + "const": "fs:scope-resource" }, { - "description": "fs:scope-resource-index -> This scope permits to list all files and folders in the `$RESOURCE`folder.", + "description": "This scope permits to list all files and folders in the `$RESOURCE`folder.", "type": "string", - "enum": [ - "fs:scope-resource-index" - ] + "const": "fs:scope-resource-index" }, { - "description": "fs:scope-resource-recursive -> This scope permits recursive access to the complete `$RESOURCE` folder, including sub directories and files.", + "description": "This scope permits recursive access to the complete `$RESOURCE` folder, including sub directories and files.", "type": "string", - "enum": [ - "fs:scope-resource-recursive" - ] + "const": "fs:scope-resource-recursive" }, { - "description": "fs:scope-runtime -> This scope permits access to all files and list content of top level directories in the `$RUNTIME`folder.", + "description": "This scope permits access to all files and list content of top level directories in the `$RUNTIME` folder.", "type": "string", - "enum": [ - "fs:scope-runtime" - ] + "const": "fs:scope-runtime" }, { - "description": "fs:scope-runtime-index -> This scope permits to list all files and folders in the `$RUNTIME`folder.", + "description": "This scope permits to list all files and folders in the `$RUNTIME`folder.", "type": "string", - "enum": [ - "fs:scope-runtime-index" - ] + "const": "fs:scope-runtime-index" }, { - "description": "fs:scope-runtime-recursive -> This scope permits recursive access to the complete `$RUNTIME` folder, including sub directories and files.", + "description": "This scope permits recursive access to the complete `$RUNTIME` folder, including sub directories and files.", "type": "string", - "enum": [ - "fs:scope-runtime-recursive" - ] + "const": "fs:scope-runtime-recursive" }, { - "description": "fs:scope-temp -> This scope permits access to all files and list content of top level directories in the `$TEMP`folder.", + "description": "This scope permits access to all files and list content of top level directories in the `$TEMP` folder.", "type": "string", - "enum": [ - "fs:scope-temp" - ] + "const": "fs:scope-temp" }, { - "description": "fs:scope-temp-index -> This scope permits to list all files and folders in the `$TEMP`folder.", + "description": "This scope permits to list all files and folders in the `$TEMP`folder.", "type": "string", - "enum": [ - "fs:scope-temp-index" - ] + "const": "fs:scope-temp-index" }, { - "description": "fs:scope-temp-recursive -> This scope permits recursive access to the complete `$TEMP` folder, including sub directories and files.", + "description": "This scope permits recursive access to the complete `$TEMP` folder, including sub directories and files.", "type": "string", - "enum": [ - "fs:scope-temp-recursive" - ] + "const": "fs:scope-temp-recursive" }, { - "description": "fs:scope-template -> This scope permits access to all files and list content of top level directories in the `$TEMPLATE`folder.", + "description": "This scope permits access to all files and list content of top level directories in the `$TEMPLATE` folder.", "type": "string", - "enum": [ - "fs:scope-template" - ] + "const": "fs:scope-template" }, { - "description": "fs:scope-template-index -> This scope permits to list all files and folders in the `$TEMPLATE`folder.", + "description": "This scope permits to list all files and folders in the `$TEMPLATE`folder.", "type": "string", - "enum": [ - "fs:scope-template-index" - ] + "const": "fs:scope-template-index" }, { - "description": "fs:scope-template-recursive -> This scope permits recursive access to the complete `$TEMPLATE` folder, including sub directories and files.", + "description": "This scope permits recursive access to the complete `$TEMPLATE` folder, including sub directories and files.", "type": "string", - "enum": [ - "fs:scope-template-recursive" - ] + "const": "fs:scope-template-recursive" }, { - "description": "fs:scope-video -> This scope permits access to all files and list content of top level directories in the `$VIDEO`folder.", + "description": "This scope permits access to all files and list content of top level directories in the `$VIDEO` folder.", "type": "string", - "enum": [ - "fs:scope-video" - ] + "const": "fs:scope-video" }, { - "description": "fs:scope-video-index -> This scope permits to list all files and folders in the `$VIDEO`folder.", + "description": "This scope permits to list all files and folders in the `$VIDEO`folder.", "type": "string", - "enum": [ - "fs:scope-video-index" - ] + "const": "fs:scope-video-index" }, { - "description": "fs:scope-video-recursive -> This scope permits recursive access to the complete `$VIDEO` folder, including sub directories and files.", + "description": "This scope permits recursive access to the complete `$VIDEO` folder, including sub directories and files.", "type": "string", - "enum": [ - "fs:scope-video-recursive" - ] + "const": "fs:scope-video-recursive" }, { - "description": "fs:write-all -> This enables all write related commands without any pre-configured accessible paths.", + "description": "This enables all write related commands without any pre-configured accessible paths.", "type": "string", - "enum": [ - "fs:write-all" - ] + "const": "fs:write-all" }, { - "description": "fs:write-files -> This enables all file write related commands without any pre-configured accessible paths.", + "description": "This enables all file write related commands without any pre-configured accessible paths.", "type": "string", - "enum": [ - "fs:write-files" - ] + "const": "fs:write-files" }, { - "description": "global-shortcut:default -> No features are enabled by default, as we believe\nthe shortcuts can be inherently dangerous and it is\napplication specific if specific shortcuts should be\nregistered or unregistered.\n", + "description": "No features are enabled by default, as we believe\nthe shortcuts can be inherently dangerous and it is\napplication specific if specific shortcuts should be\nregistered or unregistered.\n", "type": "string", - "enum": [ - "global-shortcut:default" - ] + "const": "global-shortcut:default" }, { - "description": "global-shortcut:allow-is-registered -> Enables the is_registered command without any pre-configured scope.", + "description": "Enables the is_registered command without any pre-configured scope.", "type": "string", - "enum": [ - "global-shortcut:allow-is-registered" - ] + "const": "global-shortcut:allow-is-registered" }, { - "description": "global-shortcut:allow-register -> Enables the register command without any pre-configured scope.", + "description": "Enables the register command without any pre-configured scope.", "type": "string", - "enum": [ - "global-shortcut:allow-register" - ] + "const": "global-shortcut:allow-register" }, { - "description": "global-shortcut:allow-register-all -> Enables the register_all command without any pre-configured scope.", + "description": "Enables the register_all command without any pre-configured scope.", "type": "string", - "enum": [ - "global-shortcut:allow-register-all" - ] + "const": "global-shortcut:allow-register-all" }, { - "description": "global-shortcut:allow-unregister -> Enables the unregister command without any pre-configured scope.", + "description": "Enables the unregister command without any pre-configured scope.", "type": "string", - "enum": [ - "global-shortcut:allow-unregister" - ] + "const": "global-shortcut:allow-unregister" }, { - "description": "global-shortcut:allow-unregister-all -> Enables the unregister_all command without any pre-configured scope.", + "description": "Enables the unregister_all command without any pre-configured scope.", "type": "string", - "enum": [ - "global-shortcut:allow-unregister-all" - ] + "const": "global-shortcut:allow-unregister-all" }, { - "description": "global-shortcut:deny-is-registered -> Denies the is_registered command without any pre-configured scope.", + "description": "Denies the is_registered command without any pre-configured scope.", "type": "string", - "enum": [ - "global-shortcut:deny-is-registered" - ] + "const": "global-shortcut:deny-is-registered" }, { - "description": "global-shortcut:deny-register -> Denies the register command without any pre-configured scope.", + "description": "Denies the register command without any pre-configured scope.", "type": "string", - "enum": [ - "global-shortcut:deny-register" - ] + "const": "global-shortcut:deny-register" }, { - "description": "global-shortcut:deny-register-all -> Denies the register_all command without any pre-configured scope.", + "description": "Denies the register_all command without any pre-configured scope.", "type": "string", - "enum": [ - "global-shortcut:deny-register-all" - ] + "const": "global-shortcut:deny-register-all" }, { - "description": "global-shortcut:deny-unregister -> Denies the unregister command without any pre-configured scope.", + "description": "Denies the unregister command without any pre-configured scope.", "type": "string", - "enum": [ - "global-shortcut:deny-unregister" - ] + "const": "global-shortcut:deny-unregister" }, { - "description": "global-shortcut:deny-unregister-all -> Denies the unregister_all command without any pre-configured scope.", + "description": "Denies the unregister_all command without any pre-configured scope.", "type": "string", - "enum": [ - "global-shortcut:deny-unregister-all" - ] + "const": "global-shortcut:deny-unregister-all" }, { - "description": "notification:default -> This permission set configures which\nnotification features are by default exposed.\n\n#### Granted Permissions\n\nIt allows all notification related features.\n\n", + "description": "This permission set configures which\nnotification features are by default exposed.\n\n#### Granted Permissions\n\nIt allows all notification related features.\n\n", "type": "string", - "enum": [ - "notification:default" - ] + "const": "notification:default" }, { - "description": "notification:allow-batch -> Enables the batch command without any pre-configured scope.", + "description": "Enables the batch command without any pre-configured scope.", "type": "string", - "enum": [ - "notification:allow-batch" - ] + "const": "notification:allow-batch" }, { - "description": "notification:allow-cancel -> Enables the cancel command without any pre-configured scope.", + "description": "Enables the cancel command without any pre-configured scope.", "type": "string", - "enum": [ - "notification:allow-cancel" - ] + "const": "notification:allow-cancel" }, { - "description": "notification:allow-check-permissions -> Enables the check_permissions command without any pre-configured scope.", + "description": "Enables the check_permissions command without any pre-configured scope.", "type": "string", - "enum": [ - "notification:allow-check-permissions" - ] + "const": "notification:allow-check-permissions" }, { - "description": "notification:allow-create-channel -> Enables the create_channel command without any pre-configured scope.", + "description": "Enables the create_channel command without any pre-configured scope.", "type": "string", - "enum": [ - "notification:allow-create-channel" - ] + "const": "notification:allow-create-channel" }, { - "description": "notification:allow-delete-channel -> Enables the delete_channel command without any pre-configured scope.", + "description": "Enables the delete_channel command without any pre-configured scope.", "type": "string", - "enum": [ - "notification:allow-delete-channel" - ] + "const": "notification:allow-delete-channel" }, { - "description": "notification:allow-get-active -> Enables the get_active command without any pre-configured scope.", + "description": "Enables the get_active command without any pre-configured scope.", "type": "string", - "enum": [ - "notification:allow-get-active" - ] + "const": "notification:allow-get-active" }, { - "description": "notification:allow-get-pending -> Enables the get_pending command without any pre-configured scope.", + "description": "Enables the get_pending command without any pre-configured scope.", "type": "string", - "enum": [ - "notification:allow-get-pending" - ] + "const": "notification:allow-get-pending" }, { - "description": "notification:allow-is-permission-granted -> Enables the is_permission_granted command without any pre-configured scope.", + "description": "Enables the is_permission_granted command without any pre-configured scope.", "type": "string", - "enum": [ - "notification:allow-is-permission-granted" - ] + "const": "notification:allow-is-permission-granted" }, { - "description": "notification:allow-list-channels -> Enables the list_channels command without any pre-configured scope.", + "description": "Enables the list_channels command without any pre-configured scope.", "type": "string", - "enum": [ - "notification:allow-list-channels" - ] + "const": "notification:allow-list-channels" }, { - "description": "notification:allow-notify -> Enables the notify command without any pre-configured scope.", + "description": "Enables the notify command without any pre-configured scope.", "type": "string", - "enum": [ - "notification:allow-notify" - ] + "const": "notification:allow-notify" }, { - "description": "notification:allow-permission-state -> Enables the permission_state command without any pre-configured scope.", + "description": "Enables the permission_state command without any pre-configured scope.", "type": "string", - "enum": [ - "notification:allow-permission-state" - ] + "const": "notification:allow-permission-state" }, { - "description": "notification:allow-register-action-types -> Enables the register_action_types command without any pre-configured scope.", + "description": "Enables the register_action_types command without any pre-configured scope.", "type": "string", - "enum": [ - "notification:allow-register-action-types" - ] + "const": "notification:allow-register-action-types" }, { - "description": "notification:allow-register-listener -> Enables the register_listener command without any pre-configured scope.", + "description": "Enables the register_listener command without any pre-configured scope.", "type": "string", - "enum": [ - "notification:allow-register-listener" - ] + "const": "notification:allow-register-listener" }, { - "description": "notification:allow-remove-active -> Enables the remove_active command without any pre-configured scope.", + "description": "Enables the remove_active command without any pre-configured scope.", "type": "string", - "enum": [ - "notification:allow-remove-active" - ] + "const": "notification:allow-remove-active" }, { - "description": "notification:allow-request-permission -> Enables the request_permission command without any pre-configured scope.", + "description": "Enables the request_permission command without any pre-configured scope.", "type": "string", - "enum": [ - "notification:allow-request-permission" - ] + "const": "notification:allow-request-permission" }, { - "description": "notification:allow-show -> Enables the show command without any pre-configured scope.", + "description": "Enables the show command without any pre-configured scope.", "type": "string", - "enum": [ - "notification:allow-show" - ] + "const": "notification:allow-show" }, { - "description": "notification:deny-batch -> Denies the batch command without any pre-configured scope.", + "description": "Denies the batch command without any pre-configured scope.", "type": "string", - "enum": [ - "notification:deny-batch" - ] + "const": "notification:deny-batch" }, { - "description": "notification:deny-cancel -> Denies the cancel command without any pre-configured scope.", + "description": "Denies the cancel command without any pre-configured scope.", "type": "string", - "enum": [ - "notification:deny-cancel" - ] + "const": "notification:deny-cancel" }, { - "description": "notification:deny-check-permissions -> Denies the check_permissions command without any pre-configured scope.", + "description": "Denies the check_permissions command without any pre-configured scope.", "type": "string", - "enum": [ - "notification:deny-check-permissions" - ] + "const": "notification:deny-check-permissions" }, { - "description": "notification:deny-create-channel -> Denies the create_channel command without any pre-configured scope.", + "description": "Denies the create_channel command without any pre-configured scope.", "type": "string", - "enum": [ - "notification:deny-create-channel" - ] + "const": "notification:deny-create-channel" }, { - "description": "notification:deny-delete-channel -> Denies the delete_channel command without any pre-configured scope.", + "description": "Denies the delete_channel command without any pre-configured scope.", "type": "string", - "enum": [ - "notification:deny-delete-channel" - ] + "const": "notification:deny-delete-channel" }, { - "description": "notification:deny-get-active -> Denies the get_active command without any pre-configured scope.", + "description": "Denies the get_active command without any pre-configured scope.", "type": "string", - "enum": [ - "notification:deny-get-active" - ] + "const": "notification:deny-get-active" }, { - "description": "notification:deny-get-pending -> Denies the get_pending command without any pre-configured scope.", + "description": "Denies the get_pending command without any pre-configured scope.", "type": "string", - "enum": [ - "notification:deny-get-pending" - ] + "const": "notification:deny-get-pending" }, { - "description": "notification:deny-is-permission-granted -> Denies the is_permission_granted command without any pre-configured scope.", + "description": "Denies the is_permission_granted command without any pre-configured scope.", "type": "string", - "enum": [ - "notification:deny-is-permission-granted" - ] + "const": "notification:deny-is-permission-granted" }, { - "description": "notification:deny-list-channels -> Denies the list_channels command without any pre-configured scope.", + "description": "Denies the list_channels command without any pre-configured scope.", "type": "string", - "enum": [ - "notification:deny-list-channels" - ] + "const": "notification:deny-list-channels" }, { - "description": "notification:deny-notify -> Denies the notify command without any pre-configured scope.", + "description": "Denies the notify command without any pre-configured scope.", "type": "string", - "enum": [ - "notification:deny-notify" - ] + "const": "notification:deny-notify" }, { - "description": "notification:deny-permission-state -> Denies the permission_state command without any pre-configured scope.", + "description": "Denies the permission_state command without any pre-configured scope.", "type": "string", - "enum": [ - "notification:deny-permission-state" - ] + "const": "notification:deny-permission-state" }, { - "description": "notification:deny-register-action-types -> Denies the register_action_types command without any pre-configured scope.", + "description": "Denies the register_action_types command without any pre-configured scope.", "type": "string", - "enum": [ - "notification:deny-register-action-types" - ] + "const": "notification:deny-register-action-types" }, { - "description": "notification:deny-register-listener -> Denies the register_listener command without any pre-configured scope.", + "description": "Denies the register_listener command without any pre-configured scope.", "type": "string", - "enum": [ - "notification:deny-register-listener" - ] + "const": "notification:deny-register-listener" }, { - "description": "notification:deny-remove-active -> Denies the remove_active command without any pre-configured scope.", + "description": "Denies the remove_active command without any pre-configured scope.", "type": "string", - "enum": [ - "notification:deny-remove-active" - ] + "const": "notification:deny-remove-active" }, { - "description": "notification:deny-request-permission -> Denies the request_permission command without any pre-configured scope.", + "description": "Denies the request_permission command without any pre-configured scope.", "type": "string", - "enum": [ - "notification:deny-request-permission" - ] + "const": "notification:deny-request-permission" }, { - "description": "notification:deny-show -> Denies the show command without any pre-configured scope.", + "description": "Denies the show command without any pre-configured scope.", "type": "string", - "enum": [ - "notification:deny-show" - ] + "const": "notification:deny-show" }, { - "description": "os:default -> This permission set configures which\noperating system information are available\nto gather from the frontend.\n\n#### Granted Permissions\n\nAll information except the host name are available.\n\n", + "description": "This permission set configures which\noperating system information are available\nto gather from the frontend.\n\n#### Granted Permissions\n\nAll information except the host name are available.\n\n", "type": "string", - "enum": [ - "os:default" - ] + "const": "os:default" }, { - "description": "os:allow-arch -> Enables the arch command without any pre-configured scope.", + "description": "Enables the arch command without any pre-configured scope.", "type": "string", - "enum": [ - "os:allow-arch" - ] + "const": "os:allow-arch" }, { - "description": "os:allow-exe-extension -> Enables the exe_extension command without any pre-configured scope.", + "description": "Enables the exe_extension command without any pre-configured scope.", "type": "string", - "enum": [ - "os:allow-exe-extension" - ] + "const": "os:allow-exe-extension" }, { - "description": "os:allow-family -> Enables the family command without any pre-configured scope.", + "description": "Enables the family command without any pre-configured scope.", "type": "string", - "enum": [ - "os:allow-family" - ] + "const": "os:allow-family" }, { - "description": "os:allow-hostname -> Enables the hostname command without any pre-configured scope.", + "description": "Enables the hostname command without any pre-configured scope.", "type": "string", - "enum": [ - "os:allow-hostname" - ] + "const": "os:allow-hostname" }, { - "description": "os:allow-locale -> Enables the locale command without any pre-configured scope.", + "description": "Enables the locale command without any pre-configured scope.", "type": "string", - "enum": [ - "os:allow-locale" - ] + "const": "os:allow-locale" }, { - "description": "os:allow-os-type -> Enables the os_type command without any pre-configured scope.", + "description": "Enables the os_type command without any pre-configured scope.", "type": "string", - "enum": [ - "os:allow-os-type" - ] + "const": "os:allow-os-type" }, { - "description": "os:allow-platform -> Enables the platform command without any pre-configured scope.", + "description": "Enables the platform command without any pre-configured scope.", "type": "string", - "enum": [ - "os:allow-platform" - ] + "const": "os:allow-platform" }, { - "description": "os:allow-version -> Enables the version command without any pre-configured scope.", + "description": "Enables the version command without any pre-configured scope.", "type": "string", - "enum": [ - "os:allow-version" - ] + "const": "os:allow-version" }, { - "description": "os:deny-arch -> Denies the arch command without any pre-configured scope.", + "description": "Denies the arch command without any pre-configured scope.", "type": "string", - "enum": [ - "os:deny-arch" - ] + "const": "os:deny-arch" }, { - "description": "os:deny-exe-extension -> Denies the exe_extension command without any pre-configured scope.", + "description": "Denies the exe_extension command without any pre-configured scope.", "type": "string", - "enum": [ - "os:deny-exe-extension" - ] + "const": "os:deny-exe-extension" }, { - "description": "os:deny-family -> Denies the family command without any pre-configured scope.", + "description": "Denies the family command without any pre-configured scope.", "type": "string", - "enum": [ - "os:deny-family" - ] + "const": "os:deny-family" }, { - "description": "os:deny-hostname -> Denies the hostname command without any pre-configured scope.", + "description": "Denies the hostname command without any pre-configured scope.", "type": "string", - "enum": [ - "os:deny-hostname" - ] + "const": "os:deny-hostname" }, { - "description": "os:deny-locale -> Denies the locale command without any pre-configured scope.", + "description": "Denies the locale command without any pre-configured scope.", "type": "string", - "enum": [ - "os:deny-locale" - ] + "const": "os:deny-locale" }, { - "description": "os:deny-os-type -> Denies the os_type command without any pre-configured scope.", + "description": "Denies the os_type command without any pre-configured scope.", "type": "string", - "enum": [ - "os:deny-os-type" - ] + "const": "os:deny-os-type" }, { - "description": "os:deny-platform -> Denies the platform command without any pre-configured scope.", + "description": "Denies the platform command without any pre-configured scope.", "type": "string", - "enum": [ - "os:deny-platform" - ] + "const": "os:deny-platform" }, { - "description": "os:deny-version -> Denies the version command without any pre-configured scope.", + "description": "Denies the version command without any pre-configured scope.", "type": "string", - "enum": [ - "os:deny-version" - ] + "const": "os:deny-version" }, { - "description": "process:default -> This permission set configures which\nprocess feeatures are by default exposed.\n\n#### Granted Permissions\n\nThis enables to quit via `allow-exit` and restart via `allow-restart`\nthe application.\n", + "description": "This permission set configures which\nprocess feeatures are by default exposed.\n\n#### Granted Permissions\n\nThis enables to quit via `allow-exit` and restart via `allow-restart`\nthe application.\n", "type": "string", - "enum": [ - "process:default" - ] + "const": "process:default" }, { - "description": "process:allow-exit -> Enables the exit command without any pre-configured scope.", + "description": "Enables the exit command without any pre-configured scope.", "type": "string", - "enum": [ - "process:allow-exit" - ] + "const": "process:allow-exit" }, { - "description": "process:allow-restart -> Enables the restart command without any pre-configured scope.", + "description": "Enables the restart command without any pre-configured scope.", "type": "string", - "enum": [ - "process:allow-restart" - ] + "const": "process:allow-restart" }, { - "description": "process:deny-exit -> Denies the exit command without any pre-configured scope.", + "description": "Denies the exit command without any pre-configured scope.", "type": "string", - "enum": [ - "process:deny-exit" - ] + "const": "process:deny-exit" }, { - "description": "process:deny-restart -> Denies the restart command without any pre-configured scope.", + "description": "Denies the restart command without any pre-configured scope.", "type": "string", - "enum": [ - "process:deny-restart" - ] + "const": "process:deny-restart" }, { - "description": "shell:default -> This permission set configures which\nshell functionality is exposed by default.\n\n#### Granted Permissions\n\nIt allows to use the `open` functionality without any specific\nscope pre-configured. It will allow opening `http(s)://`,\n`tel:` and `mailto:` links.\n", + "description": "This permission set configures which\nshell functionality is exposed by default.\n\n#### Granted Permissions\n\nIt allows to use the `open` functionality without any specific\nscope pre-configured. It will allow opening `http(s)://`,\n`tel:` and `mailto:` links.\n", "type": "string", - "enum": [ - "shell:default" - ] + "const": "shell:default" }, { - "description": "shell:allow-execute -> Enables the execute command without any pre-configured scope.", + "description": "Enables the execute command without any pre-configured scope.", "type": "string", - "enum": [ - "shell:allow-execute" - ] + "const": "shell:allow-execute" }, { - "description": "shell:allow-kill -> Enables the kill command without any pre-configured scope.", + "description": "Enables the kill command without any pre-configured scope.", "type": "string", - "enum": [ - "shell:allow-kill" - ] + "const": "shell:allow-kill" }, { - "description": "shell:allow-open -> Enables the open command without any pre-configured scope.", + "description": "Enables the open command without any pre-configured scope.", "type": "string", - "enum": [ - "shell:allow-open" - ] + "const": "shell:allow-open" }, { - "description": "shell:allow-spawn -> Enables the spawn command without any pre-configured scope.", + "description": "Enables the spawn command without any pre-configured scope.", "type": "string", - "enum": [ - "shell:allow-spawn" - ] + "const": "shell:allow-spawn" }, { - "description": "shell:allow-stdin-write -> Enables the stdin_write command without any pre-configured scope.", + "description": "Enables the stdin_write command without any pre-configured scope.", "type": "string", - "enum": [ - "shell:allow-stdin-write" - ] + "const": "shell:allow-stdin-write" }, { - "description": "shell:deny-execute -> Denies the execute command without any pre-configured scope.", + "description": "Denies the execute command without any pre-configured scope.", "type": "string", - "enum": [ - "shell:deny-execute" - ] + "const": "shell:deny-execute" }, { - "description": "shell:deny-kill -> Denies the kill command without any pre-configured scope.", + "description": "Denies the kill command without any pre-configured scope.", "type": "string", - "enum": [ - "shell:deny-kill" - ] + "const": "shell:deny-kill" }, { - "description": "shell:deny-open -> Denies the open command without any pre-configured scope.", + "description": "Denies the open command without any pre-configured scope.", "type": "string", - "enum": [ - "shell:deny-open" - ] + "const": "shell:deny-open" }, { - "description": "shell:deny-spawn -> Denies the spawn command without any pre-configured scope.", + "description": "Denies the spawn command without any pre-configured scope.", "type": "string", - "enum": [ - "shell:deny-spawn" - ] + "const": "shell:deny-spawn" }, { - "description": "shell:deny-stdin-write -> Denies the stdin_write command without any pre-configured scope.", + "description": "Denies the stdin_write command without any pre-configured scope.", "type": "string", - "enum": [ - "shell:deny-stdin-write" - ] + "const": "shell:deny-stdin-write" }, { - "description": "updater:default -> This permission set configures which kind of\nupdater functions are exposed to the frontend.\n\n#### Granted Permissions\n\nThe full workflow from checking for updates to installing them\nis enabled.\n\n", + "description": "This permission set configures which kind of\nupdater functions are exposed to the frontend.\n\n#### Granted Permissions\n\nThe full workflow from checking for updates to installing them\nis enabled.\n\n", "type": "string", - "enum": [ - "updater:default" - ] + "const": "updater:default" }, { - "description": "updater:allow-check -> Enables the check command without any pre-configured scope.", + "description": "Enables the check command without any pre-configured scope.", "type": "string", - "enum": [ - "updater:allow-check" - ] + "const": "updater:allow-check" }, { - "description": "updater:allow-download -> Enables the download command without any pre-configured scope.", + "description": "Enables the download command without any pre-configured scope.", "type": "string", - "enum": [ - "updater:allow-download" - ] + "const": "updater:allow-download" }, { - "description": "updater:allow-download-and-install -> Enables the download_and_install command without any pre-configured scope.", + "description": "Enables the download_and_install command without any pre-configured scope.", "type": "string", - "enum": [ - "updater:allow-download-and-install" - ] + "const": "updater:allow-download-and-install" }, { - "description": "updater:allow-install -> Enables the install command without any pre-configured scope.", + "description": "Enables the install command without any pre-configured scope.", "type": "string", - "enum": [ - "updater:allow-install" - ] + "const": "updater:allow-install" }, { - "description": "updater:deny-check -> Denies the check command without any pre-configured scope.", + "description": "Denies the check command without any pre-configured scope.", "type": "string", - "enum": [ - "updater:deny-check" - ] + "const": "updater:deny-check" }, { - "description": "updater:deny-download -> Denies the download command without any pre-configured scope.", + "description": "Denies the download command without any pre-configured scope.", "type": "string", - "enum": [ - "updater:deny-download" - ] + "const": "updater:deny-download" }, { - "description": "updater:deny-download-and-install -> Denies the download_and_install command without any pre-configured scope.", + "description": "Denies the download_and_install command without any pre-configured scope.", "type": "string", - "enum": [ - "updater:deny-download-and-install" - ] + "const": "updater:deny-download-and-install" }, { - "description": "updater:deny-install -> Denies the install command without any pre-configured scope.", + "description": "Denies the install command without any pre-configured scope.", "type": "string", - "enum": [ - "updater:deny-install" - ] + "const": "updater:deny-install" } ] }, diff --git a/backend/tauri/src/core/manager.rs b/backend/tauri/src/core/manager.rs index 6158a5ba1c..ab227e329b 100644 --- a/backend/tauri/src/core/manager.rs +++ b/backend/tauri/src/core/manager.rs @@ -1,13 +1,13 @@ +use crate::{config::nyanpasu::ClashCore, core::find_binary_path}; use std::borrow::Cow; /// 给clash内核的tun模式授权 #[cfg(any(target_os = "macos", target_os = "linux"))] -pub fn grant_permission(core: String) -> anyhow::Result<()> { +pub fn grant_permission(core: &ClashCore) -> anyhow::Result<()> { use std::process::Command; use tauri::utils::platform::current_exe; - let path = current_exe()?.with_file_name(core).canonicalize()?; - let path = path.display().to_string(); + let path = find_binary_path(&core).map_err(|| anyhow::anyhow!("clash core not found"))?; log::debug!("grant_permission path: {path}"); diff --git a/backend/tauri/src/enhance/advice.rs b/backend/tauri/src/enhance/advice.rs new file mode 100644 index 0000000000..dd00f66f22 --- /dev/null +++ b/backend/tauri/src/enhance/advice.rs @@ -0,0 +1,88 @@ +use crate::enhance::{script::runner::ProcessOutput, Logs, LogsExt}; +use rust_i18n::t; +use serde_yaml::Mapping; + +// TODO: add more advice for chain +pub fn chain_advice(config: &Mapping) -> ProcessOutput { + // FIXME: its clone is not necessary + let mut logs = Logs::default(); + if config.get("tun").is_some_and(|val| { + val.is_mapping() + && !val + .as_mapping() + .unwrap() + .get("enable") + .is_some_and(|val| val.as_bool().unwrap_or(false)) + }) { + let service_state = crate::core::service::ipc::get_ipc_state(); + // show a warning dialog if the user has no permission to enable tun + #[cfg(windows)] + { + use deelevate::{PrivilegeLevel, Token}; + let level = { + match Token::with_current_process() { + Ok(token) => token + .privilege_level() + .unwrap_or(PrivilegeLevel::NotPrivileged), + Err(_) => PrivilegeLevel::NotPrivileged, + } + }; + if level == PrivilegeLevel::NotPrivileged && !service_state.is_connected() { + let msg = t!("dialog.warning.enable_tun_with_no_permission"); + logs.warn(msg.as_ref()); + crate::utils::dialog::warning_dialog(msg.as_ref()); + } + } + // If the core file is not granted the necessary permissions, grant it + #[cfg(any(target_os = "macos", target_os = "linux"))] + { + #[cfg(target_os = "macos")] + const ROOT_GROUP: &str = "admin"; + #[cfg(target_os = "linux")] + const ROOT_GROUP: &str = "root"; + + use nix::unistd::{Gid, Group as NixGroup, Uid, User}; + use std::os::unix::fs::MetadataExt; + if !service_state.is_connected() { + let core = { + crate::config::Config::verge() + .latest() + .clash_core + .as_ref() + .unwrap_or(&crate::config::nyanpasu::ClashCore::default()) + }; + let core_path = crate::core::clash::core::find_binary_path(&core); + if let Some(core_path) = core_path { + if let Some(metadata) = std::fs::metadata(&core_path).ok() { + let uid = metadata.uid(); + let gid = metadata.gid(); + let user = User::from_uid(Uid::from_raw(uid)).ok().flatten(); + let group = NixGroup::from_gid(Gid::from_raw(gid)).ok().flatten(); + if let (Some(user), Some(group)) = (user, group) { + if !*crate::consts::IS_APPIMAGE + && (user.name() != "root" || group.name() != ROOT_GROUP) + { + tracing::warn!("The core file is not granted the necessary permissions, grant it"); + let msg = t!("dialog.info.grant_core_permission"); + if crate::utils::dialog::ask_dialog(&msg) { + if let Err(err) = crate::core::manager::grant_permission(&core) + { + tracing::error!( + "Failed to grant permission to the core file: {}", + err + ); + crate::utils::dialog::error_dialog(&format!( + "failed to grant core permission:\n{:#?}", + err + )); + } + } + } + } + } + } + } + } + } + (Ok(Mapping::new()), logs) +} diff --git a/backend/tauri/src/enhance/mod.rs b/backend/tauri/src/enhance/mod.rs index f71b9c5f51..8de440c71b 100644 --- a/backend/tauri/src/enhance/mod.rs +++ b/backend/tauri/src/enhance/mod.rs @@ -1,3 +1,4 @@ +mod advice; mod chain; mod field; mod merge; @@ -143,6 +144,9 @@ pub async fn enhance() -> (Mapping, Vec, IndexMap) { config = use_cache(config); config = use_sort(config, enable_filter); + let (_, logs) = advice::chain_advice(&config); + result_map.insert("chain_advice".into(), logs); + let mut exists_set = HashSet::new(); exists_set.extend(exists_keys.into_iter().filter(|s| clash_fields.contains(s))); exists_keys = exists_set.into_iter().collect(); diff --git a/backend/tauri/src/ipc.rs b/backend/tauri/src/ipc.rs index 44847966bc..341e05b915 100644 --- a/backend/tauri/src/ipc.rs +++ b/backend/tauri/src/ipc.rs @@ -276,14 +276,14 @@ pub async fn restart_sidecar() -> CmdResult { wrap_err!(CoreManager::global().run_core().await) } -#[tauri::command] -pub fn grant_permission(_core: String) -> CmdResult { - #[cfg(any(target_os = "macos", target_os = "linux"))] - return wrap_err!(manager::grant_permission(_core)); - - #[cfg(not(any(target_os = "macos", target_os = "linux")))] - return Err("Unsupported target".into()); -} +// #[tauri::command] +// pub fn grant_permission(_core: String) -> CmdResult { +// #[cfg(any(target_os = "macos", target_os = "linux"))] +// return wrap_err!(manager::grant_permission(_core)); + +// #[cfg(not(any(target_os = "macos", target_os = "linux")))] +// return Err("Unsupported target".into()); +// } /// get the system proxy #[tauri::command] diff --git a/backend/tauri/src/lib.rs b/backend/tauri/src/lib.rs index 9e3347bd34..785a9a951b 100644 --- a/backend/tauri/src/lib.rs +++ b/backend/tauri/src/lib.rs @@ -1,4 +1,5 @@ #![feature(auto_traits, negative_impls, let_chains)] +#![feature(std_internals)] #![cfg_attr( all(not(debug_assertions), target_os = "windows"), windows_subsystem = "windows" @@ -248,7 +249,7 @@ pub fn run() -> std::io::Result<()> { ipc::open_core_dir, // cmds::kill_sidecar, ipc::restart_sidecar, - ipc::grant_permission, + // ipc::grant_permission, // clash ipc::get_clash_info, ipc::get_clash_logs, diff --git a/backend/tauri/src/utils/dialog.rs b/backend/tauri/src/utils/dialog.rs index 47b58e28fb..ddfc6b2009 100644 --- a/backend/tauri/src/utils/dialog.rs +++ b/backend/tauri/src/utils/dialog.rs @@ -23,11 +23,32 @@ pub fn migrate_dialog(msg: &str) -> bool { ) } -pub fn error_dialog(msg: String) { +pub fn error_dialog>(msg: T) { MessageDialog::new() .set_level(MessageLevel::Error) .set_title("Clash Nyanpasu Error") - .set_description(msg.as_str()) + .set_description(msg.into()) .set_buttons(MessageButtons::Ok) .show(); } + +pub fn warning_dialog>(msg: T) { + MessageDialog::new() + .set_level(MessageLevel::Warning) + .set_title("Clash Nyanpasu Warning") + .set_description(msg.into()) + .set_buttons(MessageButtons::Ok) + .show(); +} + +pub fn ask_dialog>(msg: T) -> bool { + matches!( + MessageDialog::new() + .set_level(MessageLevel::Info) + .set_title("Clash Nyanpasu") + .set_buttons(MessageButtons::YesNo) + .set_description(msg.into()) + .show(), + MessageDialogResult::Yes + ) +} diff --git a/locales/en.json b/locales/en.json index 160db0c19a..dbe569b0e7 100644 --- a/locales/en.json +++ b/locales/en.json @@ -35,6 +35,12 @@ "dialog": { "panic": "Please report this issue to Github issue tracker.", "migrate": "Old version config file detected\nMigrate to new version or not?\n WARNING: This will override your current config if exists", - "custom_app_dir_migrate": "You will set custom app dir to %{path}\n Shall we move the current app dir to the new one?" + "custom_app_dir_migrate": "You will set custom app dir to %{path}\n Shall we move the current app dir to the new one?", + "warning": { + "enable_tun_with_no_permission": "TUN mode requires admin permission or service mode, neither is enabled, TUN mode will not work properly." + }, + "info": { + "grant_core_permission": "Clash core needs admin permission to make TUN mode work properly, grant it?\n\nPlease note: This operation requires password input." + } } } diff --git a/locales/zh.json b/locales/zh.json index def2f75c7c..b4479b1101 100644 --- a/locales/zh.json +++ b/locales/zh.json @@ -35,6 +35,12 @@ "dialog": { "panic": "请将此问题汇报到 Github 问题追踪器", "migrate": "检测到旧版本配置文件\n是否迁移到新版本?\n警告: 此操作会覆盖掉现有配置文件", - "custom_app_dir_migrate": "你将要更改应用目录至 %{path}。\n需要将现有数据迁移到新目录吗?" + "custom_app_dir_migrate": "你将要更改应用目录至 %{path}。\n需要将现有数据迁移到新目录吗?", + "warning": { + "enable_tun_with_no_permission": "TUN 模式需要管理员权限,或服务模式,当前都未开启,因此 TUN 模式将无法正常工作" + }, + "info": { + "grant_core_permission": "Clash 内核需要管理员权限才能使得 TUN 模式正常工作,是否授予?\n\n请注意:此操作需要输入密码。" + } } }