@easyedu/js-lsm-api 1.130.0 → 1.131.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 (80) hide show
  1. package/.openapi-generator/FILES +22 -0
  2. package/README.md +16 -2
  3. package/dist/apis/ReportingApi.d.ts +52 -0
  4. package/dist/apis/ReportingApi.js +131 -0
  5. package/dist/esm/apis/ReportingApi.d.ts +52 -0
  6. package/dist/esm/apis/ReportingApi.js +131 -0
  7. package/dist/esm/models/GetReportCatalog.d.ts +40 -0
  8. package/dist/esm/models/GetReportCatalog.js +49 -0
  9. package/dist/esm/models/GetReportQueryResult.d.ts +84 -0
  10. package/dist/esm/models/GetReportQueryResult.js +77 -0
  11. package/dist/esm/models/PostReportExport.d.ts +54 -0
  12. package/dist/esm/models/PostReportExport.js +56 -0
  13. package/dist/esm/models/PostReportQuery.d.ts +52 -0
  14. package/dist/esm/models/PostReportQuery.js +49 -0
  15. package/dist/esm/models/ReportCategory.d.ts +50 -0
  16. package/dist/esm/models/ReportCategory.js +58 -0
  17. package/dist/esm/models/ReportColumn.d.ts +59 -0
  18. package/dist/esm/models/ReportColumn.js +64 -0
  19. package/dist/esm/models/ReportDefinition.d.ts +89 -0
  20. package/dist/esm/models/ReportDefinition.js +85 -0
  21. package/dist/esm/models/ReportFilterDefinition.d.ts +94 -0
  22. package/dist/esm/models/ReportFilterDefinition.js +91 -0
  23. package/dist/esm/models/ReportFilterOption.d.ts +38 -0
  24. package/dist/esm/models/ReportFilterOption.js +47 -0
  25. package/dist/esm/models/ReportFilters.d.ts +105 -0
  26. package/dist/esm/models/ReportFilters.js +65 -0
  27. package/dist/esm/models/ReportSort.d.ts +46 -0
  28. package/dist/esm/models/ReportSort.js +54 -0
  29. package/dist/esm/models/index.d.ts +11 -0
  30. package/dist/esm/models/index.js +11 -0
  31. package/dist/models/GetReportCatalog.d.ts +40 -0
  32. package/dist/models/GetReportCatalog.js +56 -0
  33. package/dist/models/GetReportQueryResult.d.ts +84 -0
  34. package/dist/models/GetReportQueryResult.js +84 -0
  35. package/dist/models/PostReportExport.d.ts +54 -0
  36. package/dist/models/PostReportExport.js +64 -0
  37. package/dist/models/PostReportQuery.d.ts +52 -0
  38. package/dist/models/PostReportQuery.js +56 -0
  39. package/dist/models/ReportCategory.d.ts +50 -0
  40. package/dist/models/ReportCategory.js +66 -0
  41. package/dist/models/ReportColumn.d.ts +59 -0
  42. package/dist/models/ReportColumn.js +72 -0
  43. package/dist/models/ReportDefinition.d.ts +89 -0
  44. package/dist/models/ReportDefinition.js +93 -0
  45. package/dist/models/ReportFilterDefinition.d.ts +94 -0
  46. package/dist/models/ReportFilterDefinition.js +99 -0
  47. package/dist/models/ReportFilterOption.d.ts +38 -0
  48. package/dist/models/ReportFilterOption.js +54 -0
  49. package/dist/models/ReportFilters.d.ts +105 -0
  50. package/dist/models/ReportFilters.js +72 -0
  51. package/dist/models/ReportSort.d.ts +46 -0
  52. package/dist/models/ReportSort.js +62 -0
  53. package/dist/models/index.d.ts +11 -0
  54. package/dist/models/index.js +11 -0
  55. package/docs/GetReportCatalog.md +37 -0
  56. package/docs/GetReportQueryResult.md +50 -0
  57. package/docs/PostReportExport.md +38 -0
  58. package/docs/PostReportQuery.md +40 -0
  59. package/docs/ReportCategory.md +36 -0
  60. package/docs/ReportColumn.md +39 -0
  61. package/docs/ReportDefinition.md +48 -0
  62. package/docs/ReportFilterDefinition.md +45 -0
  63. package/docs/ReportFilterOption.md +36 -0
  64. package/docs/ReportFilters.md +59 -0
  65. package/docs/ReportSort.md +36 -0
  66. package/docs/ReportingApi.md +207 -0
  67. package/package.json +1 -1
  68. package/src/apis/ReportingApi.ts +181 -0
  69. package/src/models/GetReportCatalog.ts +90 -0
  70. package/src/models/GetReportQueryResult.ts +153 -0
  71. package/src/models/PostReportExport.ts +108 -0
  72. package/src/models/PostReportQuery.ts +104 -0
  73. package/src/models/ReportCategory.ts +90 -0
  74. package/src/models/ReportColumn.ts +102 -0
  75. package/src/models/ReportDefinition.ts +166 -0
  76. package/src/models/ReportFilterDefinition.ts +154 -0
  77. package/src/models/ReportFilterOption.ts +75 -0
  78. package/src/models/ReportFilters.ts +162 -0
  79. package/src/models/ReportSort.ts +86 -0
  80. package/src/models/index.ts +11 -0
