UNPKG

azure-devops-node-api

Version:
1,082 lines 120 kB
"use strict"; /* * --------------------------------------------------------- * Copyright(C) Microsoft Corporation. All rights reserved. * --------------------------------------------------------- * * --------------------------------------------------------- * Generated file, DO NOT EDIT * --------------------------------------------------------- */ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; Object.defineProperty(exports, "__esModule", { value: true }); exports.GalleryApi = void 0; const compatBase = require("././GalleryCompatHttpClientBase"); const GalleryInterfaces = require("./interfaces/GalleryInterfaces"); class GalleryApi extends compatBase.GalleryCompatHttpClientBase { constructor(baseUrl, handlers, options) { super(baseUrl, handlers, 'node-Gallery-api', options); } /** * @param {string} extensionId * @param {string} accountName */ shareExtensionById(extensionId, accountName) { return __awaiter(this, void 0, void 0, function* () { return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () { let routeValues = { extensionId: extensionId, accountName: accountName }; try { let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "1f19631b-a0b4-4a03-89c2-d79785d24360", routeValues); let url = verData.requestUrl; let options = this.createRequestOptions('application/json', verData.apiVersion); let res; res = yield this.rest.create(url, null, options); let ret = this.formatResponse(res.result, null, false); resolve(ret); } catch (err) { reject(err); } })); }); } /** * @param {string} extensionId * @param {string} accountName */ unshareExtensionById(extensionId, accountName) { return __awaiter(this, void 0, void 0, function* () { return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () { let routeValues = { extensionId: extensionId, accountName: accountName }; try { let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "1f19631b-a0b4-4a03-89c2-d79785d24360", routeValues); let url = verData.requestUrl; let options = this.createRequestOptions('application/json', verData.apiVersion); let res; res = yield this.rest.del(url, options); let ret = this.formatResponse(res.result, null, false); resolve(ret); } catch (err) { reject(err); } })); }); } /** * @param {string} publisherName * @param {string} extensionName * @param {string} accountName */ shareExtension(publisherName, extensionName, accountName) { return __awaiter(this, void 0, void 0, function* () { return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () { let routeValues = { publisherName: publisherName, extensionName: extensionName, accountName: accountName }; try { let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "a1e66d8f-f5de-4d16-8309-91a4e015ee46", routeValues); let url = verData.requestUrl; let options = this.createRequestOptions('application/json', verData.apiVersion); let res; res = yield this.rest.create(url, null, options); let ret = this.formatResponse(res.result, null, false); resolve(ret); } catch (err) { reject(err); } })); }); } /** * @param {string} publisherName * @param {string} extensionName * @param {string} accountName */ unshareExtension(publisherName, extensionName, accountName) { return __awaiter(this, void 0, void 0, function* () { return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () { let routeValues = { publisherName: publisherName, extensionName: extensionName, accountName: accountName }; try { let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "a1e66d8f-f5de-4d16-8309-91a4e015ee46", routeValues); let url = verData.requestUrl; let options = this.createRequestOptions('application/json', verData.apiVersion); let res; res = yield this.rest.del(url, options); let ret = this.formatResponse(res.result, null, false); resolve(ret); } catch (err) { reject(err); } })); }); } /** * @param {string} itemId * @param {string} installationTarget * @param {boolean} testCommerce * @param {boolean} isFreeOrTrialInstall */ getAcquisitionOptions(itemId, installationTarget, testCommerce, isFreeOrTrialInstall) { return __awaiter(this, void 0, void 0, function* () { if (installationTarget == null) { throw new TypeError('installationTarget can not be null or undefined'); } return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () { let routeValues = { itemId: itemId }; let queryValues = { installationTarget: installationTarget, testCommerce: testCommerce, isFreeOrTrialInstall: isFreeOrTrialInstall, }; try { let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "9d0a0105-075e-4760-aa15-8bcf54d1bd7d", routeValues, queryValues); let url = verData.requestUrl; let options = this.createRequestOptions('application/json', verData.apiVersion); let res; res = yield this.rest.get(url, options); let ret = this.formatResponse(res.result, GalleryInterfaces.TypeInfo.AcquisitionOptions, false); resolve(ret); } catch (err) { reject(err); } })); }); } /** * @param {GalleryInterfaces.ExtensionAcquisitionRequest} acquisitionRequest */ requestAcquisition(acquisitionRequest) { return __awaiter(this, void 0, void 0, function* () { return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () { let routeValues = {}; try { let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "3adb1f2d-e328-446e-be73-9f6d98071c45", routeValues); let url = verData.requestUrl; let options = this.createRequestOptions('application/json', verData.apiVersion); let res; res = yield this.rest.create(url, acquisitionRequest, options); let ret = this.formatResponse(res.result, GalleryInterfaces.TypeInfo.ExtensionAcquisitionRequest, false); resolve(ret); } catch (err) { reject(err); } })); }); } /** * @param {string} publisherName * @param {string} extensionName * @param {string} version * @param {string} assetType * @param {string} accountToken * @param {boolean} acceptDefault * @param {String} accountTokenHeader - Header to pass the account token */ getAssetByName(customHeaders, publisherName, extensionName, version, assetType, accountToken, acceptDefault, accountTokenHeader) { return __awaiter(this, void 0, void 0, function* () { return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () { let routeValues = { publisherName: publisherName, extensionName: extensionName, version: version, assetType: assetType }; let queryValues = { accountToken: accountToken, acceptDefault: acceptDefault, }; customHeaders = customHeaders || {}; customHeaders["X-Market-AccountToken"] = "accountTokenHeader"; try { let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "7529171f-a002-4180-93ba-685f358a0482", routeValues, queryValues); let url = verData.requestUrl; let apiVersion = verData.apiVersion; let accept = this.createAcceptHeader("application/octet-stream", apiVersion); resolve((yield this.http.get(url, { "Accept": accept })).message); } catch (err) { reject(err); } })); }); } /** * @param {string} extensionId * @param {string} version * @param {string} assetType * @param {string} accountToken * @param {boolean} acceptDefault * @param {String} accountTokenHeader - Header to pass the account token */ getAsset(customHeaders, extensionId, version, assetType, accountToken, acceptDefault, accountTokenHeader) { return __awaiter(this, void 0, void 0, function* () { return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () { let routeValues = { extensionId: extensionId, version: version, assetType: assetType }; let queryValues = { accountToken: accountToken, acceptDefault: acceptDefault, }; customHeaders = customHeaders || {}; customHeaders["X-Market-AccountToken"] = "accountTokenHeader"; try { let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "5d545f3d-ef47-488b-8be3-f5ee1517856c", routeValues, queryValues); let url = verData.requestUrl; let apiVersion = verData.apiVersion; let accept = this.createAcceptHeader("application/octet-stream", apiVersion); resolve((yield this.http.get(url, { "Accept": accept })).message); } catch (err) { reject(err); } })); }); } /** * @param {string} publisherName * @param {string} extensionName * @param {string} version * @param {string} assetType * @param {string} accountToken * @param {String} accountTokenHeader - Header to pass the account token */ getAssetAuthenticated(customHeaders, publisherName, extensionName, version, assetType, accountToken, accountTokenHeader) { return __awaiter(this, void 0, void 0, function* () { return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () { let routeValues = { publisherName: publisherName, extensionName: extensionName, version: version, assetType: assetType }; let queryValues = { accountToken: accountToken, }; customHeaders = customHeaders || {}; customHeaders["X-Market-AccountToken"] = "accountTokenHeader"; try { let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "506aff36-2622-4f70-8063-77cce6366d20", routeValues, queryValues); let url = verData.requestUrl; let apiVersion = verData.apiVersion; let accept = this.createAcceptHeader("application/octet-stream", apiVersion); resolve((yield this.http.get(url, { "Accept": accept })).message); } catch (err) { reject(err); } })); }); } /** * @param {string} publisherName * @param {string} azurePublisherId */ associateAzurePublisher(publisherName, azurePublisherId) { return __awaiter(this, void 0, void 0, function* () { if (azurePublisherId == null) { throw new TypeError('azurePublisherId can not be null or undefined'); } return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () { let routeValues = { publisherName: publisherName }; let queryValues = { azurePublisherId: azurePublisherId, }; try { let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "efd202a6-9d87-4ebc-9229-d2b8ae2fdb6d", routeValues, queryValues); let url = verData.requestUrl; let options = this.createRequestOptions('application/json', verData.apiVersion); let res; res = yield this.rest.replace(url, null, options); let ret = this.formatResponse(res.result, null, false); resolve(ret); } catch (err) { reject(err); } })); }); } /** * @param {string} publisherName */ queryAssociatedAzurePublisher(publisherName) { return __awaiter(this, void 0, void 0, function* () { return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () { let routeValues = { publisherName: publisherName }; try { let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "efd202a6-9d87-4ebc-9229-d2b8ae2fdb6d", routeValues); let url = verData.requestUrl; let options = this.createRequestOptions('application/json', verData.apiVersion); let res; res = yield this.rest.get(url, options); let ret = this.formatResponse(res.result, null, false); resolve(ret); } catch (err) { reject(err); } })); }); } /** * @param {string} languages */ getCategories(languages) { return __awaiter(this, void 0, void 0, function* () { return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () { let routeValues = {}; let queryValues = { languages: languages, }; try { let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "e0a5a71e-3ac3-43a0-ae7d-0bb5c3046a2a", routeValues, queryValues); let url = verData.requestUrl; let options = this.createRequestOptions('application/json', verData.apiVersion); let res; res = yield this.rest.get(url, options); let ret = this.formatResponse(res.result, null, true); resolve(ret); } catch (err) { reject(err); } })); }); } /** * @param {string} categoryName * @param {string} languages * @param {string} product */ getCategoryDetails(categoryName, languages, product) { return __awaiter(this, void 0, void 0, function* () { return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () { let routeValues = { categoryName: categoryName }; let queryValues = { languages: languages, product: product, }; try { let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "75d3c04d-84d2-4973-acd2-22627587dabc", routeValues, queryValues); let url = verData.requestUrl; let options = this.createRequestOptions('application/json', verData.apiVersion); let res; res = yield this.rest.get(url, options); let ret = this.formatResponse(res.result, null, false); resolve(ret); } catch (err) { reject(err); } })); }); } /** * @param {string} product * @param {string} categoryId * @param {number} lcid * @param {string} source * @param {string} productVersion * @param {string} skus * @param {string} subSkus * @param {string} productArchitecture */ getCategoryTree(product, categoryId, lcid, source, productVersion, skus, subSkus, productArchitecture) { return __awaiter(this, void 0, void 0, function* () { return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () { let routeValues = { product: product, categoryId: categoryId }; let queryValues = { lcid: lcid, source: source, productVersion: productVersion, skus: skus, subSkus: subSkus, productArchitecture: productArchitecture, }; try { let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "1102bb42-82b0-4955-8d8a-435d6b4cedd3", routeValues, queryValues); let url = verData.requestUrl; let options = this.createRequestOptions('application/json', verData.apiVersion); let res; res = yield this.rest.get(url, options); let ret = this.formatResponse(res.result, null, false); resolve(ret); } catch (err) { reject(err); } })); }); } /** * @param {string} product * @param {number} lcid * @param {string} source * @param {string} productVersion * @param {string} skus * @param {string} subSkus */ getRootCategories(product, lcid, source, productVersion, skus, subSkus) { return __awaiter(this, void 0, void 0, function* () { return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () { let routeValues = { product: product }; let queryValues = { lcid: lcid, source: source, productVersion: productVersion, skus: skus, subSkus: subSkus, }; try { let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "31fba831-35b2-46f6-a641-d05de5a877d8", routeValues, queryValues); let url = verData.requestUrl; let options = this.createRequestOptions('application/json', verData.apiVersion); let res; res = yield this.rest.get(url, options); let ret = this.formatResponse(res.result, null, false); resolve(ret); } catch (err) { reject(err); } })); }); } /** * @param {string} publisherName * @param {string} extensionName * @param {string} version */ getCertificate(publisherName, extensionName, version) { return __awaiter(this, void 0, void 0, function* () { return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () { let routeValues = { publisherName: publisherName, extensionName: extensionName, version: version }; try { let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "e905ad6a-3f1f-4d08-9f6d-7d357ff8b7d0", routeValues); let url = verData.requestUrl; let apiVersion = verData.apiVersion; let accept = this.createAcceptHeader("application/octet-stream", apiVersion); resolve((yield this.http.get(url, { "Accept": accept })).message); } catch (err) { reject(err); } })); }); } /** * @param {string} publisherName * @param {string} extensionName */ getContentVerificationLog(publisherName, extensionName) { return __awaiter(this, void 0, void 0, function* () { return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () { let routeValues = { publisherName: publisherName, extensionName: extensionName }; try { let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "c0f1c7c4-3557-4ffb-b774-1e48c4865e99", routeValues); let url = verData.requestUrl; let apiVersion = verData.apiVersion; let accept = this.createAcceptHeader("application/octet-stream", apiVersion); resolve((yield this.http.get(url, { "Accept": accept })).message); } catch (err) { reject(err); } })); }); } /** * @param {GalleryInterfaces.CustomerSupportRequest} customerSupportRequest */ createSupportRequest(customerSupportRequest) { return __awaiter(this, void 0, void 0, function* () { return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () { let routeValues = {}; try { let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "8eded385-026a-4c15-b810-b8eb402771f1", routeValues); let url = verData.requestUrl; let options = this.createRequestOptions('application/json', verData.apiVersion); let res; res = yield this.rest.create(url, customerSupportRequest, options); let ret = this.formatResponse(res.result, null, false); resolve(ret); } catch (err) { reject(err); } })); }); } /** * @param {string} publisherName * @param {string} extensionName */ createDraftForEditExtension(publisherName, extensionName) { return __awaiter(this, void 0, void 0, function* () { return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () { let routeValues = { publisherName: publisherName, extensionName: extensionName }; try { let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "02b33873-4e61-496e-83a2-59d1df46b7d8", routeValues); let url = verData.requestUrl; let options = this.createRequestOptions('application/json', verData.apiVersion); let res; res = yield this.rest.create(url, null, options); let ret = this.formatResponse(res.result, GalleryInterfaces.TypeInfo.ExtensionDraft, false); resolve(ret); } catch (err) { reject(err); } })); }); } /** * @param {GalleryInterfaces.ExtensionDraftPatch} draftPatch * @param {string} publisherName * @param {string} extensionName * @param {string} draftId */ performEditExtensionDraftOperation(draftPatch, publisherName, extensionName, draftId) { return __awaiter(this, void 0, void 0, function* () { return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () { let routeValues = { publisherName: publisherName, extensionName: extensionName, draftId: draftId }; try { let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "02b33873-4e61-496e-83a2-59d1df46b7d8", routeValues); let url = verData.requestUrl; let options = this.createRequestOptions('application/json', verData.apiVersion); let res; res = yield this.rest.update(url, draftPatch, options); let ret = this.formatResponse(res.result, GalleryInterfaces.TypeInfo.ExtensionDraft, false); resolve(ret); } catch (err) { reject(err); } })); }); } /** * @param {NodeJS.ReadableStream} contentStream - Content to upload * @param {string} publisherName * @param {string} extensionName * @param {string} draftId * @param {String} fileName - Header to pass the filename of the uploaded data */ updatePayloadInDraftForEditExtension(customHeaders, contentStream, publisherName, extensionName, draftId, fileName) { return __awaiter(this, void 0, void 0, function* () { return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () { let routeValues = { publisherName: publisherName, extensionName: extensionName, draftId: draftId }; customHeaders = customHeaders || {}; customHeaders["Content-Type"] = "application/octet-stream"; customHeaders["X-Market-UploadFileName"] = "fileName"; try { let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "02b33873-4e61-496e-83a2-59d1df46b7d8", routeValues); let url = verData.requestUrl; let options = this.createRequestOptions('application/json', verData.apiVersion); options.additionalHeaders = customHeaders; let res; res = yield this.rest.uploadStream("PUT", url, contentStream, options); let ret = this.formatResponse(res.result, GalleryInterfaces.TypeInfo.ExtensionDraft, false); resolve(ret); } catch (err) { reject(err); } })); }); } /** * @param {NodeJS.ReadableStream} contentStream - Content to upload * @param {string} publisherName * @param {string} extensionName * @param {string} draftId * @param {string} assetType */ addAssetForEditExtensionDraft(customHeaders, contentStream, publisherName, extensionName, draftId, assetType) { return __awaiter(this, void 0, void 0, function* () { return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () { let routeValues = { publisherName: publisherName, extensionName: extensionName, draftId: draftId, assetType: assetType }; customHeaders = customHeaders || {}; customHeaders["Content-Type"] = "application/octet-stream"; try { let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "f1db9c47-6619-4998-a7e5-d7f9f41a4617", routeValues); let url = verData.requestUrl; let options = this.createRequestOptions('application/json', verData.apiVersion); options.additionalHeaders = customHeaders; let res; res = yield this.rest.uploadStream("PUT", url, contentStream, options); let ret = this.formatResponse(res.result, null, false); resolve(ret); } catch (err) { reject(err); } })); }); } /** * @param {NodeJS.ReadableStream} contentStream - Content to upload * @param {string} publisherName * @param {String} product - Header to pass the product type of the payload file * @param {String} fileName - Header to pass the filename of the uploaded data */ createDraftForNewExtension(customHeaders, contentStream, publisherName, product, fileName) { return __awaiter(this, void 0, void 0, function* () { return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () { let routeValues = { publisherName: publisherName }; customHeaders = customHeaders || {}; customHeaders["Content-Type"] = "application/octet-stream"; customHeaders["X-Market-UploadFileProduct"] = "product"; customHeaders["X-Market-UploadFileName"] = "fileName"; try { let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "b3ab127d-ebb9-4d22-b611-4e09593c8d79", routeValues); let url = verData.requestUrl; let options = this.createRequestOptions('application/json', verData.apiVersion); options.additionalHeaders = customHeaders; let res; res = yield this.rest.uploadStream("POST", url, contentStream, options); let ret = this.formatResponse(res.result, GalleryInterfaces.TypeInfo.ExtensionDraft, false); resolve(ret); } catch (err) { reject(err); } })); }); } /** * @param {GalleryInterfaces.ExtensionDraftPatch} draftPatch * @param {string} publisherName * @param {string} draftId */ performNewExtensionDraftOperation(draftPatch, publisherName, draftId) { return __awaiter(this, void 0, void 0, function* () { return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () { let routeValues = { publisherName: publisherName, draftId: draftId }; try { let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "b3ab127d-ebb9-4d22-b611-4e09593c8d79", routeValues); let url = verData.requestUrl; let options = this.createRequestOptions('application/json', verData.apiVersion); let res; res = yield this.rest.update(url, draftPatch, options); let ret = this.formatResponse(res.result, GalleryInterfaces.TypeInfo.ExtensionDraft, false); resolve(ret); } catch (err) { reject(err); } })); }); } /** * @param {NodeJS.ReadableStream} contentStream - Content to upload * @param {string} publisherName * @param {string} draftId * @param {String} fileName - Header to pass the filename of the uploaded data */ updatePayloadInDraftForNewExtension(customHeaders, contentStream, publisherName, draftId, fileName) { return __awaiter(this, void 0, void 0, function* () { return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () { let routeValues = { publisherName: publisherName, draftId: draftId }; customHeaders = customHeaders || {}; customHeaders["Content-Type"] = "application/octet-stream"; customHeaders["X-Market-UploadFileName"] = "fileName"; try { let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "b3ab127d-ebb9-4d22-b611-4e09593c8d79", routeValues); let url = verData.requestUrl; let options = this.createRequestOptions('application/json', verData.apiVersion); options.additionalHeaders = customHeaders; let res; res = yield this.rest.uploadStream("PUT", url, contentStream, options); let ret = this.formatResponse(res.result, GalleryInterfaces.TypeInfo.ExtensionDraft, false); resolve(ret); } catch (err) { reject(err); } })); }); } /** * @param {NodeJS.ReadableStream} contentStream - Content to upload * @param {string} publisherName * @param {string} draftId * @param {string} assetType */ addAssetForNewExtensionDraft(customHeaders, contentStream, publisherName, draftId, assetType) { return __awaiter(this, void 0, void 0, function* () { return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () { let routeValues = { publisherName: publisherName, draftId: draftId, assetType: assetType }; customHeaders = customHeaders || {}; customHeaders["Content-Type"] = "application/octet-stream"; try { let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "88c0b1c8-b4f1-498a-9b2a-8446ef9f32e7", routeValues); let url = verData.requestUrl; let options = this.createRequestOptions('application/json', verData.apiVersion); options.additionalHeaders = customHeaders; let res; res = yield this.rest.uploadStream("PUT", url, contentStream, options); let ret = this.formatResponse(res.result, null, false); resolve(ret); } catch (err) { reject(err); } })); }); } /** * @param {string} publisherName * @param {string} draftId * @param {string} assetType * @param {string} extensionName */ getAssetFromEditExtensionDraft(publisherName, draftId, assetType, extensionName) { return __awaiter(this, void 0, void 0, function* () { if (extensionName == null) { throw new TypeError('extensionName can not be null or undefined'); } return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () { let routeValues = { publisherName: publisherName, draftId: draftId, assetType: assetType }; let queryValues = { extensionName: extensionName, }; try { let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "88c0b1c8-b4f1-498a-9b2a-8446ef9f32e7", routeValues, queryValues); let url = verData.requestUrl; let apiVersion = verData.apiVersion; let accept = this.createAcceptHeader("application/octet-stream", apiVersion); resolve((yield this.http.get(url, { "Accept": accept })).message); } catch (err) { reject(err); } })); }); } /** * @param {string} publisherName * @param {string} draftId * @param {string} assetType */ getAssetFromNewExtensionDraft(publisherName, draftId, assetType) { return __awaiter(this, void 0, void 0, function* () { return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () { let routeValues = { publisherName: publisherName, draftId: draftId, assetType: assetType }; try { let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "88c0b1c8-b4f1-498a-9b2a-8446ef9f32e7", routeValues); let url = verData.requestUrl; let apiVersion = verData.apiVersion; let accept = this.createAcceptHeader("application/octet-stream", apiVersion); resolve((yield this.http.get(url, { "Accept": accept })).message); } catch (err) { reject(err); } })); }); } /** * Get install/uninstall events of an extension. If both count and afterDate parameters are specified, count takes precedence. * * @param {string} publisherName - Name of the publisher * @param {string} extensionName - Name of the extension * @param {number} count - Count of events to fetch, applies to each event type. * @param {Date} afterDate - Fetch events that occurred on or after this date * @param {string} include - Filter options. Supported values: install, uninstall, review, acquisition, sales. Default is to fetch all types of events * @param {string} includeProperty - Event properties to include. Currently only 'lastContactDetails' is supported for uninstall events */ getExtensionEvents(publisherName, extensionName, count, afterDate, include, includeProperty) { return __awaiter(this, void 0, void 0, function* () { return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () { let routeValues = { publisherName: publisherName, extensionName: extensionName }; let queryValues = { count: count, afterDate: afterDate, include: include, includeProperty: includeProperty, }; try { let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "3d13c499-2168-4d06-bef4-14aba185dcd5", routeValues, queryValues); let url = verData.requestUrl; let options = this.createRequestOptions('application/json', verData.apiVersion); let res; res = yield this.rest.get(url, options); let ret = this.formatResponse(res.result, GalleryInterfaces.TypeInfo.ExtensionEvents, false); resolve(ret); } catch (err) { reject(err); } })); }); } /** * API endpoint to publish extension install/uninstall events. This is meant to be invoked by EMS only for sending us data related to install/uninstall of an extension. * * @param {GalleryInterfaces.ExtensionEvents[]} extensionEvents */ publishExtensionEvents(extensionEvents) { return __awaiter(this, void 0, void 0, function* () { return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () { let routeValues = {}; try { let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "0bf2bd3a-70e0-4d5d-8bf7-bd4a9c2ab6e7", routeValues); let url = verData.requestUrl; let options = this.createRequestOptions('application/json', verData.apiVersion); let res; res = yield this.rest.create(url, extensionEvents, options); let ret = this.formatResponse(res.result, null, false); resolve(ret); } catch (err) { reject(err); } })); }); } /** * @param {GalleryInterfaces.ExtensionQuery} extensionQuery * @param {string} accountToken * @param {String} accountTokenHeader - Header to pass the account token */ queryExtensions(customHeaders, extensionQuery, accountToken, accountTokenHeader) { return __awaiter(this, void 0, void 0, function* () { return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () { let routeValues = {}; let queryValues = { accountToken: accountToken, }; customHeaders = customHeaders || {}; customHeaders["X-Market-AccountToken"] = "accountTokenHeader"; try { let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "eb9d5ee1-6d43-456b-b80e-8a96fbc014b6", routeValues, queryValues); let url = verData.requestUrl; let options = this.createRequestOptions('application/json', verData.apiVersion); options.additionalHeaders = customHeaders; let res; res = yield this.rest.create(url, extensionQuery, options); let ret = this.formatResponse(res.result, GalleryInterfaces.TypeInfo.ExtensionQueryResult, false); resolve(ret); } catch (err) { reject(err); } })); }); } /** * @param {NodeJS.ReadableStream} contentStream - Content to upload * @param {string} extensionType * @param {string} reCaptchaToken */ createExtension(customHeaders, contentStream, extensionType, reCaptchaToken) { return __awaiter(this, void 0, void 0, function* () { return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () { let routeValues = {}; let queryValues = { extensionType: extensionType, reCaptchaToken: reCaptchaToken, }; customHeaders = customHeaders || {}; customHeaders["Content-Type"] = "application/octet-stream"; try { let verData = yield this.vsoClient.getVersioningData("7.2-preview.2", "gallery", "a41192c8-9525-4b58-bc86-179fa549d80d", routeValues, queryValues); let url = verData.requestUrl; let options = this.createRequestOptions('application/json', verData.apiVersion); options.additionalHeaders = customHeaders; let res; res = yield this.rest.uploadStream("POST", url, contentStream, options); let ret = this.formatResponse(res.result, GalleryInterfaces.TypeInfo.PublishedExtension, false); resolve(ret); } catch (err) { reject(err); } })); }); } /** * @param {string} extensionId * @param {string} version */ deleteExtensionById(extensionId, version) { return __awaiter(this, void 0, void 0, function* () { return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () { let routeValues = { extensionId: extensionId }; let queryValues = { version: version, }; try { let verData = yield this.vsoClient.getVersioningData("7.2-preview.2", "gallery", "a41192c8-9525-4b58-bc86-179fa549d80d", routeValues, queryValues); let url = verData.requestUrl; let options = this.createRequestOptions('application/json', verData.apiVersion); let res; res = yield this.rest.del(url, options); let ret = this.formatResponse(res.result, null, false); resolve(ret); } catch (err) { reject(err); } })); }); } /** * @param {string} extensionId * @param {string} version * @param {GalleryInterfaces.ExtensionQueryFlags} flags */ getExtensionById(extensionId, version, flags) { return __awaiter(this, void 0, void 0, function* () { return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () { let routeValues = { extensionId: extensionId }; let queryValues = { version: version, flags: flags, }; try { let verData = yield this.vsoClient.getVersioningData("7.2-preview.2", "gallery", "a41192c8-9525-4b58-bc86-179fa549d80d", routeValues, queryValues); let url = verData.requestUrl; let options = this.createRequestOptions('application/json', verData.apiVersion); let res; res = yield this.rest.get(url, options); let ret = this.formatResponse(res.result, GalleryInterfaces.TypeInfo.PublishedExtension, false); resolve(ret); } catch (err) { reject(err); } })); }); } /** * @param {string} extensionId * @param {string} reCaptchaToken */ updateExtensionById(extensionId, reCaptchaToken) { return __awaiter(this, void 0, void 0, function* () { return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () { let routeValues = { extensionId: extensionId }; let queryValues = { reCaptchaToken: reCaptchaToken, }; try { let verData = yield this.vsoClient.getVersioningData("7.2-preview.2", "gallery", "a41192c8-9525-4b58-bc86-179fa549d80d", routeValues, queryValues); let url = verData.requestUrl; let options = this.createRequestOptions('application/json', verData.apiVersion); let res; res = yield this.rest.replace(url, null, options); let ret = this.formatResponse(res.result, GalleryInterfaces.TypeInfo.PublishedExtension, false); resolve(ret); } catch (err) { reject(err); } })); }); } /** * @param {NodeJS.ReadableStream} contentStream - Content to upload * @param {string} publisherName * @param {string} extensionType * @param {string} reCaptchaToken */ createExtensionWithPublisher(customHeaders, contentStream, publisherName, extensionType, reCaptchaToken) { return __awaiter(this, void 0, void 0, function* () { return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () { let routeValues = { publisherName: pub