@virusis/api-client 0.1.16 → 0.1.19

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 (73) hide show
  1. package/dist/base.d.ts +12 -1
  2. package/dist/base.js +174 -1
  3. package/dist/container.d.ts +15 -3
  4. package/dist/generated/clients/diagnostics-service.d.ts +2 -0
  5. package/dist/generated/clients/diagnostics-service.js +2 -0
  6. package/dist/generated/clients/feedbacks-service.d.ts +2 -0
  7. package/dist/generated/clients/feedbacks-service.js +2 -0
  8. package/dist/generated/clients/index.d.ts +5 -1
  9. package/dist/generated/clients/index.js +5 -1
  10. package/dist/generated/clients/portal-service.d.ts +2 -0
  11. package/dist/generated/clients/portal-service.js +2 -0
  12. package/dist/generated/clients/risk-service.d.ts +2 -0
  13. package/dist/generated/clients/risk-service.js +2 -0
  14. package/dist/generated/clients-rx/diagnostics-service-rx.d.ts +16 -0
  15. package/dist/generated/clients-rx/diagnostics-service-rx.js +12 -0
  16. package/dist/generated/clients-rx/feedbacks-service-rx.d.ts +16 -0
  17. package/dist/generated/clients-rx/feedbacks-service-rx.js +12 -0
  18. package/dist/generated/clients-rx/index.d.ts +5 -1
  19. package/dist/generated/clients-rx/index.js +5 -1
  20. package/dist/generated/clients-rx/portal-service-rx.d.ts +16 -0
  21. package/dist/generated/clients-rx/portal-service-rx.js +12 -0
  22. package/dist/generated/clients-rx/risk-service-rx.d.ts +16 -0
  23. package/dist/generated/clients-rx/risk-service-rx.js +12 -0
  24. package/dist/generated/index.d.ts +398 -67
  25. package/dist/generated/index.js +811 -138
  26. package/dist/generated/models/access-token-i-data-result.d.ts +4 -0
  27. package/dist/generated/models/access-token-i-data-result.js +1 -0
  28. package/dist/generated/models/access-token.d.ts +4 -0
  29. package/dist/generated/models/access-token.js +1 -0
  30. package/dist/generated/models/application-click-event-batch-dto.d.ts +4 -0
  31. package/dist/generated/models/application-click-event-batch-dto.js +1 -0
  32. package/dist/generated/models/application-click-event-create-dto.d.ts +4 -0
  33. package/dist/generated/models/application-click-event-create-dto.js +1 -0
  34. package/dist/generated/models/feedback-category-dto-list-i-data-result.d.ts +4 -0
  35. package/dist/generated/models/feedback-category-dto-list-i-data-result.js +1 -0
  36. package/dist/generated/models/feedback-category-dto.d.ts +4 -0
  37. package/dist/generated/models/feedback-category-dto.js +1 -0
  38. package/dist/generated/models/index.d.ts +17 -0
  39. package/dist/generated/models/index.js +17 -0
  40. package/dist/generated/models/otp-generate-result.d.ts +4 -0
  41. package/dist/generated/models/otp-generate-result.js +1 -0
  42. package/dist/generated/models/queue-monitor-workers-response.d.ts +4 -0
  43. package/dist/generated/models/queue-monitor-workers-response.js +1 -0
  44. package/dist/generated/models/risk-flag-request-dto.d.ts +4 -0
  45. package/dist/generated/models/risk-flag-request-dto.js +1 -0
  46. package/dist/generated/models/risk-signal-avg-dto.d.ts +4 -0
  47. package/dist/generated/models/risk-signal-avg-dto.js +1 -0
  48. package/dist/generated/models/risk-signal-client-dto.d.ts +4 -0
  49. package/dist/generated/models/risk-signal-client-dto.js +1 -0
  50. package/dist/generated/models/risk-signal-counts-dto.d.ts +4 -0
  51. package/dist/generated/models/risk-signal-counts-dto.js +1 -0
  52. package/dist/generated/models/risk-signals-dto.d.ts +4 -0
  53. package/dist/generated/models/risk-signals-dto.js +1 -0
  54. package/dist/generated/models/risk-state-dto.d.ts +4 -0
  55. package/dist/generated/models/risk-state-dto.js +1 -0
  56. package/dist/generated/models/risk-verify-dto.d.ts +4 -0
  57. package/dist/generated/models/risk-verify-dto.js +1 -0
  58. package/dist/generated/models/scan-status-dto-i-data-result.d.ts +4 -0
  59. package/dist/generated/models/scan-status-dto-i-data-result.js +1 -0
  60. package/dist/generated/models/scan-status-dto.d.ts +4 -0
  61. package/dist/generated/models/scan-status-dto.js +1 -0
  62. package/dist/index.d.ts +1 -0
  63. package/dist/index.js +1 -0
  64. package/dist/rx.d.ts +30 -6
  65. package/dist/security/index.d.ts +4 -0
  66. package/dist/security/index.js +2 -0
  67. package/dist/security/input-security-policy.d.ts +23 -0
  68. package/dist/security/input-security-policy.js +5 -0
  69. package/dist/security/input-security-service.d.ts +3 -0
  70. package/dist/security/input-security-service.js +153 -0
  71. package/dist/security/request-sanitizer.d.ts +18 -0
  72. package/dist/security/request-sanitizer.js +242 -0
  73. package/package.json +9 -4
