@memberjunction/integration-connectors 5.41.0 → 5.42.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.
Files changed (92) hide show
  1. package/dist/CventConnector.d.ts +146 -0
  2. package/dist/CventConnector.d.ts.map +1 -0
  3. package/dist/CventConnector.js +540 -0
  4. package/dist/CventConnector.js.map +1 -0
  5. package/dist/DynamicsDataverseConnector.d.ts +296 -0
  6. package/dist/DynamicsDataverseConnector.d.ts.map +1 -0
  7. package/dist/DynamicsDataverseConnector.js +790 -0
  8. package/dist/DynamicsDataverseConnector.js.map +1 -0
  9. package/dist/FontevaConnector.d.ts +153 -0
  10. package/dist/FontevaConnector.d.ts.map +1 -0
  11. package/dist/FontevaConnector.js +421 -0
  12. package/dist/FontevaConnector.js.map +1 -0
  13. package/dist/GrowthZoneConnector.d.ts +123 -125
  14. package/dist/GrowthZoneConnector.d.ts.map +1 -1
  15. package/dist/GrowthZoneConnector.js +456 -499
  16. package/dist/GrowthZoneConnector.js.map +1 -1
  17. package/dist/HivebriteConnector.d.ts +151 -0
  18. package/dist/HivebriteConnector.d.ts.map +1 -0
  19. package/dist/HivebriteConnector.js +533 -0
  20. package/dist/HivebriteConnector.js.map +1 -0
  21. package/dist/IMISConnector.d.ts +112 -96
  22. package/dist/IMISConnector.d.ts.map +1 -1
  23. package/dist/IMISConnector.js +430 -417
  24. package/dist/IMISConnector.js.map +1 -1
  25. package/dist/MemberSuiteConnector.d.ts +185 -0
  26. package/dist/MemberSuiteConnector.d.ts.map +1 -0
  27. package/dist/MemberSuiteConnector.js +762 -0
  28. package/dist/MemberSuiteConnector.js.map +1 -0
  29. package/dist/NeonCRMConnector.d.ts +273 -0
  30. package/dist/NeonCRMConnector.d.ts.map +1 -0
  31. package/dist/NeonCRMConnector.js +1039 -0
  32. package/dist/NeonCRMConnector.js.map +1 -0
  33. package/dist/NetForumConnector.d.ts +140 -47
  34. package/dist/NetForumConnector.d.ts.map +1 -1
  35. package/dist/NetForumConnector.js +668 -395
  36. package/dist/NetForumConnector.js.map +1 -1
  37. package/dist/NetSuiteConnector.d.ts +116 -50
  38. package/dist/NetSuiteConnector.d.ts.map +1 -1
  39. package/dist/NetSuiteConnector.js +608 -510
  40. package/dist/NetSuiteConnector.js.map +1 -1
  41. package/dist/NimbleAMSConnector.d.ts +104 -11
  42. package/dist/NimbleAMSConnector.d.ts.map +1 -1
  43. package/dist/NimbleAMSConnector.js +552 -258
  44. package/dist/NimbleAMSConnector.js.map +1 -1
  45. package/dist/NoviConnector.d.ts +178 -0
  46. package/dist/NoviConnector.d.ts.map +1 -0
  47. package/dist/NoviConnector.js +566 -0
  48. package/dist/NoviConnector.js.map +1 -0
  49. package/dist/ORCIDConnector.d.ts +207 -0
  50. package/dist/ORCIDConnector.d.ts.map +1 -0
  51. package/dist/ORCIDConnector.js +708 -0
  52. package/dist/ORCIDConnector.js.map +1 -0
  53. package/dist/OpenWaterConnector.d.ts +173 -0
  54. package/dist/OpenWaterConnector.d.ts.map +1 -0
  55. package/dist/OpenWaterConnector.js +893 -0
  56. package/dist/OpenWaterConnector.js.map +1 -0
  57. package/dist/PathLMSConnector.d.ts +395 -0
  58. package/dist/PathLMSConnector.d.ts.map +1 -0
  59. package/dist/PathLMSConnector.js +1281 -0
  60. package/dist/PathLMSConnector.js.map +1 -0
  61. package/dist/PheedLoopConnector.d.ts +119 -0
  62. package/dist/PheedLoopConnector.d.ts.map +1 -0
  63. package/dist/PheedLoopConnector.js +429 -0
  64. package/dist/PheedLoopConnector.js.map +1 -0
  65. package/dist/PropFuelConnector.d.ts +135 -61
  66. package/dist/PropFuelConnector.d.ts.map +1 -1
  67. package/dist/PropFuelConnector.js +366 -467
  68. package/dist/PropFuelConnector.js.map +1 -1
  69. package/dist/RhythmConnector.d.ts +188 -0
  70. package/dist/RhythmConnector.d.ts.map +1 -0
  71. package/dist/RhythmConnector.js +784 -0
  72. package/dist/RhythmConnector.js.map +1 -0
  73. package/dist/SalesforceConnector.d.ts +69 -3
  74. package/dist/SalesforceConnector.d.ts.map +1 -1
  75. package/dist/SalesforceConnector.js +188 -166
  76. package/dist/SalesforceConnector.js.map +1 -1
  77. package/dist/SharePointConnector.d.ts +37 -30
  78. package/dist/SharePointConnector.d.ts.map +1 -1
  79. package/dist/SharePointConnector.js +163 -243
  80. package/dist/SharePointConnector.js.map +1 -1
  81. package/dist/YourMembershipConnector.d.ts.map +1 -1
  82. package/dist/YourMembershipConnector.js +13 -5
  83. package/dist/YourMembershipConnector.js.map +1 -1
  84. package/dist/index.d.ts +14 -3
  85. package/dist/index.d.ts.map +1 -1
  86. package/dist/index.js +14 -3
  87. package/dist/index.js.map +1 -1
  88. package/package.json +8 -7
  89. package/dist/BettyConnector.d.ts +0 -288
  90. package/dist/BettyConnector.d.ts.map +0 -1
  91. package/dist/BettyConnector.js +0 -909
  92. package/dist/BettyConnector.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FontevaConnector.js","sourceRoot":"","sources":["../src/FontevaConnector.ts"],"names":[],"mappings":"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"}
