Я не думаю, что в манифесте есть способ навязать или / или отношения.
В качестве альтернативы, вы могли бы сделать это так, чтобы ms-vscode.PowerShell
не было жестким требованием, поставив еговместо extensionPack
.Таким образом, установка вашего расширения все равно установит его, но его можно отключить или даже удалить.
Затем вы можете проверить, что зависимость встречается при активации вашего расширения:
if (vscode.extensions.getExtension("ms-vscode.PowerShell") === undefined &&
vscode.extensions.getExtension("ms-vscode.PowerShell-Preview") == undefined) {
vscode.window.showErrorMessage("PowerShell or PowerShell Preview extension required");
}