text: "use strict";
  /**
   * Copyright 2019 Google LLC
   *
   * Licensed under the Apache License, Version 2.0 (the "License");
   * you may not use this file except in compliance with the License.
   * You may obtain a copy of the License at
   *
   *      http://www.apache.org/licenses/LICENSE-2.0
   *
   * Unless required by applicable law or agreed to in writing, software
   * distributed under the License is distributed on an "AS IS" BASIS,
   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   * See the License for the specific language governing permissions and
   * limitations under the License.
   */
  Object.defineProperty(exports, "__esModule", { value: true });
  const googleapis_common_1 = require("googleapis-common");
  // tslint:disable: no-any
  // tslint:disable: class-name
  // tslint:disable: variable-name
  // tslint:disable: jsdoc-format
  // tslint:disable: no-namespace
  var content_v2_1;
  (function (content_v2_1) {
      let context;
      /**
       * Content API for Shopping
       *
       * Manages product items, inventory, and Merchant Center accounts for Google
       * Shopping.
       *
       * @example
       * const {google} = require('googleapis');
       * const content = google.content('v2.1');
       *
       * @namespace content
       * @type {Function}
       * @version v2.1
       * @variation v2.1
       * @param {object=} options Options for Content
       */
      class Content {
          constructor(options, google) {
              context = { _options: options || {}, google };
              this.accounts = new Resource$Accounts();
              this.accountstatuses = new Resource$Accountstatuses();
              this.accounttax = new Resource$Accounttax();
              this.datafeeds = new Resource$Datafeeds();
              this.datafeedstatuses = new Resource$Datafeedstatuses();
              this.liasettings = new Resource$Liasettings();
              this.orderinvoices = new Resource$Orderinvoices();
              this.orderreports = new Resource$Orderreports();
              this.orderreturns = new Resource$Orderreturns();
              this.orders = new Resource$Orders();
              this.pos = new Resource$Pos();
              this.products = new Resource$Products();
              this.productstatuses = new Resource$Productstatuses();
              this.shippingsettings = new Resource$Shippingsettings();
          }
      }
      content_v2_1.Content = Content;
      class Resource$Accounts {
          constructor() { }
          authinfo(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl + '/content/v2.1/accounts/authinfo')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'GET'
                  }, options),
                  params,
                  requiredParams: [],
                  pathParams: [],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          claimwebsite(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl +
                          '/content/v2.1/{merchantId}/accounts/{accountId}/claimwebsite')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'POST'
                  }, options),
                  params,
                  requiredParams: ['merchantId', 'accountId'],
                  pathParams: ['accountId', 'merchantId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          custombatch(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl + '/content/v2.1/accounts/batch')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'POST'
                  }, options),
                  params,
                  requiredParams: [],
                  pathParams: [],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          delete(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl + '/content/v2.1/{merchantId}/accounts/{accountId}')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'DELETE'
                  }, options),
                  params,
                  requiredParams: ['merchantId', 'accountId'],
                  pathParams: ['accountId', 'merchantId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          get(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl + '/content/v2.1/{merchantId}/accounts/{accountId}')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'GET'
                  }, options),
                  params,
                  requiredParams: ['merchantId', 'accountId'],
                  pathParams: ['accountId', 'merchantId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          insert(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl + '/content/v2.1/{merchantId}/accounts')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'POST'
                  }, options),
                  params,
                  requiredParams: ['merchantId'],
                  pathParams: ['merchantId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          link(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl +
                          '/content/v2.1/{merchantId}/accounts/{accountId}/link')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'POST'
                  }, options),
                  params,
                  requiredParams: ['merchantId', 'accountId'],
                  pathParams: ['accountId', 'merchantId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          list(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl + '/content/v2.1/{merchantId}/accounts')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'GET'
                  }, options),
                  params,
                  requiredParams: ['merchantId'],
                  pathParams: ['merchantId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          update(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl + '/content/v2.1/{merchantId}/accounts/{accountId}')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'PUT'
                  }, options),
                  params,
                  requiredParams: ['merchantId', 'accountId'],
                  pathParams: ['accountId', 'merchantId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
      }
      content_v2_1.Resource$Accounts = Resource$Accounts;
      class Resource$Accountstatuses {
          constructor() { }
          custombatch(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl + '/content/v2.1/accountstatuses/batch')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'POST'
                  }, options),
                  params,
                  requiredParams: [],
                  pathParams: [],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          get(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl +
                          '/content/v2.1/{merchantId}/accountstatuses/{accountId}')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'GET'
                  }, options),
                  params,
                  requiredParams: ['merchantId', 'accountId'],
                  pathParams: ['accountId', 'merchantId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          list(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl + '/content/v2.1/{merchantId}/accountstatuses')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'GET'
                  }, options),
                  params,
                  requiredParams: ['merchantId'],
                  pathParams: ['merchantId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
      }
      content_v2_1.Resource$Accountstatuses = Resource$Accountstatuses;
      class Resource$Accounttax {
          constructor() { }
          custombatch(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl + '/content/v2.1/accounttax/batch')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'POST'
                  }, options),
                  params,
                  requiredParams: [],
                  pathParams: [],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          get(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl +
                          '/content/v2.1/{merchantId}/accounttax/{accountId}')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'GET'
                  }, options),
                  params,
                  requiredParams: ['merchantId', 'accountId'],
                  pathParams: ['accountId', 'merchantId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          list(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl + '/content/v2.1/{merchantId}/accounttax')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'GET'
                  }, options),
                  params,
                  requiredParams: ['merchantId'],
                  pathParams: ['merchantId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          update(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl +
                          '/content/v2.1/{merchantId}/accounttax/{accountId}')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'PUT'
                  }, options),
                  params,
                  requiredParams: ['merchantId', 'accountId'],
                  pathParams: ['accountId', 'merchantId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
      }
      content_v2_1.Resource$Accounttax = Resource$Accounttax;
      class Resource$Datafeeds {
          constructor() { }
          custombatch(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl + '/content/v2.1/datafeeds/batch')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'POST'
                  }, options),
                  params,
                  requiredParams: [],
                  pathParams: [],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          delete(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl +
                          '/content/v2.1/{merchantId}/datafeeds/{datafeedId}')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'DELETE'
                  }, options),
                  params,
                  requiredParams: ['merchantId', 'datafeedId'],
                  pathParams: ['datafeedId', 'merchantId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          fetchnow(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl +
                          '/content/v2.1/{merchantId}/datafeeds/{datafeedId}/fetchNow')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'POST'
                  }, options),
                  params,
                  requiredParams: ['merchantId', 'datafeedId'],
                  pathParams: ['datafeedId', 'merchantId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          get(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl +
                          '/content/v2.1/{merchantId}/datafeeds/{datafeedId}')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'GET'
                  }, options),
                  params,
                  requiredParams: ['merchantId', 'datafeedId'],
                  pathParams: ['datafeedId', 'merchantId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          insert(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl + '/content/v2.1/{merchantId}/datafeeds')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'POST'
                  }, options),
                  params,
                  requiredParams: ['merchantId'],
                  pathParams: ['merchantId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          list(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl + '/content/v2.1/{merchantId}/datafeeds')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'GET'
                  }, options),
                  params,
                  requiredParams: ['merchantId'],
                  pathParams: ['merchantId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          update(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl +
                          '/content/v2.1/{merchantId}/datafeeds/{datafeedId}')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'PUT'
                  }, options),
                  params,
                  requiredParams: ['merchantId', 'datafeedId'],
                  pathParams: ['datafeedId', 'merchantId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
      }
      content_v2_1.Resource$Datafeeds = Resource$Datafeeds;
      class Resource$Datafeedstatuses {
          constructor() { }
          custombatch(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl + '/content/v2.1/datafeedstatuses/batch')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'POST'
                  }, options),
                  params,
                  requiredParams: [],
                  pathParams: [],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          get(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl +
                          '/content/v2.1/{merchantId}/datafeedstatuses/{datafeedId}')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'GET'
                  }, options),
                  params,
                  requiredParams: ['merchantId', 'datafeedId'],
                  pathParams: ['datafeedId', 'merchantId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          list(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl + '/content/v2.1/{merchantId}/datafeedstatuses')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'GET'
                  }, options),
                  params,
                  requiredParams: ['merchantId'],
                  pathParams: ['merchantId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
      }
      content_v2_1.Resource$Datafeedstatuses = Resource$Datafeedstatuses;
      class Resource$Liasettings {
          constructor() { }
          custombatch(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl + '/content/v2.1/liasettings/batch')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'POST'
                  }, options),
                  params,
                  requiredParams: [],
                  pathParams: [],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          get(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl +
                          '/content/v2.1/{merchantId}/liasettings/{accountId}')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'GET'
                  }, options),
                  params,
                  requiredParams: ['merchantId', 'accountId'],
                  pathParams: ['accountId', 'merchantId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          getaccessiblegmbaccounts(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl +
                          '/content/v2.1/{merchantId}/liasettings/{accountId}/accessiblegmbaccounts')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'GET'
                  }, options),
                  params,
                  requiredParams: ['merchantId', 'accountId'],
                  pathParams: ['accountId', 'merchantId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          list(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl + '/content/v2.1/{merchantId}/liasettings')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'GET'
                  }, options),
                  params,
                  requiredParams: ['merchantId'],
                  pathParams: ['merchantId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          listposdataproviders(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl + '/content/v2.1/liasettings/posdataproviders')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'GET'
                  }, options),
                  params,
                  requiredParams: [],
                  pathParams: [],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          requestgmbaccess(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl +
                          '/content/v2.1/{merchantId}/liasettings/{accountId}/requestgmbaccess')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'POST'
                  }, options),
                  params,
                  requiredParams: ['merchantId', 'accountId', 'gmbEmail'],
                  pathParams: ['accountId', 'merchantId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          requestinventoryverification(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl +
                          '/content/v2.1/{merchantId}/liasettings/{accountId}/requestinventoryverification/{country}')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'POST'
                  }, options),
                  params,
                  requiredParams: ['merchantId', 'accountId', 'country'],
                  pathParams: ['accountId', 'country', 'merchantId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          setinventoryverificationcontact(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl +
                          '/content/v2.1/{merchantId}/liasettings/{accountId}/setinventoryverificationcontact')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'POST'
                  }, options),
                  params,
                  requiredParams: [
                      'merchantId', 'accountId', 'contactEmail', 'contactName', 'country',
                      'language'
                  ],
                  pathParams: ['accountId', 'merchantId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          setposdataprovider(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl +
                          '/content/v2.1/{merchantId}/liasettings/{accountId}/setposdataprovider')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'POST'
                  }, options),
                  params,
                  requiredParams: ['merchantId', 'accountId', 'country'],
                  pathParams: ['accountId', 'merchantId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          update(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl +
                          '/content/v2.1/{merchantId}/liasettings/{accountId}')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'PUT'
                  }, options),
                  params,
                  requiredParams: ['merchantId', 'accountId'],
                  pathParams: ['accountId', 'merchantId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
      }
      content_v2_1.Resource$Liasettings = Resource$Liasettings;
      class Resource$Orderinvoices {
          constructor() { }
          createchargeinvoice(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl +
                          '/content/v2.1/{merchantId}/orderinvoices/{orderId}/createChargeInvoice')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'POST'
                  }, options),
                  params,
                  requiredParams: ['merchantId', 'orderId'],
                  pathParams: ['merchantId', 'orderId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          createrefundinvoice(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl +
                          '/content/v2.1/{merchantId}/orderinvoices/{orderId}/createRefundInvoice')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'POST'
                  }, options),
                  params,
                  requiredParams: ['merchantId', 'orderId'],
                  pathParams: ['merchantId', 'orderId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
      }
      content_v2_1.Resource$Orderinvoices = Resource$Orderinvoices;
      class Resource$Orderreports {
          constructor() { }
          listdisbursements(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl +
                          '/content/v2.1/{merchantId}/orderreports/disbursements')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'GET'
                  }, options),
                  params,
                  requiredParams: ['merchantId', 'disbursementStartDate'],
                  pathParams: ['merchantId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          listtransactions(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl +
                          '/content/v2.1/{merchantId}/orderreports/disbursements/{disbursementId}/transactions')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'GET'
                  }, options),
                  params,
                  requiredParams: ['merchantId', 'disbursementId', 'transactionStartDate'],
                  pathParams: ['disbursementId', 'merchantId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
      }
      content_v2_1.Resource$Orderreports = Resource$Orderreports;
      class Resource$Orderreturns {
          constructor() { }
          get(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl +
                          '/content/v2.1/{merchantId}/orderreturns/{returnId}')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'GET'
                  }, options),
                  params,
                  requiredParams: ['merchantId', 'returnId'],
                  pathParams: ['merchantId', 'returnId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          list(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl + '/content/v2.1/{merchantId}/orderreturns')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'GET'
                  }, options),
                  params,
                  requiredParams: ['merchantId'],
                  pathParams: ['merchantId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
      }
      content_v2_1.Resource$Orderreturns = Resource$Orderreturns;
      class Resource$Orders {
          constructor() { }
          acknowledge(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl +
                          '/content/v2.1/{merchantId}/orders/{orderId}/acknowledge')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'POST'
                  }, options),
                  params,
                  requiredParams: ['merchantId', 'orderId'],
                  pathParams: ['merchantId', 'orderId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          advancetestorder(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl +
                          '/content/v2.1/{merchantId}/testorders/{orderId}/advance')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'POST'
                  }, options),
                  params,
                  requiredParams: ['merchantId', 'orderId'],
                  pathParams: ['merchantId', 'orderId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          cancel(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl +
                          '/content/v2.1/{merchantId}/orders/{orderId}/cancel')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'POST'
                  }, options),
                  params,
                  requiredParams: ['merchantId', 'orderId'],
                  pathParams: ['merchantId', 'orderId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          cancellineitem(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl +
                          '/content/v2.1/{merchantId}/orders/{orderId}/cancelLineItem')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'POST'
                  }, options),
                  params,
                  requiredParams: ['merchantId', 'orderId'],
                  pathParams: ['merchantId', 'orderId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          canceltestorderbycustomer(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl +
                          '/content/v2.1/{merchantId}/testorders/{orderId}/cancelByCustomer')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'POST'
                  }, options),
                  params,
                  requiredParams: ['merchantId', 'orderId'],
                  pathParams: ['merchantId', 'orderId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          createtestorder(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl + '/content/v2.1/{merchantId}/testorders')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'POST'
                  }, options),
                  params,
                  requiredParams: ['merchantId'],
                  pathParams: ['merchantId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          createtestreturn(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl +
                          '/content/v2.1/{merchantId}/orders/{orderId}/testreturn')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'POST'
                  }, options),
                  params,
                  requiredParams: ['merchantId', 'orderId'],
                  pathParams: ['merchantId', 'orderId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          get(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl + '/content/v2.1/{merchantId}/orders/{orderId}')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'GET'
                  }, options),
                  params,
                  requiredParams: ['merchantId', 'orderId'],
                  pathParams: ['merchantId', 'orderId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          getbymerchantorderid(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl +
                          '/content/v2.1/{merchantId}/ordersbymerchantid/{merchantOrderId}')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'GET'
                  }, options),
                  params,
                  requiredParams: ['merchantId', 'merchantOrderId'],
                  pathParams: ['merchantId', 'merchantOrderId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          gettestordertemplate(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl +
                          '/content/v2.1/{merchantId}/testordertemplates/{templateName}')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'GET'
                  }, options),
                  params,
                  requiredParams: ['merchantId', 'templateName'],
                  pathParams: ['merchantId', 'templateName'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          instorerefundlineitem(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl +
                          '/content/v2.1/{merchantId}/orders/{orderId}/inStoreRefundLineItem')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'POST'
                  }, options),
                  params,
                  requiredParams: ['merchantId', 'orderId'],
                  pathParams: ['merchantId', 'orderId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          list(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl + '/content/v2.1/{merchantId}/orders')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'GET'
                  }, options),
                  params,
                  requiredParams: ['merchantId'],
                  pathParams: ['merchantId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          rejectreturnlineitem(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl +
                          '/content/v2.1/{merchantId}/orders/{orderId}/rejectReturnLineItem')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'POST'
                  }, options),
                  params,
                  requiredParams: ['merchantId', 'orderId'],
                  pathParams: ['merchantId', 'orderId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          returnrefundlineitem(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl +
                          '/content/v2.1/{merchantId}/orders/{orderId}/returnRefundLineItem')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'POST'
                  }, options),
                  params,
                  requiredParams: ['merchantId', 'orderId'],
                  pathParams: ['merchantId', 'orderId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          setlineitemmetadata(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl +
                          '/content/v2.1/{merchantId}/orders/{orderId}/setLineItemMetadata')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'POST'
                  }, options),
                  params,
                  requiredParams: ['merchantId', 'orderId'],
                  pathParams: ['merchantId', 'orderId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          shiplineitems(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl +
                          '/content/v2.1/{merchantId}/orders/{orderId}/shipLineItems')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'POST'
                  }, options),
                  params,
                  requiredParams: ['merchantId', 'orderId'],
                  pathParams: ['merchantId', 'orderId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          updatelineitemshippingdetails(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl +
                          '/content/v2.1/{merchantId}/orders/{orderId}/updateLineItemShippingDetails')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'POST'
                  }, options),
                  params,
                  requiredParams: ['merchantId', 'orderId'],
                  pathParams: ['merchantId', 'orderId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          updatemerchantorderid(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl +
                          '/content/v2.1/{merchantId}/orders/{orderId}/updateMerchantOrderId')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'POST'
                  }, options),
                  params,
                  requiredParams: ['merchantId', 'orderId'],
                  pathParams: ['merchantId', 'orderId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          updateshipment(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl +
                          '/content/v2.1/{merchantId}/orders/{orderId}/updateShipment')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'POST'
                  }, options),
                  params,
                  requiredParams: ['merchantId', 'orderId'],
                  pathParams: ['merchantId', 'orderId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
      }
      content_v2_1.Resource$Orders = Resource$Orders;
      class Resource$Pos {
          constructor() { }
          custombatch(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl + '/content/v2.1/pos/batch')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'POST'
                  }, options),
                  params,
                  requiredParams: [],
                  pathParams: [],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          delete(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl +
                          '/content/v2.1/{merchantId}/pos/{targetMerchantId}/store/{storeCode}')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'DELETE'
                  }, options),
                  params,
                  requiredParams: ['merchantId', 'targetMerchantId', 'storeCode'],
                  pathParams: ['merchantId', 'storeCode', 'targetMerchantId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          get(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl +
                          '/content/v2.1/{merchantId}/pos/{targetMerchantId}/store/{storeCode}')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'GET'
                  }, options),
                  params,
                  requiredParams: ['merchantId', 'targetMerchantId', 'storeCode'],
                  pathParams: ['merchantId', 'storeCode', 'targetMerchantId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          insert(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl +
                          '/content/v2.1/{merchantId}/pos/{targetMerchantId}/store')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'POST'
                  }, options),
                  params,
                  requiredParams: ['merchantId', 'targetMerchantId'],
                  pathParams: ['merchantId', 'targetMerchantId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          inventory(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl +
                          '/content/v2.1/{merchantId}/pos/{targetMerchantId}/inventory')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'POST'
                  }, options),
                  params,
                  requiredParams: ['merchantId', 'targetMerchantId'],
                  pathParams: ['merchantId', 'targetMerchantId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          list(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl +
                          '/content/v2.1/{merchantId}/pos/{targetMerchantId}/store')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'GET'
                  }, options),
                  params,
                  requiredParams: ['merchantId', 'targetMerchantId'],
                  pathParams: ['merchantId', 'targetMerchantId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          sale(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl +
                          '/content/v2.1/{merchantId}/pos/{targetMerchantId}/sale')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'POST'
                  }, options),
                  params,
                  requiredParams: ['merchantId', 'targetMerchantId'],
                  pathParams: ['merchantId', 'targetMerchantId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
      }
      content_v2_1.Resource$Pos = Resource$Pos;
      class Resource$Products {
          constructor() { }
          custombatch(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl + '/content/v2.1/products/batch')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'POST'
                  }, options),
                  params,
                  requiredParams: [],
                  pathParams: [],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          delete(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl + '/content/v2.1/{merchantId}/products/{productId}')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'DELETE'
                  }, options),
                  params,
                  requiredParams: ['merchantId', 'productId'],
                  pathParams: ['merchantId', 'productId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          get(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl + '/content/v2.1/{merchantId}/products/{productId}')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'GET'
                  }, options),
                  params,
                  requiredParams: ['merchantId', 'productId'],
                  pathParams: ['merchantId', 'productId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          insert(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl + '/content/v2.1/{merchantId}/products')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'POST'
                  }, options),
                  params,
                  requiredParams: ['merchantId'],
                  pathParams: ['merchantId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          list(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl + '/content/v2.1/{merchantId}/products')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'GET'
                  }, options),
                  params,
                  requiredParams: ['merchantId'],
                  pathParams: ['merchantId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
      }
      content_v2_1.Resource$Products = Resource$Products;
      class Resource$Productstatuses {
          constructor() { }
          custombatch(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl + '/content/v2.1/productstatuses/batch')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'POST'
                  }, options),
                  params,
                  requiredParams: [],
                  pathParams: [],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          get(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl +
                          '/content/v2.1/{merchantId}/productstatuses/{productId}')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'GET'
                  }, options),
                  params,
                  requiredParams: ['merchantId', 'productId'],
                  pathParams: ['merchantId', 'productId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          list(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl + '/content/v2.1/{merchantId}/productstatuses')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'GET'
                  }, options),
                  params,
                  requiredParams: ['merchantId'],
                  pathParams: ['merchantId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
      }
      content_v2_1.Resource$Productstatuses = Resource$Productstatuses;
      class Resource$Shippingsettings {
          constructor() { }
          custombatch(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl + '/content/v2.1/shippingsettings/batch')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'POST'
                  }, options),
                  params,
                  requiredParams: [],
                  pathParams: [],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          get(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl +
                          '/content/v2.1/{merchantId}/shippingsettings/{accountId}')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'GET'
                  }, options),
                  params,
                  requiredParams: ['merchantId', 'accountId'],
                  pathParams: ['accountId', 'merchantId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          getsupportedcarriers(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl + '/content/v2.1/{merchantId}/supportedCarriers')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'GET'
                  }, options),
                  params,
                  requiredParams: ['merchantId'],
                  pathParams: ['merchantId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          getsupportedholidays(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl + '/content/v2.1/{merchantId}/supportedHolidays')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'GET'
                  }, options),
                  params,
                  requiredParams: ['merchantId'],
                  pathParams: ['merchantId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          list(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl + '/content/v2.1/{merchantId}/shippingsettings')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'GET'
                  }, options),
                  params,
                  requiredParams: ['merchantId'],
                  pathParams: ['merchantId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
          update(paramsOrCallback, optionsOrCallback, callback) {
              let params = (paramsOrCallback || {});
              let options = (optionsOrCallback || {});
              if (typeof paramsOrCallback === 'function') {
                  callback = paramsOrCallback;
                  params = {};
                  options = {};
              }
              if (typeof optionsOrCallback === 'function') {
                  callback = optionsOrCallback;
                  options = {};
              }
              const rootUrl = options.rootUrl || 'https://www.googleapis.com/';
              const parameters = {
                  options: Object.assign({
                      url: (rootUrl +
                          '/content/v2.1/{merchantId}/shippingsettings/{accountId}')
                          .replace(/([^:]\/)\/+/g, '$1'),
                      method: 'PUT'
                  }, options),
                  params,
                  requiredParams: ['merchantId', 'accountId'],
                  pathParams: ['accountId', 'merchantId'],
                  context
              };
              if (callback) {
                  googleapis_common_1.createAPIRequest(parameters, callback);
              }
              else {
                  return googleapis_common_1.createAPIRequest(parameters);
              }
          }
      }
      content_v2_1.Resource$Shippingsettings = Resource$Shippingsettings;
  })(content_v2_1 = exports.content_v2_1 || (exports.content_v2_1 = {}));
  //# sourceMappingURL=v2.1.js.map