docs: function (budget_id, last_knowledge_of_server, options) {
              if (options === void 0) { options = {}; }
              // verify required parameter 'budget_id' is not null or undefined
              if (budget_id === null || budget_id === undefined) {
                  throw new RequiredError('budget_id', 'Required parameter budget_id was null or undefined when calling getCategories.');
              }
              var localVarPath = "/budgets/{budget_id}/categories"
                  .replace("{" + "budget_id" + "}", encodeURIComponent(String(budget_id)));
              var localVarUrlObj = url.parse(localVarPath, true);
              var localVarRequestOptions = Object.assign({ method: 'GET' }, options);
              var localVarHeaderParameter = {};
              var localVarQueryParameter = {};
              localVarHeaderParameter["User-Agent"] = USER_AGENT;
              localVarHeaderParameter["Accept"] = "application/json";
              // authentication bearer required
              if (configuration && configuration.apiKey) {
                  var localVarApiKeyValue = configuration.apiKey;
                  localVarHeaderParameter["Authorization"] = localVarApiKeyValue;
              }
              if (last_knowledge_of_server !== undefined) {
                  localVarQueryParameter['last_knowledge_of_server'] = last_knowledge_of_server;
              }
              localVarUrlObj.query = Object.assign({}, localVarUrlObj.query, localVarQueryParameter, options.query);
              // fix override query string Detail: https://stackoverflow.com/a/7517673/1077943
              delete localVarUrlObj.search;
              localVarRequestOptions.headers = Object.assign({}, localVarHeaderParameter, options.headers);
              return {
                  url: url.format(localVarUrlObj),
                  options: localVarRequestOptions,
              };
          }