@@ -0,0 +1,84 @@
1
+ /**
2
+ * LMS API
3
+ * LMS API
4
+ *
5
+ * The version of the OpenAPI document: 1.0.0
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ import type { ReportColumn } from './ReportColumn';
13
+ import type { ReportSort } from './ReportSort';
14
+ /**
15
+ *
16
+ * @export
17
+ * @interface GetReportQueryResult
18
+ */
19
+ export interface GetReportQueryResult {
20
+ /**
21
+ *
22
+ * @type {string}
23
+ * @memberof GetReportQueryResult
24
+ */
25
+ reportKey: string;
26
+ /**
27
+ *
28
+ * @type {Array<ReportColumn>}
29
+ * @memberof GetReportQueryResult
30
+ */
31
+ columns: Array<ReportColumn>;
32
+ /**
33
+ * One object per row, keyed by column key.
34
+ * @type {Array<{ [key: string]: any; }>}
35
+ * @memberof GetReportQueryResult
36
+ */
37
+ rows: Array<{
38
+ [key: string]: any;
39
+ }>;
40
+ /**
41
+ *
42
+ * @type {ReportSort}
43
+ * @memberof GetReportQueryResult
44
+ */
45
+ sort: ReportSort;
46
+ /**
47
+ *
48
+ * @type {number}
49
+ * @memberof GetReportQueryResult
50
+ */
51
+ page: number;
52
+ /**
53
+ *
54
+ * @type {number}
55
+ * @memberof GetReportQueryResult
56
+ */
57
+ pageSize: number;
58
+ /**
59
+ *
60
+ * @type {number}
61
+ * @memberof GetReportQueryResult
62
+ */
63
+ totalItems: number;
64
+ /**
65
+ *
66
+ * @type {number}
67
+ * @memberof GetReportQueryResult
68
+ */
69
+ totalPages: number;
70
+ /**
71
+ * Unix timestamp in seconds.
72
+ * @type {number}
73
+ * @memberof GetReportQueryResult
74
+ */
75
+ generatedAt: number;
76
+ }
77
+ /**
78
+ * Check if a given object implements the GetReportQueryResult interface.
79
+ */
80
+ export declare function instanceOfGetReportQueryResult(value: object): value is GetReportQueryResult;
81
+ export declare function GetReportQueryResultFromJSON(json: any): GetReportQueryResult;
82
+ export declare function GetReportQueryResultFromJSONTyped(json: any, ignoreDiscriminator: boolean): GetReportQueryResult;
83
+ export declare function GetReportQueryResultToJSON(json: any): GetReportQueryResult;
84
+ export declare function GetReportQueryResultToJSONTyped(value?: GetReportQueryResult | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,77 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * LMS API
5
+ * LMS API
6
+ *
7
+ * The version of the OpenAPI document: 1.0.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+ import { ReportColumnFromJSON, ReportColumnToJSON, } from './ReportColumn';
15
+ import { ReportSortFromJSON, ReportSortToJSON, } from './ReportSort';
16
+ /**
17
+ * Check if a given object implements the GetReportQueryResult interface.
18
+ */
19
+ export function instanceOfGetReportQueryResult(value) {
20
+ if (!('reportKey' in value) || value['reportKey'] === undefined)
21
+ return false;
22
+ if (!('columns' in value) || value['columns'] === undefined)
23
+ return false;
24
+ if (!('rows' in value) || value['rows'] === undefined)
25
+ return false;
26
+ if (!('sort' in value) || value['sort'] === undefined)
27
+ return false;
28
+ if (!('page' in value) || value['page'] === undefined)
29
+ return false;
30
+ if (!('pageSize' in value) || value['pageSize'] === undefined)
31
+ return false;
32
+ if (!('totalItems' in value) || value['totalItems'] === undefined)
33
+ return false;
34
+ if (!('totalPages' in value) || value['totalPages'] === undefined)
35
+ return false;
36
+ if (!('generatedAt' in value) || value['generatedAt'] === undefined)
37
+ return false;
38
+ return true;
39
+ }
40
+ export function GetReportQueryResultFromJSON(json) {
41
+ return GetReportQueryResultFromJSONTyped(json, false);
42
+ }
43
+ export function GetReportQueryResultFromJSONTyped(json, ignoreDiscriminator) {
44
+ if (json == null) {
45
+ return json;
46
+ }
47
+ return {
48
+ 'reportKey': json['report_key'],
49
+ 'columns': (json['columns'].map(ReportColumnFromJSON)),
50
+ 'rows': json['rows'],
51
+ 'sort': ReportSortFromJSON(json['sort']),
52
+ 'page': json['page'],
53
+ 'pageSize': json['page_size'],
54
+ 'totalItems': json['total_items'],
55
+ 'totalPages': json['total_pages'],
56
+ 'generatedAt': json['generated_at'],
57
+ };
58
+ }
59
+ export function GetReportQueryResultToJSON(json) {
60
+ return GetReportQueryResultToJSONTyped(json, false);
61
+ }
62
+ export function GetReportQueryResultToJSONTyped(value, ignoreDiscriminator = false) {
63
+ if (value == null) {
64
+ return value;
65
+ }
66
+ return {
67
+ 'report_key': value['reportKey'],
68
+ 'columns': (value['columns'].map(ReportColumnToJSON)),
69
+ 'rows': value['rows'],
70
+ 'sort': ReportSortToJSON(value['sort']),
71
+ 'page': value['page'],
72
+ 'page_size': value['pageSize'],
73
+ 'total_items': value['totalItems'],
74
+ 'total_pages': value['totalPages'],
75
+ 'generated_at': value['generatedAt'],
76
+ };
77
+ }
@@ -0,0 +1,54 @@
1
+ /**
2
+ * LMS API
3
+ * LMS API
4
+ *
5
+ * The version of the OpenAPI document: 1.0.0
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ import type { ReportFilters } from './ReportFilters';
13
+ import type { ReportSort } from './ReportSort';
14
+ /**
15
+ *
16
+ * @export
17
+ * @interface PostReportExport
18
+ */
19
+ export interface PostReportExport {
20
+ /**
21
+ *
22
+ * @type {ReportFilters}
23
+ * @memberof PostReportExport
24
+ */
25
+ filters?: ReportFilters;
26
+ /**
27
+ *
28
+ * @type {ReportSort}
29
+ * @memberof PostReportExport
30
+ */
31
+ sort?: ReportSort;
32
+ /**
33
+ *
34
+ * @type {PostReportExportFormatEnum}
35
+ * @memberof PostReportExport
36
+ */
37
+ format: PostReportExportFormatEnum;
38
+ }
39
+ /**
40
+ * @export
41
+ */
42
+ export declare const PostReportExportFormatEnum: {
43
+ readonly Csv: "csv";
44
+ readonly Xlsx: "xlsx";
45
+ };
46
+ export type PostReportExportFormatEnum = typeof PostReportExportFormatEnum[keyof typeof PostReportExportFormatEnum];
47
+ /**
48
+ * Check if a given object implements the PostReportExport interface.
49
+ */
50
+ export declare function instanceOfPostReportExport(value: object): value is PostReportExport;
51
+ export declare function PostReportExportFromJSON(json: any): PostReportExport;
52
+ export declare function PostReportExportFromJSONTyped(json: any, ignoreDiscriminator: boolean): PostReportExport;
53
+ export declare function PostReportExportToJSON(json: any): PostReportExport;
54
+ export declare function PostReportExportToJSONTyped(value?: PostReportExport | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,56 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * LMS API
5
+ * LMS API
6
+ *
7
+ * The version of the OpenAPI document: 1.0.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+ import { ReportFiltersFromJSON, ReportFiltersToJSON, } from './ReportFilters';
15
+ import { ReportSortFromJSON, ReportSortToJSON, } from './ReportSort';
16
+ /**
17
+ * @export
18
+ */
19
+ export const PostReportExportFormatEnum = {
20
+ Csv: 'csv',
21
+ Xlsx: 'xlsx'
22
+ };
23
+ /**
24
+ * Check if a given object implements the PostReportExport interface.
25
+ */
26
+ export function instanceOfPostReportExport(value) {
27
+ if (!('format' in value) || value['format'] === undefined)
28
+ return false;
29
+ return true;
30
+ }
31
+ export function PostReportExportFromJSON(json) {
32
+ return PostReportExportFromJSONTyped(json, false);
33
+ }
34
+ export function PostReportExportFromJSONTyped(json, ignoreDiscriminator) {
35
+ if (json == null) {
36
+ return json;
37
+ }
38
+ return {
39
+ 'filters': json['filters'] == null ? undefined : ReportFiltersFromJSON(json['filters']),
40
+ 'sort': json['sort'] == null ? undefined : ReportSortFromJSON(json['sort']),
41
+ 'format': json['format'],
42
+ };
43
+ }
44
+ export function PostReportExportToJSON(json) {
45
+ return PostReportExportToJSONTyped(json, false);
46
+ }
47
+ export function PostReportExportToJSONTyped(value, ignoreDiscriminator = false) {
48
+ if (value == null) {
49
+ return value;
50
+ }
51
+ return {
52
+ 'filters': ReportFiltersToJSON(value['filters']),
53
+ 'sort': ReportSortToJSON(value['sort']),
54
+ 'format': value['format'],
55
+ };
56
+ }
@@ -0,0 +1,52 @@
1
+ /**
2
+ * LMS API
3
+ * LMS API
4
+ *
5
+ * The version of the OpenAPI document: 1.0.0
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ import type { ReportFilters } from './ReportFilters';
13
+ import type { ReportSort } from './ReportSort';
14
+ /**
15
+ *
16
+ * @export
17
+ * @interface PostReportQuery
18
+ */
19
+ export interface PostReportQuery {
20
+ /**
21
+ *
22
+ * @type {ReportFilters}
23
+ * @memberof PostReportQuery
24
+ */
25
+ filters?: ReportFilters;
26
+ /**
27
+ *
28
+ * @type {ReportSort}
29
+ * @memberof PostReportQuery
30
+ */
31
+ sort?: ReportSort;
32
+ /**
33
+ *
34
+ * @type {number}
35
+ * @memberof PostReportQuery
36
+ */
37
+ page?: number;
38
+ /**
39
+ *
40
+ * @type {number}
41
+ * @memberof PostReportQuery
42
+ */
43
+ pageSize?: number;
44
+ }
45
+ /**
46
+ * Check if a given object implements the PostReportQuery interface.
47
+ */
48
+ export declare function instanceOfPostReportQuery(value: object): value is PostReportQuery;
49
+ export declare function PostReportQueryFromJSON(json: any): PostReportQuery;
50
+ export declare function PostReportQueryFromJSONTyped(json: any, ignoreDiscriminator: boolean): PostReportQuery;
51
+ export declare function PostReportQueryToJSON(json: any): PostReportQuery;
52
+ export declare function PostReportQueryToJSONTyped(value?: PostReportQuery | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,49 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * LMS API
5
+ * LMS API
6
+ *
7
+ * The version of the OpenAPI document: 1.0.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+ import { ReportFiltersFromJSON, ReportFiltersToJSON, } from './ReportFilters';
15
+ import { ReportSortFromJSON, ReportSortToJSON, } from './ReportSort';
16
+ /**
17
+ * Check if a given object implements the PostReportQuery interface.
18
+ */
19
+ export function instanceOfPostReportQuery(value) {
20
+ return true;
21
+ }
22
+ export function PostReportQueryFromJSON(json) {
23
+ return PostReportQueryFromJSONTyped(json, false);
24
+ }
25
+ export function PostReportQueryFromJSONTyped(json, ignoreDiscriminator) {
26
+ if (json == null) {
27
+ return json;
28
+ }
29
+ return {
30
+ 'filters': json['filters'] == null ? undefined : ReportFiltersFromJSON(json['filters']),
31
+ 'sort': json['sort'] == null ? undefined : ReportSortFromJSON(json['sort']),
32
+ 'page': json['page'] == null ? undefined : json['page'],
33
+ 'pageSize': json['page_size'] == null ? undefined : json['page_size'],
34
+ };
35
+ }
36
+ export function PostReportQueryToJSON(json) {
37
+ return PostReportQueryToJSONTyped(json, false);
38
+ }
39
+ export function PostReportQueryToJSONTyped(value, ignoreDiscriminator = false) {
40
+ if (value == null) {
41
+ return value;
42
+ }
43
+ return {
44
+ 'filters': ReportFiltersToJSON(value['filters']),
45
+ 'sort': ReportSortToJSON(value['sort']),
46
+ 'page': value['page'],
47
+ 'page_size': value['pageSize'],
48
+ };
49
+ }
@@ -0,0 +1,50 @@
1
+ /**
2
+ * LMS API
3
+ * LMS API
4
+ *
5
+ * The version of the OpenAPI document: 1.0.0
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ /**
13
+ *
14
+ * @export
15
+ * @interface ReportCategory
16
+ */
17
+ export interface ReportCategory {
18
+ /**
19
+ *
20
+ * @type {ReportCategoryKeyEnum}
21
+ * @memberof ReportCategory
22
+ */
23
+ key: ReportCategoryKeyEnum;
24
+ /**
25
+ *
26
+ * @type {string}
27
+ * @memberof ReportCategory
28
+ */
29
+ label: string;
30
+ }
31
+ /**
32
+ * @export
33
+ */
34
+ export declare const ReportCategoryKeyEnum: {
35
+ readonly Learners: "learners";
36
+ readonly Content: "content";
37
+ readonly Tags: "tags";
38
+ readonly Managers: "managers";
39
+ readonly Compliance: "compliance";
40
+ readonly Trends: "trends";
41
+ };
42
+ export type ReportCategoryKeyEnum = typeof ReportCategoryKeyEnum[keyof typeof ReportCategoryKeyEnum];
43
+ /**
44
+ * Check if a given object implements the ReportCategory interface.
45
+ */
46
+ export declare function instanceOfReportCategory(value: object): value is ReportCategory;
47
+ export declare function ReportCategoryFromJSON(json: any): ReportCategory;
48
+ export declare function ReportCategoryFromJSONTyped(json: any, ignoreDiscriminator: boolean): ReportCategory;
49
+ export declare function ReportCategoryToJSON(json: any): ReportCategory;
50
+ export declare function ReportCategoryToJSONTyped(value?: ReportCategory | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,58 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * LMS API
5
+ * LMS API
6
+ *
7
+ * The version of the OpenAPI document: 1.0.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+ /**
15
+ * @export
16
+ */
17
+ export const ReportCategoryKeyEnum = {
18
+ Learners: 'learners',
19
+ Content: 'content',
20
+ Tags: 'tags',
21
+ Managers: 'managers',
22
+ Compliance: 'compliance',
23
+ Trends: 'trends'
24
+ };
25
+ /**
26
+ * Check if a given object implements the ReportCategory interface.
27
+ */
28
+ export function instanceOfReportCategory(value) {
29
+ if (!('key' in value) || value['key'] === undefined)
30
+ return false;
31
+ if (!('label' in value) || value['label'] === undefined)
32
+ return false;
33
+ return true;
34
+ }
35
+ export function ReportCategoryFromJSON(json) {
36
+ return ReportCategoryFromJSONTyped(json, false);
37
+ }
38
+ export function ReportCategoryFromJSONTyped(json, ignoreDiscriminator) {
39
+ if (json == null) {
40
+ return json;
41
+ }
42
+ return {
43
+ 'key': json['key'],
44
+ 'label': json['label'],
45
+ };
46
+ }
47
+ export function ReportCategoryToJSON(json) {
48
+ return ReportCategoryToJSONTyped(json, false);
49
+ }
50
+ export function ReportCategoryToJSONTyped(value, ignoreDiscriminator = false) {
51
+ if (value == null) {
52
+ return value;
53
+ }
54
+ return {
55
+ 'key': value['key'],
56
+ 'label': value['label'],
57
+ };
58
+ }
@@ -0,0 +1,59 @@
1
+ /**
2
+ * LMS API
3
+ * LMS API
4
+ *
5
+ * The version of the OpenAPI document: 1.0.0
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ /**
13
+ * One column in a report result. Row objects are keyed by column key.
14
+ * @export
15
+ * @interface ReportColumn
16
+ */
17
+ export interface ReportColumn {
18
+ /**
19
+ *
20
+ * @type {string}
21
+ * @memberof ReportColumn
22
+ */
23
+ key: string;
24
+ /**
25
+ *
26
+ * @type {string}
27
+ * @memberof ReportColumn
28
+ */
29
+ label: string;
30
+ /**
31
+ * Value format. text, email and status are strings; number, percent and hours are numbers (percent is 0-100); date is an ISO 8601 calendar date; tags is an array of tag names.
32
+ *
33
+ * @type {ReportColumnTypeEnum}
34
+ * @memberof ReportColumn
35
+ */
36
+ type: ReportColumnTypeEnum;
37
+ }
38
+ /**
39
+ * @export
40
+ */
41
+ export declare const ReportColumnTypeEnum: {
42
+ readonly Text: "text";
43
+ readonly Email: "email";
44
+ readonly Status: "status";
45
+ readonly Number: "number";
46
+ readonly Percent: "percent";
47
+ readonly Hours: "hours";
48
+ readonly Date: "date";
49
+ readonly Tags: "tags";
50
+ };
51
+ export type ReportColumnTypeEnum = typeof ReportColumnTypeEnum[keyof typeof ReportColumnTypeEnum];
52
+ /**
53
+ * Check if a given object implements the ReportColumn interface.
54
+ */
55
+ export declare function instanceOfReportColumn(value: object): value is ReportColumn;
56
+ export declare function ReportColumnFromJSON(json: any): ReportColumn;
57
+ export declare function ReportColumnFromJSONTyped(json: any, ignoreDiscriminator: boolean): ReportColumn;
58
+ export declare function ReportColumnToJSON(json: any): ReportColumn;
59
+ export declare function ReportColumnToJSONTyped(value?: ReportColumn | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,64 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * LMS API
5
+ * LMS API
6
+ *
7
+ * The version of the OpenAPI document: 1.0.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+ /**
15
+ * @export
16
+ */
17
+ export const ReportColumnTypeEnum = {
18
+ Text: 'text',
19
+ Email: 'email',
20
+ Status: 'status',
21
+ Number: 'number',
22
+ Percent: 'percent',
23
+ Hours: 'hours',
24
+ Date: 'date',
25
+ Tags: 'tags'
26
+ };
27
+ /**
28
+ * Check if a given object implements the ReportColumn interface.
29
+ */
30
+ export function instanceOfReportColumn(value) {
31
+ if (!('key' in value) || value['key'] === undefined)
32
+ return false;
33
+ if (!('label' in value) || value['label'] === undefined)
34
+ return false;
35
+ if (!('type' in value) || value['type'] === undefined)
36
+ return false;
37
+ return true;
38
+ }
39
+ export function ReportColumnFromJSON(json) {
40
+ return ReportColumnFromJSONTyped(json, false);
41
+ }
42
+ export function ReportColumnFromJSONTyped(json, ignoreDiscriminator) {
43
+ if (json == null) {
44
+ return json;
45
+ }
46
+ return {
47
+ 'key': json['key'],
48
+ 'label': json['label'],
49
+ 'type': json['type'],
50
+ };
51
+ }
52
+ export function ReportColumnToJSON(json) {
53
+ return ReportColumnToJSONTyped(json, false);
54
+ }
55
+ export function ReportColumnToJSONTyped(value, ignoreDiscriminator = false) {
56
+ if (value == null) {
57
+ return value;
58
+ }
59
+ return {
60
+ 'key': value['key'],
61
+ 'label': value['label'],
62
+ 'type': value['type'],
63
+ };
64
+ }
@@ -0,0 +1,89 @@
1
+ /**
2
+ * LMS API
3
+ * LMS API
4
+ *
5
+ * The version of the OpenAPI document: 1.0.0
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ import type { ReportColumn } from './ReportColumn';
13
+ import type { ReportFilterDefinition } from './ReportFilterDefinition';
14
+ import type { ReportSort } from './ReportSort';
15
+ /**
16
+ *
17
+ * @export
18
+ * @interface ReportDefinition
19
+ */
20
+ export interface ReportDefinition {
21
+ /**
22
+ * Stable report identifier used in query and export paths.
23
+ * @type {string}
24
+ * @memberof ReportDefinition
25
+ */
26
+ key: string;
27
+ /**
28
+ *
29
+ * @type {string}
30
+ * @memberof ReportDefinition
31
+ */
32
+ title: string;
33
+ /**
34
+ *
35
+ * @type {string}
36
+ * @memberof ReportDefinition
37
+ */
38
+ description: string;
39
+ /**
40
+ *
41
+ * @type {ReportDefinitionCategoryEnum}
42
+ * @memberof ReportDefinition
43
+ */
44
+ category: ReportDefinitionCategoryEnum;
45
+ /**
46
+ * Permission required to run the report.
47
+ * @type {string}
48
+ * @memberof ReportDefinition
49
+ */
50
+ permission: string;
51
+ /**
52
+ *
53
+ * @type {Array<ReportColumn>}
54
+ * @memberof ReportDefinition
55
+ */
56
+ columns: Array<ReportColumn>;
57
+ /**
58
+ *
59
+ * @type {Array<ReportFilterDefinition>}
60
+ * @memberof ReportDefinition
61
+ */
62
+ filters: Array<ReportFilterDefinition>;
63
+ /**
64
+ *
65
+ * @type {ReportSort}
66
+ * @memberof ReportDefinition
67
+ */
68
+ defaultSort: ReportSort;
69
+ }
70
+ /**
71
+ * @export
72
+ */
73
+ export declare const ReportDefinitionCategoryEnum: {
74
+ readonly Learners: "learners";
75
+ readonly Content: "content";
76
+ readonly Tags: "tags";
77
+ readonly Managers: "managers";
78
+ readonly Compliance: "compliance";
79
+ readonly Trends: "trends";
80
+ };
81
+ export type ReportDefinitionCategoryEnum = typeof ReportDefinitionCategoryEnum[keyof typeof ReportDefinitionCategoryEnum];
82
+ /**
83
+ * Check if a given object implements the ReportDefinition interface.
84
+ */
85
+ export declare function instanceOfReportDefinition(value: object): value is ReportDefinition;
86
+ export declare function ReportDefinitionFromJSON(json: any): ReportDefinition;
87
+ export declare function ReportDefinitionFromJSONTyped(json: any, ignoreDiscriminator: boolean): ReportDefinition;
88
+ export declare function ReportDefinitionToJSON(json: any): ReportDefinition;
89
+ export declare function ReportDefinitionToJSONTyped(value?: ReportDefinition | null, ignoreDiscriminator?: boolean): any;