@iblai/data-layer 1.12.4 → 1.12.5

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/dist/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@iblai/data-layer",
3
- "version": "1.12.3",
3
+ "version": "1.12.4",
4
4
  "description": "ibl.ai data layer",
5
5
  "main": "dist/index.esm.js",
6
6
  "types": "dist/index.d.ts",
@@ -1,6 +1,7 @@
1
- import { AuditLogsResponse, GetAuditLogsArgs } from './types';
1
+ import { AuditLogsResponse, GetAuditLogsArgs, GetPlatformAuditLogsArgs, PlatformAuditLogsResponse } from './types';
2
2
  export declare const auditLogsApiSlice: import("@reduxjs/toolkit/query").Api<import("@reduxjs/toolkit/query").BaseQueryFn<import("@data-layer/features/utils").CustomQueryArgs, unknown, import("@data-layer/features/utils").ExtendedFetchBaseQueryError, Record<string, unknown>, import("@reduxjs/toolkit/query").FetchBaseQueryMeta>, {
3
3
  getAuditLogs: import("@reduxjs/toolkit/query").QueryDefinition<GetAuditLogsArgs, import("@reduxjs/toolkit/query").BaseQueryFn<import("@data-layer/features/utils").CustomQueryArgs, unknown, import("@data-layer/features/utils").ExtendedFetchBaseQueryError, Record<string, unknown>, import("@reduxjs/toolkit/query").FetchBaseQueryMeta>, string, AuditLogsResponse, "auditLogsApiSlice", unknown>;
4
+ getPlatformAuditLogs: import("@reduxjs/toolkit/query").QueryDefinition<GetPlatformAuditLogsArgs, import("@reduxjs/toolkit/query").BaseQueryFn<import("@data-layer/features/utils").CustomQueryArgs, unknown, import("@data-layer/features/utils").ExtendedFetchBaseQueryError, Record<string, unknown>, import("@reduxjs/toolkit/query").FetchBaseQueryMeta>, string, PlatformAuditLogsResponse, "auditLogsApiSlice", unknown>;
4
5
  }, "auditLogsApiSlice", string, typeof import("@reduxjs/toolkit/query").coreModuleName | typeof import("@reduxjs/toolkit/dist/query/react").reactHooksModuleName>;