@@ -1,177 +1,175 @@
1
1
  import { type UserInfo } from '@memberjunction/core';
2
2
  import type { MJCompanyIntegrationEntity, MJIntegrationObjectEntity } from '@memberjunction/core-entities';
3
- import { BaseRESTIntegrationConnector, type RESTAuthContext, type RESTResponse, type PaginationState, type PaginationType, type ConnectionTestResult, type ExternalObjectSchema, type ExternalFieldSchema, type FetchContext, type FetchBatchResult, type DefaultFieldMapping, type DefaultIntegrationConfig, type IntegrationObjectInfo, type ActionGeneratorConfig } from '@memberjunction/integration-engine';
3
+ import { BaseRESTIntegrationConnector, type RESTAuthContext, type RESTResponse, type PaginationState, type PaginationType, type ConnectionTestResult, type ExternalObjectSchema, type ExternalFieldSchema, type FetchContext, type FetchBatchResult, type IntegrationObjectInfo, type ActionGeneratorConfig, type DeleteRecordContext, type CRUDResult } from '@memberjunction/integration-engine';
4
4
  /**
5
- * Connection configuration for GrowthZone, parsed from the
6
- * CompanyIntegration.Configuration JSON or an attached MJ Credential.
5
+ * OAuth2 connection configuration for GrowthZone, parsed from the attached MJ
6
+ * Credential (preferred) or the CompanyIntegration.Configuration JSON. Field names
7
+ * are read case-insensitively. NONE of these values are read at build time — they are
8
+ * resolved from the bound credential at runtime.
7
9
  */