package/dist/base.d.ts CHANGED
@@ -1,7 +1,18 @@
1
1
  export declare class ApiClientConfig {
2
2
  baseUrl: string;
3
3
  getToken?: (() => string | null | Promise<string | null>) | undefined;
4
- constructor(baseUrl: string, getToken?: (() => string | null | Promise<string | null>) | undefined);
4
+ getAppKey?: (() => string | null | Promise<string | null>) | undefined;
5
+ appKeyHeaderName: string;
6
+ sanitizeRequests: boolean;
7
+ onInputSecurityEvent?: ((event: {
8
+ field: string;
9
+ threats: string[];
10
+ }) => void) | undefined;
11
+ trustedAbsoluteHosts: string[];
12
+ constructor(baseUrl: string, getToken?: (() => string | null | Promise<string | null>) | undefined, getAppKey?: (() => string | null | Promise<string | null>) | undefined, appKeyHeaderName?: string, sanitizeRequests?: boolean, onInputSecurityEvent?: ((event: {
13
+ field: string;
14
+ threats: string[];
15
+ }) => void) | undefined, trustedAbsoluteHosts?: string[]);
5
16
  }
6
17
  export declare class BaseApiClient {
7
18
  protected readonly configuration: ApiClientConfig;
package/dist/base.js CHANGED
@@ -1,9 +1,23 @@
1
1
  export class ApiClientConfig {
2
- constructor(baseUrl, getToken) {
2
+ constructor(baseUrl, getToken,
3
+ // CREDENTIAL-GROUPING-2026-04-23: Her istege X-App-Key header'i eklemek icin.
4
+ // WebAPI ApplicationIdentityMiddleware bu header'i JWT'deki (iss, azp) ile karsilastirir.
5
+ // Deger AppKey (ornek: "0101000" trial UI, "0201000" private API backend).
6
+ getAppKey,
7
+ // Header adi configurable — default "X-App-Key".
8
+ appKeyHeaderName = "X-App-Key",
9
+ // INPUT-SECURITY-2026-05-03: Defensive sanitization for requests
10
+ sanitizeRequests = true, onInputSecurityEvent, trustedAbsoluteHosts = []) {
3
11
  this.baseUrl = baseUrl;
4
12
  this.getToken = getToken;
13
+ this.getAppKey = getAppKey;
14
+ this.appKeyHeaderName = appKeyHeaderName;
15
+ this.sanitizeRequests = sanitizeRequests;
16
+ this.onInputSecurityEvent = onInputSecurityEvent;
17
+ this.trustedAbsoluteHosts = trustedAbsoluteHosts;
5
18
  }
6
19
  }
20
+ import { validatePath, sanitizeBody, validateAbsoluteUrl } from "./security/request-sanitizer.js";
7
21
  export class BaseApiClient {
8
22
  constructor(configuration) {
9
23
  this.configuration = configuration;
@@ -18,6 +32,24 @@ export async function doFetch(cfg, path, init) {
18
32
  if (!cfg.baseUrl) {
19
33
  throw new Error("ApiClientConfig.baseUrl is required and must be absolute.");
20
34
  }
35
+ // INPUT-SECURITY-2026-05-03: Full request sanitization when enabled
36
+ if (cfg.sanitizeRequests) {
37
+ // Validate path
38
+ const pathCheck = validatePath(path);
39
+ if (!pathCheck.safe) {
40
+ throw new Error("Blocked: dangerous characters in request path");
41
+ }
42
+ // Sanitize JSON body
43
+ if (init?.body && typeof init.body === "string") {
44
+ const contentType = getContentType(init);
45
+ if (contentType.includes("application/json")) {
46
+ const sanitized = applySanitizeBody(cfg, init.body);
47
+ if (sanitized) {
48
+ init = { ...init, body: sanitized };
49
+ }
50
+ }
51
+ }
52
+ }
21
53
  const headers = new Headers(init?.headers || {});
22
54
  headers.set("Accept", "application/json");
23
55
  if (!headers.has("Content-Type"))
@@ -25,6 +57,8 @@ export async function doFetch(cfg, path, init) {
25
57
  const token = cfg.getToken ? await cfg.getToken() : null;
26
58
  if (token)
27
59
  headers.set("Authorization", `Bearer ${token}`);
60
+ // CREDENTIAL-GROUPING-2026-04-23
61
+ await applyAppKeyHeader(headers, cfg);
28
62
  const url = buildUrl(cfg.baseUrl, path);
29
63
  const res = await fetch(url, { ...init, headers });
30
64
  if (!res.ok) {
@@ -39,6 +73,23 @@ export async function doFetchAbsolute(cfg, url, init) {
39
73
  if (!cfg.baseUrl) {
40
74
  throw new Error("ApiClientConfig.baseUrl is required and must be absolute.");
41
75
  }
76
+ // INPUT-SECURITY-2026-05-03: Use shared SSRF/scheme/host validator
77
+ if (cfg.sanitizeRequests) {
78
+ const urlCheck = validateAbsoluteUrl(url, cfg.trustedAbsoluteHosts);
79
+ if (!urlCheck.safe) {
80
+ throw new Error(`Blocked: ${urlCheck.reason}`);
81
+ }
82
+ // Sanitize JSON body
83
+ if (init?.body && typeof init.body === "string") {
84
+ const contentType = getContentType(init);
85
+ if (contentType.includes("application/json")) {
86
+ const sanitized = applySanitizeBody(cfg, init.body);
87
+ if (sanitized) {
88
+ init = { ...init, body: sanitized };
89
+ }
90
+ }
91
+ }
92
+ }
42
93
  const headers = new Headers(init?.headers || {});
43
94
  headers.set("Accept", "application/json");
44
95
  if (!headers.has("Content-Type"))
@@ -46,6 +97,8 @@ export async function doFetchAbsolute(cfg, url, init) {
46
97
  const token = cfg.getToken ? await cfg.getToken() : null;
47
98
  if (token)
48
99
  headers.set("Authorization", `Bearer ${token}`);
100
+ // CREDENTIAL-GROUPING-2026-04-23
101
+ await applyAppKeyHeader(headers, cfg);
49
102
  const res = await fetch(url, { ...init, headers });
50
103
  if (!res.ok) {
51
104
  const text = await res.text().catch(() => "");
@@ -58,6 +111,10 @@ export async function doFetchAbsolute(cfg, url, init) {
58
111
  function buildUrl(base, path) {
59
112
  const trimmedBase = base.replace(/\/+$/, "");
60
113
  let trimmedPath = path.replace(/^\/+/, "");
114
+ // INPUT-SECURITY-2026-05-03: Path traversal / injection preflight
115
+ if (/\.\.[/\\]|%2e%2e|%2f|%5c|[\r\n\x00-\x1F]/i.test(trimmedPath)) {
116
+ throw new Error("Blocked: dangerous characters in request path");
117
+ }
61
118
  if (trimmedPath && !trimmedPath.startsWith("/")) {
62
119
  trimmedPath = "/" + trimmedPath;
63
120
  }
@@ -70,6 +127,19 @@ function buildUrl(base, path) {
70
127
  // Returns a fetch function that injects auth + default headers, keeps Response intact
71
128
  export function buildAuthFetch(cfg) {
72
129
  return async (url, init) => {
130
+ if (cfg.sanitizeRequests) {
131
+ validateRequestTarget(cfg, url);
132
+ }
133
+ // INPUT-SECURITY-2026-05-03: Sanitize body for auth fetch path
134
+ if (cfg.sanitizeRequests && init?.body && typeof init.body === "string") {
135
+ const contentType = getContentType(init);
136
+ if (contentType.includes("application/json")) {
137
+ const sanitized = applySanitizeBody(cfg, init.body);
138
+ if (sanitized) {
139
+ init = { ...init, body: sanitized };
140
+ }
141
+ }
142
+ }
73
143
  const headers = new Headers(init?.headers || {});
74
144
  headers.set("Accept", "application/json");
75
145
  if (!headers.has("Content-Type"))
@@ -77,11 +147,26 @@ export function buildAuthFetch(cfg) {
77
147
  const token = cfg.getToken ? await cfg.getToken() : null;
78
148
  if (token)
79
149
  headers.set("Authorization", `Bearer ${token}`);
150
+ // CREDENTIAL-GROUPING-2026-04-23
151
+ await applyAppKeyHeader(headers, cfg);
80
152
  const headersInit = {};
81
153
  headers.forEach((v, k) => (headersInit[k] = v));
82
154
  return fetch(url, { ...init, headers: headersInit });
83
155
  };
84
156
  }
157
+ // CREDENTIAL-GROUPING-2026-04-23
158
+ // Uc fetch helper icin ortak X-App-Key uygulayicisi.
159
+ // cfg.getAppKey varsa async olarak cagirir ve header'i set eder (call-site override varsa dokunmaz).
160
+ async function applyAppKeyHeader(headers, cfg) {
161
+ if (!cfg.getAppKey)
162
+ return;
163
+ const headerName = cfg.appKeyHeaderName || "X-App-Key";
164
+ if (headers.has(headerName))
165
+ return; // call-site override ONCELIK
166
+ const appKey = await cfg.getAppKey();
167
+ if (appKey)
168
+ headers.set(headerName, appKey);
169
+ }
85
170
  // Build an http object with defaults (credentials, extra headers etc.) applied on top of auth fetch
86
171
  export function buildHttpWithDefaults(cfg, defaults) {
87
172
  const authFetch = buildAuthFetch(cfg);
@@ -104,3 +189,91 @@ export function buildHttpWithDefaults(cfg, defaults) {
104
189
  },
105
190
  };
106
191
  }
192
+ // ─── Input security helpers for fetch paths ─────────────────────
193
+ function getContentType(init) {
194
+ if (!init?.headers)
195
+ return "application/json";
196
+ const h = new Headers(init.headers);
197
+ return h.get("Content-Type") ?? "application/json";
198
+ }
199
+ function validateRequestTarget(cfg, input) {
200
+ const value = requestInfoToString(input);
201
+ if (!value)
202
+ return;
203
+ if (isAbsoluteUrl(value)) {
204
+ const urlCheck = validateAbsoluteUrl(value, cfg.trustedAbsoluteHosts);
205
+ if (!urlCheck.safe) {
206
+ throw new Error(`Blocked: ${urlCheck.reason}`);
207
+ }
208
+ return;
209
+ }
210
+ const pathCheck = validatePath(value);
211
+ if (!pathCheck.safe) {
212
+ throw new Error("Blocked: dangerous characters in request path");
213
+ }
214
+ }
215
+ function requestInfoToString(input) {
216
+ if (typeof input === "string")
217
+ return input;
218
+ if (input instanceof URL)
219
+ return input.toString();
220
+ if (typeof Request !== "undefined" && input instanceof Request)
221
+ return input.url;
222
+ return "";
223
+ }
224
+ function isAbsoluteUrl(value) {
225
+ try {
226
+ new URL(value);
227
+ return true;
228
+ }
229
+ catch {
230
+ return false;
231
+ }
232
+ }
233
+ /**
234
+ * Parse, sanitize, and re-serialize a JSON body string.
235
+ * Returns the sanitized JSON string, or throws on blocked content.
236
+ */
237
+ function applySanitizeBody(cfg, bodyStr) {
238
+ let parsed;
239
+ try {
240
+ parsed = JSON.parse(bodyStr);
241
+ }
242
+ catch {
243
+ return null; // not valid JSON — pass through
244
+ }
245
+ if (typeof parsed !== "object" || parsed === null) {
246
+ return null;
247
+ }
248
+ const isRootArray = Array.isArray(parsed);
249
+ const bodyForSanitizer = isRootArray
250
+ ? { items: parsed }
251
+ : parsed;
252
+ const result = sanitizeBody(bodyForSanitizer);
253
+ if (result.blocked) {
254
+ // Emit event if handler registered
255
+ for (const t of result.threats) {
256
+ if (cfg.onInputSecurityEvent && t.detectedThreats?.length) {
257
+ cfg.onInputSecurityEvent({
258
+ field: "body",
259
+ threats: t.detectedThreats.map((d) => d.type),
260
+ });
261
+ }
262
+ }
263
+ throw new Error("Blocked: request body contains dangerous content — " +
264
+ result.threats.map((t) => t.detectedThreats?.map((d) => d.type).join(",")).join("; "));
265
+ }
266
+ if (result.modified) {
267
+ // Emit event for sanitized (non-blocked) modifications
268
+ for (const t of result.threats) {
269
+ if (cfg.onInputSecurityEvent && t.detectedThreats?.length) {
270
+ cfg.onInputSecurityEvent({
271
+ field: "body",
272
+ threats: t.detectedThreats.map((d) => d.type),
273
+ });
274
+ }
275
+ }
276
+ return JSON.stringify(isRootArray ? result.body.items : result.body);
277
+ }
278
+ return null; // no modifications needed
279
+ }
@@ -18,15 +18,20 @@ export declare function getServices(): {
18
18
  baseUserDevicesService: import("./index.js").BaseUserDevicesClient;
19
19
  curlTasksService: import("./index.js").CurlTasksClient;
20
20
  devicesService: import("./index.js").DevicesClient;
21
+ diagnosticsService: import("./index.js").DiagnosticsClient;
22
+ feedbacksService: import("./index.js").FeedbacksClient;
23
+ apiService: import("./index.js").ApiClient;
21
24
  interactionTrackersService: import("./index.js").InteractionTrackersClient;
22
25
  menuGroupsService: import("./index.js").MenuGroupsClient;
23
26
  menuOperationClaimsService: import("./index.js").MenuOperationClaimsClient;
24
27
  menusService: import("./index.js").MenusClient;
25
28
  notificationsService: import("./index.js").NotificationsClient;
26
29
  operationClaimsService: import("./index.js").OperationClaimsClient;
30
+ portalService: import("./index.js").PortalClient;
27
31
  queueMonitorService: import("./index.js").QueueMonitorClient;
28
32
  metricsService: import("./index.js").MetricsClient;
29
33
  healthService: import("./index.js").HealthClient;
34
+ riskService: import("./index.js").RiskClient;
30
35
  scanApiBusSourcesService: import("./index.js").ScanApiBusSourcesClient;
31
36
  scanApiCredentialsService: import("./index.js").ScanApiCredentialsClient;
32
37
  scanApiCredentialUsagesService: import("./index.js").ScanApiCredentialUsagesClient;
@@ -67,7 +72,6 @@ export declare function getServices(): {
67
72
  scanTimingRunsService: import("./index.js").ScanTimingRunsClient;
68
73
  scanTypesService: import("./index.js").ScanTypesClient;
69
74
  scanVisibilityTypesService: import("./index.js").ScanVisibilityTypesClient;
70
- apiService: import("./index.js").ApiClient;
71
75
  internalService: import("./index.js").InternalClient;
72
76
  threatConceptsService: import("./index.js").ThreatConceptsClient;
73
77
  threatFrameworksService: import("./index.js").ThreatFrameworksClient;
@@ -95,15 +99,20 @@ export declare function getServicesRx(): {
95
99
  baseUserDevicesService: import("./index.js").BaseUserDevicesClient;
96
100
  curlTasksService: import("./index.js").CurlTasksClient;
97
101
  devicesService: import("./index.js").DevicesClient;
102
+ diagnosticsService: import("./index.js").DiagnosticsClient;
103
+ feedbacksService: import("./index.js").FeedbacksClient;
104
+ apiService: import("./index.js").ApiClient;
98
105
  interactionTrackersService: import("./index.js").InteractionTrackersClient;
99
106
  menuGroupsService: import("./index.js").MenuGroupsClient;
100
107
  menuOperationClaimsService: import("./index.js").MenuOperationClaimsClient;
101
108
  menusService: import("./index.js").MenusClient;
102
109
  notificationsService: import("./index.js").NotificationsClient;
103
110
  operationClaimsService: import("./index.js").OperationClaimsClient;
111
+ portalService: import("./index.js").PortalClient;
104
112
  queueMonitorService: import("./index.js").QueueMonitorClient;
105
113
  metricsService: import("./index.js").MetricsClient;
106
114
  healthService: import("./index.js").HealthClient;
115
+ riskService: import("./index.js").RiskClient;
107
116
  scanApiBusSourcesService: import("./index.js").ScanApiBusSourcesClient;
108
117
  scanApiCredentialsService: import("./index.js").ScanApiCredentialsClient;
109
118
  scanApiCredentialUsagesService: import("./index.js").ScanApiCredentialUsagesClient;
@@ -144,7 +153,6 @@ export declare function getServicesRx(): {
144
153
  scanTimingRunsService: import("./index.js").ScanTimingRunsClient;
145
154
  scanTypesService: import("./index.js").ScanTypesClient;
146
155
  scanVisibilityTypesService: import("./index.js").ScanVisibilityTypesClient;
147
- apiService: import("./index.js").ApiClient;
148
156
  internalService: import("./index.js").InternalClient;
149
157
  threatConceptsService: import("./index.js").ThreatConceptsClient;
150
158
  threatFrameworksService: import("./index.js").ThreatFrameworksClient;
@@ -173,15 +181,20 @@ export declare function getServicesByMode(mode?: ClientMode): {
173
181
  baseUserDevicesService: import("./index.js").BaseUserDevicesClient;
174
182
  curlTasksService: import("./index.js").CurlTasksClient;
175
183
  devicesService: import("./index.js").DevicesClient;
184
+ diagnosticsService: import("./index.js").DiagnosticsClient;
185
+ feedbacksService: import("./index.js").FeedbacksClient;
186
+ apiService: import("./index.js").ApiClient;
176
187
  interactionTrackersService: import("./index.js").InteractionTrackersClient;
177
188
  menuGroupsService: import("./index.js").MenuGroupsClient;
178
189
  menuOperationClaimsService: import("./index.js").MenuOperationClaimsClient;
179
190
  menusService: import("./index.js").MenusClient;
180
191
  notificationsService: import("./index.js").NotificationsClient;
181
192
  operationClaimsService: import("./index.js").OperationClaimsClient;
193
+ portalService: import("./index.js").PortalClient;
182
194
  queueMonitorService: import("./index.js").QueueMonitorClient;
183
195
  metricsService: import("./index.js").MetricsClient;
184
196
  healthService: import("./index.js").HealthClient;
197
+ riskService: import("./index.js").RiskClient;
185
198
  scanApiBusSourcesService: import("./index.js").ScanApiBusSourcesClient;
186
199
  scanApiCredentialsService: import("./index.js").ScanApiCredentialsClient;
187
200
  scanApiCredentialUsagesService: import("./index.js").ScanApiCredentialUsagesClient;
@@ -222,7 +235,6 @@ export declare function getServicesByMode(mode?: ClientMode): {
222
235
  scanTimingRunsService: import("./index.js").ScanTimingRunsClient;
223
236
  scanTypesService: import("./index.js").ScanTypesClient;
224
237
  scanVisibilityTypesService: import("./index.js").ScanVisibilityTypesClient;
225
- apiService: import("./index.js").ApiClient;
226
238
  internalService: import("./index.js").InternalClient;
227
239
  threatConceptsService: import("./index.js").ThreatConceptsClient;
228
240
  threatFrameworksService: import("./index.js").ThreatFrameworksClient;
@@ -0,0 +1,2 @@
1
+ export { DiagnosticsClient, DiagnosticsClient as DiagnosticsService, IDiagnosticsClient } from "../index.js";
2
+ export { DiagnosticsClient as diagnosticsService, IDiagnosticsClient as iDiagnosticsClient } from "../index.js";
@@ -0,0 +1,2 @@
1
+ export { DiagnosticsClient, DiagnosticsClient as DiagnosticsService } from "../index.js";
2
+ export { DiagnosticsClient as diagnosticsService } from "../index.js";
@@ -0,0 +1,2 @@
1
+ export { FeedbacksClient, FeedbacksClient as FeedbacksService, IFeedbacksClient } from "../index.js";
2
+ export { FeedbacksClient as feedbacksService, IFeedbacksClient as iFeedbacksClient } from "../index.js";
@@ -0,0 +1,2 @@
1
+ export { FeedbacksClient, FeedbacksClient as FeedbacksService } from "../index.js";
2
+ export { FeedbacksClient as feedbacksService } from "../index.js";
@@ -5,15 +5,20 @@ export * from "./auth-service.js";
5
5
  export * from "./base-user-devices-service.js";
6
6
  export * from "./curl-tasks-service.js";
7
7
  export * from "./devices-service.js";
8
+ export * from "./diagnostics-service.js";
9
+ export * from "./feedbacks-service.js";
10
+ export * from "./api-service.js";
8
11
  export * from "./interaction-trackers-service.js";
9
12
  export * from "./menu-groups-service.js";
10
13
  export * from "./menu-operation-claims-service.js";
11
14
  export * from "./menus-service.js";
12
15
  export * from "./notifications-service.js";
13
16
  export * from "./operation-claims-service.js";
17
+ export * from "./portal-service.js";
14
18
  export * from "./queue-monitor-service.js";
15
19
  export * from "./metrics-service.js";
16
20
  export * from "./health-service.js";
21
+ export * from "./risk-service.js";
17
22
  export * from "./scan-api-bus-sources-service.js";
18
23
  export * from "./scan-api-credentials-service.js";
19
24
  export * from "./scan-api-credential-usages-service.js";
@@ -54,7 +59,6 @@ export * from "./scan-timing-events-service.js";
54
59
  export * from "./scan-timing-runs-service.js";
55
60
  export * from "./scan-types-service.js";
56
61
  export * from "./scan-visibility-types-service.js";
57
- export * from "./api-service.js";
58
62
  export * from "./internal-service.js";
59
63
  export * from "./threat-concepts-service.js";
60
64
  export * from "./threat-frameworks-service.js";
@@ -5,15 +5,20 @@ export * from "./auth-service.js";
5
5
  export * from "./base-user-devices-service.js";
6
6
  export * from "./curl-tasks-service.js";
7
7
  export * from "./devices-service.js";
8
+ export * from "./diagnostics-service.js";
9
+ export * from "./feedbacks-service.js";
10
+ export * from "./api-service.js";
8
11
  export * from "./interaction-trackers-service.js";
9
12
  export * from "./menu-groups-service.js";
10
13
  export * from "./menu-operation-claims-service.js";
11
14
  export * from "./menus-service.js";
12
15
  export * from "./notifications-service.js";
13
16
  export * from "./operation-claims-service.js";
17
+ export * from "./portal-service.js";
14
18
  export * from "./queue-monitor-service.js";
15
19
  export * from "./metrics-service.js";
16
20
  export * from "./health-service.js";
21
+ export * from "./risk-service.js";
17
22
  export * from "./scan-api-bus-sources-service.js";
18
23
  export * from "./scan-api-credentials-service.js";
19
24
  export * from "./scan-api-credential-usages-service.js";
@@ -54,7 +59,6 @@ export * from "./scan-timing-events-service.js";
54
59
  export * from "./scan-timing-runs-service.js";
55
60
  export * from "./scan-types-service.js";
56
61
  export * from "./scan-visibility-types-service.js";
57
- export * from "./api-service.js";
58
62
  export * from "./internal-service.js";
59
63
  export * from "./threat-concepts-service.js";
60
64
  export * from "./threat-frameworks-service.js";
@@ -0,0 +1,2 @@
1
+ export { PortalClient, PortalClient as PortalService, IPortalClient } from "../index.js";
2
+ export { PortalClient as portalService, IPortalClient as iPortalClient } from "../index.js";
@@ -0,0 +1,2 @@
1
+ export { PortalClient, PortalClient as PortalService } from "../index.js";
2
+ export { PortalClient as portalService } from "../index.js";
@@ -0,0 +1,2 @@
1
+ export { RiskClient, RiskClient as RiskService, IRiskClient } from "../index.js";
2
+ export { RiskClient as riskService, IRiskClient as iRiskClient } from "../index.js";
@@ -0,0 +1,2 @@
1
+ export { RiskClient, RiskClient as RiskService } from "../index.js";
2
+ export { RiskClient as riskService } from "../index.js";
@@ -0,0 +1,16 @@
1
+ import { DiagnosticsClient } from "../index.js";
2
+ import type { ApiClientConfig } from "../../base.js";
3
+ export declare function createDiagnosticsServiceRx(config: ApiClientConfig, baseUrl?: string, http?: {
4
+ fetch(url: RequestInfo, init?: RequestInit): Promise<Response>;
5
+ }): import("../../rx.js").Rxified<DiagnosticsClient>;
6
+ export type DiagnosticsServiceRx = ReturnType<typeof createDiagnosticsServiceRx>;
7
+ export declare const diagnosticsServiceRx: (config: ApiClientConfig, baseUrl?: string, http?: {
8
+ fetch(url: RequestInfo, init?: RequestInit): Promise<Response>;
9
+ }) => import("../../rx.js").Rxified<DiagnosticsClient>;
10
+ export declare class DiagnosticsServiceRxClass {
11
+ constructor(config: ApiClientConfig, baseUrl?: string, http?: {
12
+ fetch(url: RequestInfo, init?: RequestInit): Promise<Response>;
13
+ });
14
+ }
15
+ export interface DiagnosticsServiceRxClass extends DiagnosticsServiceRx {
16
+ }
@@ -0,0 +1,12 @@
1
+ import { DiagnosticsClient } from "../index.js";
2
+ import { rxifyClient } from "../../rx.js";
3
+ export function createDiagnosticsServiceRx(config, baseUrl, http) {
4
+ return rxifyClient(new DiagnosticsClient(config, baseUrl, http));
5
+ }
6
+ export const diagnosticsServiceRx = (config, baseUrl, http) => createDiagnosticsServiceRx(config, baseUrl, http);
7
+ // Angular DI icin: class token kullandiginda Observable donen wrapper
8
+ export class DiagnosticsServiceRxClass {
9
+ constructor(config, baseUrl, http) {
10
+ return createDiagnosticsServiceRx(config, baseUrl, http);
11
+ }
12
+ }
@@ -0,0 +1,16 @@
1
+ import { FeedbacksClient } from "../index.js";
2
+ import type { ApiClientConfig } from "../../base.js";
3
+ export declare function createFeedbacksServiceRx(config: ApiClientConfig, baseUrl?: string, http?: {
4
+ fetch(url: RequestInfo, init?: RequestInit): Promise<Response>;
5
+ }): import("../../rx.js").Rxified<FeedbacksClient>;
6
+ export type FeedbacksServiceRx = ReturnType<typeof createFeedbacksServiceRx>;
7
+ export declare const feedbacksServiceRx: (config: ApiClientConfig, baseUrl?: string, http?: {
8
+ fetch(url: RequestInfo, init?: RequestInit): Promise<Response>;
9
+ }) => import("../../rx.js").Rxified<FeedbacksClient>;
10
+ export declare class FeedbacksServiceRxClass {
11
+ constructor(config: ApiClientConfig, baseUrl?: string, http?: {
12
+ fetch(url: RequestInfo, init?: RequestInit): Promise<Response>;
13
+ });
14
+ }
15
+ export interface FeedbacksServiceRxClass extends FeedbacksServiceRx {
16
+ }
@@ -0,0 +1,12 @@
1
+ import { FeedbacksClient } from "../index.js";
2
+ import { rxifyClient } from "../../rx.js";
3
+ export function createFeedbacksServiceRx(config, baseUrl, http) {
4
+ return rxifyClient(new FeedbacksClient(config, baseUrl, http));
5
+ }
6
+ export const feedbacksServiceRx = (config, baseUrl, http) => createFeedbacksServiceRx(config, baseUrl, http);
7
+ // Angular DI icin: class token kullandiginda Observable donen wrapper
8
+ export class FeedbacksServiceRxClass {
9
+ constructor(config, baseUrl, http) {
10
+ return createFeedbacksServiceRx(config, baseUrl, http);
11
+ }
12
+ }
@@ -5,15 +5,20 @@ export * from "./auth-service-rx.js";
5
5
  export * from "./base-user-devices-service-rx.js";
6
6
  export * from "./curl-tasks-service-rx.js";
7
7
  export * from "./devices-service-rx.js";
8
+ export * from "./diagnostics-service-rx.js";
9
+ export * from "./feedbacks-service-rx.js";
10
+ export * from "./api-service-rx.js";
8
11
  export * from "./interaction-trackers-service-rx.js";
9
12
  export * from "./menu-groups-service-rx.js";
10
13
  export * from "./menu-operation-claims-service-rx.js";
11
14
  export * from "./menus-service-rx.js";
12
15
  export * from "./notifications-service-rx.js";
13
16
  export * from "./operation-claims-service-rx.js";
17
+ export * from "./portal-service-rx.js";
14
18
  export * from "./queue-monitor-service-rx.js";
15
19
  export * from "./metrics-service-rx.js";
16
20
  export * from "./health-service-rx.js";
21
+ export * from "./risk-service-rx.js";
17
22
  export * from "./scan-api-bus-sources-service-rx.js";
18
23
  export * from "./scan-api-credentials-service-rx.js";
19
24
  export * from "./scan-api-credential-usages-service-rx.js";
@@ -54,7 +59,6 @@ export * from "./scan-timing-events-service-rx.js";
54
59
  export * from "./scan-timing-runs-service-rx.js";
55
60
  export * from "./scan-types-service-rx.js";
56
61
  export * from "./scan-visibility-types-service-rx.js";
57
- export * from "./api-service-rx.js";
58
62
  export * from "./internal-service-rx.js";
59
63
  export * from "./threat-concepts-service-rx.js";
60
64
  export * from "./threat-frameworks-service-rx.js";
@@ -5,15 +5,20 @@ export * from "./auth-service-rx.js";
5
5
  export * from "./base-user-devices-service-rx.js";
6
6
  export * from "./curl-tasks-service-rx.js";
7
7
  export * from "./devices-service-rx.js";
8
+ export * from "./diagnostics-service-rx.js";
9
+ export * from "./feedbacks-service-rx.js";
10
+ export * from "./api-service-rx.js";
8
11
  export * from "./interaction-trackers-service-rx.js";
9
12
  export * from "./menu-groups-service-rx.js";
10
13
  export * from "./menu-operation-claims-service-rx.js";
11
14
  export * from "./menus-service-rx.js";
12
15
  export * from "./notifications-service-rx.js";
13
16
  export * from "./operation-claims-service-rx.js";
17
+ export * from "./portal-service-rx.js";
14
18
  export * from "./queue-monitor-service-rx.js";
15
19
  export * from "./metrics-service-rx.js";
16
20
  export * from "./health-service-rx.js";
21
+ export * from "./risk-service-rx.js";
17
22
  export * from "./scan-api-bus-sources-service-rx.js";
18
23
  export * from "./scan-api-credentials-service-rx.js";
19
24
  export * from "./scan-api-credential-usages-service-rx.js";
@@ -54,7 +59,6 @@ export * from "./scan-timing-events-service-rx.js";
54
59
  export * from "./scan-timing-runs-service-rx.js";
55
60
  export * from "./scan-types-service-rx.js";
56
61
  export * from "./scan-visibility-types-service-rx.js";
57
- export * from "./api-service-rx.js";
58
62
  export * from "./internal-service-rx.js";
59
63
  export * from "./threat-concepts-service-rx.js";
60
64
  export * from "./threat-frameworks-service-rx.js";
@@ -0,0 +1,16 @@
1
+ import { PortalClient } from "../index.js";
2
+ import type { ApiClientConfig } from "../../base.js";
3
+ export declare function createPortalServiceRx(config: ApiClientConfig, baseUrl?: string, http?: {
4
+ fetch(url: RequestInfo, init?: RequestInit): Promise<Response>;
5
+ }): import("../../rx.js").Rxified<PortalClient>;
6
+ export type PortalServiceRx = ReturnType<typeof createPortalServiceRx>;
7
+ export declare const portalServiceRx: (config: ApiClientConfig, baseUrl?: string, http?: {
8
+ fetch(url: RequestInfo, init?: RequestInit): Promise<Response>;
9
+ }) => import("../../rx.js").Rxified<PortalClient>;
10
+ export declare class PortalServiceRxClass {
11
+ constructor(config: ApiClientConfig, baseUrl?: string, http?: {
12
+ fetch(url: RequestInfo, init?: RequestInit): Promise<Response>;
13
+ });
14
+ }
15
+ export interface PortalServiceRxClass extends PortalServiceRx {
16
+ }
@@ -0,0 +1,12 @@
1
+ import { PortalClient } from "../index.js";
2
+ import { rxifyClient } from "../../rx.js";
3
+ export function createPortalServiceRx(config, baseUrl, http) {
4
+ return rxifyClient(new PortalClient(config, baseUrl, http));
5
+ }
6
+ export const portalServiceRx = (config, baseUrl, http) => createPortalServiceRx(config, baseUrl, http);
7
+ // Angular DI icin: class token kullandiginda Observable donen wrapper
8
+ export class PortalServiceRxClass {
9
+ constructor(config, baseUrl, http) {
10
+ return createPortalServiceRx(config, baseUrl, http);
11
+ }
12
+ }
@@ -0,0 +1,16 @@
1
+ import { RiskClient } from "../index.js";
2
+ import type { ApiClientConfig } from "../../base.js";
3
+ export declare function createRiskServiceRx(config: ApiClientConfig, baseUrl?: string, http?: {
4
+ fetch(url: RequestInfo, init?: RequestInit): Promise<Response>;
5
+ }): import("../../rx.js").Rxified<RiskClient>;
6
+ export type RiskServiceRx = ReturnType<typeof createRiskServiceRx>;
7
+ export declare const riskServiceRx: (config: ApiClientConfig, baseUrl?: string, http?: {
8
+ fetch(url: RequestInfo, init?: RequestInit): Promise<Response>;
9
+ }) => import("../../rx.js").Rxified<RiskClient>;
10
+ export declare class RiskServiceRxClass {
11
+ constructor(config: ApiClientConfig, baseUrl?: string, http?: {
12
+ fetch(url: RequestInfo, init?: RequestInit): Promise<Response>;
13
+ });
14
+ }
15
+ export interface RiskServiceRxClass extends RiskServiceRx {
16
+ }
@@ -0,0 +1,12 @@
1
+ import { RiskClient } from "../index.js";
2
+ import { rxifyClient } from "../../rx.js";
3
+ export function createRiskServiceRx(config, baseUrl, http) {
4
+ return rxifyClient(new RiskClient(config, baseUrl, http));
5
+ }
6
+ export const riskServiceRx = (config, baseUrl, http) => createRiskServiceRx(config, baseUrl, http);
7
+ // Angular DI icin: class token kullandiginda Observable donen wrapper
8
+ export class RiskServiceRxClass {
9
+ constructor(config, baseUrl, http) {
10
+ return createRiskServiceRx(config, baseUrl, http);
11
+ }
12
+ }