quickbase-js 0.1.0-beta.7 → 0.1.0-beta.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (82) hide show
  1. package/CHANGELOG.md +55 -0
  2. package/README.md +46 -130
  3. package/dist/esm/quickbase.d.ts +1292 -125
  4. package/dist/esm/quickbase.js +666 -190
  5. package/dist/esm/quickbase.js.map +1 -1
  6. package/dist/esm/quickbase.min.js +1 -1
  7. package/dist/esm/quickbase.min.js.map +1 -1
  8. package/dist/umd/quickbase.umd.js +674 -189
  9. package/dist/umd/quickbase.umd.js.map +1 -1
  10. package/dist/umd/quickbase.umd.min.js +1 -1
  11. package/dist/umd/quickbase.umd.min.js.map +1 -1
  12. package/open-api/fix-spec-main.ts +69 -68
  13. package/open-api/generate-override-report.ts +214 -0
  14. package/open-api/generate-unified-interface.ts +162 -103
  15. package/open-api/output/override-report.html +11 -0
  16. package/open-api/output/override-report.json +14395 -58
  17. package/open-api/output/quickbase-fixed.json +583 -2
  18. package/open-api/schema/tags/fields.ts +331 -16
  19. package/open-api/schema/tags/index.ts +2 -4
  20. package/open-api/types/spec.ts +2 -1
  21. package/open-api/utils/generateJsDoc.ts +96 -0
  22. package/package.json +33 -33
  23. package/src/RateLimitError.ts +12 -0
  24. package/src/ThrottleBucket.ts +41 -0
  25. package/src/authorizationStrategy.ts +246 -0
  26. package/src/generated-unified/QuickbaseClient.ts +809 -119
  27. package/src/invokeMethod.ts +242 -0
  28. package/src/quickbaseClient.ts +117 -248
  29. package/src/rateLimiter.ts +25 -0
  30. package/src/tokenCache.ts +10 -26
  31. package/tests/setup.ts +2 -0
  32. package/tests/vitest/qb/apps/getApp.test.ts +6 -2
  33. package/tests/vitest/qb/apps/getAppEvents.test.ts +67 -0
  34. package/tests/vitest/qb/apps/updateApp.test.ts +58 -0
  35. package/tests/vitest/qb/auth/mockQuickbaseServer.ts +60 -0
  36. package/tests/vitest/qb/auth/retryUserToken401.test.ts +73 -0
  37. package/tests/vitest/qb/auth/ssoTokenIntegrationWithServer.test.ts +65 -0
  38. package/tests/vitest/qb/fields/createField.test.ts +1 -2
  39. package/tests/vitest/qb/fields/deleteFields.test.ts +10 -16
  40. package/tests/vitest/qb/fields/getFieldUsage.test.ts +58 -150
  41. package/tests/vitest/qb/fields/updateField.test.ts +93 -0
  42. package/tests/vitest/qb/formulas/runFormula.test.ts +96 -0
  43. package/tests/vitest/qb/index.ts +1 -0
  44. package/tests/vitest/qb/tables/createRelationship.test.ts +102 -0
  45. package/tests/vitest/qb/tables/deleteRelationship.test.ts +143 -0
  46. package/tests/vitest/qb/tables/updateRelationship.test.ts +250 -0
  47. package/tests/vitest/unit/ThrottleBucket.test.ts +95 -0
  48. package/tests/vitest/unit/apps/copyApp.test.ts +133 -40
  49. package/tests/vitest/unit/apps/getAppEvents.test.ts +193 -0
  50. package/tests/vitest/unit/apps/updateApp.test.ts +412 -0
  51. package/tests/vitest/unit/auth/fetchTempToken401.test.ts +7 -26
  52. package/tests/vitest/unit/auth/getTempToken.test.ts +42 -18
  53. package/tests/vitest/unit/auth/retryTempToken401.test.ts +95 -0
  54. package/tests/vitest/unit/auth/retryTempTokenMaxRetries.test.ts +235 -0
  55. package/tests/vitest/unit/auth/retryUserToken401.test.ts +69 -0
  56. package/tests/vitest/unit/auth/ssoTokenRefresh.test.ts +325 -0
  57. package/tests/vitest/unit/fields/createField.test.ts +180 -120
  58. package/tests/vitest/unit/fields/getFieldUsage.test.ts +47 -14
  59. package/tests/vitest/unit/fields/updateField.test.ts +285 -0
  60. package/tests/vitest/unit/formulas/runFormula.test.ts +205 -0
  61. package/tests/vitest/unit/index.ts +2 -1
  62. package/tests/vitest/unit/inferHttpMethod.test.ts +131 -0
  63. package/tests/vitest/unit/rateLimit.test.ts +191 -0
  64. package/tests/vitest/unit/tables/createRelationship.test.ts +212 -0
  65. package/tests/vitest/unit/tables/deleteRelationship.test.ts +97 -0
  66. package/tests/vitest/unit/tables/updateRelationship.test.ts +307 -0
  67. package/tests/vitest/unit/tokenLifespan.test.ts +204 -0
  68. package/tools/log-gen.ts +20 -7
  69. package/tools/log-gen.yaml +3446 -1848
  70. package/tsconfig.json +5 -2
  71. package/vitest.config.ts +2 -2
  72. package/notes.txt +0 -158
  73. package/tests/vitest/unit/auth/retryOn401.test.ts +0 -116
  74. package/tests/vitest/unit/auth/two401s.test.ts +0 -86
  75. package/tools/generate-types.ts +0 -29
  76. package/tools/openapi-schema-validator.ts +0 -38
  77. package/tools/spec-analyzer.ts +0 -163
  78. package/tools/split-spec.ts +0 -148
  79. package/tools/test-import.ts +0 -3
  80. package/tools/validate-spec.ts +0 -40
  81. /package/tests/playwright/qb/auth/{tokenPrefetch.test.ts → tempTokenPrefetch.test.ts} +0 -0
  82. /package/tests/playwright/qb/auth/{tokenRenewal.test.ts → tempTokenRenewal.test.ts} +0 -0
@@ -1667,6 +1667,209 @@ function CreateField200ResponseToJSONTyped(value, ignoreDiscriminator = false) {
1667
1667
  };
1668
1668
  }
1669
1669
 
1670
+ /* tslint:disable */
1671
+ /* eslint-disable */
1672
+ /**
1673
+ * Quick Base API
1674
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
1675
+ *
1676
+ * The version of the OpenAPI document: 1.0.0
1677
+ *
1678
+ *
1679
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
1680
+ * https://openapi-generator.tech
1681
+ * Do not edit the class manually.
1682
+ */
1683
+ /**
1684
+ * @export
1685
+ */
1686
+ const CreateFieldRequestPropertiesOpenTargetInEnum = {
1687
+ SameWindow: 'sameWindow',
1688
+ NewWindow: 'newWindow',
1689
+ Popup: 'popup'
1690
+ };
1691
+ /**
1692
+ * @export
1693
+ */
1694
+ const CreateFieldRequestPropertiesSummaryFunctionEnum = {
1695
+ Avg: 'AVG',
1696
+ Sum: 'SUM',
1697
+ Max: 'MAX',
1698
+ Min: 'MIN',
1699
+ StdDev: 'STD-DEV',
1700
+ Count: 'COUNT',
1701
+ CombinedText: 'COMBINED-TEXT',
1702
+ CombinedUser: 'COMBINED-USER',
1703
+ DistinctCount: 'DISTINCT-COUNT'
1704
+ };
1705
+ /**
1706
+ * @export
1707
+ */
1708
+ const CreateFieldRequestPropertiesCurrencyFormatEnum = {
1709
+ Left: 'left',
1710
+ Right: 'right',
1711
+ Middle: 'middle'
1712
+ };
1713
+ /**
1714
+ * @export
1715
+ */
1716
+ const CreateFieldRequestPropertiesVersionModeEnum = {
1717
+ Keepallversions: 'keepallversions',
1718
+ Keeplastversions: 'keeplastversions'
1719
+ };
1720
+ /**
1721
+ * Check if a given object implements the CreateFieldRequestProperties interface.
1722
+ */
1723
+ function instanceOfCreateFieldRequestProperties(value) {
1724
+ return true;
1725
+ }
1726
+ function CreateFieldRequestPropertiesFromJSON(json) {
1727
+ return CreateFieldRequestPropertiesFromJSONTyped(json);
1728
+ }
1729
+ function CreateFieldRequestPropertiesFromJSONTyped(json, ignoreDiscriminator) {
1730
+ if (json == null) {
1731
+ return json;
1732
+ }
1733
+ return {
1734
+ 'numLines': json['numLines'] == null ? undefined : json['numLines'],
1735
+ 'maxLength': json['maxLength'] == null ? undefined : json['maxLength'],
1736
+ 'appendOnly': json['appendOnly'] == null ? undefined : json['appendOnly'],
1737
+ 'sortAsGiven': json['sortAsGiven'] == null ? undefined : json['sortAsGiven'],
1738
+ 'allowMentions': json['allowMentions'] == null ? undefined : json['allowMentions'],
1739
+ 'comments': json['comments'] == null ? undefined : json['comments'],
1740
+ 'doesTotal': json['doesTotal'] == null ? undefined : json['doesTotal'],
1741
+ 'autoSave': json['autoSave'] == null ? undefined : json['autoSave'],
1742
+ 'defaultValueLuid': json['defaultValueLuid'] == null ? undefined : json['defaultValueLuid'],
1743
+ 'useI18NFormat': json['useI18NFormat'] == null ? undefined : json['useI18NFormat'],
1744
+ 'maxVersions': json['maxVersions'] == null ? undefined : json['maxVersions'],
1745
+ 'format': json['format'] == null ? undefined : json['format'],
1746
+ 'carryChoices': json['carryChoices'] == null ? undefined : json['carryChoices'],
1747
+ 'linkText': json['linkText'] == null ? undefined : json['linkText'],
1748
+ 'parentFieldId': json['parentFieldId'] == null ? undefined : json['parentFieldId'],
1749
+ 'displayTimezone': json['displayTimezone'] == null ? undefined : json['displayTimezone'],
1750
+ 'summaryTargetFieldId': json['summaryTargetFieldId'] == null ? undefined : json['summaryTargetFieldId'],
1751
+ 'allowNewChoices': json['allowNewChoices'] == null ? undefined : json['allowNewChoices'],
1752
+ 'defaultToday': json['defaultToday'] == null ? undefined : json['defaultToday'],
1753
+ 'units': json['units'] == null ? undefined : json['units'],
1754
+ 'openTargetIn': json['openTargetIn'] == null ? undefined : json['openTargetIn'],
1755
+ 'lookupTargetFieldId': json['lookupTargetFieldId'] == null ? undefined : json['lookupTargetFieldId'],
1756
+ 'summaryFunction': json['summaryFunction'] == null ? undefined : json['summaryFunction'],
1757
+ 'sourceFieldId': json['sourceFieldId'] == null ? undefined : json['sourceFieldId'],
1758
+ 'doesAverage': json['doesAverage'] == null ? undefined : json['doesAverage'],
1759
+ 'formula': json['formula'] == null ? undefined : json['formula'],
1760
+ 'decimalPlaces': json['decimalPlaces'] == null ? undefined : json['decimalPlaces'],
1761
+ 'defaultCountryCode': json['defaultCountryCode'] == null ? undefined : json['defaultCountryCode'],
1762
+ 'displayMonth': json['displayMonth'] == null ? undefined : json['displayMonth'],
1763
+ 'seeVersions': json['seeVersions'] == null ? undefined : json['seeVersions'],
1764
+ 'defaultKind': json['defaultKind'] == null ? undefined : json['defaultKind'],
1765
+ 'displayEmail': json['displayEmail'] == null ? undefined : json['displayEmail'],
1766
+ 'coverText': json['coverText'] == null ? undefined : json['coverText'],
1767
+ 'currencySymbol': json['currencySymbol'] == null ? undefined : json['currencySymbol'],
1768
+ 'summaryQuery': json['summaryQuery'] == null ? undefined : json['summaryQuery'],
1769
+ 'targetFieldId': json['targetFieldId'] == null ? undefined : json['targetFieldId'],
1770
+ 'displayUser': json['displayUser'] == null ? undefined : json['displayUser'],
1771
+ 'blankIsZero': json['blankIsZero'] == null ? undefined : json['blankIsZero'],
1772
+ 'exact': json['exact'] == null ? undefined : json['exact'],
1773
+ 'defaultDomain': json['defaultDomain'] == null ? undefined : json['defaultDomain'],
1774
+ 'defaultValue': json['defaultValue'] == null ? undefined : json['defaultValue'],
1775
+ 'abbreviate': json['abbreviate'] == null ? undefined : json['abbreviate'],
1776
+ 'numberFormat': json['numberFormat'] == null ? undefined : json['numberFormat'],
1777
+ 'targetTableName': json['targetTableName'] == null ? undefined : json['targetTableName'],
1778
+ 'appearsAs': json['appearsAs'] == null ? undefined : json['appearsAs'],
1779
+ 'width': json['width'] == null ? undefined : json['width'],
1780
+ 'currencyFormat': json['currencyFormat'] == null ? undefined : json['currencyFormat'],
1781
+ 'displayDayOfWeek': json['displayDayOfWeek'] == null ? undefined : json['displayDayOfWeek'],
1782
+ 'summaryReferenceFieldId': json['summaryReferenceFieldId'] == null ? undefined : json['summaryReferenceFieldId'],
1783
+ 'commaStart': json['commaStart'] == null ? undefined : json['commaStart'],
1784
+ 'choices': json['choices'] == null ? undefined : json['choices'],
1785
+ 'targetTableId': json['targetTableId'] == null ? undefined : json['targetTableId'],
1786
+ 'displayRelative': json['displayRelative'] == null ? undefined : json['displayRelative'],
1787
+ 'compositeFields': json['compositeFields'] == null ? undefined : json['compositeFields'],
1788
+ 'displayCheckboxAsText': json['displayCheckboxAsText'] == null ? undefined : json['displayCheckboxAsText'],
1789
+ 'versionMode': json['versionMode'] == null ? undefined : json['versionMode'],
1790
+ 'snapFieldId': json['snapFieldId'] == null ? undefined : json['snapFieldId'],
1791
+ 'hours24': json['hours24'] == null ? undefined : json['hours24'],
1792
+ 'sortAlpha': json['sortAlpha'] == null ? undefined : json['sortAlpha'],
1793
+ 'hasExtension': json['hasExtension'] == null ? undefined : json['hasExtension'],
1794
+ 'useNewWindow': json['useNewWindow'] == null ? undefined : json['useNewWindow'],
1795
+ 'displayAsLink': json['displayAsLink'] == null ? undefined : json['displayAsLink'],
1796
+ 'lookupReferenceFieldId': json['lookupReferenceFieldId'] == null ? undefined : json['lookupReferenceFieldId'],
1797
+ };
1798
+ }
1799
+ function CreateFieldRequestPropertiesToJSON(json) {
1800
+ return CreateFieldRequestPropertiesToJSONTyped(json, false);
1801
+ }
1802
+ function CreateFieldRequestPropertiesToJSONTyped(value, ignoreDiscriminator = false) {
1803
+ if (value == null) {
1804
+ return value;
1805
+ }
1806
+ return {
1807
+ 'numLines': value['numLines'],
1808
+ 'maxLength': value['maxLength'],
1809
+ 'appendOnly': value['appendOnly'],
1810
+ 'sortAsGiven': value['sortAsGiven'],
1811
+ 'allowMentions': value['allowMentions'],
1812
+ 'comments': value['comments'],
1813
+ 'doesTotal': value['doesTotal'],
1814
+ 'autoSave': value['autoSave'],
1815
+ 'defaultValueLuid': value['defaultValueLuid'],
1816
+ 'useI18NFormat': value['useI18NFormat'],
1817
+ 'maxVersions': value['maxVersions'],
1818
+ 'format': value['format'],
1819
+ 'carryChoices': value['carryChoices'],
1820
+ 'linkText': value['linkText'],
1821
+ 'parentFieldId': value['parentFieldId'],
1822
+ 'displayTimezone': value['displayTimezone'],
1823
+ 'summaryTargetFieldId': value['summaryTargetFieldId'],
1824
+ 'allowNewChoices': value['allowNewChoices'],
1825
+ 'defaultToday': value['defaultToday'],
1826
+ 'units': value['units'],
1827
+ 'openTargetIn': value['openTargetIn'],
1828
+ 'lookupTargetFieldId': value['lookupTargetFieldId'],
1829
+ 'summaryFunction': value['summaryFunction'],
1830
+ 'sourceFieldId': value['sourceFieldId'],
1831
+ 'doesAverage': value['doesAverage'],
1832
+ 'formula': value['formula'],
1833
+ 'decimalPlaces': value['decimalPlaces'],
1834
+ 'defaultCountryCode': value['defaultCountryCode'],
1835
+ 'displayMonth': value['displayMonth'],
1836
+ 'seeVersions': value['seeVersions'],
1837
+ 'defaultKind': value['defaultKind'],
1838
+ 'displayEmail': value['displayEmail'],
1839
+ 'coverText': value['coverText'],
1840
+ 'currencySymbol': value['currencySymbol'],
1841
+ 'summaryQuery': value['summaryQuery'],
1842
+ 'targetFieldId': value['targetFieldId'],
1843
+ 'displayUser': value['displayUser'],
1844
+ 'blankIsZero': value['blankIsZero'],
1845
+ 'exact': value['exact'],
1846
+ 'defaultDomain': value['defaultDomain'],
1847
+ 'defaultValue': value['defaultValue'],
1848
+ 'abbreviate': value['abbreviate'],
1849
+ 'numberFormat': value['numberFormat'],
1850
+ 'targetTableName': value['targetTableName'],
1851
+ 'appearsAs': value['appearsAs'],
1852
+ 'width': value['width'],
1853
+ 'currencyFormat': value['currencyFormat'],
1854
+ 'displayDayOfWeek': value['displayDayOfWeek'],
1855
+ 'summaryReferenceFieldId': value['summaryReferenceFieldId'],
1856
+ 'commaStart': value['commaStart'],
1857
+ 'choices': value['choices'],
1858
+ 'targetTableId': value['targetTableId'],
1859
+ 'displayRelative': value['displayRelative'],
1860
+ 'compositeFields': value['compositeFields'],
1861
+ 'displayCheckboxAsText': value['displayCheckboxAsText'],
1862
+ 'versionMode': value['versionMode'],
1863
+ 'snapFieldId': value['snapFieldId'],
1864
+ 'hours24': value['hours24'],
1865
+ 'sortAlpha': value['sortAlpha'],
1866
+ 'hasExtension': value['hasExtension'],
1867
+ 'useNewWindow': value['useNewWindow'],
1868
+ 'displayAsLink': value['displayAsLink'],
1869
+ 'lookupReferenceFieldId': value['lookupReferenceFieldId'],
1870
+ };
1871
+ }
1872
+
1670
1873
  /* tslint:disable */
