import "@typespec/json-schema"; using TypeSpec.JsonSchema; @jsonSchema("/modules/default-flatpaks-latest.json") model DefaultFlatpaksModuleLatest { ...DefaultFlatpaksModuleV1; } @jsonSchema("/modules/default-flatpaks-v1.json") model DefaultFlatpaksModuleV1 { /** The default-flatpaks module can be used to install or uninstall flatpaks from a configurable remote on every boot. * https://blue-build.org/reference/modules/default-flatpaks/ */ type: "default-flatpaks" | "default-flatpaks@v1" | "default-flatpaks@latest"; /** Whether to send a notification after the install/uninstall is finished. */ notify?: boolean = false; /** Configuration for system flatpaks. */ system?: { /** URL of the repo to add. Defaults to Flathub's URL. */ `repo-url`?: string = "https://dl.flathub.org/repo/flathub.flatpakrepo"; /** Name for the repo to add. */ `repo-name`?: string = "flathub"; /** Pretty title for the repo to add. Not set by default. */ `repo-title`?: string; /** List of Flatpak IDs to install from the repo. */ install?: Array; /** List of Flatpak IDs to remove. */ remove?: Array; }; /** Configuration for user flatpaks. */ user?: { /** URL of the repo to add. Defaults to Flathub's URL. */ `repo-url`?: string = "https://dl.flathub.org/repo/flathub.flatpakrepo"; /** Name for the repo to add. */ `repo-name`?: string = "flathub"; /** Pretty title for the repo to add. Not set by default. */ `repo-title`?: string; /** List of Flatpak IDs to install from the repo. */ install?: Array; /** List of Flatpak IDs to remove. */ remove?: Array; }; }