5
6
  export declare const useGetAuditLogsQuery: <R extends Record<string, any> = import("@reduxjs/toolkit/query").TSHelpersId<(Omit<{
6
7
  status: import("@reduxjs/toolkit/query").QueryStatus.uninitialized;
@@ -265,4 +266,267 @@ export declare const useGetAuditLogsQuery: <R extends Record<string, any> = impo
265
266
  reset: () => void;
266
267
  }, {
267
268
  lastArg: GetAuditLogsArgs;
269
+ }], useGetPlatformAuditLogsQuery: <R extends Record<string, any> = import("@reduxjs/toolkit/query").TSHelpersId<(Omit<{
270
+ status: import("@reduxjs/toolkit/query").QueryStatus.uninitialized;
271
+ originalArgs?: undefined | undefined;
272
+ data?: undefined | undefined;
273
+ error?: undefined | undefined;
274
+ requestId?: undefined | undefined;
275
+ endpointName?: string | undefined;
276
+ startedTimeStamp?: undefined | undefined;
277
+ fulfilledTimeStamp?: undefined | undefined;
278
+ } & {
279
+ currentData?: PlatformAuditLogsResponse | undefined;
280
+ isUninitialized: false;
281
+ isLoading: false;
282
+ isFetching: false;
283
+ isSuccess: false;
284
+ isError: false;
285
+ }, "isUninitialized"> & {
286
+ isUninitialized: true;
287
+ }) | import("@reduxjs/toolkit/query").TSHelpersOverride<import("@reduxjs/toolkit/query").QuerySubState<import("@reduxjs/toolkit/query").QueryDefinition<GetPlatformAuditLogsArgs, import("@reduxjs/toolkit/query").BaseQueryFn<import("@data-layer/features/utils").CustomQueryArgs, unknown, import("@data-layer/features/utils").ExtendedFetchBaseQueryError, Record<string, unknown>, import("@reduxjs/toolkit/query").FetchBaseQueryMeta>, string, PlatformAuditLogsResponse, "auditLogsApiSlice", unknown>> & {
288
+ currentData?: PlatformAuditLogsResponse | undefined;
289
+ isUninitialized: false;
290
+ isLoading: false;
291
+ isFetching: false;
292
+ isSuccess: false;
293
+ isError: false;
294
+ }, {
295
+ isLoading: true;
296
+ isFetching: boolean;
297
+ data: undefined;
298
+ } | ({
299
+ isSuccess: true;
300
+ isFetching: true;
301
+ error: undefined;
302
+ } & Required<Pick<import("@reduxjs/toolkit/query").QuerySubState<import("@reduxjs/toolkit/query").QueryDefinition<GetPlatformAuditLogsArgs, import("@reduxjs/toolkit/query").BaseQueryFn<import("@data-layer/features/utils").CustomQueryArgs, unknown, import("@data-layer/features/utils").ExtendedFetchBaseQueryError, Record<string, unknown>, import("@reduxjs/toolkit/query").FetchBaseQueryMeta>, string, PlatformAuditLogsResponse, "auditLogsApiSlice", unknown>> & {
303
+ currentData?: PlatformAuditLogsResponse | undefined;
304
+ isUninitialized: false;
305
+ isLoading: false;
306
+ isFetching: false;
307
+ isSuccess: false;
308
+ isError: false;
309
+ }, "data" | "fulfilledTimeStamp">>) | ({
310
+ isSuccess: true;
311
+ isFetching: false;
312
+ error: undefined;
313
+ } & Required<Pick<import("@reduxjs/toolkit/query").QuerySubState<import("@reduxjs/toolkit/query").QueryDefinition<GetPlatformAuditLogsArgs, import("@reduxjs/toolkit/query").BaseQueryFn<import("@data-layer/features/utils").CustomQueryArgs, unknown, import("@data-layer/features/utils").ExtendedFetchBaseQueryError, Record<string, unknown>, import("@reduxjs/toolkit/query").FetchBaseQueryMeta>, string, PlatformAuditLogsResponse, "auditLogsApiSlice", unknown>> & {
314
+ currentData?: PlatformAuditLogsResponse | undefined;
315
+ isUninitialized: false;
316
+ isLoading: false;
317
+ isFetching: false;
318
+ isSuccess: false;
319
+ isError: false;
320
+ }, "data" | "fulfilledTimeStamp" | "currentData">>) | ({
321
+ isError: true;
322
+ } & Required<Pick<import("@reduxjs/toolkit/query").QuerySubState<import("@reduxjs/toolkit/query").QueryDefinition<GetPlatformAuditLogsArgs, import("@reduxjs/toolkit/query").BaseQueryFn<import("@data-layer/features/utils").CustomQueryArgs, unknown, import("@data-layer/features/utils").ExtendedFetchBaseQueryError, Record<string, unknown>, import("@reduxjs/toolkit/query").FetchBaseQueryMeta>, string, PlatformAuditLogsResponse, "auditLogsApiSlice", unknown>> & {
323
+ currentData?: PlatformAuditLogsResponse | undefined;
324
+ isUninitialized: false;
325
+ isLoading: false;
326
+ isFetching: false;
327
+ isSuccess: false;
328
+ isError: false;
329
+ }, "error">>)>> & {
330
+ status: import("@reduxjs/toolkit/query").QueryStatus;
331
+ }>(arg: GetPlatformAuditLogsArgs | typeof import("@reduxjs/toolkit/query").skipToken, options?: (import("@reduxjs/toolkit/query").SubscriptionOptions & {
332
+ skip?: boolean;
333
+ refetchOnMountOrArgChange?: boolean | number;
334
+ } & {
335
+ skip?: boolean;
336
+ selectFromResult?: ((state: import("@reduxjs/toolkit/query").TSHelpersId<(Omit<{
337
+ status: import("@reduxjs/toolkit/query").QueryStatus.uninitialized;
338
+ originalArgs?: undefined | undefined;
339
+ data?: undefined | undefined;
340
+ error?: undefined | undefined;
341
+ requestId?: undefined | undefined;
342
+ endpointName?: string | undefined;
343
+ startedTimeStamp?: undefined | undefined;
344
+ fulfilledTimeStamp?: undefined | undefined;
345
+ } & {
346
+ currentData?: PlatformAuditLogsResponse | undefined;
347
+ isUninitialized: false;
348
+ isLoading: false;
349
+ isFetching: false;
350
+ isSuccess: false;
351
+ isError: false;
352
+ }, "isUninitialized"> & {
353
+ isUninitialized: true;
354
+ }) | import("@reduxjs/toolkit/query").TSHelpersOverride<import("@reduxjs/toolkit/query").QuerySubState<import("@reduxjs/toolkit/query").QueryDefinition<GetPlatformAuditLogsArgs, import("@reduxjs/toolkit/query").BaseQueryFn<import("@data-layer/features/utils").CustomQueryArgs, unknown, import("@data-layer/features/utils").ExtendedFetchBaseQueryError, Record<string, unknown>, import("@reduxjs/toolkit/query").FetchBaseQueryMeta>, string, PlatformAuditLogsResponse, "auditLogsApiSlice", unknown>> & {
355
+ currentData?: PlatformAuditLogsResponse | undefined;
356
+ isUninitialized: false;
357
+ isLoading: false;
358
+ isFetching: false;
359
+ isSuccess: false;
360
+ isError: false;
361
+ }, {
362
+ isLoading: true;
363
+ isFetching: boolean;
364
+ data: undefined;
365
+ } | ({
366
+ isSuccess: true;
367
+ isFetching: true;
368
+ error: undefined;
369
+ } & Required<Pick<import("@reduxjs/toolkit/query").QuerySubState<import("@reduxjs/toolkit/query").QueryDefinition<GetPlatformAuditLogsArgs, import("@reduxjs/toolkit/query").BaseQueryFn<import("@data-layer/features/utils").CustomQueryArgs, unknown, import("@data-layer/features/utils").ExtendedFetchBaseQueryError, Record<string, unknown>, import("@reduxjs/toolkit/query").FetchBaseQueryMeta>, string, PlatformAuditLogsResponse, "auditLogsApiSlice", unknown>> & {
370
+ currentData?: PlatformAuditLogsResponse | undefined;
371
+ isUninitialized: false;
372
+ isLoading: false;
373
+ isFetching: false;
374
+ isSuccess: false;
375
+ isError: false;
376
+ }, "data" | "fulfilledTimeStamp">>) | ({
377
+ isSuccess: true;
378
+ isFetching: false;
379
+ error: undefined;
380
+ } & Required<Pick<import("@reduxjs/toolkit/query").QuerySubState<import("@reduxjs/toolkit/query").QueryDefinition<GetPlatformAuditLogsArgs, import("@reduxjs/toolkit/query").BaseQueryFn<import("@data-layer/features/utils").CustomQueryArgs, unknown, import("@data-layer/features/utils").ExtendedFetchBaseQueryError, Record<string, unknown>, import("@reduxjs/toolkit/query").FetchBaseQueryMeta>, string, PlatformAuditLogsResponse, "auditLogsApiSlice", unknown>> & {
381
+ currentData?: PlatformAuditLogsResponse | undefined;
382
+ isUninitialized: false;
383
+ isLoading: false;
384
+ isFetching: false;
385
+ isSuccess: false;
386
+ isError: false;
387
+ }, "data" | "fulfilledTimeStamp" | "currentData">>) | ({
388
+ isError: true;
389
+ } & Required<Pick<import("@reduxjs/toolkit/query").QuerySubState<import("@reduxjs/toolkit/query").QueryDefinition<GetPlatformAuditLogsArgs, import("@reduxjs/toolkit/query").BaseQueryFn<import("@data-layer/features/utils").CustomQueryArgs, unknown, import("@data-layer/features/utils").ExtendedFetchBaseQueryError, Record<string, unknown>, import("@reduxjs/toolkit/query").FetchBaseQueryMeta>, string, PlatformAuditLogsResponse, "auditLogsApiSlice", unknown>> & {
390
+ currentData?: PlatformAuditLogsResponse | undefined;
391
+ isUninitialized: false;
392
+ isLoading: false;
393
+ isFetching: false;
394
+ isSuccess: false;
395
+ isError: false;
396
+ }, "error">>)>> & {
397
+ status: import("@reduxjs/toolkit/query").QueryStatus;
398
+ }) => R) | undefined;
399
+ }) | undefined) => [R][R extends any ? 0 : never] & {
400
+ refetch: () => import("@reduxjs/toolkit/query").QueryActionCreatorResult<import("@reduxjs/toolkit/query").QueryDefinition<GetPlatformAuditLogsArgs, import("@reduxjs/toolkit/query").BaseQueryFn<import("@data-layer/features/utils").CustomQueryArgs, unknown, import("@data-layer/features/utils").ExtendedFetchBaseQueryError, Record<string, unknown>, import("@reduxjs/toolkit/query").FetchBaseQueryMeta>, string, PlatformAuditLogsResponse, "auditLogsApiSlice", unknown>>;
401
+ }, useLazyGetPlatformAuditLogsQuery: <R extends Record<string, any> = import("@reduxjs/toolkit/query").TSHelpersId<(Omit<{
402
+ status: import("@reduxjs/toolkit/query").QueryStatus.uninitialized;
403
+ originalArgs?: undefined | undefined;
404
+ data?: undefined | undefined;
405
+ error?: undefined | undefined;
406
+ requestId?: undefined | undefined;
407
+ endpointName?: string | undefined;
408
+ startedTimeStamp?: undefined | undefined;
409
+ fulfilledTimeStamp?: undefined | undefined;
410
+ } & {
411
+ currentData?: PlatformAuditLogsResponse | undefined;
412
+ isUninitialized: false;
413
+ isLoading: false;
414
+ isFetching: false;
415
+ isSuccess: false;
416
+ isError: false;
417
+ }, "isUninitialized"> & {
418
+ isUninitialized: true;
419
+ }) | import("@reduxjs/toolkit/query").TSHelpersOverride<import("@reduxjs/toolkit/query").QuerySubState<import("@reduxjs/toolkit/query").QueryDefinition<GetPlatformAuditLogsArgs, import("@reduxjs/toolkit/query").BaseQueryFn<import("@data-layer/features/utils").CustomQueryArgs, unknown, import("@data-layer/features/utils").ExtendedFetchBaseQueryError, Record<string, unknown>, import("@reduxjs/toolkit/query").FetchBaseQueryMeta>, string, PlatformAuditLogsResponse, "auditLogsApiSlice", unknown>> & {
420
+ currentData?: PlatformAuditLogsResponse | undefined;
421
+ isUninitialized: false;
422
+ isLoading: false;
423
+ isFetching: false;
424
+ isSuccess: false;
425
+ isError: false;
426
+ }, {
427
+ isLoading: true;
428
+ isFetching: boolean;
429
+ data: undefined;
430
+ } | ({
431
+ isSuccess: true;
432
+ isFetching: true;
433
+ error: undefined;
434
+ } & Required<Pick<import("@reduxjs/toolkit/query").QuerySubState<import("@reduxjs/toolkit/query").QueryDefinition<GetPlatformAuditLogsArgs, import("@reduxjs/toolkit/query").BaseQueryFn<import("@data-layer/features/utils").CustomQueryArgs, unknown, import("@data-layer/features/utils").ExtendedFetchBaseQueryError, Record<string, unknown>, import("@reduxjs/toolkit/query").FetchBaseQueryMeta>, string, PlatformAuditLogsResponse, "auditLogsApiSlice", unknown>> & {
435
+ currentData?: PlatformAuditLogsResponse | undefined;
436
+ isUninitialized: false;
437
+ isLoading: false;
438
+ isFetching: false;
439
+ isSuccess: false;
440
+ isError: false;
441
+ }, "data" | "fulfilledTimeStamp">>) | ({
442
+ isSuccess: true;
443
+ isFetching: false;
444
+ error: undefined;
445
+ } & Required<Pick<import("@reduxjs/toolkit/query").QuerySubState<import("@reduxjs/toolkit/query").QueryDefinition<GetPlatformAuditLogsArgs, import("@reduxjs/toolkit/query").BaseQueryFn<import("@data-layer/features/utils").CustomQueryArgs, unknown, import("@data-layer/features/utils").ExtendedFetchBaseQueryError, Record<string, unknown>, import("@reduxjs/toolkit/query").FetchBaseQueryMeta>, string, PlatformAuditLogsResponse, "auditLogsApiSlice", unknown>> & {
446
+ currentData?: PlatformAuditLogsResponse | undefined;
447
+ isUninitialized: false;
448
+ isLoading: false;
449
+ isFetching: false;
450
+ isSuccess: false;
451
+ isError: false;
452
+ }, "data" | "fulfilledTimeStamp" | "currentData">>) | ({
453
+ isError: true;
454
+ } & Required<Pick<import("@reduxjs/toolkit/query").QuerySubState<import("@reduxjs/toolkit/query").QueryDefinition<GetPlatformAuditLogsArgs, import("@reduxjs/toolkit/query").BaseQueryFn<import("@data-layer/features/utils").CustomQueryArgs, unknown, import("@data-layer/features/utils").ExtendedFetchBaseQueryError, Record<string, unknown>, import("@reduxjs/toolkit/query").FetchBaseQueryMeta>, string, PlatformAuditLogsResponse, "auditLogsApiSlice", unknown>> & {
455
+ currentData?: PlatformAuditLogsResponse | undefined;
456
+ isUninitialized: false;
457
+ isLoading: false;
458
+ isFetching: false;
459
+ isSuccess: false;
460
+ isError: false;
461
+ }, "error">>)>> & {
462
+ status: import("@reduxjs/toolkit/query").QueryStatus;
463
+ }>(options?: (import("@reduxjs/toolkit/query").SubscriptionOptions & Omit<{
464
+ skip?: boolean;
465
+ selectFromResult?: ((state: import("@reduxjs/toolkit/query").TSHelpersId<(Omit<{
466
+ status: import("@reduxjs/toolkit/query").QueryStatus.uninitialized;
467
+ originalArgs?: undefined | undefined;
468
+ data?: undefined | undefined;
469
+ error?: undefined | undefined;
470
+ requestId?: undefined | undefined;
471
+ endpointName?: string | undefined;
472
+ startedTimeStamp?: undefined | undefined;
473
+ fulfilledTimeStamp?: undefined | undefined;
474
+ } & {
475
+ currentData?: PlatformAuditLogsResponse | undefined;
476
+ isUninitialized: false;
477
+ isLoading: false;
478
+ isFetching: false;
479
+ isSuccess: false;
480
+ isError: false;
481
+ }, "isUninitialized"> & {
482
+ isUninitialized: true;
483
+ }) | import("@reduxjs/toolkit/query").TSHelpersOverride<import("@reduxjs/toolkit/query").QuerySubState<import("@reduxjs/toolkit/query").QueryDefinition<GetPlatformAuditLogsArgs, import("@reduxjs/toolkit/query").BaseQueryFn<import("@data-layer/features/utils").CustomQueryArgs, unknown, import("@data-layer/features/utils").ExtendedFetchBaseQueryError, Record<string, unknown>, import("@reduxjs/toolkit/query").FetchBaseQueryMeta>, string, PlatformAuditLogsResponse, "auditLogsApiSlice", unknown>> & {
484
+ currentData?: PlatformAuditLogsResponse | undefined;
485
+ isUninitialized: false;
486
+ isLoading: false;
487
+ isFetching: false;
488
+ isSuccess: false;
489
+ isError: false;
490
+ }, {
491
+ isLoading: true;
492
+ isFetching: boolean;
493
+ data: undefined;
494
+ } | ({
495
+ isSuccess: true;
496
+ isFetching: true;
497
+ error: undefined;
498
+ } & Required<Pick<import("@reduxjs/toolkit/query").QuerySubState<import("@reduxjs/toolkit/query").QueryDefinition<GetPlatformAuditLogsArgs, import("@reduxjs/toolkit/query").BaseQueryFn<import("@data-layer/features/utils").CustomQueryArgs, unknown, import("@data-layer/features/utils").ExtendedFetchBaseQueryError, Record<string, unknown>, import("@reduxjs/toolkit/query").FetchBaseQueryMeta>, string, PlatformAuditLogsResponse, "auditLogsApiSlice", unknown>> & {
499
+ currentData?: PlatformAuditLogsResponse | undefined;
500
+ isUninitialized: false;
501
+ isLoading: false;
502
+ isFetching: false;
503
+ isSuccess: false;
504
+ isError: false;
505
+ }, "data" | "fulfilledTimeStamp">>) | ({
506
+ isSuccess: true;
507
+ isFetching: false;
508
+ error: undefined;
509
+ } & Required<Pick<import("@reduxjs/toolkit/query").QuerySubState<import("@reduxjs/toolkit/query").QueryDefinition<GetPlatformAuditLogsArgs, import("@reduxjs/toolkit/query").BaseQueryFn<import("@data-layer/features/utils").CustomQueryArgs, unknown, import("@data-layer/features/utils").ExtendedFetchBaseQueryError, Record<string, unknown>, import("@reduxjs/toolkit/query").FetchBaseQueryMeta>, string, PlatformAuditLogsResponse, "auditLogsApiSlice", unknown>> & {
510
+ currentData?: PlatformAuditLogsResponse | undefined;
511
+ isUninitialized: false;
512
+ isLoading: false;
513
+ isFetching: false;
514
+ isSuccess: false;
515
+ isError: false;
516
+ }, "data" | "fulfilledTimeStamp" | "currentData">>) | ({
517
+ isError: true;
518
+ } & Required<Pick<import("@reduxjs/toolkit/query").QuerySubState<import("@reduxjs/toolkit/query").QueryDefinition<GetPlatformAuditLogsArgs, import("@reduxjs/toolkit/query").BaseQueryFn<import("@data-layer/features/utils").CustomQueryArgs, unknown, import("@data-layer/features/utils").ExtendedFetchBaseQueryError, Record<string, unknown>, import("@reduxjs/toolkit/query").FetchBaseQueryMeta>, string, PlatformAuditLogsResponse, "auditLogsApiSlice", unknown>> & {
519
+ currentData?: PlatformAuditLogsResponse | undefined;
520
+ isUninitialized: false;
521
+ isLoading: false;
522
+ isFetching: false;
523
+ isSuccess: false;
524
+ isError: false;
525
+ }, "error">>)>> & {
526
+ status: import("@reduxjs/toolkit/query").QueryStatus;
527
+ }) => R) | undefined;
528
+ }, "skip">) | undefined) => [(arg: GetPlatformAuditLogsArgs, preferCacheValue?: boolean) => import("@reduxjs/toolkit/query").QueryActionCreatorResult<import("@reduxjs/toolkit/query").QueryDefinition<GetPlatformAuditLogsArgs, import("@reduxjs/toolkit/query").BaseQueryFn<import("@data-layer/features/utils").CustomQueryArgs, unknown, import("@data-layer/features/utils").ExtendedFetchBaseQueryError, Record<string, unknown>, import("@reduxjs/toolkit/query").FetchBaseQueryMeta>, string, PlatformAuditLogsResponse, "auditLogsApiSlice", unknown>>, [R][R extends any ? 0 : never] & {
529
+ reset: () => void;
530
+ }, {
531
+ lastArg: GetPlatformAuditLogsArgs;
268
532
  }];