1671
1874
  /* eslint-disable */
1672
1875
  /**
@@ -1737,6 +1940,7 @@ function CreateFieldRequestFromJSONTyped(json, ignoreDiscriminator) {
1737
1940
  'findEnabled': json['findEnabled'] == null ? undefined : json['findEnabled'],
1738
1941
  'doesDataCopy': json['doesDataCopy'] == null ? undefined : json['doesDataCopy'],
1739
1942
  'audited': json['audited'] == null ? undefined : json['audited'],
1943
+ 'properties': json['properties'] == null ? undefined : CreateFieldRequestPropertiesFromJSON(json['properties']),
1740
1944
  };
1741
1945
  }
1742
1946
  function CreateFieldRequestToJSON(json) {
@@ -1760,6 +1964,7 @@ function CreateFieldRequestToJSONTyped(value, ignoreDiscriminator = false) {
1760
1964
  'findEnabled': value['findEnabled'],
1761
1965
  'doesDataCopy': value['doesDataCopy'],
1762
1966
  'audited': value['audited'],
1967
+ 'properties': CreateFieldRequestPropertiesToJSON(value['properties']),
1763
1968
  };
1764
1969
  }
1765
1970
 
@@ -6355,8 +6560,6 @@ const UpdateFieldRequestFieldTypeEnum = {
6355
6560
  function instanceOfUpdateFieldRequest(value) {
6356
6561
  if (!('label' in value) || value['label'] === undefined)
6357
6562
  return false;
6358
- if (!('fieldType' in value) || value['fieldType'] === undefined)
6359
- return false;
6360
6563
  return true;
6361
6564
  }
6362
6565
  function UpdateFieldRequestFromJSON(json) {
@@ -6368,7 +6571,7 @@ function UpdateFieldRequestFromJSONTyped(json, ignoreDiscriminator) {
6368
6571
  }
6369
6572
  return {
6370
6573
  'label': json['label'],
6371
- 'fieldType': json['fieldType'],
6574
+ 'fieldType': json['fieldType'] == null ? undefined : json['fieldType'],
6372
6575
  'fieldHelp': json['fieldHelp'] == null ? undefined : json['fieldHelp'],
6373
6576
  'addToForms': json['addToForms'] == null ? undefined : json['addToForms'],
6374
6577
  'permissions': json['permissions'] == null ? undefined : json['permissions'],
@@ -6380,6 +6583,7 @@ function UpdateFieldRequestFromJSONTyped(json, ignoreDiscriminator) {
6380
6583
  'findEnabled': json['findEnabled'] == null ? undefined : json['findEnabled'],
6381
6584
  'doesDataCopy': json['doesDataCopy'] == null ? undefined : json['doesDataCopy'],
6382
6585
  'audited': json['audited'] == null ? undefined : json['audited'],
6586
+ 'properties': json['properties'] == null ? undefined : CreateFieldRequestPropertiesFromJSON(json['properties']),
6383
6587
  };
6384
6588
  }
6385
6589
  function UpdateFieldRequestToJSON(json) {
@@ -6403,6 +6607,7 @@ function UpdateFieldRequestToJSONTyped(value, ignoreDiscriminator = false) {
6403
6607
  'findEnabled': value['findEnabled'],
6404
6608
  'doesDataCopy': value['doesDataCopy'],
6405
6609
  'audited': value['audited'],
6610
+ 'properties': CreateFieldRequestPropertiesToJSON(value['properties']),
6406
6611
  };
6407
6612
  }
6408
6613
 
@@ -9440,40 +9645,27 @@ var apis = /*#__PURE__*/Object.freeze({
9440
9645
 
9441
9646
  class TokenCache {
9442
9647
  cache;
9443
- lifespan; // Token lifespan in milliseconds
9444
- constructor(lifespan = 4 * 60 * 1000 + 50 * 1000) {
9445
- // Default 4:50
9648
+ tempTokenLifespan;
9649
+ constructor(tempTokenLifespan = 4 * 60 * 1000 + 50 * 1000) {
9446
9650
  this.cache = new Map();
9447
- this.lifespan = lifespan;
9651
+ this.tempTokenLifespan = tempTokenLifespan;
9448
9652
  }
9449
9653
  get(dbid) {
9450
9654
  const entry = this.cache.get(dbid);
9451
9655
  const now = Date.now();
9452
- if (entry && entry.expiresAt > now) {
9656
+ if (entry && entry.expiresAt > now)
9453
9657
  return entry.token;
9454
- }
9455
- return undefined; // Expired or not found
9456
- }
9457
- // New method to get full entry
9458
- getEntry(dbid) {
9459
- const entry = this.cache.get(dbid);
9460
- const now = Date.now();
9461
- if (entry && entry.expiresAt > now) {
9462
- return entry;
9463
- }
9464
- return undefined; // Expired or not found
9658
+ if (entry)
9659
+ this.cache.delete(dbid); // Clean up expired temp tokens
9660
+ return undefined;
9465
9661
  }
9466
- set(dbid, token) {
9662
+ set(dbid, token, lifespan) {
9467
9663
  const now = Date.now();
9468
9664
  this.cache.set(dbid, {
9469
9665
  token,
9470
- expiresAt: now + this.lifespan,
9666
+ expiresAt: now + (lifespan || this.tempTokenLifespan),
9471
9667
  });
9472
9668
  }
9473
- dump() {
9474
- return Array.from(this.cache.entries());
9475
- }
9476
- // New method to clear the cache
9477
9669
  clear() {
9478
9670
  this.cache.clear();
9479
9671
  }
@@ -9487,20 +9679,405 @@ function simplifyName(name) {
9487
9679
  .replace(/^(\w)/, (_, c) => c.toLowerCase());
9488
9680
  }
9489
9681
 
9682
+ // src/authorizationStrategy.ts
9683
+ class TempTokenStrategy {
9684
+ tokenCache;
9685
+ initialTempToken;
9686
+ constructor(tokenCache, initialTempToken) {
9687
+ this.tokenCache = tokenCache;
9688
+ this.initialTempToken = initialTempToken;
9689
+ }
9690
+ async getToken(dbid) {
9691
+ return this.tokenCache.get(dbid) || this.initialTempToken;
9692
+ }
9693
+ applyHeaders(headers, token) {
9694
+ headers["Authorization"] = `QB-TEMP-TOKEN ${token}`;
9695
+ }
9696
+ async handleError(status, params, fetchTempToken, attempt, maxAttempts, debug, methodName) {
9697
+ if (status !== 401 || attempt >= maxAttempts - 1)
9698
+ return null;
9699
+ if (debug)
9700
+ console.log(`Authorization error for ${methodName || "method"} (temp token), refreshing token:`);
9701
+ const dbid = extractDbid(params);
9702
+ if (!dbid) {
9703
+ if (debug)
9704
+ console.log(`No dbid available for ${methodName || "method"}, skipping token refresh`);
9705
+ return null;
9706
+ }
9707
+ if (debug)
9708
+ console.log(`Refreshing temp token for dbid: ${dbid}`);
9709
+ const newToken = await fetchTempToken(dbid);
9710
+ this.tokenCache.set(dbid, newToken);
9711
+ return newToken;
9712
+ }
9713
+ }
9714
+ class UserTokenStrategy {
9715
+ userToken;
9716
+ constructor(userToken) {
9717
+ this.userToken = userToken;
9718
+ }
9719
+ async getToken(_dbid) {
9720
+ return this.userToken;
9721
+ }
9722
+ applyHeaders(headers, token) {
9723
+ headers["Authorization"] = `QB-USER-TOKEN ${token}`;
9724
+ }
9725
+ async handleError(status, _params, _fetchTempToken, attempt, maxAttempts, debug, methodName) {
9726
+ if (status !== 401 || attempt >= maxAttempts - 1)
9727
+ return null;
9728
+ if (debug)
9729
+ console.log(`Retrying ${methodName || "method"} with existing user token: ${this.userToken.substring(0, 10)}...`);
9730
+ return this.userToken;
9731
+ }
9732
+ }
9733
+ class SsoTokenStrategy {
9734
+ samlToken;
9735
+ realm;
9736
+ fetchApi;
9737
+ debug;
9738
+ currentToken;
9739
+ constructor(samlToken, realm, fetchApi, debug = false) {
9740
+ this.samlToken = samlToken;
9741
+ this.realm = realm;
9742
+ this.fetchApi = fetchApi;
9743
+ this.debug = debug;
9744
+ }
9745
+ async getToken(_dbid) {
9746
+ if (!this.currentToken) {
9747
+ this.currentToken = await this.fetchSsoToken({
9748
+ grant_type: "urn:ietf:params:oauth:grant-type:token-exchange",
9749
+ requested_token_type: "urn:quickbase:params:oauth:token-type:temp_token",
9750
+ subject_token: this.samlToken,
9751
+ subject_token_type: "urn:ietf:params:oauth:token-type:saml2",
9752
+ });
9753
+ }
9754
+ return this.currentToken;
9755
+ }
9756
+ applyHeaders(headers, token) {
9757
+ headers["Authorization"] = `QB-TEMP-TOKEN ${token}`;
9758
+ }
9759
+ async handleError(status, _params, _fetchTempToken, attempt, maxAttempts, debug, methodName) {
9760
+ if (status !== 401 || attempt >= maxAttempts - 1)
9761
+ return null;
9762
+ if (debug || this.debug) {
9763
+ console.log(`Authorization error for ${methodName || "method"} (SSO), refreshing token`);
9764
+ }
9765
+ const newToken = await this.refreshSsoToken(debug || this.debug);
9766
+ if (newToken) {
9767
+ this.currentToken = newToken;
9768
+ return newToken;
9769
+ }
9770
+ return null;
9771
+ }
9772
+ async refreshSsoToken(debug = false) {
9773
+ const payload = {
9774
+ grant_type: "urn:ietf:params:oauth:grant-type:token-exchange",
9775
+ requested_token_type: "urn:quickbase:params:oauth:token-type:temp_token",
9776
+ subject_token: this.samlToken,
9777
+ subject_token_type: "urn:ietf:params:oauth:token-type:saml2",
9778
+ };
9779
+ const response = await this.fetchApi(`https://api.quickbase.com/v1/auth/oauth/token`, {
9780
+ method: "POST",
9781
+ headers: {
9782
+ "QB-Realm-Hostname": `${this.realm}.quickbase.com`,
9783
+ "Content-Type": "application/json",
9784
+ },
9785
+ body: JSON.stringify(payload),
9786
+ credentials: "omit",
9787
+ });
9788
+ if (!response.ok) {
9789
+ const errorBody = await response.json().catch(() => ({}));
9790
+ if (debug) {
9791
+ console.log(`[SSO Refresh] Failed: ${response.status}`, errorBody);
9792
+ }
9793
+ throw new Error(`SSO token refresh failed: ${errorBody.message || "Unknown error"}`);
9794
+ }
9795
+ const result = await response.json();
9796
+ const newToken = result.access_token;
9797
+ if (!newToken) {
9798
+ throw new Error("No access token returned from SSO token exchange");
9799
+ }
9800
+ if (debug) {
9801
+ console.log(`[SSO Refresh] New token: ${newToken.substring(0, 10)}...`);
9802
+ }
9803
+ return newToken;
9804
+ }
9805
+ async fetchSsoToken(params) {
9806
+ const response = await this.fetchApi(`https://api.quickbase.com/v1/auth/oauth/token`, {
9807
+ method: "POST",
9808
+ headers: {
9809
+ "QB-Realm-Hostname": `${this.realm}.quickbase.com`,
9810
+ "Content-Type": "application/json",
9811
+ },
9812
+ body: JSON.stringify(params),
9813
+ credentials: "omit",
9814
+ });
9815
+ if (!response.ok) {
9816
+ const errorBody = await response.json().catch(() => ({}));
9817
+ if (this.debug) {
9818
+ console.log(`[fetchSsoToken] Failed: ${response.status}`, errorBody);
9819
+ }
9820
+ throw new Error(`SSO token fetch failed: ${errorBody.message || "Unknown error"}`);
9821
+ }
9822
+ const result = await response.json();
9823
+ const newToken = result.access_token;
9824
+ if (!newToken) {
9825
+ throw new Error("No access token returned from SSO token exchange");
9826
+ }
9827
+ if (this.debug) {
9828
+ console.log(`[fetchSsoToken] Fetched token: ${newToken.substring(0, 10)}...`);
9829
+ }
9830
+ return newToken;
9831
+ }
9832
+ }
9833
+ function extractDbid(params) {
9834
+ return (params.dbid ||
9835
+ params.tableId ||
9836
+ params.appId ||
9837
+ params.body?.from ||
9838
+ params.body?.to);
9839
+ }
9840
+
9841
+ // src/RateLimitError.ts
9842
+ class RateLimitError extends Error {
9843
+ status;
9844
+ retryAfter;
9845
+ constructor(message, status, retryAfter) {
9846
+ super(message);
9847
+ this.name = "RateLimitError";
9848
+ this.status = status;
9849
+ this.retryAfter = retryAfter; // Seconds from Retry-After header, if present
9850
+ }
9851
+ }
9852
+
9853
+ // src/invokeMethod.ts
9854
+ async function invokeMethod(methodName, params, methodMap, baseHeaders, authStrategy, rateLimiter, fetchTempToken, transformDates, debug, convertDates) {
9855
+ console.log("[invokeMethod] Starting for method:", methodName);
9856
+ const methodInfo = methodMap[methodName];
9857
+ if (!methodInfo)
9858
+ throw new Error(`Method ${methodName} not found`);
9859
+ const hasBody = "body" in params && params.body !== undefined;
9860
+ const body = hasBody ? params.body : undefined;
9861
+ const restParams = hasBody
9862
+ ? Object.fromEntries(Object.entries(params).filter(([key]) => key !== "body"))
9863
+ : { ...params };
9864
+ const requestParameters = {
9865
+ ...restParams,
9866
+ ...(hasBody ? { generated: body } : {}),
9867
+ };
9868
+ const requestOptions = {
9869
+ credentials: methodName === "getTempTokenDBID" ? "include" : "omit",
9870
+ method: methodInfo.httpMethod,
9871
+ };
9872
+ let dbid = extractDbid(params);
9873
+ console.log("[invokeMethod] Extracted dbid:", dbid);
9874
+ let token = dbid
9875
+ ? await authStrategy.getToken(dbid)
9876
+ : await authStrategy.getToken("");
9877
+ console.log("[invokeMethod] Initial token:", token);
9878
+ if (!token && dbid) {
9879
+ token = await fetchTempToken(dbid);
9880
+ authStrategy.applyHeaders(baseHeaders, token);
9881
+ requestOptions.headers = { ...baseHeaders };
9882
+ console.log("[invokeMethod] Fetched new token:", token);
9883
+ }
9884
+ if (token) {
9885
+ authStrategy.applyHeaders(baseHeaders, token);
9886
+ requestOptions.headers = { ...baseHeaders };
9887
+ console.log("[invokeMethod] Token found, headers set:", requestOptions.headers);
9888
+ if (methodName === "getTempTokenDBID") {
9889
+ console.log("[invokeMethod] Using cached token:", token);
9890
+ return { temporaryAuthorization: token };
9891
+ }
9892
+ }
9893
+ if (debug) {
9894
+ console.log(`[${methodName}] requestParameters:`, requestParameters);
9895
+ console.log(`[${methodName}] requestOptions:`, requestOptions);
9896
+ }
9897
+ async function processResponse(rawResponse) {
9898
+ if (debug)
9899
+ console.log(`[${methodName}] rawResponse:`, rawResponse);
9900
+ if (rawResponse instanceof Response) {
9901
+ const contentType = rawResponse.headers
9902
+ .get("Content-Type")
9903
+ ?.toLowerCase();
9904
+ if (debug)
9905
+ console.log(`[${methodName}] contentType:`, contentType);
9906
+ if (contentType?.includes("application/json")) {
9907
+ const jsonResponse = await rawResponse.json();
9908
+ return transformDates(jsonResponse, convertDates);
9909
+ }
9910
+ return rawResponse;
9911
+ }
9912
+ if (rawResponse && typeof rawResponse.value === "function") {
9913
+ const response = await rawResponse.value();
9914
+ if (debug)
9915
+ console.log(`[${methodName}] Resolved JSONApiResponse:`, response);
9916
+ return transformDates(response, convertDates);
9917
+ }
9918
+ return transformDates(rawResponse, convertDates);
9919
+ }
9920
+ async function parseErrorResponse(response) {
9921
+ let message = "Unknown error";
9922
+ let status = response.status || 500;
9923
+ try {
9924
+ const contentType = response.headers?.get("Content-Type")?.toLowerCase() ||
9925
+ "application/json";
9926
+ if (contentType.includes("application/json") &&
9927
+ typeof response.json === "function") {
9928
+ const errorBody = await response.json();
9929
+ if (errorBody &&
9930
+ typeof errorBody === "object" &&
9931
+ "message" in errorBody) {
9932
+ message = errorBody.message;
9933
+ }
9934
+ else {
9935
+ message = "Invalid error response format";
9936
+ }
9937
+ }
9938
+ else if (typeof response.text === "function") {
9939
+ message = (await response.text()) || message;
9940
+ }
9941
+ }
9942
+ catch (e) {
9943
+ if (debug)
9944
+ console.log(`[${methodName}] Error parsing response body:`, e);
9945
+ message = "Failed to parse error response";
9946
+ }
9947
+ console.log("[invokeMethod] Parsed error - status:", status, "message:", message);
9948
+ return { message, status };
9949
+ }
9950
+ let attempt = 0;
9951
+ const maxAttempts = rateLimiter.maxRetries + 1;
9952
+ while (attempt < maxAttempts) {
9953
+ console.log("[invokeMethod] Attempt:", attempt + 1, "of", maxAttempts);
9954
+ try {
9955
+ await rateLimiter.throttle();
9956
+ console.log("[invokeMethod] About to call API for method:", methodName);
9957
+ const response = await methodInfo.method(requestParameters, requestOptions);
9958
+ console.log("[invokeMethod] API call completed for method:", methodName);
9959
+ return await processResponse(response);
9960
+ }
9961
+ catch (error) {
9962
+ let status;
9963
+ let message;
9964
+ let response;
9965
+ console.log("[invokeMethod] Caught error:", error);
9966
+ if (error instanceof ResponseError && error.response) {
9967
+ response = error.response;
9968
+ ({ message, status } = await parseErrorResponse(response));
9969
+ }
9970
+ else if (error instanceof Response) {
9971
+ response = error;
9972
+ ({ message, status } = await parseErrorResponse(response));
9973
+ }
9974
+ else {
9975
+ if (debug)
9976
+ console.log(`[${methodName}] Unexpected error:`, error);
9977
+ throw error; // Rethrow non-response errors
9978
+ }
9979
+ console.log("[invokeMethod] Handling error with status:", status);
9980
+ if (status === 429) {
9981
+ if (!(error instanceof ResponseError)) {
9982
+ throw new Error("Expected ResponseError for 429 handling"); // Shouldn't happen
9983
+ }
9984
+ const delay = await rateLimiter.handle429(error, attempt + 1);
9985
+ if (debug)
9986
+ console.log(`[${methodName}] 429 delay: ${delay}ms`);
9987
+ if (attempt + 1 === maxAttempts) {
9988
+ throw new RateLimitError(`API Error: ${message} (Status: ${status})`, status, response.headers.get("Retry-After")
9989
+ ? parseInt(response.headers.get("Retry-After"), 10)
9990
+ : undefined);
9991
+ }
9992
+ await new Promise((resolve) => setTimeout(resolve, delay));
9993
+ attempt++;
9994
+ continue;
9995
+ }
9996
+ const newToken = await authStrategy.handleError(status, params, fetchTempToken, attempt, maxAttempts, debug, methodName);
9997
+ if (newToken) {
9998
+ token = newToken;
9999
+ authStrategy.applyHeaders(baseHeaders, token);
10000
+ requestOptions.headers = { ...baseHeaders };
10001
+ attempt++;
10002
+ if (debug)
10003
+ console.log(`[${methodName}] Retrying with token: ${token.substring(0, 10)}...`);
10004
+ continue;
10005
+ }
10006
+ throw new Error(`API Error: ${message} (Status: ${status})`);
10007
+ }
10008
+ }
10009
+ throw new Error(`API Error: Exhausted retries after ${maxAttempts} attempts`);
10010
+ }
10011
+
10012
+ // src/ThrottleBucket.ts
10013
+ class ThrottleBucket {
10014
+ tokens;
10015
+ maxTokens;
10016
+ refillRate; // Tokens per second
10017
+ lastRefill;
10018
+ pending = Promise.resolve(); // Queue for sequential execution
10019
+ constructor(rate, burst) {
10020
+ this.tokens = burst;
10021
+ this.maxTokens = burst;
10022
+ this.refillRate = rate;
10023
+ this.lastRefill = Date.now();
10024
+ }
10025
+ refill() {
10026
+ const now = Date.now();
10027
+ const elapsed = (now - this.lastRefill) / 1000; // Seconds elapsed
10028
+ const newTokens = elapsed * this.refillRate;
10029
+ this.tokens = Math.min(this.maxTokens, this.tokens + newTokens);
10030
+ this.lastRefill = now;
10031
+ }
10032
+ async acquire() {
10033
+ // Chain the new acquisition onto the pending queue
10034
+ const previous = this.pending;
10035
+ this.pending = (async () => {
10036
+ await previous; // Wait for prior calls to complete
10037
+ this.refill();
10038
+ if (this.tokens >= 1) {
10039
+ this.tokens -= 1;
10040
+ return;
10041
+ }
10042
+ const waitTime = ((1 - this.tokens) / this.refillRate) * 1000; // ms until next token
10043
+ await new Promise((resolve) => setTimeout(resolve, waitTime));
10044
+ this.refill();
10045
+ this.tokens -= 1;
10046
+ })();
10047
+ await this.pending;
10048
+ }
10049
+ }
10050
+
10051
+ class RateLimiter {
10052
+ throttleBucket;
10053
+ maxRetries;
10054
+ retryDelay;
10055
+ constructor(throttleBucket, maxRetries = 3, retryDelay = 1000) {
10056
+ this.throttleBucket = throttleBucket;
10057
+ this.maxRetries = maxRetries;
10058
+ this.retryDelay = retryDelay;
10059
+ }
10060
+ async throttle() {
10061
+ if (this.throttleBucket) {
10062
+ await this.throttleBucket.acquire();
10063
+ }
10064
+ }
10065
+ async handle429(error, attempt) {
10066
+ // Remove the throw here; let invokeMethod handle exhaustion
10067
+ const retryAfter = error.response.headers.get("Retry-After");
10068
+ return retryAfter
10069
+ ? parseInt(retryAfter, 10) * 1000
10070
+ : this.retryDelay * Math.pow(2, attempt - 1);
10071
+ }
10072
+ }
10073
+
10074
+ // src/quickbaseClient.ts
9490
10075
  const getParamNames = (fn) => fn
9491
10076
  .toString()
9492
10077
  .slice(fn.toString().indexOf("(") + 1, fn.toString().indexOf(")"))
9493
10078
  .split(",")
9494
10079
  .map((p) => p.trim().split("=")[0]?.trim())
9495
10080
  .filter((p) => p && !p.match(/^\{/) && p !== "options");
9496
- const extractDbid = (params, errorMessage) => {
9497
- const dbid = params.dbid || params.tableId || params.appId;
9498
- if (!dbid) {
9499
- throw new Error(errorMessage);
9500
- }
9501
- return dbid;
9502
- };
9503
- // Utility to convert ISO date strings to Date objects recursively, with optional conversion
9504
10081
  function transformDates(obj, convertStringsToDates = true) {
9505
10082
  if (obj === null || obj === undefined)
9506
10083
  return obj;
@@ -9522,40 +10099,59 @@ function transformDates(obj, convertStringsToDates = true) {
9522
10099
  }
9523
10100
  return obj;
9524
10101
  }
10102
+ function inferHttpMethod(methodSource, debug) {
10103
+ const methodMatches = [
10104
+ ...methodSource.matchAll(/method:\s*['"]?(\w+)['"]?/gi),
10105
+ ];
10106
+ const method = methodMatches.length > 0
10107
+ ? methodMatches[methodMatches.length - 1][1].toUpperCase()
10108
+ : "GET";
10109
+ if (debug) {
10110
+ console.log(`[inferHttpMethod] Source:`, methodSource);
10111
+ console.log(`[inferHttpMethod] All matches:`, methodMatches.map((m) => m[0]));
10112
+ console.log(`[inferHttpMethod] Extracted method:`, method);
10113
+ }
10114
+ return method;
10115
+ }
9525
10116
  function quickbase(config) {
9526
- const { realm, userToken, tempToken: initialTempToken, useTempTokens, fetchApi, debug, convertDates = true, // Default to true for backward compatibility
9527
- } = config;
9528
- const baseUrl = `https://api.quickbase.com/v1`;
9529
- const tokenCache = new TokenCache();
10117
+ const { realm, userToken, tempToken, useTempTokens, useSso, samlToken, fetchApi, debug, convertDates = true, tempTokenLifespan = 290000, throttle = { rate: 10, burst: 10 }, maxRetries = 3, retryDelay = 1000, tokenCache: providedTokenCache, baseUrl = "https://api.quickbase.com/v1", } = config;
10118
+ const tokenCache = providedTokenCache || new TokenCache(tempTokenLifespan);
10119
+ const throttleBucket = throttle
10120
+ ? new ThrottleBucket(throttle.rate, throttle.burst)
10121
+ : null;
10122
+ const rateLimiter = new RateLimiter(throttleBucket, maxRetries, retryDelay);
10123
+ const defaultFetch = typeof globalThis.window !== "undefined"
10124
+ ? globalThis.window.fetch.bind(globalThis.window)
10125
+ : undefined;
10126
+ const effectiveFetch = fetchApi || defaultFetch;
10127
+ if (!effectiveFetch) {
10128
+ throw new Error("No fetch implementation available");
10129
+ }
10130
+ const authStrategy = useSso
10131
+ ? new SsoTokenStrategy(samlToken || "", realm, effectiveFetch, debug)
10132
+ : useTempTokens
10133
+ ? new TempTokenStrategy(tokenCache, tempToken)
10134
+ : new UserTokenStrategy(userToken || "");
9530
10135
  const baseHeaders = {
9531
10136
  "QB-Realm-Hostname": `${realm}.quickbase.com`,
9532
10137
  "Content-Type": "application/json",
9533
10138
  };
9534
- if (initialTempToken) {
9535
- baseHeaders["Authorization"] = `QB-TEMP-TOKEN ${initialTempToken}`;
9536
- }
9537
- else if (userToken && !useTempTokens) {
9538
- baseHeaders["Authorization"] = `QB-USER-TOKEN ${userToken}`;
9539
- }
9540
- const defaultFetch = typeof globalThis.window !== "undefined"
9541
- ? globalThis.window.fetch.bind(globalThis.window)
9542
- : undefined;
9543
10139
  const configuration = new Configuration({
9544
10140
  basePath: baseUrl,
9545
10141
  headers: { ...baseHeaders },
9546
- fetchApi: fetchApi || defaultFetch,
10142
+ fetchApi: effectiveFetch,
9547
10143
  credentials: "omit",
9548
10144
  });
9549
- if (!configuration.fetchApi && typeof globalThis.window === "undefined") {
9550
- throw new Error("fetchApi must be provided in non-browser environments (e.g., Node.js)");
9551
- }
10145
+ // Removed redundant check:
10146
+ // if (!configuration.fetchApi && typeof globalThis.window === "undefined") {
10147
+ // throw new Error("fetchApi must be provided in non-browser environments (e.g., Node.js)");
10148
+ // }
9552
10149
  const apiInstances = Object.fromEntries(Object.entries(apis)
9553
10150
  .filter(([name]) => name.endsWith("Api"))
9554
10151
  .map(([name, ApiClass]) => [
9555
10152
  name.replace("Api", "").toLowerCase(),
9556
10153
  new ApiClass(configuration),
9557
10154
  ]));
9558
- const methodMap = buildMethodMap();
9559
10155
  function buildMethodMap() {
9560
10156
  const methodMap = {};
9561
10157
  const isValidMethod = (name) => !name.startsWith("_") &&
@@ -9567,25 +10163,28 @@ function quickbase(config) {
9567
10163
  typeof api[name] === "function")
9568
10164
  .forEach((rawMethodName) => {
9569
10165
  const simplifiedName = simplifyName(rawMethodName);
9570
- const method = api[rawMethodName];
10166
+ const rawMethodKey = `${rawMethodName}Raw`;
10167
+ const method = api[rawMethodKey] || api[rawMethodName];
9571
10168
  const boundMethod = method.bind(api);
9572
10169
  if (typeof boundMethod === "function" && boundMethod.length <= 2) {
10170
+ const methodSource = method.toString();
9573
10171
  methodMap[simplifiedName] = {
9574
10172
  api,
9575
10173
  method: boundMethod,
9576
10174
  paramMap: getParamNames(method),
10175
+ httpMethod: inferHttpMethod(methodSource, debug),
9577
10176
  };
9578
10177
  }
9579
10178
  });
9580
10179
  }
10180
+ if (debug) {
10181
+ console.log("[buildMethodMap] Methods:", Object.keys(methodMap));
10182
+ }
9581
10183
  return methodMap;
9582
10184
  }
10185
+ const methodMap = buildMethodMap();
9583
10186
  const fetchTempToken = async (dbid) => {
9584
- const effectiveFetch = fetchApi || defaultFetch;
9585
- if (!effectiveFetch) {
9586
- throw new Error("No fetch implementation available for fetching temp token");
9587
- }
9588
- const response = await effectiveFetch(`https://api.quickbase.com/v1/auth/temporary/${dbid}`, {
10187
+ const response = await effectiveFetch(`${baseUrl}/auth/temporary/${dbid}`, {
9589
10188
  method: "GET",
9590
10189
  headers: { ...baseHeaders },
9591
10190
  credentials: "include",
@@ -9595,158 +10194,35 @@ function quickbase(config) {
9595
10194
  throw new Error(`API Error: ${errorBody.message || "Unknown error"} (Status: ${response.status})`);
9596
10195
  }
9597
10196
  const tokenResult = await response.json();
10197
+ console.log(`[fetchTempToken] Response:`, tokenResult);
9598
10198
  const token = tokenResult.temporaryAuthorization;
9599
10199
  if (!token) {
9600
10200
  throw new Error("No temporary token returned from API");
9601
10201
  }
9602
- tokenCache.set(dbid, token);
10202
+ tokenCache.set(dbid, token, tempTokenLifespan);
9603
10203
  if (debug) {
9604
10204
  console.log(`Fetched and cached new token for dbid: ${dbid}`, token);
9605
10205
  }
9606
10206
  return token;
9607
10207
  };
9608
- async function invokeMethod(methodName, params, retryCount = 0) {
9609
- const methodInfo = methodMap[methodName];
9610
- if (!methodInfo) {
9611
- throw new Error(`Method ${methodName} not found`);
9612
- }
9613
- // Safely handle body extraction
9614
- const hasBody = "body" in params && params.body !== undefined;
9615
- const body = hasBody ? params.body : undefined;
9616
- const restParams = hasBody
9617
- ? Object.fromEntries(Object.entries(params).filter(([key]) => key !== "body"))
9618
- : { ...params };
9619
- // Construct requestParameters with 'generated' for body
9620
- const requestParameters = {
9621
- ...restParams,
9622
- ...(body ? { generated: { ...body } } : {}),
9623
- };
9624
- let requestOptions = {
9625
- credentials: "omit",
9626
- };
9627
- const selectedToken = initialTempToken || (userToken && !useTempTokens ? userToken : undefined);
9628
- if (methodName === "getTempTokenDBID" && useTempTokens) {
9629
- const dbid = extractDbid(params, "No dbid provided for getTempTokenDBID");
9630
- const cachedToken = tokenCache.get(dbid);
9631
- if (cachedToken) {
9632
- return { temporaryAuthorization: cachedToken };
9633
- }
9634
- }
9635
- let authorizationToken = selectedToken;
9636
- if (useTempTokens && !authorizationToken) {
9637
- const dbid = extractDbid(params, `No dbid found in params for ${methodName} to fetch temp token`);
9638
- const cachedToken = tokenCache.get(dbid);
9639
- authorizationToken = cachedToken || (await fetchTempToken(dbid));
9640
- if (methodName === "getTempTokenDBID") {
9641
- return { temporaryAuthorization: authorizationToken };
9642
- }
9643
- requestOptions.headers = {
9644
- ...baseHeaders,
9645
- Authorization: `QB-TEMP-TOKEN ${authorizationToken}`,
9646
- };
9647
- }
9648
- else if (authorizationToken) {
9649
- requestOptions.headers = {
9650
- ...baseHeaders,
9651
- Authorization: `QB-USER-TOKEN ${authorizationToken}`,
9652
- };
9653
- }
9654
- if (debug) {
9655
- console.log(`[${methodName}] requestParameters:`, requestParameters);
9656
- console.log(`[${methodName}] requestOptions:`, requestOptions);
9657
- }
9658
- try {
9659
- const response = await methodInfo.method(requestParameters, requestOptions);
9660
- if (debug) {
9661
- console.log(`[${methodName}] rawResponse:`, response);
9662
- }
9663
- if (response instanceof Response) {
9664
- const contentType = response.headers.get("Content-Type")?.toLowerCase();
9665
- if (debug) {
9666
- console.log(`[${methodName}] contentType:`, contentType);
9667
- }
9668
- if (contentType?.includes("application/octet-stream")) {
9669
- return (await response.arrayBuffer());
9670
- }
9671
- else if (contentType?.includes("application/x-yaml") ||
9672
- contentType?.includes("text/yaml")) {
9673
- return (await response.text());
9674
- }
9675
- else if (contentType?.includes("application/json")) {
9676
- const jsonResponse = await response.json();
9677
- if (debug) {
9678
- console.log(`[${methodName}] jsonResponse:`, jsonResponse);
9679
- }
9680
- const transformedResponse = transformDates(jsonResponse, convertDates);
9681
- if (debug) {
9682
- console.log(`[${methodName}] transformedResponse:`, transformedResponse);
9683
- }
9684
- return transformedResponse;
9685
- }
9686
- return response;
9687
- }
9688
- else {
9689
- if (debug) {
9690
- console.log(`[${methodName}] non-Response return, applying transform:`, response);
9691
- }
9692
- const transformedResponse = transformDates(response, convertDates);
9693
- if (debug) {
9694
- console.log(`[${methodName}] transformedNonResponse:`, transformedResponse);
9695
- }
9696
- return transformedResponse;
9697
- }
9698
- }
9699
- catch (error) {
9700
- if (error instanceof ResponseError &&
9701
- error.response.status === 401 &&
9702
- retryCount < 1 &&
9703
- useTempTokens) {
9704
- if (debug) {
9705
- console.log(`Authorization error for ${methodName}, refreshing token:`, error.message);
9706
- }
9707
- const dbid = extractDbid(params, `No dbid to refresh token after authorization error`);
9708
- authorizationToken = await fetchTempToken(dbid);
9709
- requestOptions.headers = {
9710
- ...baseHeaders,
9711
- Authorization: `QB-TEMP-TOKEN ${authorizationToken}`,
9712
- };
9713
- if (debug) {
9714
- console.log(`Retrying ${methodName} with new token`);
9715
- }
9716
- return invokeMethod(methodName, params, retryCount + 1);
9717
- }
9718
- if (error instanceof ResponseError) {
9719
- let errorMessage = error.message;
9720
- try {
9721
- const errorBody = await error.response.json();
9722
- if (debug) {
9723
- console.log(`Error response body for ${methodName}:`, errorBody);
9724
- }
9725
- errorMessage = errorBody.message || errorMessage;
9726
- }
9727
- catch (e) {
9728
- // Silent fail on parse error
9729
- }
9730
- throw new Error(`API Error: ${errorMessage} (Status: ${error.response.status})`);
9731
- }
9732
- throw error;
9733
- }
9734
- }
9735
- const proxy = new Proxy({}, {
10208
+ const proxyHandler = {
9736
10209
  get: (_, prop) => {
10210
+ console.log("[proxy] Accessing:", prop, "in methodMap:", prop in methodMap);
9737
10211
  if (prop in methodMap) {
9738
10212
  const methodName = prop;
9739
- return (params) => invokeMethod(methodName, params);
10213
+ return (params) => invokeMethod(methodName, params, methodMap, baseHeaders, authStrategy, rateLimiter, fetchTempToken, transformDates, debug, convertDates);
9740
10214
  }
10215
+ console.log("[proxy] Method not found:", prop);
9741
10216
  return undefined;
9742
10217
  },
9743
- });
10218
+ };
10219
+ const proxy = new Proxy({}, proxyHandler);
9744
10220
  if (debug) {
9745
10221
  console.log("[createClient] Config:", config);
9746
- console.log("[createClient] Returning:", proxy);
10222
+ console.log("[createClient] Proxy created:", proxy);
9747
10223
  }
9748
10224
  return proxy;
9749
10225
  }
9750
10226
 
9751
- export { AddManagersToGroup200ResponseFromJSON, AddManagersToGroup200ResponseFromJSONTyped, AddManagersToGroup200ResponseToJSON, AddManagersToGroup200ResponseToJSONTyped, AddManagersToGroupRequestFromJSON, AddManagersToGroupRequestFromJSONTyped, AddManagersToGroupRequestToJSON, AddManagersToGroupRequestToJSONTyped, AddMembersToGroup200ResponseFromJSON, AddMembersToGroup200ResponseFromJSONTyped, AddMembersToGroup200ResponseToJSON, AddMembersToGroup200ResponseToJSONTyped, AddMembersToGroupRequestFromJSON, AddMembersToGroupRequestFromJSONTyped, AddMembersToGroupRequestToJSON, AddMembersToGroupRequestToJSONTyped, AddSubgroupsToGroup200ResponseFromJSON, AddSubgroupsToGroup200ResponseFromJSONTyped, AddSubgroupsToGroup200ResponseToJSON, AddSubgroupsToGroup200ResponseToJSONTyped, AddSubgroupsToGroupRequestFromJSON, AddSubgroupsToGroupRequestFromJSONTyped, AddSubgroupsToGroupRequestToJSON, AddSubgroupsToGroupRequestToJSONTyped, Audit200ResponseFromJSON, Audit200ResponseFromJSONTyped, Audit200ResponseToJSON, Audit200ResponseToJSONTyped, Audit202ResponseFromJSON, Audit202ResponseFromJSONTyped, Audit202ResponseToJSON, Audit202ResponseToJSONTyped, AuditRequestFromJSON, AuditRequestFromJSONTyped, AuditRequestToJSON, AuditRequestToJSONTyped, ChangesetSolution200ResponseFromJSON, ChangesetSolution200ResponseFromJSONTyped, ChangesetSolution200ResponseInnerChangesInnerInnerFromJSON, ChangesetSolution200ResponseInnerChangesInnerInnerFromJSONTyped, ChangesetSolution200ResponseInnerChangesInnerInnerToJSON, ChangesetSolution200ResponseInnerChangesInnerInnerToJSONTyped, ChangesetSolution200ResponseInnerFromJSON, ChangesetSolution200ResponseInnerFromJSONTyped, ChangesetSolution200ResponseInnerToJSON, ChangesetSolution200ResponseInnerToJSONTyped, ChangesetSolution200ResponseToJSON, ChangesetSolution200ResponseToJSONTyped, ChangesetSolution400ResponseFromJSON, ChangesetSolution400ResponseFromJSONTyped, ChangesetSolution400ResponseToJSON, ChangesetSolution400ResponseToJSONTyped, ChangesetSolution401403ResponseFromJSON, ChangesetSolution401403ResponseFromJSONTyped, ChangesetSolution401403ResponseToJSON, ChangesetSolution401403ResponseToJSONTyped, ChangesetSolution404ResponseFromJSON, ChangesetSolution404ResponseFromJSONTyped, ChangesetSolution404ResponseToJSON, ChangesetSolution404ResponseToJSONTyped, ChangesetSolution4xx5xxResponseFromJSON, ChangesetSolution4xx5xxResponseFromJSONTyped, ChangesetSolution4xx5xxResponseToJSON, ChangesetSolution4xx5xxResponseToJSONTyped, ChangesetSolutionFromRecord200ResponseFromJSON, ChangesetSolutionFromRecord200ResponseFromJSONTyped, ChangesetSolutionFromRecord200ResponseToJSON, ChangesetSolutionFromRecord200ResponseToJSONTyped, ChangesetSolutionFromRecord400ResponseFromJSON, ChangesetSolutionFromRecord400ResponseFromJSONTyped, ChangesetSolutionFromRecord400ResponseToJSON, ChangesetSolutionFromRecord400ResponseToJSONTyped, ChangesetSolutionFromRecord401403ResponseFromJSON, ChangesetSolutionFromRecord401403ResponseFromJSONTyped, ChangesetSolutionFromRecord401403ResponseToJSON, ChangesetSolutionFromRecord401403ResponseToJSONTyped, ChangesetSolutionFromRecord404ResponseFromJSON, ChangesetSolutionFromRecord404ResponseFromJSONTyped, ChangesetSolutionFromRecord404ResponseToJSON, ChangesetSolutionFromRecord404ResponseToJSONTyped, ChangesetSolutionFromRecord4xx5xxResponseFromJSON, ChangesetSolutionFromRecord4xx5xxResponseFromJSONTyped, ChangesetSolutionFromRecord4xx5xxResponseToJSON, ChangesetSolutionFromRecord4xx5xxResponseToJSONTyped, CloneUserToken200ResponseFromJSON, CloneUserToken200ResponseFromJSONTyped, CloneUserToken200ResponseToJSON, CloneUserToken200ResponseToJSONTyped, CloneUserTokenRequestFromJSON, CloneUserTokenRequestFromJSONTyped, CloneUserTokenRequestToJSON, CloneUserTokenRequestToJSONTyped, CopyApp200ResponseFromJSON, CopyApp200ResponseFromJSONTyped, CopyApp200ResponseToJSON, CopyApp200ResponseToJSONTyped, CopyAppRequestFromJSON, CopyAppRequestFromJSONTyped, CopyAppRequestPropertiesFromJSON, CopyAppRequestPropertiesFromJSONTyped, CopyAppRequestPropertiesToJSON, CopyAppRequestPropertiesToJSONTyped, CopyAppRequestToJSON, CopyAppRequestToJSONTyped, CreateApp200ResponseFromJSON, CreateApp200ResponseFromJSONTyped, CreateApp200ResponseToJSON, CreateApp200ResponseToJSONTyped, CreateAppRequestFromJSON, CreateAppRequestFromJSONTyped, CreateAppRequestToJSON, CreateAppRequestToJSONTyped, CreateField200ResponseFromJSON, CreateField200ResponseFromJSONTyped, CreateField200ResponseToJSON, CreateField200ResponseToJSONTyped, CreateFieldRequestFieldTypeEnum, CreateFieldRequestFromJSON, CreateFieldRequestFromJSONTyped, CreateFieldRequestToJSON, CreateFieldRequestToJSONTyped, CreateRelationship200ResponseFromJSON, CreateRelationship200ResponseFromJSONTyped, CreateRelationship200ResponseToJSON, CreateRelationship200ResponseToJSONTyped, CreateRelationshipRequestFromJSON, CreateRelationshipRequestFromJSONTyped, CreateRelationshipRequestToJSON, CreateRelationshipRequestToJSONTyped, CreateSolution200ResponseFromJSON, CreateSolution200ResponseFromJSONTyped, CreateSolution200ResponseToJSON, CreateSolution200ResponseToJSONTyped, CreateSolution400ResponseFromJSON, CreateSolution400ResponseFromJSONTyped, CreateSolution400ResponseToJSON, CreateSolution400ResponseToJSONTyped, CreateSolution401403ResponseFromJSON, CreateSolution401403ResponseFromJSONTyped, CreateSolution401403ResponseToJSON, CreateSolution401403ResponseToJSONTyped, CreateSolution4xx5xxResponseFromJSON, CreateSolution4xx5xxResponseFromJSONTyped, CreateSolution4xx5xxResponseToJSON, CreateSolution4xx5xxResponseToJSONTyped, CreateSolutionFromRecord200ResponseFromJSON, CreateSolutionFromRecord200ResponseFromJSONTyped, CreateSolutionFromRecord200ResponseInnerCreatedResourcesInnerAppsInnerFromJSON, CreateSolutionFromRecord200ResponseInnerCreatedResourcesInnerAppsInnerFromJSONTyped, CreateSolutionFromRecord200ResponseInnerCreatedResourcesInnerAppsInnerToJSON, CreateSolutionFromRecord200ResponseInnerCreatedResourcesInnerAppsInnerToJSONTyped, CreateSolutionFromRecord200ResponseInnerCreatedResourcesInnerFromJSON, CreateSolutionFromRecord200ResponseInnerCreatedResourcesInnerFromJSONTyped, CreateSolutionFromRecord200ResponseInnerCreatedResourcesInnerToJSON, CreateSolutionFromRecord200ResponseInnerCreatedResourcesInnerToJSONTyped, CreateSolutionFromRecord200ResponseInnerFromJSON, CreateSolutionFromRecord200ResponseInnerFromJSONTyped, CreateSolutionFromRecord200ResponseInnerToJSON, CreateSolutionFromRecord200ResponseInnerToJSONTyped, CreateSolutionFromRecord200ResponseToJSON, CreateSolutionFromRecord200ResponseToJSONTyped, CreateSolutionFromRecord400ResponseFromJSON, CreateSolutionFromRecord400ResponseFromJSONTyped, CreateSolutionFromRecord400ResponseToJSON, CreateSolutionFromRecord400ResponseToJSONTyped, CreateSolutionFromRecord401403ResponseFromJSON, CreateSolutionFromRecord401403ResponseFromJSONTyped, CreateSolutionFromRecord401403ResponseToJSON, CreateSolutionFromRecord401403ResponseToJSONTyped, CreateSolutionFromRecord404ResponseFromJSON, CreateSolutionFromRecord404ResponseFromJSONTyped, CreateSolutionFromRecord404ResponseToJSON, CreateSolutionFromRecord404ResponseToJSONTyped, CreateSolutionFromRecord4xx5xxResponseFromJSON, CreateSolutionFromRecord4xx5xxResponseFromJSONTyped, CreateSolutionFromRecord4xx5xxResponseToJSON, CreateSolutionFromRecord4xx5xxResponseToJSONTyped, CreateTable200ResponseDefaultSortOrderEnum, CreateTable200ResponseFromJSON, CreateTable200ResponseFromJSONTyped, CreateTable200ResponseToJSON, CreateTable200ResponseToJSONTyped, CreateTableRequestFromJSON, CreateTableRequestFromJSONTyped, CreateTableRequestToJSON, CreateTableRequestToJSONTyped, DeactivateUserToken200ResponseFromJSON, DeactivateUserToken200ResponseFromJSONTyped, DeactivateUserToken200ResponseToJSON, DeactivateUserToken200ResponseToJSONTyped, DeleteApp200ResponseFromJSON, DeleteApp200ResponseFromJSONTyped, DeleteApp200ResponseToJSON, DeleteApp200ResponseToJSONTyped, DeleteAppRequestFromJSON, DeleteAppRequestFromJSONTyped, DeleteAppRequestToJSON, DeleteAppRequestToJSONTyped, DeleteFields200ResponseFromJSON, DeleteFields200ResponseFromJSONTyped, DeleteFields200ResponseToJSON, DeleteFields200ResponseToJSONTyped, DeleteFieldsRequestFromJSON, DeleteFieldsRequestFromJSONTyped, DeleteFieldsRequestToJSON, DeleteFieldsRequestToJSONTyped, DeleteFile200ResponseFromJSON, DeleteFile200ResponseFromJSONTyped, DeleteFile200ResponseToJSON, DeleteFile200ResponseToJSONTyped, DeleteRecords200ResponseFromJSON, DeleteRecords200ResponseFromJSONTyped, DeleteRecords200ResponseToJSON, DeleteRecords200ResponseToJSONTyped, DeleteRecordsRequestFromJSON, DeleteRecordsRequestFromJSONTyped, DeleteRecordsRequestToJSON, DeleteRecordsRequestToJSONTyped, DeleteRelationship200ResponseFromJSON, DeleteRelationship200ResponseFromJSONTyped, DeleteRelationship200ResponseToJSON, DeleteRelationship200ResponseToJSONTyped, DeleteTable200ResponseFromJSON, DeleteTable200ResponseFromJSONTyped, DeleteTable200ResponseToJSON, DeleteTable200ResponseToJSONTyped, DeleteUserToken200ResponseFromJSON, DeleteUserToken200ResponseFromJSONTyped, DeleteUserToken200ResponseToJSON, DeleteUserToken200ResponseToJSONTyped, DenyUsers200ResponseFromJSON, DenyUsers200ResponseFromJSONTyped, DenyUsers200ResponseToJSON, DenyUsers200ResponseToJSONTyped, DenyUsersAndGroups200ResponseFromJSON, DenyUsersAndGroups200ResponseFromJSONTyped, DenyUsersAndGroups200ResponseToJSON, DenyUsersAndGroups200ResponseToJSONTyped, DenyUsersAndGroupsRequestFromJSON, DenyUsersAndGroupsRequestFromJSONTyped, DenyUsersAndGroupsRequestToJSON, DenyUsersAndGroupsRequestToJSONTyped, DenyUsersRequestFromJSON, DenyUsersRequestFromJSONTyped, DenyUsersRequestToJSON, DenyUsersRequestToJSONTyped, DownloadFile200ResponseFromJSON, DownloadFile200ResponseFromJSONTyped, DownloadFile200ResponseToJSON, DownloadFile200ResponseToJSONTyped, ExchangeSsoToken200ResponseFromJSON, ExchangeSsoToken200ResponseFromJSONTyped, ExchangeSsoToken200ResponseIssuedTokenTypeEnum, ExchangeSsoToken200ResponseToJSON, ExchangeSsoToken200ResponseToJSONTyped, ExchangeSsoToken200ResponseTokenTypeEnum, ExchangeSsoTokenRequestFromJSON, ExchangeSsoTokenRequestFromJSONTyped, ExchangeSsoTokenRequestGrantTypeEnum, ExchangeSsoTokenRequestRequestedTokenTypeEnum, ExchangeSsoTokenRequestSubjectTokenTypeEnum, ExchangeSsoTokenRequestToJSON, ExchangeSsoTokenRequestToJSONTyped, ExportSolution200ResponseFromJSON, ExportSolution200ResponseFromJSONTyped, ExportSolution200ResponseToJSON, ExportSolution200ResponseToJSONTyped, ExportSolution400ResponseFromJSON, ExportSolution400ResponseFromJSONTyped, ExportSolution400ResponseToJSON, ExportSolution400ResponseToJSONTyped, ExportSolution401403ResponseFromJSON, ExportSolution401403ResponseFromJSONTyped, ExportSolution401403ResponseToJSON, ExportSolution401403ResponseToJSONTyped, ExportSolution404ResponseFromJSON, ExportSolution404ResponseFromJSONTyped, ExportSolution404ResponseToJSON, ExportSolution404ResponseToJSONTyped, ExportSolution4xx5xxResponseFromJSON, ExportSolution4xx5xxResponseFromJSONTyped, ExportSolution4xx5xxResponseToJSON, ExportSolution4xx5xxResponseToJSONTyped, ExportSolutionToRecord200ResponseFromJSON, ExportSolutionToRecord200ResponseFromJSONTyped, ExportSolutionToRecord200ResponseInnerFromJSON, ExportSolutionToRecord200ResponseInnerFromJSONTyped, ExportSolutionToRecord200ResponseInnerToJSON, ExportSolutionToRecord200ResponseInnerToJSONTyped, ExportSolutionToRecord200ResponseToJSON, ExportSolutionToRecord200ResponseToJSONTyped, ExportSolutionToRecord400ResponseFromJSON, ExportSolutionToRecord400ResponseFromJSONTyped, ExportSolutionToRecord400ResponseToJSON, ExportSolutionToRecord400ResponseToJSONTyped, ExportSolutionToRecord401403ResponseFromJSON, ExportSolutionToRecord401403ResponseFromJSONTyped, ExportSolutionToRecord401403ResponseToJSON, ExportSolutionToRecord401403ResponseToJSONTyped, ExportSolutionToRecord404ResponseFromJSON, ExportSolutionToRecord404ResponseFromJSONTyped, ExportSolutionToRecord404ResponseToJSON, ExportSolutionToRecord404ResponseToJSONTyped, ExportSolutionToRecord4xx5xxResponseFromJSON, ExportSolutionToRecord4xx5xxResponseFromJSONTyped, ExportSolutionToRecord4xx5xxResponseToJSON, ExportSolutionToRecord4xx5xxResponseToJSONTyped, GenerateDocument200ResponseFromJSON, GenerateDocument200ResponseFromJSONTyped, GenerateDocument200ResponseToJSON, GenerateDocument200ResponseToJSONTyped, GetApp200ResponseFromJSON, GetApp200ResponseFromJSONTyped, GetApp200ResponseToJSON, GetApp200ResponseToJSONTyped, GetAppEvents200ResponseFromJSON, GetAppEvents200ResponseFromJSONTyped, GetAppEvents200ResponseToJSON, GetAppEvents200ResponseToJSONTyped, GetAppTables200ResponseFromJSON, GetAppTables200ResponseFromJSONTyped, GetAppTables200ResponseToJSON, GetAppTables200ResponseToJSONTyped, GetField200ResponseFromJSON, GetField200ResponseFromJSONTyped, GetField200ResponseToJSON, GetField200ResponseToJSONTyped, GetFieldUsage200ResponseFromJSON, GetFieldUsage200ResponseFromJSONTyped, GetFieldUsage200ResponseToJSON, GetFieldUsage200ResponseToJSONTyped, GetFields200ResponseFromJSON, GetFields200ResponseFromJSONTyped, GetFields200ResponseToJSON, GetFields200ResponseToJSONTyped, GetFieldsUsage200ResponseFromJSON, GetFieldsUsage200ResponseFromJSONTyped, GetFieldsUsage200ResponseToJSON, GetFieldsUsage200ResponseToJSONTyped, GetRelationships200ResponseFromJSON, GetRelationships200ResponseFromJSONTyped, GetRelationships200ResponseToJSON, GetRelationships200ResponseToJSONTyped, GetReport200ResponseFromJSON, GetReport200ResponseFromJSONTyped, GetReport200ResponseToJSON, GetReport200ResponseToJSONTyped, GetTable200ResponseDefaultSortOrderEnum, GetTable200ResponseFromJSON, GetTable200ResponseFromJSONTyped, GetTable200ResponseToJSON, GetTable200ResponseToJSONTyped, GetTableReports200ResponseFromJSON, GetTableReports200ResponseFromJSONTyped, GetTableReports200ResponseToJSON, GetTableReports200ResponseToJSONTyped, GetTempTokenDBID200ResponseFromJSON, GetTempTokenDBID200ResponseFromJSONTyped, GetTempTokenDBID200ResponseToJSON, GetTempTokenDBID200ResponseToJSONTyped, GetUsers200ResponseFromJSON, GetUsers200ResponseFromJSONTyped, GetUsers200ResponseToJSON, GetUsers200ResponseToJSONTyped, GetUsersRequestFromJSON, GetUsersRequestFromJSONTyped, GetUsersRequestToJSON, GetUsersRequestToJSONTyped, PermissionFromJSON, PermissionFromJSONTyped, PermissionToJSON, PermissionToJSONTyped, PlatformAnalyticEventSummaries200ResponseFromJSON, PlatformAnalyticEventSummaries200ResponseFromJSONTyped, PlatformAnalyticEventSummaries200ResponseGroupByEnum, PlatformAnalyticEventSummaries200ResponseMetadataFromJSON, PlatformAnalyticEventSummaries200ResponseMetadataFromJSONTyped, PlatformAnalyticEventSummaries200ResponseMetadataToJSON, PlatformAnalyticEventSummaries200ResponseMetadataToJSONTyped, PlatformAnalyticEventSummaries200ResponseResultsInnerEventTypesInnerBillingCategoryEnum, PlatformAnalyticEventSummaries200ResponseResultsInnerEventTypesInnerFromJSON, PlatformAnalyticEventSummaries200ResponseResultsInnerEventTypesInnerFromJSONTyped, PlatformAnalyticEventSummaries200ResponseResultsInnerEventTypesInnerToJSON, PlatformAnalyticEventSummaries200ResponseResultsInnerEventTypesInnerToJSONTyped, PlatformAnalyticEventSummaries200ResponseResultsInnerFromJSON, PlatformAnalyticEventSummaries200ResponseResultsInnerFromJSONTyped, PlatformAnalyticEventSummaries200ResponseResultsInnerToJSON, PlatformAnalyticEventSummaries200ResponseResultsInnerToJSONTyped, PlatformAnalyticEventSummaries200ResponseResultsInnerTotalsFromJSON, PlatformAnalyticEventSummaries200ResponseResultsInnerTotalsFromJSONTyped, PlatformAnalyticEventSummaries200ResponseResultsInnerTotalsToJSON, PlatformAnalyticEventSummaries200ResponseResultsInnerTotalsToJSONTyped, PlatformAnalyticEventSummaries200ResponseToJSON, PlatformAnalyticEventSummaries200ResponseToJSONTyped, PlatformAnalyticEventSummaries200ResponseTotalsFromJSON, PlatformAnalyticEventSummaries200ResponseTotalsFromJSONTyped, PlatformAnalyticEventSummaries200ResponseTotalsToJSON, PlatformAnalyticEventSummaries200ResponseTotalsToJSONTyped, PlatformAnalyticEventSummaries200ResponseWhereInnerFromJSON, PlatformAnalyticEventSummaries200ResponseWhereInnerFromJSONTyped, PlatformAnalyticEventSummaries200ResponseWhereInnerToJSON, PlatformAnalyticEventSummaries200ResponseWhereInnerToJSONTyped, PlatformAnalyticEventSummaries200ResponseWhereInnerTypeEnum, PlatformAnalyticEventSummariesRequestFromJSON, PlatformAnalyticEventSummariesRequestFromJSONTyped, PlatformAnalyticEventSummariesRequestGroupByEnum, PlatformAnalyticEventSummariesRequestToJSON, PlatformAnalyticEventSummariesRequestToJSONTyped, PlatformAnalyticEventSummariesRequestWhereInnerFromJSON, PlatformAnalyticEventSummariesRequestWhereInnerFromJSONTyped, PlatformAnalyticEventSummariesRequestWhereInnerToJSON, PlatformAnalyticEventSummariesRequestWhereInnerToJSONTyped, PlatformAnalyticEventSummariesRequestWhereInnerTypeEnum, PlatformAnalyticReads200ResponseFromJSON, PlatformAnalyticReads200ResponseFromJSONTyped, PlatformAnalyticReads200ResponseToJSON, PlatformAnalyticReads200ResponseToJSONTyped, RecordFromJSON, RecordFromJSONTyped, RecordToJSON, RecordToJSONTyped, RecordValueFromJSON, RecordValueFromJSONTyped, RecordValueToJSON, RecordValueToJSONTyped, RemoveManagersFromGroup200ResponseFromJSON, RemoveManagersFromGroup200ResponseFromJSONTyped, RemoveManagersFromGroup200ResponseToJSON, RemoveManagersFromGroup200ResponseToJSONTyped, RemoveManagersFromGroupRequestFromJSON, RemoveManagersFromGroupRequestFromJSONTyped, RemoveManagersFromGroupRequestToJSON, RemoveManagersFromGroupRequestToJSONTyped, RemoveMembersFromGroup200ResponseFromJSON, RemoveMembersFromGroup200ResponseFromJSONTyped, RemoveMembersFromGroup200ResponseToJSON, RemoveMembersFromGroup200ResponseToJSONTyped, RemoveMembersFromGroupRequestFromJSON, RemoveMembersFromGroupRequestFromJSONTyped, RemoveMembersFromGroupRequestToJSON, RemoveMembersFromGroupRequestToJSONTyped, RemoveSubgroupsFromGroup200ResponseFromJSON, RemoveSubgroupsFromGroup200ResponseFromJSONTyped, RemoveSubgroupsFromGroup200ResponseToJSON, RemoveSubgroupsFromGroup200ResponseToJSONTyped, RemoveSubgroupsFromGroupRequestFromJSON, RemoveSubgroupsFromGroupRequestFromJSONTyped, RemoveSubgroupsFromGroupRequestToJSON, RemoveSubgroupsFromGroupRequestToJSONTyped, RunFormula200ResponseFromJSON, RunFormula200ResponseFromJSONTyped, RunFormula200ResponseToJSON, RunFormula200ResponseToJSONTyped, RunFormulaRequestFromJSON, RunFormulaRequestFromJSONTyped, RunFormulaRequestToJSON, RunFormulaRequestToJSONTyped, RunQuery200ResponseFromJSON, RunQuery200ResponseFromJSONTyped, RunQuery200ResponseToJSON, RunQuery200ResponseToJSONTyped, RunQueryRequestFromJSON, RunQueryRequestFromJSONTyped, RunQueryRequestGroupByInnerFromJSON, RunQueryRequestGroupByInnerFromJSONTyped, RunQueryRequestGroupByInnerGroupingEnum, RunQueryRequestGroupByInnerToJSON, RunQueryRequestGroupByInnerToJSONTyped, RunQueryRequestOptionsFromJSON, RunQueryRequestOptionsFromJSONTyped, RunQueryRequestOptionsToJSON, RunQueryRequestOptionsToJSONTyped, RunQueryRequestSortByInnerFromJSON, RunQueryRequestSortByInnerFromJSONTyped, RunQueryRequestSortByInnerOrderEnum, RunQueryRequestSortByInnerToJSON, RunQueryRequestSortByInnerToJSONTyped, RunQueryRequestToJSON, RunQueryRequestToJSONTyped, RunReport200ResponseFromJSON, RunReport200ResponseFromJSONTyped, RunReport200ResponseToJSON, RunReport200ResponseToJSONTyped, TransferUserToken200ResponseFromJSON, TransferUserToken200ResponseFromJSONTyped, TransferUserToken200ResponseToJSON, TransferUserToken200ResponseToJSONTyped, TransferUserTokenRequestFromJSON, TransferUserTokenRequestFromJSONTyped, TransferUserTokenRequestToJSON, TransferUserTokenRequestToJSONTyped, UndenyUsers200ResponseFromJSON, UndenyUsers200ResponseFromJSONTyped, UndenyUsers200ResponseToJSON, UndenyUsers200ResponseToJSONTyped, UndenyUsersRequestFromJSON, UndenyUsersRequestFromJSONTyped, UndenyUsersRequestToJSON, UndenyUsersRequestToJSONTyped, UpdateApp200ResponseFromJSON, UpdateApp200ResponseFromJSONTyped, UpdateApp200ResponseToJSON, UpdateApp200ResponseToJSONTyped, UpdateAppRequestFromJSON, UpdateAppRequestFromJSONTyped, UpdateAppRequestToJSON, UpdateAppRequestToJSONTyped, UpdateField200ResponseFromJSON, UpdateField200ResponseFromJSONTyped, UpdateField200ResponseToJSON, UpdateField200ResponseToJSONTyped, UpdateFieldRequestFieldTypeEnum, UpdateFieldRequestFromJSON, UpdateFieldRequestFromJSONTyped, UpdateFieldRequestToJSON, UpdateFieldRequestToJSONTyped, UpdateRelationship200ResponseFromJSON, UpdateRelationship200ResponseFromJSONTyped, UpdateRelationship200ResponseToJSON, UpdateRelationship200ResponseToJSONTyped, UpdateRelationshipRequestFromJSON, UpdateRelationshipRequestFromJSONTyped, UpdateRelationshipRequestToJSON, UpdateRelationshipRequestToJSONTyped, UpdateSolution200ResponseFromJSON, UpdateSolution200ResponseFromJSONTyped, UpdateSolution200ResponseInnerCreatedResourcesInnerFromJSON, UpdateSolution200ResponseInnerCreatedResourcesInnerFromJSONTyped, UpdateSolution200ResponseInnerCreatedResourcesInnerToJSON, UpdateSolution200ResponseInnerCreatedResourcesInnerToJSONTyped, UpdateSolution200ResponseInnerFromJSON, UpdateSolution200ResponseInnerFromJSONTyped, UpdateSolution200ResponseInnerToJSON, UpdateSolution200ResponseInnerToJSONTyped, UpdateSolution200ResponseToJSON, UpdateSolution200ResponseToJSONTyped, UpdateSolution400ResponseFromJSON, UpdateSolution400ResponseFromJSONTyped, UpdateSolution400ResponseToJSON, UpdateSolution400ResponseToJSONTyped, UpdateSolution401403ResponseFromJSON, UpdateSolution401403ResponseFromJSONTyped, UpdateSolution401403ResponseToJSON, UpdateSolution401403ResponseToJSONTyped, UpdateSolution4xx5xxResponseFromJSON, UpdateSolution4xx5xxResponseFromJSONTyped, UpdateSolution4xx5xxResponseToJSON, UpdateSolution4xx5xxResponseToJSONTyped, UpdateSolutionToRecord200ResponseFromJSON, UpdateSolutionToRecord200ResponseFromJSONTyped, UpdateSolutionToRecord200ResponseInnerFromJSON, UpdateSolutionToRecord200ResponseInnerFromJSONTyped, UpdateSolutionToRecord200ResponseInnerToJSON, UpdateSolutionToRecord200ResponseInnerToJSONTyped, UpdateSolutionToRecord200ResponseToJSON, UpdateSolutionToRecord200ResponseToJSONTyped, UpdateSolutionToRecord400ResponseFromJSON, UpdateSolutionToRecord400ResponseFromJSONTyped, UpdateSolutionToRecord400ResponseToJSON, UpdateSolutionToRecord400ResponseToJSONTyped, UpdateSolutionToRecord401403ResponseFromJSON, UpdateSolutionToRecord401403ResponseFromJSONTyped, UpdateSolutionToRecord401403ResponseToJSON, UpdateSolutionToRecord401403ResponseToJSONTyped, UpdateSolutionToRecord404ResponseFromJSON, UpdateSolutionToRecord404ResponseFromJSONTyped, UpdateSolutionToRecord404ResponseToJSON, UpdateSolutionToRecord404ResponseToJSONTyped, UpdateSolutionToRecord4xx5xxResponseFromJSON, UpdateSolutionToRecord4xx5xxResponseFromJSONTyped, UpdateSolutionToRecord4xx5xxResponseToJSON, UpdateSolutionToRecord4xx5xxResponseToJSONTyped, UpdateTable200ResponseDefaultSortOrderEnum, UpdateTable200ResponseFromJSON, UpdateTable200ResponseFromJSONTyped, UpdateTable200ResponseToJSON, UpdateTable200ResponseToJSONTyped, UpdateTableRequestFromJSON, UpdateTableRequestFromJSONTyped, UpdateTableRequestToJSON, UpdateTableRequestToJSONTyped, Upsert200ResponseFromJSON, Upsert200ResponseFromJSONTyped, Upsert200ResponseToJSON, Upsert200ResponseToJSONTyped, Upsert207ResponseFromJSON, Upsert207ResponseFromJSONTyped, Upsert207ResponseToJSON, Upsert207ResponseToJSONTyped, Upsert400ResponseFromJSON, Upsert400ResponseFromJSONTyped, Upsert400ResponseToJSON, Upsert400ResponseToJSONTyped, UpsertRequestFromJSON, UpsertRequestFromJSONTyped, UpsertRequestToJSON, UpsertRequestToJSONTyped, instanceOfAddManagersToGroup200Response, instanceOfAddManagersToGroupRequest, instanceOfAddMembersToGroup200Response, instanceOfAddMembersToGroupRequest, instanceOfAddSubgroupsToGroup200Response, instanceOfAddSubgroupsToGroupRequest, instanceOfAudit200Response, instanceOfAudit202Response, instanceOfAuditRequest, instanceOfChangesetSolution200Response, instanceOfChangesetSolution200ResponseInner, instanceOfChangesetSolution200ResponseInnerChangesInnerInner, instanceOfChangesetSolution400Response, instanceOfChangesetSolution401403Response, instanceOfChangesetSolution404Response, instanceOfChangesetSolution4xx5xxResponse, instanceOfChangesetSolutionFromRecord200Response, instanceOfChangesetSolutionFromRecord400Response, instanceOfChangesetSolutionFromRecord401403Response, instanceOfChangesetSolutionFromRecord404Response, instanceOfChangesetSolutionFromRecord4xx5xxResponse, instanceOfCloneUserToken200Response, instanceOfCloneUserTokenRequest, instanceOfCopyApp200Response, instanceOfCopyAppRequest, instanceOfCopyAppRequestProperties, instanceOfCreateApp200Response, instanceOfCreateAppRequest, instanceOfCreateField200Response, instanceOfCreateFieldRequest, instanceOfCreateRelationship200Response, instanceOfCreateRelationshipRequest, instanceOfCreateSolution200Response, instanceOfCreateSolution400Response, instanceOfCreateSolution401403Response, instanceOfCreateSolution4xx5xxResponse, instanceOfCreateSolutionFromRecord200Response, instanceOfCreateSolutionFromRecord200ResponseInner, instanceOfCreateSolutionFromRecord200ResponseInnerCreatedResourcesInner, instanceOfCreateSolutionFromRecord200ResponseInnerCreatedResourcesInnerAppsInner, instanceOfCreateSolutionFromRecord400Response, instanceOfCreateSolutionFromRecord401403Response, instanceOfCreateSolutionFromRecord404Response, instanceOfCreateSolutionFromRecord4xx5xxResponse, instanceOfCreateTable200Response, instanceOfCreateTableRequest, instanceOfDeactivateUserToken200Response, instanceOfDeleteApp200Response, instanceOfDeleteAppRequest, instanceOfDeleteFields200Response, instanceOfDeleteFieldsRequest, instanceOfDeleteFile200Response, instanceOfDeleteRecords200Response, instanceOfDeleteRecordsRequest, instanceOfDeleteRelationship200Response, instanceOfDeleteTable200Response, instanceOfDeleteUserToken200Response, instanceOfDenyUsers200Response, instanceOfDenyUsersAndGroups200Response, instanceOfDenyUsersAndGroupsRequest, instanceOfDenyUsersRequest, instanceOfDownloadFile200Response, instanceOfExchangeSsoToken200Response, instanceOfExchangeSsoTokenRequest, instanceOfExportSolution200Response, instanceOfExportSolution400Response, instanceOfExportSolution401403Response, instanceOfExportSolution404Response, instanceOfExportSolution4xx5xxResponse, instanceOfExportSolutionToRecord200Response, instanceOfExportSolutionToRecord200ResponseInner, instanceOfExportSolutionToRecord400Response, instanceOfExportSolutionToRecord401403Response, instanceOfExportSolutionToRecord404Response, instanceOfExportSolutionToRecord4xx5xxResponse, instanceOfGenerateDocument200Response, instanceOfGetApp200Response, instanceOfGetAppEvents200Response, instanceOfGetAppTables200Response, instanceOfGetField200Response, instanceOfGetFieldUsage200Response, instanceOfGetFields200Response, instanceOfGetFieldsUsage200Response, instanceOfGetRelationships200Response, instanceOfGetReport200Response, instanceOfGetTable200Response, instanceOfGetTableReports200Response, instanceOfGetTempTokenDBID200Response, instanceOfGetUsers200Response, instanceOfGetUsersRequest, instanceOfPermission, instanceOfPlatformAnalyticEventSummaries200Response, instanceOfPlatformAnalyticEventSummaries200ResponseMetadata, instanceOfPlatformAnalyticEventSummaries200ResponseResultsInner, instanceOfPlatformAnalyticEventSummaries200ResponseResultsInnerEventTypesInner, instanceOfPlatformAnalyticEventSummaries200ResponseResultsInnerTotals, instanceOfPlatformAnalyticEventSummaries200ResponseTotals, instanceOfPlatformAnalyticEventSummaries200ResponseWhereInner, instanceOfPlatformAnalyticEventSummariesRequest, instanceOfPlatformAnalyticEventSummariesRequestWhereInner, instanceOfPlatformAnalyticReads200Response, instanceOfRecord, instanceOfRecordValue, instanceOfRemoveManagersFromGroup200Response, instanceOfRemoveManagersFromGroupRequest, instanceOfRemoveMembersFromGroup200Response, instanceOfRemoveMembersFromGroupRequest, instanceOfRemoveSubgroupsFromGroup200Response, instanceOfRemoveSubgroupsFromGroupRequest, instanceOfRunFormula200Response, instanceOfRunFormulaRequest, instanceOfRunQuery200Response, instanceOfRunQueryRequest, instanceOfRunQueryRequestGroupByInner, instanceOfRunQueryRequestOptions, instanceOfRunQueryRequestSortByInner, instanceOfRunReport200Response, instanceOfTransferUserToken200Response, instanceOfTransferUserTokenRequest, instanceOfUndenyUsers200Response, instanceOfUndenyUsersRequest, instanceOfUpdateApp200Response, instanceOfUpdateAppRequest, instanceOfUpdateField200Response, instanceOfUpdateFieldRequest, instanceOfUpdateRelationship200Response, instanceOfUpdateRelationshipRequest, instanceOfUpdateSolution200Response, instanceOfUpdateSolution200ResponseInner, instanceOfUpdateSolution200ResponseInnerCreatedResourcesInner, instanceOfUpdateSolution400Response, instanceOfUpdateSolution401403Response, instanceOfUpdateSolution4xx5xxResponse, instanceOfUpdateSolutionToRecord200Response, instanceOfUpdateSolutionToRecord200ResponseInner, instanceOfUpdateSolutionToRecord400Response, instanceOfUpdateSolutionToRecord401403Response, instanceOfUpdateSolutionToRecord404Response, instanceOfUpdateSolutionToRecord4xx5xxResponse, instanceOfUpdateTable200Response, instanceOfUpdateTableRequest, instanceOfUpsert200Response, instanceOfUpsert207Response, instanceOfUpsert400Response, instanceOfUpsertRequest, quickbase };
10227
+ export { AddManagersToGroup200ResponseFromJSON, AddManagersToGroup200ResponseFromJSONTyped, AddManagersToGroup200ResponseToJSON, AddManagersToGroup200ResponseToJSONTyped, AddManagersToGroupRequestFromJSON, AddManagersToGroupRequestFromJSONTyped, AddManagersToGroupRequestToJSON, AddManagersToGroupRequestToJSONTyped, AddMembersToGroup200ResponseFromJSON, AddMembersToGroup200ResponseFromJSONTyped, AddMembersToGroup200ResponseToJSON, AddMembersToGroup200ResponseToJSONTyped, AddMembersToGroupRequestFromJSON, AddMembersToGroupRequestFromJSONTyped, AddMembersToGroupRequestToJSON, AddMembersToGroupRequestToJSONTyped, AddSubgroupsToGroup200ResponseFromJSON, AddSubgroupsToGroup200ResponseFromJSONTyped, AddSubgroupsToGroup200ResponseToJSON, AddSubgroupsToGroup200ResponseToJSONTyped, AddSubgroupsToGroupRequestFromJSON, AddSubgroupsToGroupRequestFromJSONTyped, AddSubgroupsToGroupRequestToJSON, AddSubgroupsToGroupRequestToJSONTyped, Audit200ResponseFromJSON, Audit200ResponseFromJSONTyped, Audit200ResponseToJSON, Audit200ResponseToJSONTyped, Audit202ResponseFromJSON, Audit202ResponseFromJSONTyped, Audit202ResponseToJSON, Audit202ResponseToJSONTyped, AuditRequestFromJSON, AuditRequestFromJSONTyped, AuditRequestToJSON, AuditRequestToJSONTyped, ChangesetSolution200ResponseFromJSON, ChangesetSolution200ResponseFromJSONTyped, ChangesetSolution200ResponseInnerChangesInnerInnerFromJSON, ChangesetSolution200ResponseInnerChangesInnerInnerFromJSONTyped, ChangesetSolution200ResponseInnerChangesInnerInnerToJSON, ChangesetSolution200ResponseInnerChangesInnerInnerToJSONTyped, ChangesetSolution200ResponseInnerFromJSON, ChangesetSolution200ResponseInnerFromJSONTyped, ChangesetSolution200ResponseInnerToJSON, ChangesetSolution200ResponseInnerToJSONTyped, ChangesetSolution200ResponseToJSON, ChangesetSolution200ResponseToJSONTyped, ChangesetSolution400ResponseFromJSON, ChangesetSolution400ResponseFromJSONTyped, ChangesetSolution400ResponseToJSON, ChangesetSolution400ResponseToJSONTyped, ChangesetSolution401403ResponseFromJSON, ChangesetSolution401403ResponseFromJSONTyped, ChangesetSolution401403ResponseToJSON, ChangesetSolution401403ResponseToJSONTyped, ChangesetSolution404ResponseFromJSON, ChangesetSolution404ResponseFromJSONTyped, ChangesetSolution404ResponseToJSON, ChangesetSolution404ResponseToJSONTyped, ChangesetSolution4xx5xxResponseFromJSON, ChangesetSolution4xx5xxResponseFromJSONTyped, ChangesetSolution4xx5xxResponseToJSON, ChangesetSolution4xx5xxResponseToJSONTyped, ChangesetSolutionFromRecord200ResponseFromJSON, ChangesetSolutionFromRecord200ResponseFromJSONTyped, ChangesetSolutionFromRecord200ResponseToJSON, ChangesetSolutionFromRecord200ResponseToJSONTyped, ChangesetSolutionFromRecord400ResponseFromJSON, ChangesetSolutionFromRecord400ResponseFromJSONTyped, ChangesetSolutionFromRecord400ResponseToJSON, ChangesetSolutionFromRecord400ResponseToJSONTyped, ChangesetSolutionFromRecord401403ResponseFromJSON, ChangesetSolutionFromRecord401403ResponseFromJSONTyped, ChangesetSolutionFromRecord401403ResponseToJSON, ChangesetSolutionFromRecord401403ResponseToJSONTyped, ChangesetSolutionFromRecord404ResponseFromJSON, ChangesetSolutionFromRecord404ResponseFromJSONTyped, ChangesetSolutionFromRecord404ResponseToJSON, ChangesetSolutionFromRecord404ResponseToJSONTyped, ChangesetSolutionFromRecord4xx5xxResponseFromJSON, ChangesetSolutionFromRecord4xx5xxResponseFromJSONTyped, ChangesetSolutionFromRecord4xx5xxResponseToJSON, ChangesetSolutionFromRecord4xx5xxResponseToJSONTyped, CloneUserToken200ResponseFromJSON, CloneUserToken200ResponseFromJSONTyped, CloneUserToken200ResponseToJSON, CloneUserToken200ResponseToJSONTyped, CloneUserTokenRequestFromJSON, CloneUserTokenRequestFromJSONTyped, CloneUserTokenRequestToJSON, CloneUserTokenRequestToJSONTyped, CopyApp200ResponseFromJSON, CopyApp200ResponseFromJSONTyped, CopyApp200ResponseToJSON, CopyApp200ResponseToJSONTyped, CopyAppRequestFromJSON, CopyAppRequestFromJSONTyped, CopyAppRequestPropertiesFromJSON, CopyAppRequestPropertiesFromJSONTyped, CopyAppRequestPropertiesToJSON, CopyAppRequestPropertiesToJSONTyped, CopyAppRequestToJSON, CopyAppRequestToJSONTyped, CreateApp200ResponseFromJSON, CreateApp200ResponseFromJSONTyped, CreateApp200ResponseToJSON, CreateApp200ResponseToJSONTyped, CreateAppRequestFromJSON, CreateAppRequestFromJSONTyped, CreateAppRequestToJSON, CreateAppRequestToJSONTyped, CreateField200ResponseFromJSON, CreateField200ResponseFromJSONTyped, CreateField200ResponseToJSON, CreateField200ResponseToJSONTyped, CreateFieldRequestFieldTypeEnum, CreateFieldRequestFromJSON, CreateFieldRequestFromJSONTyped, CreateFieldRequestPropertiesCurrencyFormatEnum, CreateFieldRequestPropertiesFromJSON, CreateFieldRequestPropertiesFromJSONTyped, CreateFieldRequestPropertiesOpenTargetInEnum, CreateFieldRequestPropertiesSummaryFunctionEnum, CreateFieldRequestPropertiesToJSON, CreateFieldRequestPropertiesToJSONTyped, CreateFieldRequestPropertiesVersionModeEnum, CreateFieldRequestToJSON, CreateFieldRequestToJSONTyped, CreateRelationship200ResponseFromJSON, CreateRelationship200ResponseFromJSONTyped, CreateRelationship200ResponseToJSON, CreateRelationship200ResponseToJSONTyped, CreateRelationshipRequestFromJSON, CreateRelationshipRequestFromJSONTyped, CreateRelationshipRequestToJSON, CreateRelationshipRequestToJSONTyped, CreateSolution200ResponseFromJSON, CreateSolution200ResponseFromJSONTyped, CreateSolution200ResponseToJSON, CreateSolution200ResponseToJSONTyped, CreateSolution400ResponseFromJSON, CreateSolution400ResponseFromJSONTyped, CreateSolution400ResponseToJSON, CreateSolution400ResponseToJSONTyped, CreateSolution401403ResponseFromJSON, CreateSolution401403ResponseFromJSONTyped, CreateSolution401403ResponseToJSON, CreateSolution401403ResponseToJSONTyped, CreateSolution4xx5xxResponseFromJSON, CreateSolution4xx5xxResponseFromJSONTyped, CreateSolution4xx5xxResponseToJSON, CreateSolution4xx5xxResponseToJSONTyped, CreateSolutionFromRecord200ResponseFromJSON, CreateSolutionFromRecord200ResponseFromJSONTyped, CreateSolutionFromRecord200ResponseInnerCreatedResourcesInnerAppsInnerFromJSON, CreateSolutionFromRecord200ResponseInnerCreatedResourcesInnerAppsInnerFromJSONTyped, CreateSolutionFromRecord200ResponseInnerCreatedResourcesInnerAppsInnerToJSON, CreateSolutionFromRecord200ResponseInnerCreatedResourcesInnerAppsInnerToJSONTyped, CreateSolutionFromRecord200ResponseInnerCreatedResourcesInnerFromJSON, CreateSolutionFromRecord200ResponseInnerCreatedResourcesInnerFromJSONTyped, CreateSolutionFromRecord200ResponseInnerCreatedResourcesInnerToJSON, CreateSolutionFromRecord200ResponseInnerCreatedResourcesInnerToJSONTyped, CreateSolutionFromRecord200ResponseInnerFromJSON, CreateSolutionFromRecord200ResponseInnerFromJSONTyped, CreateSolutionFromRecord200ResponseInnerToJSON, CreateSolutionFromRecord200ResponseInnerToJSONTyped, CreateSolutionFromRecord200ResponseToJSON, CreateSolutionFromRecord200ResponseToJSONTyped, CreateSolutionFromRecord400ResponseFromJSON, CreateSolutionFromRecord400ResponseFromJSONTyped, CreateSolutionFromRecord400ResponseToJSON, CreateSolutionFromRecord400ResponseToJSONTyped, CreateSolutionFromRecord401403ResponseFromJSON, CreateSolutionFromRecord401403ResponseFromJSONTyped, CreateSolutionFromRecord401403ResponseToJSON, CreateSolutionFromRecord401403ResponseToJSONTyped, CreateSolutionFromRecord404ResponseFromJSON, CreateSolutionFromRecord404ResponseFromJSONTyped, CreateSolutionFromRecord404ResponseToJSON, CreateSolutionFromRecord404ResponseToJSONTyped, CreateSolutionFromRecord4xx5xxResponseFromJSON, CreateSolutionFromRecord4xx5xxResponseFromJSONTyped, CreateSolutionFromRecord4xx5xxResponseToJSON, CreateSolutionFromRecord4xx5xxResponseToJSONTyped, CreateTable200ResponseDefaultSortOrderEnum, CreateTable200ResponseFromJSON, CreateTable200ResponseFromJSONTyped, CreateTable200ResponseToJSON, CreateTable200ResponseToJSONTyped, CreateTableRequestFromJSON, CreateTableRequestFromJSONTyped, CreateTableRequestToJSON, CreateTableRequestToJSONTyped, DeactivateUserToken200ResponseFromJSON, DeactivateUserToken200ResponseFromJSONTyped, DeactivateUserToken200ResponseToJSON, DeactivateUserToken200ResponseToJSONTyped, DeleteApp200ResponseFromJSON, DeleteApp200ResponseFromJSONTyped, DeleteApp200ResponseToJSON, DeleteApp200ResponseToJSONTyped, DeleteAppRequestFromJSON, DeleteAppRequestFromJSONTyped, DeleteAppRequestToJSON, DeleteAppRequestToJSONTyped, DeleteFields200ResponseFromJSON, DeleteFields200ResponseFromJSONTyped, DeleteFields200ResponseToJSON, DeleteFields200ResponseToJSONTyped, DeleteFieldsRequestFromJSON, DeleteFieldsRequestFromJSONTyped, DeleteFieldsRequestToJSON, DeleteFieldsRequestToJSONTyped, DeleteFile200ResponseFromJSON, DeleteFile200ResponseFromJSONTyped, DeleteFile200ResponseToJSON, DeleteFile200ResponseToJSONTyped, DeleteRecords200ResponseFromJSON, DeleteRecords200ResponseFromJSONTyped, DeleteRecords200ResponseToJSON, DeleteRecords200ResponseToJSONTyped, DeleteRecordsRequestFromJSON, DeleteRecordsRequestFromJSONTyped, DeleteRecordsRequestToJSON, DeleteRecordsRequestToJSONTyped, DeleteRelationship200ResponseFromJSON, DeleteRelationship200ResponseFromJSONTyped, DeleteRelationship200ResponseToJSON, DeleteRelationship200ResponseToJSONTyped, DeleteTable200ResponseFromJSON, DeleteTable200ResponseFromJSONTyped, DeleteTable200ResponseToJSON, DeleteTable200ResponseToJSONTyped, DeleteUserToken200ResponseFromJSON, DeleteUserToken200ResponseFromJSONTyped, DeleteUserToken200ResponseToJSON, DeleteUserToken200ResponseToJSONTyped, DenyUsers200ResponseFromJSON, DenyUsers200ResponseFromJSONTyped, DenyUsers200ResponseToJSON, DenyUsers200ResponseToJSONTyped, DenyUsersAndGroups200ResponseFromJSON, DenyUsersAndGroups200ResponseFromJSONTyped, DenyUsersAndGroups200ResponseToJSON, DenyUsersAndGroups200ResponseToJSONTyped, DenyUsersAndGroupsRequestFromJSON, DenyUsersAndGroupsRequestFromJSONTyped, DenyUsersAndGroupsRequestToJSON, DenyUsersAndGroupsRequestToJSONTyped, DenyUsersRequestFromJSON, DenyUsersRequestFromJSONTyped, DenyUsersRequestToJSON, DenyUsersRequestToJSONTyped, DownloadFile200ResponseFromJSON, DownloadFile200ResponseFromJSONTyped, DownloadFile200ResponseToJSON, DownloadFile200ResponseToJSONTyped, ExchangeSsoToken200ResponseFromJSON, ExchangeSsoToken200ResponseFromJSONTyped, ExchangeSsoToken200ResponseIssuedTokenTypeEnum, ExchangeSsoToken200ResponseToJSON, ExchangeSsoToken200ResponseToJSONTyped, ExchangeSsoToken200ResponseTokenTypeEnum, ExchangeSsoTokenRequestFromJSON, ExchangeSsoTokenRequestFromJSONTyped, ExchangeSsoTokenRequestGrantTypeEnum, ExchangeSsoTokenRequestRequestedTokenTypeEnum, ExchangeSsoTokenRequestSubjectTokenTypeEnum, ExchangeSsoTokenRequestToJSON, ExchangeSsoTokenRequestToJSONTyped, ExportSolution200ResponseFromJSON, ExportSolution200ResponseFromJSONTyped, ExportSolution200ResponseToJSON, ExportSolution200ResponseToJSONTyped, ExportSolution400ResponseFromJSON, ExportSolution400ResponseFromJSONTyped, ExportSolution400ResponseToJSON, ExportSolution400ResponseToJSONTyped, ExportSolution401403ResponseFromJSON, ExportSolution401403ResponseFromJSONTyped, ExportSolution401403ResponseToJSON, ExportSolution401403ResponseToJSONTyped, ExportSolution404ResponseFromJSON, ExportSolution404ResponseFromJSONTyped, ExportSolution404ResponseToJSON, ExportSolution404ResponseToJSONTyped, ExportSolution4xx5xxResponseFromJSON, ExportSolution4xx5xxResponseFromJSONTyped, ExportSolution4xx5xxResponseToJSON, ExportSolution4xx5xxResponseToJSONTyped, ExportSolutionToRecord200ResponseFromJSON, ExportSolutionToRecord200ResponseFromJSONTyped, ExportSolutionToRecord200ResponseInnerFromJSON, ExportSolutionToRecord200ResponseInnerFromJSONTyped, ExportSolutionToRecord200ResponseInnerToJSON, ExportSolutionToRecord200ResponseInnerToJSONTyped, ExportSolutionToRecord200ResponseToJSON, ExportSolutionToRecord200ResponseToJSONTyped, ExportSolutionToRecord400ResponseFromJSON, ExportSolutionToRecord400ResponseFromJSONTyped, ExportSolutionToRecord400ResponseToJSON, ExportSolutionToRecord400ResponseToJSONTyped, ExportSolutionToRecord401403ResponseFromJSON, ExportSolutionToRecord401403ResponseFromJSONTyped, ExportSolutionToRecord401403ResponseToJSON, ExportSolutionToRecord401403ResponseToJSONTyped, ExportSolutionToRecord404ResponseFromJSON, ExportSolutionToRecord404ResponseFromJSONTyped, ExportSolutionToRecord404ResponseToJSON, ExportSolutionToRecord404ResponseToJSONTyped, ExportSolutionToRecord4xx5xxResponseFromJSON, ExportSolutionToRecord4xx5xxResponseFromJSONTyped, ExportSolutionToRecord4xx5xxResponseToJSON, ExportSolutionToRecord4xx5xxResponseToJSONTyped, GenerateDocument200ResponseFromJSON, GenerateDocument200ResponseFromJSONTyped, GenerateDocument200ResponseToJSON, GenerateDocument200ResponseToJSONTyped, GetApp200ResponseFromJSON, GetApp200ResponseFromJSONTyped, GetApp200ResponseToJSON, GetApp200ResponseToJSONTyped, GetAppEvents200ResponseFromJSON, GetAppEvents200ResponseFromJSONTyped, GetAppEvents200ResponseToJSON, GetAppEvents200ResponseToJSONTyped, GetAppTables200ResponseFromJSON, GetAppTables200ResponseFromJSONTyped, GetAppTables200ResponseToJSON, GetAppTables200ResponseToJSONTyped, GetField200ResponseFromJSON, GetField200ResponseFromJSONTyped, GetField200ResponseToJSON, GetField200ResponseToJSONTyped, GetFieldUsage200ResponseFromJSON, GetFieldUsage200ResponseFromJSONTyped, GetFieldUsage200ResponseToJSON, GetFieldUsage200ResponseToJSONTyped, GetFields200ResponseFromJSON, GetFields200ResponseFromJSONTyped, GetFields200ResponseToJSON, GetFields200ResponseToJSONTyped, GetFieldsUsage200ResponseFromJSON, GetFieldsUsage200ResponseFromJSONTyped, GetFieldsUsage200ResponseToJSON, GetFieldsUsage200ResponseToJSONTyped, GetRelationships200ResponseFromJSON, GetRelationships200ResponseFromJSONTyped, GetRelationships200ResponseToJSON, GetRelationships200ResponseToJSONTyped, GetReport200ResponseFromJSON, GetReport200ResponseFromJSONTyped, GetReport200ResponseToJSON, GetReport200ResponseToJSONTyped, GetTable200ResponseDefaultSortOrderEnum, GetTable200ResponseFromJSON, GetTable200ResponseFromJSONTyped, GetTable200ResponseToJSON, GetTable200ResponseToJSONTyped, GetTableReports200ResponseFromJSON, GetTableReports200ResponseFromJSONTyped, GetTableReports200ResponseToJSON, GetTableReports200ResponseToJSONTyped, GetTempTokenDBID200ResponseFromJSON, GetTempTokenDBID200ResponseFromJSONTyped, GetTempTokenDBID200ResponseToJSON, GetTempTokenDBID200ResponseToJSONTyped, GetUsers200ResponseFromJSON, GetUsers200ResponseFromJSONTyped, GetUsers200ResponseToJSON, GetUsers200ResponseToJSONTyped, GetUsersRequestFromJSON, GetUsersRequestFromJSONTyped, GetUsersRequestToJSON, GetUsersRequestToJSONTyped, PermissionFromJSON, PermissionFromJSONTyped, PermissionToJSON, PermissionToJSONTyped, PlatformAnalyticEventSummaries200ResponseFromJSON, PlatformAnalyticEventSummaries200ResponseFromJSONTyped, PlatformAnalyticEventSummaries200ResponseGroupByEnum, PlatformAnalyticEventSummaries200ResponseMetadataFromJSON, PlatformAnalyticEventSummaries200ResponseMetadataFromJSONTyped, PlatformAnalyticEventSummaries200ResponseMetadataToJSON, PlatformAnalyticEventSummaries200ResponseMetadataToJSONTyped, PlatformAnalyticEventSummaries200ResponseResultsInnerEventTypesInnerBillingCategoryEnum, PlatformAnalyticEventSummaries200ResponseResultsInnerEventTypesInnerFromJSON, PlatformAnalyticEventSummaries200ResponseResultsInnerEventTypesInnerFromJSONTyped, PlatformAnalyticEventSummaries200ResponseResultsInnerEventTypesInnerToJSON, PlatformAnalyticEventSummaries200ResponseResultsInnerEventTypesInnerToJSONTyped, PlatformAnalyticEventSummaries200ResponseResultsInnerFromJSON, PlatformAnalyticEventSummaries200ResponseResultsInnerFromJSONTyped, PlatformAnalyticEventSummaries200ResponseResultsInnerToJSON, PlatformAnalyticEventSummaries200ResponseResultsInnerToJSONTyped, PlatformAnalyticEventSummaries200ResponseResultsInnerTotalsFromJSON, PlatformAnalyticEventSummaries200ResponseResultsInnerTotalsFromJSONTyped, PlatformAnalyticEventSummaries200ResponseResultsInnerTotalsToJSON, PlatformAnalyticEventSummaries200ResponseResultsInnerTotalsToJSONTyped, PlatformAnalyticEventSummaries200ResponseToJSON, PlatformAnalyticEventSummaries200ResponseToJSONTyped, PlatformAnalyticEventSummaries200ResponseTotalsFromJSON, PlatformAnalyticEventSummaries200ResponseTotalsFromJSONTyped, PlatformAnalyticEventSummaries200ResponseTotalsToJSON, PlatformAnalyticEventSummaries200ResponseTotalsToJSONTyped, PlatformAnalyticEventSummaries200ResponseWhereInnerFromJSON, PlatformAnalyticEventSummaries200ResponseWhereInnerFromJSONTyped, PlatformAnalyticEventSummaries200ResponseWhereInnerToJSON, PlatformAnalyticEventSummaries200ResponseWhereInnerToJSONTyped, PlatformAnalyticEventSummaries200ResponseWhereInnerTypeEnum, PlatformAnalyticEventSummariesRequestFromJSON, PlatformAnalyticEventSummariesRequestFromJSONTyped, PlatformAnalyticEventSummariesRequestGroupByEnum, PlatformAnalyticEventSummariesRequestToJSON, PlatformAnalyticEventSummariesRequestToJSONTyped, PlatformAnalyticEventSummariesRequestWhereInnerFromJSON, PlatformAnalyticEventSummariesRequestWhereInnerFromJSONTyped, PlatformAnalyticEventSummariesRequestWhereInnerToJSON, PlatformAnalyticEventSummariesRequestWhereInnerToJSONTyped, PlatformAnalyticEventSummariesRequestWhereInnerTypeEnum, PlatformAnalyticReads200ResponseFromJSON, PlatformAnalyticReads200ResponseFromJSONTyped, PlatformAnalyticReads200ResponseToJSON, PlatformAnalyticReads200ResponseToJSONTyped, RecordFromJSON, RecordFromJSONTyped, RecordToJSON, RecordToJSONTyped, RecordValueFromJSON, RecordValueFromJSONTyped, RecordValueToJSON, RecordValueToJSONTyped, RemoveManagersFromGroup200ResponseFromJSON, RemoveManagersFromGroup200ResponseFromJSONTyped, RemoveManagersFromGroup200ResponseToJSON, RemoveManagersFromGroup200ResponseToJSONTyped, RemoveManagersFromGroupRequestFromJSON, RemoveManagersFromGroupRequestFromJSONTyped, RemoveManagersFromGroupRequestToJSON, RemoveManagersFromGroupRequestToJSONTyped, RemoveMembersFromGroup200ResponseFromJSON, RemoveMembersFromGroup200ResponseFromJSONTyped, RemoveMembersFromGroup200ResponseToJSON, RemoveMembersFromGroup200ResponseToJSONTyped, RemoveMembersFromGroupRequestFromJSON, RemoveMembersFromGroupRequestFromJSONTyped, RemoveMembersFromGroupRequestToJSON, RemoveMembersFromGroupRequestToJSONTyped, RemoveSubgroupsFromGroup200ResponseFromJSON, RemoveSubgroupsFromGroup200ResponseFromJSONTyped, RemoveSubgroupsFromGroup200ResponseToJSON, RemoveSubgroupsFromGroup200ResponseToJSONTyped, RemoveSubgroupsFromGroupRequestFromJSON, RemoveSubgroupsFromGroupRequestFromJSONTyped, RemoveSubgroupsFromGroupRequestToJSON, RemoveSubgroupsFromGroupRequestToJSONTyped, RunFormula200ResponseFromJSON, RunFormula200ResponseFromJSONTyped, RunFormula200ResponseToJSON, RunFormula200ResponseToJSONTyped, RunFormulaRequestFromJSON, RunFormulaRequestFromJSONTyped, RunFormulaRequestToJSON, RunFormulaRequestToJSONTyped, RunQuery200ResponseFromJSON, RunQuery200ResponseFromJSONTyped, RunQuery200ResponseToJSON, RunQuery200ResponseToJSONTyped, RunQueryRequestFromJSON, RunQueryRequestFromJSONTyped, RunQueryRequestGroupByInnerFromJSON, RunQueryRequestGroupByInnerFromJSONTyped, RunQueryRequestGroupByInnerGroupingEnum, RunQueryRequestGroupByInnerToJSON, RunQueryRequestGroupByInnerToJSONTyped, RunQueryRequestOptionsFromJSON, RunQueryRequestOptionsFromJSONTyped, RunQueryRequestOptionsToJSON, RunQueryRequestOptionsToJSONTyped, RunQueryRequestSortByInnerFromJSON, RunQueryRequestSortByInnerFromJSONTyped, RunQueryRequestSortByInnerOrderEnum, RunQueryRequestSortByInnerToJSON, RunQueryRequestSortByInnerToJSONTyped, RunQueryRequestToJSON, RunQueryRequestToJSONTyped, RunReport200ResponseFromJSON, RunReport200ResponseFromJSONTyped, RunReport200ResponseToJSON, RunReport200ResponseToJSONTyped, TransferUserToken200ResponseFromJSON, TransferUserToken200ResponseFromJSONTyped, TransferUserToken200ResponseToJSON, TransferUserToken200ResponseToJSONTyped, TransferUserTokenRequestFromJSON, TransferUserTokenRequestFromJSONTyped, TransferUserTokenRequestToJSON, TransferUserTokenRequestToJSONTyped, UndenyUsers200ResponseFromJSON, UndenyUsers200ResponseFromJSONTyped, UndenyUsers200ResponseToJSON, UndenyUsers200ResponseToJSONTyped, UndenyUsersRequestFromJSON, UndenyUsersRequestFromJSONTyped, UndenyUsersRequestToJSON, UndenyUsersRequestToJSONTyped, UpdateApp200ResponseFromJSON, UpdateApp200ResponseFromJSONTyped, UpdateApp200ResponseToJSON, UpdateApp200ResponseToJSONTyped, UpdateAppRequestFromJSON, UpdateAppRequestFromJSONTyped, UpdateAppRequestToJSON, UpdateAppRequestToJSONTyped, UpdateField200ResponseFromJSON, UpdateField200ResponseFromJSONTyped, UpdateField200ResponseToJSON, UpdateField200ResponseToJSONTyped, UpdateFieldRequestFieldTypeEnum, UpdateFieldRequestFromJSON, UpdateFieldRequestFromJSONTyped, UpdateFieldRequestToJSON, UpdateFieldRequestToJSONTyped, UpdateRelationship200ResponseFromJSON, UpdateRelationship200ResponseFromJSONTyped, UpdateRelationship200ResponseToJSON, UpdateRelationship200ResponseToJSONTyped, UpdateRelationshipRequestFromJSON, UpdateRelationshipRequestFromJSONTyped, UpdateRelationshipRequestToJSON, UpdateRelationshipRequestToJSONTyped, UpdateSolution200ResponseFromJSON, UpdateSolution200ResponseFromJSONTyped, UpdateSolution200ResponseInnerCreatedResourcesInnerFromJSON, UpdateSolution200ResponseInnerCreatedResourcesInnerFromJSONTyped, UpdateSolution200ResponseInnerCreatedResourcesInnerToJSON, UpdateSolution200ResponseInnerCreatedResourcesInnerToJSONTyped, UpdateSolution200ResponseInnerFromJSON, UpdateSolution200ResponseInnerFromJSONTyped, UpdateSolution200ResponseInnerToJSON, UpdateSolution200ResponseInnerToJSONTyped, UpdateSolution200ResponseToJSON, UpdateSolution200ResponseToJSONTyped, UpdateSolution400ResponseFromJSON, UpdateSolution400ResponseFromJSONTyped, UpdateSolution400ResponseToJSON, UpdateSolution400ResponseToJSONTyped, UpdateSolution401403ResponseFromJSON, UpdateSolution401403ResponseFromJSONTyped, UpdateSolution401403ResponseToJSON, UpdateSolution401403ResponseToJSONTyped, UpdateSolution4xx5xxResponseFromJSON, UpdateSolution4xx5xxResponseFromJSONTyped, UpdateSolution4xx5xxResponseToJSON, UpdateSolution4xx5xxResponseToJSONTyped, UpdateSolutionToRecord200ResponseFromJSON, UpdateSolutionToRecord200ResponseFromJSONTyped, UpdateSolutionToRecord200ResponseInnerFromJSON, UpdateSolutionToRecord200ResponseInnerFromJSONTyped, UpdateSolutionToRecord200ResponseInnerToJSON, UpdateSolutionToRecord200ResponseInnerToJSONTyped, UpdateSolutionToRecord200ResponseToJSON, UpdateSolutionToRecord200ResponseToJSONTyped, UpdateSolutionToRecord400ResponseFromJSON, UpdateSolutionToRecord400ResponseFromJSONTyped, UpdateSolutionToRecord400ResponseToJSON, UpdateSolutionToRecord400ResponseToJSONTyped, UpdateSolutionToRecord401403ResponseFromJSON, UpdateSolutionToRecord401403ResponseFromJSONTyped, UpdateSolutionToRecord401403ResponseToJSON, UpdateSolutionToRecord401403ResponseToJSONTyped, UpdateSolutionToRecord404ResponseFromJSON, UpdateSolutionToRecord404ResponseFromJSONTyped, UpdateSolutionToRecord404ResponseToJSON, UpdateSolutionToRecord404ResponseToJSONTyped, UpdateSolutionToRecord4xx5xxResponseFromJSON, UpdateSolutionToRecord4xx5xxResponseFromJSONTyped, UpdateSolutionToRecord4xx5xxResponseToJSON, UpdateSolutionToRecord4xx5xxResponseToJSONTyped, UpdateTable200ResponseDefaultSortOrderEnum, UpdateTable200ResponseFromJSON, UpdateTable200ResponseFromJSONTyped, UpdateTable200ResponseToJSON, UpdateTable200ResponseToJSONTyped, UpdateTableRequestFromJSON, UpdateTableRequestFromJSONTyped, UpdateTableRequestToJSON, UpdateTableRequestToJSONTyped, Upsert200ResponseFromJSON, Upsert200ResponseFromJSONTyped, Upsert200ResponseToJSON, Upsert200ResponseToJSONTyped, Upsert207ResponseFromJSON, Upsert207ResponseFromJSONTyped, Upsert207ResponseToJSON, Upsert207ResponseToJSONTyped, Upsert400ResponseFromJSON, Upsert400ResponseFromJSONTyped, Upsert400ResponseToJSON, Upsert400ResponseToJSONTyped, UpsertRequestFromJSON, UpsertRequestFromJSONTyped, UpsertRequestToJSON, UpsertRequestToJSONTyped, instanceOfAddManagersToGroup200Response, instanceOfAddManagersToGroupRequest, instanceOfAddMembersToGroup200Response, instanceOfAddMembersToGroupRequest, instanceOfAddSubgroupsToGroup200Response, instanceOfAddSubgroupsToGroupRequest, instanceOfAudit200Response, instanceOfAudit202Response, instanceOfAuditRequest, instanceOfChangesetSolution200Response, instanceOfChangesetSolution200ResponseInner, instanceOfChangesetSolution200ResponseInnerChangesInnerInner, instanceOfChangesetSolution400Response, instanceOfChangesetSolution401403Response, instanceOfChangesetSolution404Response, instanceOfChangesetSolution4xx5xxResponse, instanceOfChangesetSolutionFromRecord200Response, instanceOfChangesetSolutionFromRecord400Response, instanceOfChangesetSolutionFromRecord401403Response, instanceOfChangesetSolutionFromRecord404Response, instanceOfChangesetSolutionFromRecord4xx5xxResponse, instanceOfCloneUserToken200Response, instanceOfCloneUserTokenRequest, instanceOfCopyApp200Response, instanceOfCopyAppRequest, instanceOfCopyAppRequestProperties, instanceOfCreateApp200Response, instanceOfCreateAppRequest, instanceOfCreateField200Response, instanceOfCreateFieldRequest, instanceOfCreateFieldRequestProperties, instanceOfCreateRelationship200Response, instanceOfCreateRelationshipRequest, instanceOfCreateSolution200Response, instanceOfCreateSolution400Response, instanceOfCreateSolution401403Response, instanceOfCreateSolution4xx5xxResponse, instanceOfCreateSolutionFromRecord200Response, instanceOfCreateSolutionFromRecord200ResponseInner, instanceOfCreateSolutionFromRecord200ResponseInnerCreatedResourcesInner, instanceOfCreateSolutionFromRecord200ResponseInnerCreatedResourcesInnerAppsInner, instanceOfCreateSolutionFromRecord400Response, instanceOfCreateSolutionFromRecord401403Response, instanceOfCreateSolutionFromRecord404Response, instanceOfCreateSolutionFromRecord4xx5xxResponse, instanceOfCreateTable200Response, instanceOfCreateTableRequest, instanceOfDeactivateUserToken200Response, instanceOfDeleteApp200Response, instanceOfDeleteAppRequest, instanceOfDeleteFields200Response, instanceOfDeleteFieldsRequest, instanceOfDeleteFile200Response, instanceOfDeleteRecords200Response, instanceOfDeleteRecordsRequest, instanceOfDeleteRelationship200Response, instanceOfDeleteTable200Response, instanceOfDeleteUserToken200Response, instanceOfDenyUsers200Response, instanceOfDenyUsersAndGroups200Response, instanceOfDenyUsersAndGroupsRequest, instanceOfDenyUsersRequest, instanceOfDownloadFile200Response, instanceOfExchangeSsoToken200Response, instanceOfExchangeSsoTokenRequest, instanceOfExportSolution200Response, instanceOfExportSolution400Response, instanceOfExportSolution401403Response, instanceOfExportSolution404Response, instanceOfExportSolution4xx5xxResponse, instanceOfExportSolutionToRecord200Response, instanceOfExportSolutionToRecord200ResponseInner, instanceOfExportSolutionToRecord400Response, instanceOfExportSolutionToRecord401403Response, instanceOfExportSolutionToRecord404Response, instanceOfExportSolutionToRecord4xx5xxResponse, instanceOfGenerateDocument200Response, instanceOfGetApp200Response, instanceOfGetAppEvents200Response, instanceOfGetAppTables200Response, instanceOfGetField200Response, instanceOfGetFieldUsage200Response, instanceOfGetFields200Response, instanceOfGetFieldsUsage200Response, instanceOfGetRelationships200Response, instanceOfGetReport200Response, instanceOfGetTable200Response, instanceOfGetTableReports200Response, instanceOfGetTempTokenDBID200Response, instanceOfGetUsers200Response, instanceOfGetUsersRequest, instanceOfPermission, instanceOfPlatformAnalyticEventSummaries200Response, instanceOfPlatformAnalyticEventSummaries200ResponseMetadata, instanceOfPlatformAnalyticEventSummaries200ResponseResultsInner, instanceOfPlatformAnalyticEventSummaries200ResponseResultsInnerEventTypesInner, instanceOfPlatformAnalyticEventSummaries200ResponseResultsInnerTotals, instanceOfPlatformAnalyticEventSummaries200ResponseTotals, instanceOfPlatformAnalyticEventSummaries200ResponseWhereInner, instanceOfPlatformAnalyticEventSummariesRequest, instanceOfPlatformAnalyticEventSummariesRequestWhereInner, instanceOfPlatformAnalyticReads200Response, instanceOfRecord, instanceOfRecordValue, instanceOfRemoveManagersFromGroup200Response, instanceOfRemoveManagersFromGroupRequest, instanceOfRemoveMembersFromGroup200Response, instanceOfRemoveMembersFromGroupRequest, instanceOfRemoveSubgroupsFromGroup200Response, instanceOfRemoveSubgroupsFromGroupRequest, instanceOfRunFormula200Response, instanceOfRunFormulaRequest, instanceOfRunQuery200Response, instanceOfRunQueryRequest, instanceOfRunQueryRequestGroupByInner, instanceOfRunQueryRequestOptions, instanceOfRunQueryRequestSortByInner, instanceOfRunReport200Response, instanceOfTransferUserToken200Response, instanceOfTransferUserTokenRequest, instanceOfUndenyUsers200Response, instanceOfUndenyUsersRequest, instanceOfUpdateApp200Response, instanceOfUpdateAppRequest, instanceOfUpdateField200Response, instanceOfUpdateFieldRequest, instanceOfUpdateRelationship200Response, instanceOfUpdateRelationshipRequest, instanceOfUpdateSolution200Response, instanceOfUpdateSolution200ResponseInner, instanceOfUpdateSolution200ResponseInnerCreatedResourcesInner, instanceOfUpdateSolution400Response, instanceOfUpdateSolution401403Response, instanceOfUpdateSolution4xx5xxResponse, instanceOfUpdateSolutionToRecord200Response, instanceOfUpdateSolutionToRecord200ResponseInner, instanceOfUpdateSolutionToRecord400Response, instanceOfUpdateSolutionToRecord401403Response, instanceOfUpdateSolutionToRecord404Response, instanceOfUpdateSolutionToRecord4xx5xxResponse, instanceOfUpdateTable200Response, instanceOfUpdateTableRequest, instanceOfUpsert200Response, instanceOfUpsert207Response, instanceOfUpsert400Response, instanceOfUpsertRequest, quickbase };
9752
10228
  //# sourceMappingURL=quickbase.js.map