8
10
  export interface GrowthZoneConnectionConfig {
9
- /** Tenant subdomain (e.g., "myassociation" for myassociation.growthzoneapp.com) */
10
- Tenant: string;
11
- /** API key issued by GrowthZone WebSupport. Sent as 'Authorization: ApiKey {key}'. */
12
- ApiKey: string;
13
- /**
14
- * Optional full base URL override. When provided, takes precedence over Tenant
15
- * and must end with '/api' (no trailing slash). Used for staging or non-standard
16
- * deployments.
17
- */
18
- BaseUrlOverride?: string;
19
- /** Maximum retries for rate-limited or failed requests. Default: 3 */
11
+ /** OAuth2 client identifier. */
12
+ ClientId: string;
13
+ /** OAuth2 client secret. */
14
+ ClientSecret: string;
15
+ /** Long-lived refresh token — drives the PRIMARY `refresh_token` grant. */
16
+ RefreshToken?: string;
17
+ /** Username — drives the FALLBACK `password` grant when no refresh token exists. */
18
+ Username?: string;
19
+ /** Password — drives the FALLBACK `password` grant. */
20
+ Password?: string;
21
+ /** Space/comma-delimited OAuth2 scopes. */
22
+ Scopes?: string;
23
+ /** Operator's GrowthZone API base URL (e.g. https://{subdomain}.growthzoneapp.com/API). */
24
+ BaseURL: string;
25
+ /** Optional token-endpoint override; defaults to `{base}/oauth/token`. */
26
+ TokenURL?: string;
27
+ /** Optional tenant identifier (informational / future use). */
28
+ Tenant?: string;
29
+ /** Maximum retries for rate-limited / transient failures. Default 3. */
20
30
  MaxRetries?: number;
21
- /** HTTP request timeout in milliseconds. Default: 30000 */
31
+ /** HTTP request timeout in ms. Default 30000. */
22
32
  RequestTimeoutMs?: number;
23
- /**
24
- * Minimum milliseconds between API requests. Default: 2000 (2 seconds)
25
- * per GrowthZone's recommended throttle. Reduce with caution.
26
- */
33
+ /** Minimum ms between requests (GrowthZone recommends 2s). Default 2000. */
27
34
  MinRequestIntervalMs?: number;
28
35
  }
