interface PresetBase {
    id: string;
    name: string;
    description: string;
    companyId: string;
    companyName: string;
    iconFilePath: string;
    secret: string;
    isDefaultAutoProcessingRuntimeUpdateEnabled: boolean;
    defaultAutoProcessingRuntimeUpdateMode: "optional" | "required";
    defaultAutoProcessingRuntimeUpdateOptionalModeUpdateAvailableDialog: {
        titleTemplate: string;
        messageTemplate: string;
    };
    defaultAutoProcessingRuntimeUpdateRequiredModeUpdateAvailableDialog: {
        titleTemplate: string;
        messageTemplate: string;
    };
    assets: {
        [assetId: string]: AssetPreset;
    };
    appsCatalogId: string;
    appMainBranchDefaultRootDir: AppBranchDefaultRootDirPreset;
    appSecondaryBranchDefaultRootDir: AppBranchDefaultRootDirPreset;
    isAppBranchNotDefaultRootDirAllowed: boolean;
    isStartingQuitTaskAllowedIfAnyAppBranchProcessExists: boolean;
    window: WindowPreset;
    agreements: {
        [agreementId: string]: AgreementPreset;
    };
    statsAgreementId?: string;
    isStatsEntryAnonymous: boolean;
    reportingErrorAgreementId?: string;
    availableLangs: {
        [availableLangTag: string]: AvailableLangPreset;
    };
    fallbackLangTag: string;
    protocol?: ProtocolPreset;
    isAutoShowingWindowOnProtocolPendingRequestRegisteredEnabled: boolean;
    isAutoFocusingWindowOnProtocolPendingRequestRegisteredEnabled: boolean;
    tray?: TrayPreset;
    loadingThemeErrorDialog: {
        titleTemplate: string;
        messageTemplate: string;
    };
    logsCollectedDialog: {
        titleTemplate: string;
        messageTemplate: string;
    };
    crashedDialog: {
        titleTemplate: string;
        messageTemplate: string;
    };
}

Hierarchy (view full)

Properties

id: string

WARNING: Once your launcher is published, you should never change this value. If you need to do so, you must perform a migration process (currently undocumented, please contact PatchKit Support for assistance).

Used for:

  • the default path of the launcher installation directory
  • the path of directories where the launcher will store its data
name: string

Used for:

  • the name of the launcher executable
  • the name of the launcher setup
  • the name of the launcher shortcut
description: string
companyId: string
companyName: string

WARNING: Once your launcher is published, you should never change this value. If you need to do so, you must perform a migration process (currently undocumented, please contact PatchKit Support for assistance).

iconFilePath: string

Path is relative to the launcher runtime package root directory.

secret: string

Insert the secret of your launcher entry created on PatchKit Panel.

Learn more about this here.

isDefaultAutoProcessingRuntimeUpdateEnabled: boolean

When set to false, the launcher will not process updates with the default procedure (in such cases, you need to implement the update procedure yourself in the launcher theme using the runtime API).

defaultAutoProcessingRuntimeUpdateMode: "optional" | "required"

Determines whether launcher updates are required or optional in the default procedure.

defaultAutoProcessingRuntimeUpdateOptionalModeUpdateAvailableDialog: {
    titleTemplate: string;
    messageTemplate: string;
}

Determines the configuration of dialog displayed when a launcher update is available in the default procedure (and the mode is set to optional).

Type declaration

  • titleTemplate: string

    Title template for the dialog.

  • messageTemplate: string

    Message template for the dialog.

defaultAutoProcessingRuntimeUpdateRequiredModeUpdateAvailableDialog: {
    titleTemplate: string;
    messageTemplate: string;
}

Determines the configuration of dialog displayed when a launcher update is available in the default procedure (and the mode is set to required).

Type declaration

  • titleTemplate: string

    Title template for the dialog.

  • messageTemplate: string

    Message template for the dialog.

assets: {
    [assetId: string]: AssetPreset;
}

Determines the configuration of the launcher assets.

appsCatalogId: string

Insert the ID of your app catalog entry created on PatchKit Panel.

Learn more about this here.

appMainBranchDefaultRootDir: AppBranchDefaultRootDirPreset

Determines the configuration of default root directories for app main branches registered in the launcher.

appSecondaryBranchDefaultRootDir: AppBranchDefaultRootDirPreset

Determines the configuration of default root directories for app secondary branches registered in the launcher.

isAppBranchNotDefaultRootDirAllowed: boolean

If set to true, only directories resolved with appMainBranchDefaultRootDir and appSecondaryBranchDefaultRootDir configurations are allowed as root directories for app branches registered in the launcher.

isStartingQuitTaskAllowedIfAnyAppBranchProcessExists: boolean

If set to true, the launcher will not allow starting the quit task if any app branch process is running.

window: WindowPreset

Determines the configuration of the launcher window.

agreements: {
    [agreementId: string]: AgreementPreset;
}

Determines the configuration of the launcher agreements.

statsAgreementId?: string
isStatsEntryAnonymous: boolean
reportingErrorAgreementId?: string
availableLangs: {
    [availableLangTag: string]: AvailableLangPreset;
}

Determines the configuration of the launcher available languages.

fallbackLangTag: string
protocol?: ProtocolPreset

Determines the configuration of the launcher protocol.

If not set, the protocol will not be registered by the launcher.

isAutoShowingWindowOnProtocolPendingRequestRegisteredEnabled: boolean

If set to true, the launcher will automatically show the window when a protocol pending request is registered.

isAutoFocusingWindowOnProtocolPendingRequestRegisteredEnabled: boolean

If set to true, the launcher will automatically focus the window when a protocol pending request is registered.

tray?: TrayPreset

Determines the configuration of the launcher tray.

If not set, the tray will not be registered by the launcher.

loadingThemeErrorDialog: {
    titleTemplate: string;
    messageTemplate: string;
}

Determines the configuration of dialog displayed when the launcher encounters an error while loading the theme.

Type declaration

  • titleTemplate: string

    Title template for the dialog.

  • messageTemplate: string

    Message template for the dialog.

logsCollectedDialog: {
    titleTemplate: string;
    messageTemplate: string;
}

Determines the configuration of dialog displayed when the launcher successfully collects the logs.

Type declaration

  • titleTemplate: string

    Title template for the dialog.

  • messageTemplate: string

    Message template for the dialog.

    Available variables:

    • {logsZipFileInfoName} - the name of the logs zip file
    • {logsZipFileInfoPath} - the path of the logs zip file
crashedDialog: {
    titleTemplate: string;
    messageTemplate: string;
}

Determines the configuration of dialog displayed when the launcher crashes.

Type declaration

  • titleTemplate: string

    Title template for the dialog.

  • messageTemplate: string

    Message template for the dialog.

    Available variables:

    • {logsZipFileInfoName} - the name of the logs zip file
    • {logsZipFileInfoPath} - the path of the logs zip file