@splitsoftware/splitio-commons 3.0.0-rc.7 → 3.0.0

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.
package/CHANGES.txt CHANGED
@@ -1,4 +1,4 @@
1
- 3.0.0 (June XX, 2026)
1
+ 3.0.0 (June 26, 2026)
2
2
  - Extracted SDK lifecycle methods (`init`, `flush`, and `destroy`) into a reusable `sdkLifecycle` module.
3
3
  - Extracted the `track` method into a standalone `trackMethod` factory for reuse across SDKs.
4
4
  - Added a bloom filter utility and platform-specific modules (`src/platform/`) for reuse across SDKs.
@@ -12,7 +12,7 @@
12
12
  - Removed the misleading warning log 'No listeners for SDK_READY event detected', since users can use the `whenReady` method to wait for the SDK to be ready.
13
13
  - BREAKING CHANGES: Renamed some types and modules, and updated the signatures of others for clarity and reusability.
14
14
 
15
- 2.12.1 (April 30, 2026)
15
+ 2.12.1 (June 25, 2026)
16
16
  - Updated internal modules to handle `null` values from `/splitChanges` response.
17
17
  - Updated some dependencies for vulnerability fixes.
18
18
 
@@ -47,13 +47,13 @@ var NodeSignalListener = /** @class */ (function () {
47
47
  // eslint-disable-next-line no-undef
48
48
  process.kill(process.pid, SIGTERM);
49
49
  };
50
- this.settings.log.debug("".concat(constants_1.LOG_PREFIX_CLEANUP, "Split SDK graceful shutdown after SIGTERM."));
50
+ this.settings.log.debug("".concat(constants_1.LOG_PREFIX_CLEANUP, "SDK graceful shutdown after SIGTERM."));
51
51
  var handlerResult = null;
52
52
  try {
53
53
  handlerResult = this.handler();
54
54
  }
55
55
  catch (err) {
56
- this.settings.log.error("".concat(constants_1.LOG_PREFIX_CLEANUP, "Error with Split SDK graceful shutdown: ").concat(err));
56
+ this.settings.log.error("".concat(constants_1.LOG_PREFIX_CLEANUP, "Error with SDK graceful shutdown: ").concat(err));
57
57
  }
58
58
  if ((0, thenable_1.thenable)(handlerResult)) {
59
59
  // Always exit, even with errors. The promise is returned for UT purposes.
@@ -4,7 +4,7 @@ exports.codesInfo = void 0;
4
4
  var tslib_1 = require("tslib");
5
5
  var c = tslib_1.__importStar(require("../constants"));
6
6
  var warn_1 = require("./warn");
7
- var READY_MSG = 'Split SDK client is ready';
7
+ var READY_MSG = 'SDK client is ready';
8
8
  exports.codesInfo = warn_1.codesWarn.concat([
9
9
  // client status
10
10
  [c.CLIENT_READY_FROM_CACHE, READY_MSG + ' from cache'],
@@ -12,7 +12,7 @@ exports.codesInfo = warn_1.codesWarn.concat([
12
12
  // SDK
13
13
  [c.IMPRESSION_QUEUEING, c.LOG_PREFIX_IMPRESSIONS_TRACKER + 'Queueing impression. %s: %s. Key: %s. Evaluation: %s. Label: %s'],
14
14
  [c.NEW_SHARED_CLIENT, 'New shared client instance created.'],
15
- [c.NEW_FACTORY, 'New Split SDK instance created. %s'],
15
+ [c.NEW_FACTORY, 'New SDK instance created. %s'],
16
16
  [c.EVENTS_TRACKER_SUCCESS, c.LOG_PREFIX_EVENTS_TRACKER + 'Successfully queued %s'],
17
17
  [c.IMPRESSIONS_TRACKER_SUCCESS, c.LOG_PREFIX_IMPRESSIONS_TRACKER + 'Successfully stored %s impression(s).'],
18
18
  [c.USER_CONSENT_UPDATED, 'UserConsent: consent status changed from %s to %s.'],
@@ -23,9 +23,9 @@ exports.codesWarn = error_1.codesError.concat([
23
23
  [c.WARN_TRIMMING_PROPERTIES, '%s: more than 300 properties were provided. Some of them will be trimmed when processed.'],
24
24
  [c.WARN_CONVERTING, '%s: %s "%s" is not of type string, converting.'],
25
25
  [c.WARN_TRIMMING, '%s: %s "%s" has extra whitespace, trimming.'],
26
- [c.WARN_NOT_EXISTENT_DEFINITION, '%s: "%s" does not exist in this environment. Please double check that it exists in Harness UI.'],
26
+ [c.WARN_NOT_EXISTENT_DEFINITION, '%s: "%s" does not exist in this environment. Please double check that it exists in Harness FME UI.'],
27
27
  [c.WARN_LOWERCASE_TRAFFIC_TYPE, '%s: traffic_type_name should be all lowercase - converting string to lowercase.'],
28
- [c.WARN_NOT_EXISTENT_TT, '%s: traffic type "%s" does not have any corresponding feature flag in this environment, make sure you\'re tracking your events to a valid traffic type defined in Harness UI.'],
28
+ [c.WARN_NOT_EXISTENT_TT, '%s: traffic type "%s" does not have any corresponding feature flag in this environment, make sure you\'re tracking your events to a valid traffic type defined in Harness FME UI.'],
29
29
  [c.WARN_FLAGSET_NOT_CONFIGURED, '%s: you passed %s which is not part of the configured FlagSetsFilter, ignoring Flag Set.'],
30
30
  // initialization / settings validation
31
31
  [c.WARN_INTEGRATION_INVALID, c.LOG_PREFIX_SETTINGS + ': %s integration item(s) at settings is invalid. %s'],
@@ -37,5 +37,5 @@ exports.codesWarn = error_1.codesError.concat([
37
37
  [c.STREAMING_PARSING_SPLIT_UPDATE, c.LOG_PREFIX_SYNC_STREAMING + 'Fetching SplitChanges due to an error processing %s notification: %s'],
38
38
  [c.WARN_INVALID_FLAGSET, '%s: you passed %s, flag set must adhere to the regular expressions %s. This means a flag set must start with a letter or number, be in lowercase, alphanumeric and have a max length of 50 characters. %s was discarded.'],
39
39
  [c.WARN_LOWERCASE_FLAGSET, '%s: flag set %s should be all lowercase - converting string to lowercase.'],
40
- [c.WARN_FLAGSET_WITHOUT_FLAGS, '%s: you passed %s flag set that does not contain cached feature flag names. Please double check what flag sets are in use in Harness UI.'],
40
+ [c.WARN_FLAGSET_WITHOUT_FLAGS, '%s: you passed %s flag set that does not contain cached feature flag names. Please double check what flag sets are in use in Harness FME UI.'],
41
41
  ]);
@@ -55,7 +55,7 @@ function readinessManagerFactory(EventEmitter, settings, definitions, isShared)
55
55
  return;
56
56
  hasTimedout = true;
57
57
  syncLastUpdate();
58
- gate.emit(constants_1.SDK_READY_TIMED_OUT, 'Split SDK emitted SDK_READY_TIMED_OUT event.');
58
+ gate.emit(constants_1.SDK_READY_TIMED_OUT, 'SDK client emitted SDK_READY_TIMED_OUT event.');
59
59
  }
60
60
  // emit SDK_READY and SDK_UPDATE
61
61
  var isReady = false;
@@ -79,7 +79,7 @@ function sdkReadinessManagerFactory(EventEmitter, settings, readinessManager) {
79
79
  ready: function () {
80
80
  if (readinessManager.hasTimedout()) {
81
81
  if (!readinessManager.isReady()) {
82
- return (0, wrapper_1.promiseWrapper)(Promise.reject(new Error('Split SDK has emitted SDK_READY_TIMED_OUT event.')), defaultOnRejected);
82
+ return (0, wrapper_1.promiseWrapper)(Promise.reject(new Error('SDK client has emitted SDK_READY_TIMED_OUT event.')), defaultOnRejected);
83
83
  }
84
84
  else {
85
85
  return Promise.resolve();
@@ -84,7 +84,7 @@ function segmentChangesUpdaterFactory(log, segmentChangesFetcher, segments, read
84
84
  // @TODO although factory status is destroyed, synchronization is not stopped
85
85
  if (readiness)
86
86
  readiness.setDestroyed();
87
- log.error("".concat(constants_2.LOG_PREFIX_INSTANTIATION, ": you passed a client-side type authorizationKey, please grab an SDK Key from Harness UI that is of type server-side."));
87
+ log.error("".concat(constants_2.LOG_PREFIX_INSTANTIATION, ": you passed a client-side type authorizationKey, please grab an SDK Key from Harness FME UI that is of type server-side."));
88
88
  }
89
89
  else {
90
90
  log.warn("".concat(constants_2.LOG_PREFIX_SYNC, "Error while doing fetch of segments. ").concat(error));
@@ -44,13 +44,13 @@ var NodeSignalListener = /** @class */ (function () {
44
44
  // eslint-disable-next-line no-undef
45
45
  process.kill(process.pid, SIGTERM);
46
46
  };
47
- this.settings.log.debug("".concat(LOG_PREFIX_CLEANUP, "Split SDK graceful shutdown after SIGTERM."));
47
+ this.settings.log.debug("".concat(LOG_PREFIX_CLEANUP, "SDK graceful shutdown after SIGTERM."));
48
48
  var handlerResult = null;
49
49
  try {
50
50
  handlerResult = this.handler();
51
51
  }
52
52
  catch (err) {
53
- this.settings.log.error("".concat(LOG_PREFIX_CLEANUP, "Error with Split SDK graceful shutdown: ").concat(err));
53
+ this.settings.log.error("".concat(LOG_PREFIX_CLEANUP, "Error with SDK graceful shutdown: ").concat(err));
54
54
  }
55
55
  if (thenable(handlerResult)) {
56
56
  // Always exit, even with errors. The promise is returned for UT purposes.
@@ -1,6 +1,6 @@
1
1
  import * as c from '../constants';
2
2
  import { codesWarn } from './warn';
3
- var READY_MSG = 'Split SDK client is ready';
3
+ var READY_MSG = 'SDK client is ready';
4
4
  export var codesInfo = codesWarn.concat([
5
5
  // client status
6
6
  [c.CLIENT_READY_FROM_CACHE, READY_MSG + ' from cache'],
@@ -8,7 +8,7 @@ export var codesInfo = codesWarn.concat([
8
8
  // SDK
9
9
  [c.IMPRESSION_QUEUEING, c.LOG_PREFIX_IMPRESSIONS_TRACKER + 'Queueing impression. %s: %s. Key: %s. Evaluation: %s. Label: %s'],
10
10
  [c.NEW_SHARED_CLIENT, 'New shared client instance created.'],
11
- [c.NEW_FACTORY, 'New Split SDK instance created. %s'],
11
+ [c.NEW_FACTORY, 'New SDK instance created. %s'],
12
12
  [c.EVENTS_TRACKER_SUCCESS, c.LOG_PREFIX_EVENTS_TRACKER + 'Successfully queued %s'],
13
13
  [c.IMPRESSIONS_TRACKER_SUCCESS, c.LOG_PREFIX_IMPRESSIONS_TRACKER + 'Successfully stored %s impression(s).'],
14
14
  [c.USER_CONSENT_UPDATED, 'UserConsent: consent status changed from %s to %s.'],
@@ -19,9 +19,9 @@ export var codesWarn = codesError.concat([
19
19
  [c.WARN_TRIMMING_PROPERTIES, '%s: more than 300 properties were provided. Some of them will be trimmed when processed.'],
20
20
  [c.WARN_CONVERTING, '%s: %s "%s" is not of type string, converting.'],
21
21
  [c.WARN_TRIMMING, '%s: %s "%s" has extra whitespace, trimming.'],
22
- [c.WARN_NOT_EXISTENT_DEFINITION, '%s: "%s" does not exist in this environment. Please double check that it exists in Harness UI.'],
22
+ [c.WARN_NOT_EXISTENT_DEFINITION, '%s: "%s" does not exist in this environment. Please double check that it exists in Harness FME UI.'],
23
23
  [c.WARN_LOWERCASE_TRAFFIC_TYPE, '%s: traffic_type_name should be all lowercase - converting string to lowercase.'],
24
- [c.WARN_NOT_EXISTENT_TT, '%s: traffic type "%s" does not have any corresponding feature flag in this environment, make sure you\'re tracking your events to a valid traffic type defined in Harness UI.'],
24
+ [c.WARN_NOT_EXISTENT_TT, '%s: traffic type "%s" does not have any corresponding feature flag in this environment, make sure you\'re tracking your events to a valid traffic type defined in Harness FME UI.'],
25
25
  [c.WARN_FLAGSET_NOT_CONFIGURED, '%s: you passed %s which is not part of the configured FlagSetsFilter, ignoring Flag Set.'],
26
26
  // initialization / settings validation
27
27
  [c.WARN_INTEGRATION_INVALID, c.LOG_PREFIX_SETTINGS + ': %s integration item(s) at settings is invalid. %s'],
@@ -33,5 +33,5 @@ export var codesWarn = codesError.concat([
33
33
  [c.STREAMING_PARSING_SPLIT_UPDATE, c.LOG_PREFIX_SYNC_STREAMING + 'Fetching SplitChanges due to an error processing %s notification: %s'],
34
34
  [c.WARN_INVALID_FLAGSET, '%s: you passed %s, flag set must adhere to the regular expressions %s. This means a flag set must start with a letter or number, be in lowercase, alphanumeric and have a max length of 50 characters. %s was discarded.'],
35
35
  [c.WARN_LOWERCASE_FLAGSET, '%s: flag set %s should be all lowercase - converting string to lowercase.'],
36
- [c.WARN_FLAGSET_WITHOUT_FLAGS, '%s: you passed %s flag set that does not contain cached feature flag names. Please double check what flag sets are in use in Harness UI.'],
36
+ [c.WARN_FLAGSET_WITHOUT_FLAGS, '%s: you passed %s flag set that does not contain cached feature flag names. Please double check what flag sets are in use in Harness FME UI.'],
37
37
  ]);
@@ -52,7 +52,7 @@ export function readinessManagerFactory(EventEmitter, settings, definitions, isS
52
52
  return;
53
53
  hasTimedout = true;
54
54
  syncLastUpdate();
55
- gate.emit(SDK_READY_TIMED_OUT, 'Split SDK emitted SDK_READY_TIMED_OUT event.');
55
+ gate.emit(SDK_READY_TIMED_OUT, 'SDK client emitted SDK_READY_TIMED_OUT event.');
56
56
  }
57
57
  // emit SDK_READY and SDK_UPDATE
58
58
  var isReady = false;
@@ -76,7 +76,7 @@ export function sdkReadinessManagerFactory(EventEmitter, settings, readinessMana
76
76
  ready: function () {
77
77
  if (readinessManager.hasTimedout()) {
78
78
  if (!readinessManager.isReady()) {
79
- return promiseWrapper(Promise.reject(new Error('Split SDK has emitted SDK_READY_TIMED_OUT event.')), defaultOnRejected);
79
+ return promiseWrapper(Promise.reject(new Error('SDK client has emitted SDK_READY_TIMED_OUT event.')), defaultOnRejected);
80
80
  }
81
81
  else {
82
82
  return Promise.resolve();
@@ -81,7 +81,7 @@ export function segmentChangesUpdaterFactory(log, segmentChangesFetcher, segment
81
81
  // @TODO although factory status is destroyed, synchronization is not stopped
82
82
  if (readiness)
83
83
  readiness.setDestroyed();
84
- log.error("".concat(LOG_PREFIX_INSTANTIATION, ": you passed a client-side type authorizationKey, please grab an SDK Key from Harness UI that is of type server-side."));
84
+ log.error("".concat(LOG_PREFIX_INSTANTIATION, ": you passed a client-side type authorizationKey, please grab an SDK Key from Harness FME UI that is of type server-side."));
85
85
  }
86
86
  else {
87
87
  log.warn("".concat(LOG_PREFIX_SYNC, "Error while doing fetch of segments. ").concat(error));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@splitsoftware/splitio-commons",
3
- "version": "3.0.0-rc.7",
3
+ "version": "3.0.0",
4
4
  "description": "Split JavaScript SDK common components",
5
5
  "main": "cjs/index.js",
6
6
  "module": "esm/index.js",
@@ -58,14 +58,14 @@ export class NodeSignalListener implements ISignalListener {
58
58
  process.kill(process.pid, SIGTERM);
59
59
  };
60
60
 
61
- this.settings.log.debug(`${LOG_PREFIX_CLEANUP}Split SDK graceful shutdown after SIGTERM.`);
61
+ this.settings.log.debug(`${LOG_PREFIX_CLEANUP}SDK graceful shutdown after SIGTERM.`);
62
62
 
63
63
  let handlerResult = null;
64
64
 
65
65
  try {
66
66
  handlerResult = this.handler();
67
67
  } catch (err) {
68
- this.settings.log.error(`${LOG_PREFIX_CLEANUP}Error with Split SDK graceful shutdown: ${err}`);
68
+ this.settings.log.error(`${LOG_PREFIX_CLEANUP}Error with SDK graceful shutdown: ${err}`);
69
69
  }
70
70
 
71
71
  if (thenable(handlerResult)) {
@@ -1,7 +1,7 @@
1
1
  import * as c from '../constants';
2
2
  import { codesWarn } from './warn';
3
3
 
4
- const READY_MSG = 'Split SDK client is ready';
4
+ const READY_MSG = 'SDK client is ready';
5
5
 
6
6
  export const codesInfo: [number, string][] = codesWarn.concat([
7
7
  // client status
@@ -10,7 +10,7 @@ export const codesInfo: [number, string][] = codesWarn.concat([
10
10
  // SDK
11
11
  [c.IMPRESSION_QUEUEING, c.LOG_PREFIX_IMPRESSIONS_TRACKER +'Queueing impression. %s: %s. Key: %s. Evaluation: %s. Label: %s'],
12
12
  [c.NEW_SHARED_CLIENT, 'New shared client instance created.'],
13
- [c.NEW_FACTORY, 'New Split SDK instance created. %s'],
13
+ [c.NEW_FACTORY, 'New SDK instance created. %s'],
14
14
  [c.EVENTS_TRACKER_SUCCESS, c.LOG_PREFIX_EVENTS_TRACKER + 'Successfully queued %s'],
15
15
  [c.IMPRESSIONS_TRACKER_SUCCESS, c.LOG_PREFIX_IMPRESSIONS_TRACKER + 'Successfully stored %s impression(s).'],
16
16
  [c.USER_CONSENT_UPDATED, 'UserConsent: consent status changed from %s to %s.'],
@@ -20,9 +20,9 @@ export const codesWarn: [number, string][] = codesError.concat([
20
20
  [c.WARN_TRIMMING_PROPERTIES, '%s: more than 300 properties were provided. Some of them will be trimmed when processed.'],
21
21
  [c.WARN_CONVERTING, '%s: %s "%s" is not of type string, converting.'],
22
22
  [c.WARN_TRIMMING, '%s: %s "%s" has extra whitespace, trimming.'],
23
- [c.WARN_NOT_EXISTENT_DEFINITION, '%s: "%s" does not exist in this environment. Please double check that it exists in Harness UI.'],
23
+ [c.WARN_NOT_EXISTENT_DEFINITION, '%s: "%s" does not exist in this environment. Please double check that it exists in Harness FME UI.'],
24
24
  [c.WARN_LOWERCASE_TRAFFIC_TYPE, '%s: traffic_type_name should be all lowercase - converting string to lowercase.'],
25
- [c.WARN_NOT_EXISTENT_TT, '%s: traffic type "%s" does not have any corresponding feature flag in this environment, make sure you\'re tracking your events to a valid traffic type defined in Harness UI.'],
25
+ [c.WARN_NOT_EXISTENT_TT, '%s: traffic type "%s" does not have any corresponding feature flag in this environment, make sure you\'re tracking your events to a valid traffic type defined in Harness FME UI.'],
26
26
  [c.WARN_FLAGSET_NOT_CONFIGURED, '%s: you passed %s which is not part of the configured FlagSetsFilter, ignoring Flag Set.'],
27
27
  // initialization / settings validation
28
28
  [c.WARN_INTEGRATION_INVALID, c.LOG_PREFIX_SETTINGS + ': %s integration item(s) at settings is invalid. %s'],
@@ -35,5 +35,5 @@ export const codesWarn: [number, string][] = codesError.concat([
35
35
  [c.STREAMING_PARSING_SPLIT_UPDATE, c.LOG_PREFIX_SYNC_STREAMING + 'Fetching SplitChanges due to an error processing %s notification: %s'],
36
36
  [c.WARN_INVALID_FLAGSET, '%s: you passed %s, flag set must adhere to the regular expressions %s. This means a flag set must start with a letter or number, be in lowercase, alphanumeric and have a max length of 50 characters. %s was discarded.'],
37
37
  [c.WARN_LOWERCASE_FLAGSET, '%s: flag set %s should be all lowercase - converting string to lowercase.'],
38
- [c.WARN_FLAGSET_WITHOUT_FLAGS, '%s: you passed %s flag set that does not contain cached feature flag names. Please double check what flag sets are in use in Harness UI.'],
38
+ [c.WARN_FLAGSET_WITHOUT_FLAGS, '%s: you passed %s flag set that does not contain cached feature flag names. Please double check what flag sets are in use in Harness FME UI.'],
39
39
  ]);
@@ -69,7 +69,7 @@ export function readinessManagerFactory(
69
69
  if (hasTimedout || isReady) return;
70
70
  hasTimedout = true;
71
71
  syncLastUpdate();
72
- gate.emit(SDK_READY_TIMED_OUT, 'Split SDK emitted SDK_READY_TIMED_OUT event.');
72
+ gate.emit(SDK_READY_TIMED_OUT, 'SDK client emitted SDK_READY_TIMED_OUT event.');
73
73
  }
74
74
 
75
75
 
@@ -96,7 +96,7 @@ export function sdkReadinessManagerFactory(
96
96
  ready() {
97
97
  if (readinessManager.hasTimedout()) {
98
98
  if (!readinessManager.isReady()) {
99
- return promiseWrapper(Promise.reject(new Error('Split SDK has emitted SDK_READY_TIMED_OUT event.')), defaultOnRejected);
99
+ return promiseWrapper(Promise.reject(new Error('SDK client has emitted SDK_READY_TIMED_OUT event.')), defaultOnRejected);
100
100
  } else {
101
101
  return Promise.resolve();
102
102
  }
@@ -102,7 +102,7 @@ export function segmentChangesUpdaterFactory(
102
102
  // If the operation is forbidden, it may be due to permissions. Destroy the SDK instance.
103
103
  // @TODO although factory status is destroyed, synchronization is not stopped
104
104
  if (readiness) readiness.setDestroyed();
105
- log.error(`${LOG_PREFIX_INSTANTIATION}: you passed a client-side type authorizationKey, please grab an SDK Key from Harness UI that is of type server-side.`);
105
+ log.error(`${LOG_PREFIX_INSTANTIATION}: you passed a client-side type authorizationKey, please grab an SDK Key from Harness FME UI that is of type server-side.`);
106
106
  } else {
107
107
  log.warn(`${LOG_PREFIX_SYNC}Error while doing fetch of segments. ${error}`);
108
108
  }
@@ -79,7 +79,7 @@ interface ISharedSettings {
79
79
  * 'Authorization': context.headers['Authorization'] + ', other-value',
80
80
  * 'custom-header': 'custom-value'
81
81
  * };
82
- * };
82
+ * }
83
83
  * }
84
84
  * }
85
85
  * });
@@ -925,7 +925,7 @@ declare namespace SplitIO {
925
925
  type AsyncTreatmentWithConfig = Promise<TreatmentWithConfig>;
926
926
  /**
927
927
  * An object with the treatments with configs for a bulk of feature flags, returned by getTreatmentsWithConfig.
928
- * Each existing configuration is a stringified version of the JSON you defined on the Split user interface. For example:
928
+ * Each existing configuration is a stringified version of the JSON you defined on Harness FME UI. For example:
929
929
  * ```
930
930
  * {
931
931
  * feature1: { treatment: 'on', config: null }
@@ -1080,7 +1080,7 @@ declare namespace SplitIO {
1080
1080
  changeNumber: number;
1081
1081
  /**
1082
1082
  * Map of configurations per treatment.
1083
- * Each existing configuration is a stringified version of the JSON you defined on the Split user interface.
1083
+ * Each existing configuration is a stringified version of the JSON you defined on Harness FME UI.
1084
1084
  */
1085
1085
  configs: {
1086
1086
  [treatmentName: string]: string;
@@ -1599,7 +1599,7 @@ declare namespace SplitIO {
1599
1599
  * 'Authorization': context.headers['Authorization'] + ', other-value',
1600
1600
  * 'custom-header': 'custom-value'
1601
1601
  * };
1602
- * };
1602
+ * }
1603
1603
  * }
1604
1604
  * }
1605
1605
  * });
@@ -2394,7 +2394,7 @@ declare namespace SplitIO {
2394
2394
  * You can use it, for example, for certificate pinning or setting a network proxy:
2395
2395
  *
2396
2396
  * ```
2397
- * const { ConfigsClient } = require('@splitsoftware/splitio-configs');
2397
+ * const { ConfigsClient } = require('@splitsoftware/configs');
2398
2398
  * const { HttpsProxyAgent } = require('https-proxy-agent');
2399
2399
  *
2400
2400
  * const proxyAgent = new HttpsProxyAgent(process.env.HTTPS_PROXY || 'http://10.10.1.10:1080');