@@ -2,10 +2,15 @@ import { SERVICES } from '@data-layer/constants';
2
2
  export declare const AUDIT_LOGS_REDUCER_PATH = "auditLogsApiSlice";
3
3
  export declare const AUDIT_LOGS_QUERY_KEYS: {
4
4
  GET_AUDIT_LOGS: () => string[];
5
+ GET_PLATFORM_AUDIT_LOGS: () => string[];
5
6
  };
6
7
  export declare const AUDIT_LOGS_ENDPOINTS: {
7
8
  GET_AUDIT_LOGS: {
8
9
  service: SERVICES;
9
10
  path: (org: string, userId: string) => string;
10
11
  };
12
+ GET_PLATFORM_AUDIT_LOGS: {
13
+ service: SERVICES;
14
+ path: (platformKey: string) => string;
15
+ };
11
16
  };
@@ -30,3 +30,66 @@ export type GetAuditLogsArgs = {
30
30
  userId: string;
31
31
  params?: AuditLogsParams;
32
32
  };
33
+ /** Manual event categories the backend records. `null` means a CRUD entry. */
34
+ export declare const PLATFORM_AUDIT_EVENT_TYPES: readonly ["login", "logout", "login_failed", "password_change", "export", "download_file", "api_call", "view_student_record", "change_grade", "admin_action"];
35
+ export type PlatformAuditEventType = (typeof PLATFORM_AUDIT_EVENT_TYPES)[number];
36
+ /** The `action` values the endpoint returns. Filtering uses the codes below. */
37
+ export type PlatformAuditAction = 'create' | 'update' | 'delete' | 'access';
38
+ /** Integer codes the `action` query param accepts. */
39
+ export declare const PLATFORM_AUDIT_ACTION_CODES: {
40
+ readonly create: 0;
41
+ readonly update: 1;
42
+ readonly delete: 2;
43
+ readonly access: 3;
44
+ };
45
+ export type PlatformAuditActionCode = (typeof PLATFORM_AUDIT_ACTION_CODES)[keyof typeof PLATFORM_AUDIT_ACTION_CODES];
46
+ export interface PlatformAuditLogEntry {
47
+ id: number;
48
+ timestamp: string;
49
+ /** Manual event category; `null` for model (CRUD) changes. */
50
+ event_type: PlatformAuditEventType | string | null;
51
+ action: PlatformAuditAction | string;
52
+ actor_username: string | null;
53
+ actor_email: string | null;
54
+ /** Model of the affected resource; CRUD entries only. */
55
+ resource_type: string | null;
56
+ resource_id: string | null;
57
+ resource_repr: string | null;
58
+ /**
59
+ * Field-level diff for CRUD entries. Free-form JSON — the common shape is
60
+ * `{ field: [old, new] }` but consumers must not rely on it.
61
+ */
62
+ changes: Record<string, unknown> | null;
63
+ /** Manual-event payload. Free-form JSON of arbitrary depth. */
64
+ metadata: Record<string, unknown> | null;
65
+ remote_addr: string | null;
66
+ }
67
+ export type PlatformAuditLogsResponse = {
68
+ count: number;
69
+ next: string | null;
70
+ previous: string | null;
71
+ results: PlatformAuditLogEntry[];
72
+ };
73
+ /** Backend caps `limit` at 1000 and defaults to 100 when it is omitted. */
74
+ export declare const PLATFORM_AUDIT_LOGS_MAX_LIMIT = 1000;
75
+ export type PlatformAuditLogsParams = {
76
+ event_type?: string;
77
+ action?: PlatformAuditActionCode;
78
+ actor_username?: string;
79
+ actor_email?: string;
80
+ /** Inclusive whole-day lower bound, `YYYY-MM-DD`. */
81
+ from_date?: string;
82
+ /** Inclusive whole-day upper bound, `YYYY-MM-DD`. */
83
+ to_date?: string;
84
+ limit?: number;
85
+ offset?: number;
86
+ };
87
+ export type GetPlatformAuditLogsArgs = {
88
+ /**
89
+ * Tenant isolation happens exclusively through this path segment — it is
90
+ * never forwarded as a query param, so callers cannot widen their scope by
91
+ * smuggling a `platform_key` into `params`.
92
+ */
93
+ platformKey: string;
94
+ params?: PlatformAuditLogsParams;
95
+ };