29
- /**
30
- * Connector for the GrowthZone association management REST API.
31
- *
32
- * Extends BaseRESTIntegrationConnector to leverage metadata-driven object/field
33
- * discovery from IntegrationEngineBase cache plus generic pagination.
34
- *
35
- * Auth: sends `Authorization: ApiKey {key}` on every request. API keys are
36
- * provisioned by GrowthZone WebSupport. Tenant subdomain is required to
37
- * resolve the base URL.
38
- *
39
- * Pagination: GrowthZone uses OData-style params on flat endpoints —
40
- * `$skip`, `$top`, and `$orderby`. `$filter`, `$expand`, `$select` are NOT
41
- * supported. The only incremental endpoint is `/api/contacts/delta`, which
42
- * accepts `?modifiedSince=ISO8601&top=N`.
43
- *
44
- * Throttle: GrowthZone recommends 2s minimum interval; the connector defaults
45
- * to that. Responds to HTTP 429/503 with exponential backoff.
46
- */
47
36
  export declare class GrowthZoneConnector extends BaseRESTIntegrationConnector {
48
- /** Cached auth context for the current sync run */
37
+ /** Cached auth context for the current sync run. */
49
38
  private authCache;
50
- /** Timestamp of the last API request, for throttling */
39
+ /** Shared OAuth2 token manager — owns the token round-trip + cache. */
40
+ private readonly tokenManager;
41
+ /** Timestamp of the last API request, for client-side throttling. */
51
42
  private lastRequestTime;
52
- /**
53
- * Object name currently being fetched — tracked so BuildPaginatedURL can
54
- * emit endpoint-specific query parameters (e.g., `modifiedSince` for delta).
55
- */
56
- private currentObjectName;
57
- /** Current watermark value, used for `modifiedSince` on delta contacts */
43
+ /** Current watermark value, emitted as the IO's IncrementalWatermarkField on the request. */
58
44
  private currentWatermark;
59
45
  get IntegrationName(): string;
60
- GetIntegrationObjects(): IntegrationObjectInfo[];
61
- GetActionGeneratorConfig(): ActionGeneratorConfig | null;
62
46
  get SupportsCreate(): boolean;
63
47
  get SupportsUpdate(): boolean;
64
48
  get SupportsDelete(): boolean;
65
- GetDefaultConfiguration(): DefaultIntegrationConfig;
66
- GetDefaultFieldMappings(objectName: string, _entityName: string): DefaultFieldMapping[];
49
+ /** True when any cached IntegrationObject satisfies the predicate. []→false when the engine
50
+ * cache is unavailable (e.g. capability probed before configuration) — fail-safe read-only. */
51
+ private anyObjectDeclares;
52
+ DeleteRecord(ctx: DeleteRecordContext): Promise<CRUDResult>;
53
+ /**
54
+ * Resolves a record's current GrowthZone audit token (optimistic-concurrency) for an audit-token
55
+ * delete. GrowthZone exposes it as `AuditId` / `{Object}AuditId` on the record; we GetRecord and
56
+ * return the first match. Returns null when the record or token cannot be found.
57
+ */
58
+ private ResolveAuditToken;
59
+ /**
60
+ * Surfaces the FULL object universe straight from the IntegrationEngineBase
61
+ * cache (the Declared metadata in `.growthzone.integration.json`). There is NO
62
+ * hardcoded catalog in this connector — the prohibited module-level object/field
63
+ * literal is intentionally absent. When the cache is unavailable (e.g. action
64
+ * generation invoked before the engine is configured) this returns []; the live
65
+ * discovery path (DiscoverObjects/DiscoverFields) is the authoritative surface.
66
+ */
67
+ GetIntegrationObjects(): IntegrationObjectInfo[];
68
+ GetActionGeneratorConfig(): ActionGeneratorConfig | null;
69
+ /** Maps a cached IntegrationObject + its fields to the action-generator info shape. */
70
+ private ObjectEntityToInfo;
71
+ /**
72
+ * OAuth2 bearer authentication. Mints/refreshes the access token via the shared
73
+ * {@link OAuth2TokenManager}: PRIMARY `refresh_token` grant when a refresh token is
74
+ * present, otherwise the documented FALLBACK `password` grant.
75
+ */
67
76
  protected Authenticate(companyIntegration: MJCompanyIntegrationEntity, contextUser: UserInfo): Promise<RESTAuthContext>;
77
+ /** Selects the grant and runs the token round-trip through OAuth2TokenManager. */
78
+ private MintToken;
79
+ /** Sends the OAuth2 bearer token on every request. */
68
80
  protected BuildHeaders(auth: RESTAuthContext): Record<string, string>;
69
81
  protected GetBaseURL(_companyIntegration: MJCompanyIntegrationEntity, auth: RESTAuthContext): string;
70
82
  /**
71
- * Extracts records from GrowthZone responses. Handles three shapes:
83
+ * Normalizes GrowthZone responses. Handles three real shapes:
72
84
  * 1. `{ Results: [...], TotalRecordAvailable: N }` — paginated lists
73
- * 2. Raw array — some endpoints return arrays at the root
74
- * 3. Single object — detail endpoints (per-contact fetches)
85
+ * 2. raw array — some endpoints return an array at the root
86
+ * 3. single object — genuine per-parent DETAIL endpoints (Person, Organization,
87
+ * ContactCustomField, ContactNotes, ContactEngagement, ScheduledBillingUpdate,
88
+ * MembershipChange) return ONE real record per parent. These ARE kept.
89
+ * and coerces `0001-01-01` sentinel dates / empty strings to null.
75
90
  *
76
- * Normalizes `0001-01-01` dates and empty strings to null.
91
+ * THE EMPTY-EVENT-CHILD SENTINEL (PROBLEMS_LOG #22/#23/#27 — idempotency, surgically scoped):
92
+ * The per-event child list endpoints (`/api/events/sponsors?eventId=X`, …/sessions, …/attendees,
93
+ * etc.) do NOT return `{ Results: [] }` when an event has no children — they return the bare
94
+ * EVENT-DETAIL wrapper instead. That wrapper carries volatile per-fetch audit fields
95
+ * (EventAuditId / EventDetailAuditId), so minting a record from it produced ONE empty placeholder
96
+ * per event whose §4 content-hash identity drifted every sync → child tables doubled (254 = 2×127,
97
+ * all rows empty). Fix: detect the event wrapper (it uniquely carries EventAuditId+EventDetailAuditId
98
+ * — a genuine child/detail record never does) and emit []. This is the ONLY single-object case we
99
+ * drop; every legitimate single-record detail endpoint is preserved (the #27 regression guard).
100
+ * Populated children still arrive as a `Results` envelope and map normally.
101
+ *
102
+ * The FULL source record passes through (no field filtering) so the framework's custom-column
103
+ * capture sees everything the source returned.
77
104
  */
78
105
  protected NormalizeResponse(rawBody: unknown, responseDataKey: string | null): Record<string, unknown>[];
79
106
  /**
80
- * Extracts pagination state. GrowthZone uses OData pagination with
81
- * `$skip` and `$top`; there's no `HasMore` flag — we derive it from
82
- * `TotalRecordAvailable` vs. current offset + returned count.
107
+ * True when a single-object response is the GrowthZone EVENT-DETAIL wrapper — the body the
108
+ * per-event child endpoints return when an event has zero children (see NormalizeResponse).
109
+ * The wrapper is unmistakable: it carries BOTH event-audit stamps. No genuine child/detail
110
+ * record (Person, Organization, custom fields, notes, engagement) carries these keys, so this
111
+ * stays surgically scoped to the empty-event-child case and never drops a real record.
83
112
  */
84
- protected ExtractPaginationInfo(rawBody: unknown, _paginationType: PaginationType, _currentPage: number, currentOffset: number, pageSize: number): PaginationState;
113
+ private isEmptyEventChildWrapper;
85
114
  /**
86
- * Overrides the base pagination URL builder to emit GrowthZone-specific
87
- * OData parameters (`$skip`, `$top`) and, for the delta contacts endpoint,
88
- * the `modifiedSince` watermark parameter.
89
- *
90
- * Driven entirely by IntegrationObject metadata — no hardcoded object-name
91
- * switches beyond the delta-specific param which is keyed on APIPath.
115
+ * Derives OData pagination state. GrowthZone returns no `HasMore` flag, so end-of-stream
116
+ * is inferred from a short page and/or `TotalRecordAvailable` vs offset+count.
92
117
  */
93
- protected BuildPaginatedURL(basePath: string, obj: MJIntegrationObjectEntity, _page: number, offset: number, _cursor?: string, effectivePageSize?: number): string;
118
+ protected ExtractPaginationInfo(rawBody: unknown, _paginationType: PaginationType, _currentPage: number, currentOffset: number, pageSize: number): PaginationState;
94
119
  /**
95
- * Executes an HTTP request with rate limiting and retry for 429/503.
120
+ * Emits GrowthZone OData params (`skip`/`top`) plus, for an incremental IO, the vendor
121
+ * watermark param. The watermark behaviour is fully METADATA-DRIVEN: the param NAME comes
122
+ * from the IO's `IncrementalWatermarkField` (e.g. `modifiedSince` on the Contact object) and
123
+ * is emitted only when `SupportsIncrementalSync=true` AND a watermark value is in context —
124
+ * never keyed off a hardcoded path suffix or object name.
96
125
  */
126
+ protected BuildPaginatedURL(basePath: string, obj: MJIntegrationObjectEntity, _page: number, offset: number, _cursor?: string, effectivePageSize?: number): string;
127
+ /** Executes an HTTP request with client-side throttling + retry for 429/503. */
97
128
  protected MakeHTTPRequest(auth: RESTAuthContext, url: string, method: string, headers: Record<string, string>, body?: unknown): Promise<RESTResponse>;
98
129
  /**
99
- * Tests connectivity by calling the delta endpoint with a recent
100
- * watermark. A 200 response confirms that the tenant and API key are
101
- * valid.
130
+ * Tests connectivity by minting an OAuth2 token and listing one Contact record. A 2xx
131
+ * confirms the OAuth2 credentials + base URL are valid against the live API.
102
132
  */
103
133
  TestConnection(companyIntegration: MJCompanyIntegrationEntity, contextUser: UserInfo): Promise<ConnectionTestResult>;
104
134
  /**
105
- * Discovers objects from the cache. GrowthZone's dynamic capability is
106
- * limited to custom fields on contacts (not custom objects/tables) —
107
- * so DiscoverObjects only returns the metadata-seeded baseline.
135
+ * Discovers the full object universe from the IntegrationEngineBase cache (the Declared
136
+ * metadata). GrowthZone publishes its catalog credential-free (curated + dev docs), so
137
+ * the baseline is Declared metadata — never hardcoded here, never sampled at build.
108
138
  */
109
139
  DiscoverObjects(companyIntegration: MJCompanyIntegrationEntity, contextUser: UserInfo): Promise<ExternalObjectSchema[]>;
110
- /**
111
- * Discovers fields for a given object, augmenting the cached metadata
112
- * with runtime-discovered custom fields for contact objects. Custom
113
- * fields get IsCustom=true via IntegrationSchemaSync when persisted.
114
- */
140
+ /** Discovers fields for an object from the cached Declared metadata. */
115
141
  DiscoverFields(companyIntegration: MJCompanyIntegrationEntity, objectName: string, contextUser: UserInfo): Promise<ExternalFieldSchema[]>;
116
142
  /**
117
- * Fetches custom field definitions from GrowthZone. Uses a sample contact
118
- * ID to query NotesAndFields — since the curated API does not expose a
119
- * global custom-fields list endpoint, a sample contact is used to probe
120
- * the defined fields.
121
- */
122
- private FetchCustomFieldDefinitions;
123
- /**
124
- * Maps a GrowthZone custom field definition to an ExternalFieldSchema.
125
- */
126
- private CustomFieldToSchema;
127
- /**
128
- * Maps GrowthZone custom-field type to generic integration type.
129
- */
130
- private MapCustomFieldType;
131
- /**
132
- * Override to store watermark/object-name context used by BuildPaginatedURL
133
- * and to advance the watermark from returned records.
143
+ * Sets the watermark context the OData URL builder needs, delegates
144
+ * the actual walk to the base (which descends nested Door→Segment template-var paths via
145
+ * FK metadata so nested IOs never silently return 0 rows), then advances the watermark
146
+ * from the returned records on the final batch only (partial-failure-safe).
134
147
  */
135
148
  FetchChanges(ctx: FetchContext): Promise<FetchBatchResult>;
136
149
  /**
137
- * Normalizes a raw record: strips GrowthZone null-sentinel dates and
138
- * treats empty strings as null. Does NOT recurse into nested objects
139
- * beyond the top level — the base class handles that.
140
- */
141
- private NormalizeRecord;
142
- /** Converts GrowthZone sentinel values to null. */
143
- private NormalizeValue;
144
- /**
145
- * For OrgGeneral / NotesAndFields responses, the current object being
146
- * fetched may request a flattened nested array rather than the root
147
- * record. Returns flattened rows when currentObjectName matches a
148
- * known nested-array target, else null.
149
- */
150
- private MaybeFlattenNested;
151
- /** Stringifies custom-field values so they fit nvarchar storage. */
152
- private StringifyCustomFieldValue;
153
- /**
154
- * Extracts the latest ModifiedDate from a batch of records for
155
- * watermark advancement.
156
- */
157
- private ExtractLatestModifiedDate;
158
- /**
159
- * Parses connection config, preferring the attached credential entity
160
- * over the raw Configuration JSON.
150
+ * Parses the OAuth2 connection config, preferring the attached MJ Credential over the
151
+ * raw Configuration JSON. Credential bytes are resolved at runtime — never at build.
161
152
  */
162
153
  private ParseConfig;
163
- /** Loads config from the MJ: Credentials entity. */
154
+ /** Loads the OAuth2 config from the MJ: Credentials entity Values JSON. */
164
155
  private ParseConfigFromCredential;
165
- /** Validates and applies defaults to the config. */
156
+ /** Validates the parsed config + applies defaults. Field names are case-insensitive. */
166
157
  private ValidateConfig;
167
- /**
168
- * Resolves the base URL from either an override or the tenant subdomain.
169
- * Always returns a URL ending in `/api` with no trailing slash.
170
- */
158
+ /** Resolves the API base URL from the credential's BaseURL (never a hardcoded subdomain). */
171
159
  private ResolveBaseUrl;
160
+ /** Resolves the OAuth2 token endpoint: credential TokenURL override, else `{base}/oauth/token`. */
161
+ private ResolveTokenURL;
162
+ /** Normalizes a raw record's top-level values (null-date + empty-string → null). */
163
+ private NormalizeRecord;
164
+ /** Converts GrowthZone sentinel values to null. */
165
+ private NormalizeValue;
166
+ /** Extracts the latest ModifiedDate across a batch for watermark advancement. */
167
+ private ExtractLatestModifiedDate;
172
168
  /** Throttle to respect GrowthZone's recommended minimum request interval. */
173
169
  private ThrottleIfNeeded;
174
- /** Exponential backoff delay for retry attempts. */
170
+ /** Parses a Retry-After header (seconds or http-date) into ms, if present. */
171
+ private RetryAfterMs;
172
+ /** Exponential backoff delay for retry attempts (capped at 30s). */
175
173
  private BackoffDelay;
176
174
  /** Checks whether an error is transient (network/timeout). */
177
175
  private IsTransientNetworkError;
@@ -180,6 +178,6 @@ export declare class GrowthZoneConnector extends BaseRESTIntegrationConnector {
180
178
  /** Promise-wrapped setTimeout. */
181
179
  private Sleep;
182
180
  }
183
- /** Tree-shaking prevention function — import and call from module entry point */
181
+ /** Tree-shaking prevention — import and call from the package entry point. */
184
182
  export declare function LoadGrowthZoneConnector(): void;
185
183
  //# sourceMappingURL=GrowthZoneConnector.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"GrowthZoneConnector.d.ts","sourceRoot":"","sources":["../src/GrowthZoneConnector.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GrowthZoneConnector.d.ts","sourceRoot":"","sources":["../src/GrowthZoneConnector.ts"],"names":[],"mappings":"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"}