@d19n/youfibre-odin-sdk 2.0.335 → 2.0.337

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 (79) hide show
  1. package/README.md +31 -2
  2. package/dist/EntityRegistry.d.ts +8 -0
  3. package/dist/EntityRegistry.js +8 -0
  4. package/dist/OdinApiClient.d.ts +16 -0
  5. package/dist/OdinApiClient.js +32 -0
  6. package/dist/OdinDbClient.d.ts +16 -0
  7. package/dist/OdinDbClient.js +32 -0
  8. package/dist/accessors-v2/QaAutoFailAccessor.d.ts +112 -0
  9. package/dist/accessors-v2/QaAutoFailAccessor.js +191 -0
  10. package/dist/accessors-v2/QaRubricAccessor.d.ts +112 -0
  11. package/dist/accessors-v2/QaRubricAccessor.js +191 -0
  12. package/dist/accessors-v2/QaRubricItemAccessor.d.ts +112 -0
  13. package/dist/accessors-v2/QaRubricItemAccessor.js +191 -0
  14. package/dist/accessors-v2/QaRubricSectionAccessor.d.ts +112 -0
  15. package/dist/accessors-v2/QaRubricSectionAccessor.js +191 -0
  16. package/dist/accessors-v2/index.d.ts +4 -0
  17. package/dist/accessors-v2/index.js +10 -2
  18. package/dist/actions-v2/CreateContactSalesAppDto.d.ts +2 -25
  19. package/dist/actions-v2/CreateInstallDayBeforeWifiEducationDto.d.ts +63 -0
  20. package/dist/actions-v2/CreateInstallDayBeforeWifiEducationDto.js +59 -0
  21. package/dist/actions-v2/CreateLeadSalesAppDto.d.ts +10 -2
  22. package/dist/actions-v2/CreateTransactionalEmailDto.d.ts +8 -1
  23. package/dist/actions-v2/UpdateQaAutoFailDto.d.ts +102 -0
  24. package/dist/actions-v2/UpdateQaAutoFailDto.js +56 -0
  25. package/dist/actions-v2/UpdateQaRubricDto.d.ts +103 -0
  26. package/dist/actions-v2/UpdateQaRubricDto.js +56 -0
  27. package/dist/actions-v2/UpdateQaRubricItemDto.d.ts +157 -0
  28. package/dist/actions-v2/UpdateQaRubricItemDto.js +56 -0
  29. package/dist/actions-v2/UpdateQaRubricSectionDto.d.ts +87 -0
  30. package/dist/actions-v2/UpdateQaRubricSectionDto.js +56 -0
  31. package/dist/api-sdk-v2/QaAutoFailApi.d.ts +48 -0
  32. package/dist/api-sdk-v2/QaAutoFailApi.js +155 -0
  33. package/dist/api-sdk-v2/QaRubricApi.d.ts +50 -0
  34. package/dist/api-sdk-v2/QaRubricApi.js +161 -0
  35. package/dist/api-sdk-v2/QaRubricItemApi.d.ts +48 -0
  36. package/dist/api-sdk-v2/QaRubricItemApi.js +155 -0
  37. package/dist/api-sdk-v2/QaRubricSectionApi.d.ts +50 -0
  38. package/dist/api-sdk-v2/QaRubricSectionApi.js +161 -0
  39. package/dist/db-accessors-v2/QaAutoFailDbAccessor.d.ts +180 -0
  40. package/dist/db-accessors-v2/QaAutoFailDbAccessor.js +265 -0
  41. package/dist/db-accessors-v2/QaRubricDbAccessor.d.ts +180 -0
  42. package/dist/db-accessors-v2/QaRubricDbAccessor.js +265 -0
  43. package/dist/db-accessors-v2/QaRubricItemDbAccessor.d.ts +180 -0
  44. package/dist/db-accessors-v2/QaRubricItemDbAccessor.js +265 -0
  45. package/dist/db-accessors-v2/QaRubricSectionDbAccessor.d.ts +180 -0
  46. package/dist/db-accessors-v2/QaRubricSectionDbAccessor.js +265 -0
  47. package/dist/db-accessors-v2/index.d.ts +4 -0
  48. package/dist/db-accessors-v2/index.js +10 -2
  49. package/dist/db-sdk-v2/QaAutoFailDb.d.ts +120 -0
  50. package/dist/db-sdk-v2/QaAutoFailDb.js +204 -0
  51. package/dist/db-sdk-v2/QaRubricDb.d.ts +122 -0
  52. package/dist/db-sdk-v2/QaRubricDb.js +210 -0
  53. package/dist/db-sdk-v2/QaRubricItemDb.d.ts +120 -0
  54. package/dist/db-sdk-v2/QaRubricItemDb.js +204 -0
  55. package/dist/db-sdk-v2/QaRubricSectionDb.d.ts +122 -0
  56. package/dist/db-sdk-v2/QaRubricSectionDb.js +210 -0
  57. package/dist/entities-v2/QaAutoFail.d.ts +117 -0
  58. package/dist/entities-v2/QaAutoFail.js +76 -0
  59. package/dist/entities-v2/QaReport.d.ts +41 -1
  60. package/dist/entities-v2/QaReport.js +10 -0
  61. package/dist/entities-v2/QaRubric.d.ts +152 -0
  62. package/dist/entities-v2/QaRubric.js +114 -0
  63. package/dist/entities-v2/QaRubricItem.d.ts +199 -0
  64. package/dist/entities-v2/QaRubricItem.js +110 -0
  65. package/dist/entities-v2/QaRubricSection.d.ts +108 -0
  66. package/dist/entities-v2/QaRubricSection.js +76 -0
  67. package/dist/records-v2/EmailRecord.d.ts +29 -0
  68. package/dist/records-v2/EmailRecord.js +36 -0
  69. package/dist/records-v2/QaAutoFailRecord.d.ts +205 -0
  70. package/dist/records-v2/QaAutoFailRecord.js +275 -0
  71. package/dist/records-v2/QaRubricItemRecord.d.ts +205 -0
  72. package/dist/records-v2/QaRubricItemRecord.js +275 -0
  73. package/dist/records-v2/QaRubricRecord.d.ts +225 -0
  74. package/dist/records-v2/QaRubricRecord.js +308 -0
  75. package/dist/records-v2/QaRubricSectionRecord.d.ts +225 -0
  76. package/dist/records-v2/QaRubricSectionRecord.js +308 -0
  77. package/dist/records-v2/index.d.ts +4 -0
  78. package/dist/records-v2/index.js +13 -1
  79. package/package.json +1 -1
@@ -0,0 +1,152 @@
1
+ /**
2
+ * QaRubric Entity Definition
3
+ *
4
+ * One QA scorecard for a support channel at a point in time. A version: editing produces a new DRAFT, publishing makes it ACTIVE and archives the previous one. Its sections, items and auto-fails hang off it. One ACTIVE rubric per channel.
5
+ *
6
+ * @module SupportModule
7
+ * @entity QaRubric
8
+ * @schemaId f0d32cd1-f8f6-4269-953a-78e1643148ee
9
+ *
10
+ * AUTO-GENERATED - DO NOT EDIT DIRECTLY
11
+ * Generated from Odin schema definition
12
+ */
13
+ import { OdinRecord, OdinLink, LinkedOdinRecord } from '@d19n/odin-types/dist/core';
14
+ import { QaRubricSectionProperties } from './QaRubricSection';
15
+ import { QaAutoFailProperties } from './QaAutoFail';
16
+ /**
17
+ * Available types for QaRubric records
18
+ */
19
+ export declare enum QaRubricEntityTypes {
20
+ /** This is the default record type */
21
+ DEFAULT = "DEFAULT"
22
+ }
23
+ /**
24
+ * Valid values for QaRubric.Channel
25
+ *
26
+ * Which support channel this rubric scores. Each channel has its own rubric.
27
+ *
28
+ * @remarks Available options:
29
+ * - `CALL` - Call
30
+ * - `CHAT` - Chat
31
+ * - `EMAIL` - Email
32
+ */
33
+ export declare enum QaRubricChannel {
34
+ CALL = "CALL",
35
+ CHAT = "CHAT",
36
+ EMAIL = "EMAIL"
37
+ }
38
+ /**
39
+ * Valid values for QaRubric.Status
40
+ *
41
+ * DRAFT while being edited, ACTIVE once published (one per channel), ARCHIVED when superseded.
42
+ *
43
+ * @remarks Available options:
44
+ * - `ACTIVE` - Active
45
+ * - `ARCHIVED` - Archived
46
+ * - `DRAFT` - Draft
47
+ */
48
+ export declare enum QaRubricStatus {
49
+ ACTIVE = "ACTIVE",
50
+ ARCHIVED = "ARCHIVED",
51
+ DRAFT = "DRAFT"
52
+ }
53
+ /**
54
+ * Property keys for QaRubric
55
+ * Use these constants instead of string literals for type safety
56
+ */
57
+ export declare enum QaRubricPropertyKeys {
58
+ /** Which support channel this rubric scores. Each channel has its own rubric. */
59
+ Channel = "Channel",
60
+ /** Version number within a channel. A new draft increments it; publishing archives the previous. */
61
+ Version = "Version",
62
+ /** DRAFT while being edited, ACTIVE once published (one per channel), ARCHIVED when superseded. */
63
+ Status = "Status",
64
+ /** The pass benchmark for this rubric, as a percentage. Currently 95. */
65
+ Benchmark = "Benchmark",
66
+ /** When this version became the active rubric for its channel. */
67
+ EffectiveFrom = "EffectiveFrom"
68
+ }
69
+ /**
70
+ * Properties for QaRubric records
71
+ *
72
+ * @see SupportModule:QaRubric
73
+ */
74
+ export interface QaRubricProperties {
75
+ /** Which support channel this rubric scores. Each channel has its own rubric.
76
+ *
77
+ * @type {ENUM}
78
+ * @default
79
+ * @enum {QaRubricChannel}
80
+ */
81
+ Channel: QaRubricChannel;
82
+ /** Version number within a channel. A new draft increments it; publishing archives the previous.
83
+ *
84
+ * @type {NUMBER}
85
+ * @default
86
+ */
87
+ Version: number;
88
+ /** DRAFT while being edited, ACTIVE once published (one per channel), ARCHIVED when superseded.
89
+ *
90
+ * @type {ENUM}
91
+ * @default DRAFT
92
+ * @enum {QaRubricStatus}
93
+ */
94
+ Status: QaRubricStatus;
95
+ /** The pass benchmark for this rubric, as a percentage. Currently 95.
96
+ *
97
+ * @type {NUMBER}
98
+ * @default 95
99
+ */
100
+ Benchmark: number;
101
+ /** When this version became the active rubric for its channel.
102
+ *
103
+ * @type {DATE_TIME}
104
+ * @default
105
+ */
106
+ EffectiveFrom: string;
107
+ }
108
+ /**
109
+ * QaRubric entity from SupportModule
110
+ *
111
+ * One QA scorecard for a support channel at a point in time. A version: editing produces a new DRAFT, publishing makes it ACTIVE and archives the previous one. Its sections, items and auto-fails hang off it. One ACTIVE rubric per channel.
112
+ *
113
+ * @module SupportModule
114
+ * @entity QaRubric
115
+ * @schemaId f0d32cd1-f8f6-4269-953a-78e1643148ee
116
+ * @recordPrefix QRB
117
+ * @capabilities searchable, updateable, undeletable, triggerable
118
+ */
119
+ export declare class QaRubric extends OdinRecord<QaRubricProperties> {
120
+ entity: 'SupportModule:QaRubric';
121
+ type: QaRubricEntityTypes;
122
+ schemaId: 'f0d32cd1-f8f6-4269-953a-78e1643148ee';
123
+ properties: QaRubricProperties;
124
+ /** Linked QaRubricSection records (Rubric__Section) */
125
+ QaRubricSection: OdinLink<LinkedOdinRecord<QaRubricSectionProperties>>;
126
+ /** Linked QaAutoFail records (Rubric__AutoFail) */
127
+ QaAutoFail: OdinLink<LinkedOdinRecord<QaAutoFailProperties>>;
128
+ }
129
+ /**
130
+ * RabbitMQ routing keys for QaRubric events
131
+ */
132
+ export declare const ROUTING_KEY_QA_RUBRIC_CREATED = "SupportModule.QaRubric.SubDbRecordCreated";
133
+ export declare const ROUTING_KEY_QA_RUBRIC_UPDATED = "SupportModule.QaRubric.SubDbRecordUpdated";
134
+ export declare const ROUTING_KEY_QA_RUBRIC_DELETED = "SupportModule.QaRubric.SubDbRecordDeleted";
135
+ /**
136
+ * Type-specific routing keys for QaRubric events
137
+ * Subscribe to these for events on specific entity types only
138
+ */
139
+ /** This is the default record type created */
140
+ export declare const ROUTING_KEY_QA_RUBRIC_DEFAULT_CREATED = "SupportModule.QaRubric.DEFAULT.SubDbRecordCreated";
141
+ /** This is the default record type updated */
142
+ export declare const ROUTING_KEY_QA_RUBRIC_DEFAULT_UPDATED = "SupportModule.QaRubric.DEFAULT.SubDbRecordUpdated";
143
+ /** This is the default record type deleted */
144
+ export declare const ROUTING_KEY_QA_RUBRIC_DEFAULT_DELETED = "SupportModule.QaRubric.DEFAULT.SubDbRecordDeleted";
145
+ /** Event: Rubric__Section link created */
146
+ export declare const ROUTING_KEY_LINK_RUBRIC_SECTION_CREATED = "SupportModule.QaRubric.QaRubricSection.SubDbRecordAssociationCreated";
147
+ /** Event: Rubric__Section link deleted */
148
+ export declare const ROUTING_KEY_LINK_RUBRIC_SECTION_DELETED = "SupportModule.QaRubric.QaRubricSection.SubDbRecordAssociationDeleted";
149
+ /** Event: Rubric__AutoFail link created */
150
+ export declare const ROUTING_KEY_LINK_RUBRIC_AUTO_FAIL_CREATED = "SupportModule.QaRubric.QaAutoFail.SubDbRecordAssociationCreated";
151
+ /** Event: Rubric__AutoFail link deleted */
152
+ export declare const ROUTING_KEY_LINK_RUBRIC_AUTO_FAIL_DELETED = "SupportModule.QaRubric.QaAutoFail.SubDbRecordAssociationDeleted";
@@ -0,0 +1,114 @@
1
+ "use strict";
2
+ /**
3
+ * QaRubric Entity Definition
4
+ *
5
+ * One QA scorecard for a support channel at a point in time. A version: editing produces a new DRAFT, publishing makes it ACTIVE and archives the previous one. Its sections, items and auto-fails hang off it. One ACTIVE rubric per channel.
6
+ *
7
+ * @module SupportModule
8
+ * @entity QaRubric
9
+ * @schemaId f0d32cd1-f8f6-4269-953a-78e1643148ee
10
+ *
11
+ * AUTO-GENERATED - DO NOT EDIT DIRECTLY
12
+ * Generated from Odin schema definition
13
+ */
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.ROUTING_KEY_LINK_RUBRIC_AUTO_FAIL_DELETED = exports.ROUTING_KEY_LINK_RUBRIC_AUTO_FAIL_CREATED = exports.ROUTING_KEY_LINK_RUBRIC_SECTION_DELETED = exports.ROUTING_KEY_LINK_RUBRIC_SECTION_CREATED = exports.ROUTING_KEY_QA_RUBRIC_DEFAULT_DELETED = exports.ROUTING_KEY_QA_RUBRIC_DEFAULT_UPDATED = exports.ROUTING_KEY_QA_RUBRIC_DEFAULT_CREATED = exports.ROUTING_KEY_QA_RUBRIC_DELETED = exports.ROUTING_KEY_QA_RUBRIC_UPDATED = exports.ROUTING_KEY_QA_RUBRIC_CREATED = exports.QaRubric = exports.QaRubricPropertyKeys = exports.QaRubricStatus = exports.QaRubricChannel = exports.QaRubricEntityTypes = void 0;
16
+ const core_1 = require("@d19n/odin-types/dist/core");
17
+ /**
18
+ * Available types for QaRubric records
19
+ */
20
+ var QaRubricEntityTypes;
21
+ (function (QaRubricEntityTypes) {
22
+ /** This is the default record type */
23
+ QaRubricEntityTypes["DEFAULT"] = "DEFAULT";
24
+ })(QaRubricEntityTypes = exports.QaRubricEntityTypes || (exports.QaRubricEntityTypes = {}));
25
+ /**
26
+ * Valid values for QaRubric.Channel
27
+ *
28
+ * Which support channel this rubric scores. Each channel has its own rubric.
29
+ *
30
+ * @remarks Available options:
31
+ * - `CALL` - Call
32
+ * - `CHAT` - Chat
33
+ * - `EMAIL` - Email
34
+ */
35
+ var QaRubricChannel;
36
+ (function (QaRubricChannel) {
37
+ QaRubricChannel["CALL"] = "CALL";
38
+ QaRubricChannel["CHAT"] = "CHAT";
39
+ QaRubricChannel["EMAIL"] = "EMAIL";
40
+ })(QaRubricChannel = exports.QaRubricChannel || (exports.QaRubricChannel = {}));
41
+ /**
42
+ * Valid values for QaRubric.Status
43
+ *
44
+ * DRAFT while being edited, ACTIVE once published (one per channel), ARCHIVED when superseded.
45
+ *
46
+ * @remarks Available options:
47
+ * - `ACTIVE` - Active
48
+ * - `ARCHIVED` - Archived
49
+ * - `DRAFT` - Draft
50
+ */
51
+ var QaRubricStatus;
52
+ (function (QaRubricStatus) {
53
+ QaRubricStatus["ACTIVE"] = "ACTIVE";
54
+ QaRubricStatus["ARCHIVED"] = "ARCHIVED";
55
+ QaRubricStatus["DRAFT"] = "DRAFT";
56
+ })(QaRubricStatus = exports.QaRubricStatus || (exports.QaRubricStatus = {}));
57
+ /**
58
+ * Property keys for QaRubric
59
+ * Use these constants instead of string literals for type safety
60
+ */
61
+ var QaRubricPropertyKeys;
62
+ (function (QaRubricPropertyKeys) {
63
+ /** Which support channel this rubric scores. Each channel has its own rubric. */
64
+ QaRubricPropertyKeys["Channel"] = "Channel";
65
+ /** Version number within a channel. A new draft increments it; publishing archives the previous. */
66
+ QaRubricPropertyKeys["Version"] = "Version";
67
+ /** DRAFT while being edited, ACTIVE once published (one per channel), ARCHIVED when superseded. */
68
+ QaRubricPropertyKeys["Status"] = "Status";
69
+ /** The pass benchmark for this rubric, as a percentage. Currently 95. */
70
+ QaRubricPropertyKeys["Benchmark"] = "Benchmark";
71
+ /** When this version became the active rubric for its channel. */
72
+ QaRubricPropertyKeys["EffectiveFrom"] = "EffectiveFrom";
73
+ })(QaRubricPropertyKeys = exports.QaRubricPropertyKeys || (exports.QaRubricPropertyKeys = {}));
74
+ /**
75
+ * QaRubric entity from SupportModule
76
+ *
77
+ * One QA scorecard for a support channel at a point in time. A version: editing produces a new DRAFT, publishing makes it ACTIVE and archives the previous one. Its sections, items and auto-fails hang off it. One ACTIVE rubric per channel.
78
+ *
79
+ * @module SupportModule
80
+ * @entity QaRubric
81
+ * @schemaId f0d32cd1-f8f6-4269-953a-78e1643148ee
82
+ * @recordPrefix QRB
83
+ * @capabilities searchable, updateable, undeletable, triggerable
84
+ */
85
+ class QaRubric extends core_1.OdinRecord {
86
+ }
87
+ exports.QaRubric = QaRubric;
88
+ // ============================================
89
+ // RABBITMQ EVENT ROUTING KEYS
90
+ // ============================================
91
+ /**
92
+ * RabbitMQ routing keys for QaRubric events
93
+ */
94
+ exports.ROUTING_KEY_QA_RUBRIC_CREATED = 'SupportModule.QaRubric.SubDbRecordCreated';
95
+ exports.ROUTING_KEY_QA_RUBRIC_UPDATED = 'SupportModule.QaRubric.SubDbRecordUpdated';
96
+ exports.ROUTING_KEY_QA_RUBRIC_DELETED = 'SupportModule.QaRubric.SubDbRecordDeleted';
97
+ /**
98
+ * Type-specific routing keys for QaRubric events
99
+ * Subscribe to these for events on specific entity types only
100
+ */
101
+ /** This is the default record type created */
102
+ exports.ROUTING_KEY_QA_RUBRIC_DEFAULT_CREATED = 'SupportModule.QaRubric.DEFAULT.SubDbRecordCreated';
103
+ /** This is the default record type updated */
104
+ exports.ROUTING_KEY_QA_RUBRIC_DEFAULT_UPDATED = 'SupportModule.QaRubric.DEFAULT.SubDbRecordUpdated';
105
+ /** This is the default record type deleted */
106
+ exports.ROUTING_KEY_QA_RUBRIC_DEFAULT_DELETED = 'SupportModule.QaRubric.DEFAULT.SubDbRecordDeleted';
107
+ /** Event: Rubric__Section link created */
108
+ exports.ROUTING_KEY_LINK_RUBRIC_SECTION_CREATED = 'SupportModule.QaRubric.QaRubricSection.SubDbRecordAssociationCreated';
109
+ /** Event: Rubric__Section link deleted */
110
+ exports.ROUTING_KEY_LINK_RUBRIC_SECTION_DELETED = 'SupportModule.QaRubric.QaRubricSection.SubDbRecordAssociationDeleted';
111
+ /** Event: Rubric__AutoFail link created */
112
+ exports.ROUTING_KEY_LINK_RUBRIC_AUTO_FAIL_CREATED = 'SupportModule.QaRubric.QaAutoFail.SubDbRecordAssociationCreated';
113
+ /** Event: Rubric__AutoFail link deleted */
114
+ exports.ROUTING_KEY_LINK_RUBRIC_AUTO_FAIL_DELETED = 'SupportModule.QaRubric.QaAutoFail.SubDbRecordAssociationDeleted';
@@ -0,0 +1,199 @@
1
+ /**
2
+ * QaRubricItem Entity Definition
3
+ *
4
+ * probe
5
+ *
6
+ * @module SupportModule
7
+ * @entity QaRubricItem
8
+ * @schemaId 39cd8d89-43cd-4c2f-831d-13298aabafdc
9
+ *
10
+ * AUTO-GENERATED - DO NOT EDIT DIRECTLY
11
+ * Generated from Odin schema definition
12
+ */
13
+ import { OdinRecord, OdinLink, LinkedOdinRecord } from '@d19n/odin-types/dist/core';
14
+ import { QaRubricSectionProperties } from './QaRubricSection';
15
+ /**
16
+ * Available types for QaRubricItem records
17
+ */
18
+ export declare enum QaRubricItemEntityTypes {
19
+ /** This is the default record type */
20
+ DEFAULT = "DEFAULT"
21
+ }
22
+ /**
23
+ * Valid values for QaRubricItem.EvaluabilityClass
24
+ *
25
+ * Call-only: whether the item is fully readable from the transcript, partly needs the audio, or is audio-only. Not applicable for chat/email.
26
+ *
27
+ * @remarks Available options:
28
+ * - `AUDIO_ONLY` - Audio-only
29
+ * - `NOT_APPLICABLE` - Not applicable
30
+ * - `AUDIO_PARTIAL` - Partly audio-dependent
31
+ * - `TRANSCRIPT` - Transcript-scorable
32
+ */
33
+ export declare enum QaRubricItemEvaluabilityClass {
34
+ AUDIO_ONLY = "AUDIO_ONLY",
35
+ NOT_APPLICABLE = "NOT_APPLICABLE",
36
+ PARTLY_AUDIO_DEPENDENT = "AUDIO_PARTIAL",
37
+ TRANSCRIPT_SCORABLE = "TRANSCRIPT"
38
+ }
39
+ /**
40
+ * Property keys for QaRubricItem
41
+ * Use these constants instead of string literals for type safety
42
+ */
43
+ export declare enum QaRubricItemPropertyKeys {
44
+ /** The section this item belongs to. */
45
+ SectionId = "SectionId",
46
+ /** Stable machine key, unique within a channel (e.g. chat.standard_greeting). Analytics aggregate on this — it must not change when items are reordered or reworded. */
47
+ ItemKey = "ItemKey",
48
+ /** Display number within the rubric (1..15 or 1..17). Presentation only — never the identity. */
49
+ ItemNumber = "ItemNumber",
50
+ /** The item title, e.g. "Friendly & Professional". */
51
+ Title = "Title",
52
+ /** Item weight in points. Awarded in full on Yes and N/A; Partial awards a flat 2; No awards 0. */
53
+ Weight = "Weight",
54
+ /** The verbatim source criterion from the YouFibre evaluation scorecard. */
55
+ ScorecardCriterion = "ScorecardCriterion",
56
+ /** When to award Yes (full weight). */
57
+ GuidanceYes = "GuidanceYes",
58
+ /** When to award Partial (flat 2 points). Blank if Partial is not permitted on this item. */
59
+ GuidancePartial = "GuidancePartial",
60
+ /** When to award No (0 points). */
61
+ GuidanceNo = "GuidanceNo",
62
+ /** When the item does not apply (full weight). Blank if N/A is not permitted on this item. */
63
+ GuidanceNa = "GuidanceNa",
64
+ /** Whether a Partial verdict is permitted on this item. False = Yes/No only. */
65
+ PartialAllowed = "PartialAllowed",
66
+ /** Whether an N/A verdict is permitted on this item. */
67
+ NaAllowed = "NaAllowed",
68
+ /** Call-only: whether the item is fully readable from the transcript, partly needs the audio, or is audio-only. Not applicable for chat/email. */
69
+ EvaluabilityClass = "EvaluabilityClass",
70
+ /** How this item interacts with others (e.g. FCR item 13 and escalation item 14). Blank if none. */
71
+ CrossItemNote = "CrossItemNote"
72
+ }
73
+ /**
74
+ * Properties for QaRubricItem records
75
+ *
76
+ * @see SupportModule:QaRubricItem
77
+ */
78
+ export interface QaRubricItemProperties {
79
+ /** The section this item belongs to.
80
+ *
81
+ * @type {LOOKUP}
82
+ * @default
83
+ */
84
+ SectionId: string;
85
+ /** Stable machine key, unique within a channel (e.g. chat.standard_greeting). Analytics aggregate on this — it must not change when items are reordered or reworded.
86
+ *
87
+ * @type {TEXT}
88
+ * @default
89
+ */
90
+ ItemKey: string;
91
+ /** Display number within the rubric (1..15 or 1..17). Presentation only — never the identity.
92
+ *
93
+ * @type {NUMBER}
94
+ * @default
95
+ */
96
+ ItemNumber: number;
97
+ /** The item title, e.g. "Friendly & Professional".
98
+ *
99
+ * @type {TEXT}
100
+ * @default
101
+ */
102
+ Title: string;
103
+ /** Item weight in points. Awarded in full on Yes and N/A; Partial awards a flat 2; No awards 0.
104
+ *
105
+ * @type {NUMBER}
106
+ * @default
107
+ */
108
+ Weight: number;
109
+ /** The verbatim source criterion from the YouFibre evaluation scorecard.
110
+ *
111
+ * @type {TEXT_LONG}
112
+ * @default
113
+ */
114
+ ScorecardCriterion: string;
115
+ /** When to award Yes (full weight).
116
+ *
117
+ * @type {TEXT_LONG}
118
+ * @default
119
+ */
120
+ GuidanceYes: string;
121
+ /** When to award Partial (flat 2 points). Blank if Partial is not permitted on this item.
122
+ *
123
+ * @type {TEXT_LONG}
124
+ * @default
125
+ */
126
+ GuidancePartial: string;
127
+ /** When to award No (0 points).
128
+ *
129
+ * @type {TEXT_LONG}
130
+ * @default
131
+ */
132
+ GuidanceNo: string;
133
+ /** When the item does not apply (full weight). Blank if N/A is not permitted on this item.
134
+ *
135
+ * @type {TEXT_LONG}
136
+ * @default
137
+ */
138
+ GuidanceNa: string;
139
+ /** Whether a Partial verdict is permitted on this item. False = Yes/No only.
140
+ *
141
+ * @type {BOOLEAN}
142
+ * @default true
143
+ */
144
+ PartialAllowed: boolean;
145
+ /** Whether an N/A verdict is permitted on this item.
146
+ *
147
+ * @type {BOOLEAN}
148
+ * @default true
149
+ */
150
+ NaAllowed: boolean;
151
+ /** Call-only: whether the item is fully readable from the transcript, partly needs the audio, or is audio-only. Not applicable for chat/email.
152
+ *
153
+ * @type {ENUM}
154
+ * @default NOT_APPLICABLE
155
+ * @enum {QaRubricItemEvaluabilityClass}
156
+ */
157
+ EvaluabilityClass: QaRubricItemEvaluabilityClass;
158
+ /** How this item interacts with others (e.g. FCR item 13 and escalation item 14). Blank if none.
159
+ *
160
+ * @type {TEXT_LONG}
161
+ * @default
162
+ */
163
+ CrossItemNote: string;
164
+ }
165
+ /**
166
+ * QaRubricItem entity from SupportModule
167
+ *
168
+ * probe
169
+ *
170
+ * @module SupportModule
171
+ * @entity QaRubricItem
172
+ * @schemaId 39cd8d89-43cd-4c2f-831d-13298aabafdc
173
+ * @recordPrefix QRI
174
+ * @capabilities searchable, updateable, undeletable, triggerable
175
+ */
176
+ export declare class QaRubricItem extends OdinRecord<QaRubricItemProperties> {
177
+ entity: 'SupportModule:QaRubricItem';
178
+ type: QaRubricItemEntityTypes;
179
+ schemaId: '39cd8d89-43cd-4c2f-831d-13298aabafdc';
180
+ properties: QaRubricItemProperties;
181
+ /** Linked QaRubricSection records (Section__Item) */
182
+ QaRubricSection: OdinLink<LinkedOdinRecord<QaRubricSectionProperties>>;
183
+ }
184
+ /**
185
+ * RabbitMQ routing keys for QaRubricItem events
186
+ */
187
+ export declare const ROUTING_KEY_QA_RUBRIC_ITEM_CREATED = "SupportModule.QaRubricItem.SubDbRecordCreated";
188
+ export declare const ROUTING_KEY_QA_RUBRIC_ITEM_UPDATED = "SupportModule.QaRubricItem.SubDbRecordUpdated";
189
+ export declare const ROUTING_KEY_QA_RUBRIC_ITEM_DELETED = "SupportModule.QaRubricItem.SubDbRecordDeleted";
190
+ /**
191
+ * Type-specific routing keys for QaRubricItem events
192
+ * Subscribe to these for events on specific entity types only
193
+ */
194
+ /** This is the default record type created */
195
+ export declare const ROUTING_KEY_QA_RUBRIC_ITEM_DEFAULT_CREATED = "SupportModule.QaRubricItem.DEFAULT.SubDbRecordCreated";
196
+ /** This is the default record type updated */
197
+ export declare const ROUTING_KEY_QA_RUBRIC_ITEM_DEFAULT_UPDATED = "SupportModule.QaRubricItem.DEFAULT.SubDbRecordUpdated";
198
+ /** This is the default record type deleted */
199
+ export declare const ROUTING_KEY_QA_RUBRIC_ITEM_DEFAULT_DELETED = "SupportModule.QaRubricItem.DEFAULT.SubDbRecordDeleted";
@@ -0,0 +1,110 @@
1
+ "use strict";
2
+ /**
3
+ * QaRubricItem Entity Definition
4
+ *
5
+ * probe
6
+ *
7
+ * @module SupportModule
8
+ * @entity QaRubricItem
9
+ * @schemaId 39cd8d89-43cd-4c2f-831d-13298aabafdc
10
+ *
11
+ * AUTO-GENERATED - DO NOT EDIT DIRECTLY
12
+ * Generated from Odin schema definition
13
+ */
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.ROUTING_KEY_QA_RUBRIC_ITEM_DEFAULT_DELETED = exports.ROUTING_KEY_QA_RUBRIC_ITEM_DEFAULT_UPDATED = exports.ROUTING_KEY_QA_RUBRIC_ITEM_DEFAULT_CREATED = exports.ROUTING_KEY_QA_RUBRIC_ITEM_DELETED = exports.ROUTING_KEY_QA_RUBRIC_ITEM_UPDATED = exports.ROUTING_KEY_QA_RUBRIC_ITEM_CREATED = exports.QaRubricItem = exports.QaRubricItemPropertyKeys = exports.QaRubricItemEvaluabilityClass = exports.QaRubricItemEntityTypes = void 0;
16
+ const core_1 = require("@d19n/odin-types/dist/core");
17
+ /**
18
+ * Available types for QaRubricItem records
19
+ */
20
+ var QaRubricItemEntityTypes;
21
+ (function (QaRubricItemEntityTypes) {
22
+ /** This is the default record type */
23
+ QaRubricItemEntityTypes["DEFAULT"] = "DEFAULT";
24
+ })(QaRubricItemEntityTypes = exports.QaRubricItemEntityTypes || (exports.QaRubricItemEntityTypes = {}));
25
+ /**
26
+ * Valid values for QaRubricItem.EvaluabilityClass
27
+ *
28
+ * Call-only: whether the item is fully readable from the transcript, partly needs the audio, or is audio-only. Not applicable for chat/email.
29
+ *
30
+ * @remarks Available options:
31
+ * - `AUDIO_ONLY` - Audio-only
32
+ * - `NOT_APPLICABLE` - Not applicable
33
+ * - `AUDIO_PARTIAL` - Partly audio-dependent
34
+ * - `TRANSCRIPT` - Transcript-scorable
35
+ */
36
+ var QaRubricItemEvaluabilityClass;
37
+ (function (QaRubricItemEvaluabilityClass) {
38
+ QaRubricItemEvaluabilityClass["AUDIO_ONLY"] = "AUDIO_ONLY";
39
+ QaRubricItemEvaluabilityClass["NOT_APPLICABLE"] = "NOT_APPLICABLE";
40
+ QaRubricItemEvaluabilityClass["PARTLY_AUDIO_DEPENDENT"] = "AUDIO_PARTIAL";
41
+ QaRubricItemEvaluabilityClass["TRANSCRIPT_SCORABLE"] = "TRANSCRIPT";
42
+ })(QaRubricItemEvaluabilityClass = exports.QaRubricItemEvaluabilityClass || (exports.QaRubricItemEvaluabilityClass = {}));
43
+ /**
44
+ * Property keys for QaRubricItem
45
+ * Use these constants instead of string literals for type safety
46
+ */
47
+ var QaRubricItemPropertyKeys;
48
+ (function (QaRubricItemPropertyKeys) {
49
+ /** The section this item belongs to. */
50
+ QaRubricItemPropertyKeys["SectionId"] = "SectionId";
51
+ /** Stable machine key, unique within a channel (e.g. chat.standard_greeting). Analytics aggregate on this — it must not change when items are reordered or reworded. */
52
+ QaRubricItemPropertyKeys["ItemKey"] = "ItemKey";
53
+ /** Display number within the rubric (1..15 or 1..17). Presentation only — never the identity. */
54
+ QaRubricItemPropertyKeys["ItemNumber"] = "ItemNumber";
55
+ /** The item title, e.g. "Friendly & Professional". */
56
+ QaRubricItemPropertyKeys["Title"] = "Title";
57
+ /** Item weight in points. Awarded in full on Yes and N/A; Partial awards a flat 2; No awards 0. */
58
+ QaRubricItemPropertyKeys["Weight"] = "Weight";
59
+ /** The verbatim source criterion from the YouFibre evaluation scorecard. */
60
+ QaRubricItemPropertyKeys["ScorecardCriterion"] = "ScorecardCriterion";
61
+ /** When to award Yes (full weight). */
62
+ QaRubricItemPropertyKeys["GuidanceYes"] = "GuidanceYes";
63
+ /** When to award Partial (flat 2 points). Blank if Partial is not permitted on this item. */
64
+ QaRubricItemPropertyKeys["GuidancePartial"] = "GuidancePartial";
65
+ /** When to award No (0 points). */
66
+ QaRubricItemPropertyKeys["GuidanceNo"] = "GuidanceNo";
67
+ /** When the item does not apply (full weight). Blank if N/A is not permitted on this item. */
68
+ QaRubricItemPropertyKeys["GuidanceNa"] = "GuidanceNa";
69
+ /** Whether a Partial verdict is permitted on this item. False = Yes/No only. */
70
+ QaRubricItemPropertyKeys["PartialAllowed"] = "PartialAllowed";
71
+ /** Whether an N/A verdict is permitted on this item. */
72
+ QaRubricItemPropertyKeys["NaAllowed"] = "NaAllowed";
73
+ /** Call-only: whether the item is fully readable from the transcript, partly needs the audio, or is audio-only. Not applicable for chat/email. */
74
+ QaRubricItemPropertyKeys["EvaluabilityClass"] = "EvaluabilityClass";
75
+ /** How this item interacts with others (e.g. FCR item 13 and escalation item 14). Blank if none. */
76
+ QaRubricItemPropertyKeys["CrossItemNote"] = "CrossItemNote";
77
+ })(QaRubricItemPropertyKeys = exports.QaRubricItemPropertyKeys || (exports.QaRubricItemPropertyKeys = {}));
78
+ /**
79
+ * QaRubricItem entity from SupportModule
80
+ *
81
+ * probe
82
+ *
83
+ * @module SupportModule
84
+ * @entity QaRubricItem
85
+ * @schemaId 39cd8d89-43cd-4c2f-831d-13298aabafdc
86
+ * @recordPrefix QRI
87
+ * @capabilities searchable, updateable, undeletable, triggerable
88
+ */
89
+ class QaRubricItem extends core_1.OdinRecord {
90
+ }
91
+ exports.QaRubricItem = QaRubricItem;
92
+ // ============================================
93
+ // RABBITMQ EVENT ROUTING KEYS
94
+ // ============================================
95
+ /**
96
+ * RabbitMQ routing keys for QaRubricItem events
97
+ */
98
+ exports.ROUTING_KEY_QA_RUBRIC_ITEM_CREATED = 'SupportModule.QaRubricItem.SubDbRecordCreated';
99
+ exports.ROUTING_KEY_QA_RUBRIC_ITEM_UPDATED = 'SupportModule.QaRubricItem.SubDbRecordUpdated';
100
+ exports.ROUTING_KEY_QA_RUBRIC_ITEM_DELETED = 'SupportModule.QaRubricItem.SubDbRecordDeleted';
101
+ /**
102
+ * Type-specific routing keys for QaRubricItem events
103
+ * Subscribe to these for events on specific entity types only
104
+ */
105
+ /** This is the default record type created */
106
+ exports.ROUTING_KEY_QA_RUBRIC_ITEM_DEFAULT_CREATED = 'SupportModule.QaRubricItem.DEFAULT.SubDbRecordCreated';
107
+ /** This is the default record type updated */
108
+ exports.ROUTING_KEY_QA_RUBRIC_ITEM_DEFAULT_UPDATED = 'SupportModule.QaRubricItem.DEFAULT.SubDbRecordUpdated';
109
+ /** This is the default record type deleted */
110
+ exports.ROUTING_KEY_QA_RUBRIC_ITEM_DEFAULT_DELETED = 'SupportModule.QaRubricItem.DEFAULT.SubDbRecordDeleted';
@@ -0,0 +1,108 @@
1
+ /**
2
+ * QaRubricSection Entity Definition
3
+ *
4
+ * A weighted section within a QaRubric (e.g. Behavioural 55%). Groups the items that make it up.
5
+ *
6
+ * @module SupportModule
7
+ * @entity QaRubricSection
8
+ * @schemaId 880a4a28-6b84-4827-8367-1b368692387a
9
+ *
10
+ * AUTO-GENERATED - DO NOT EDIT DIRECTLY
11
+ * Generated from Odin schema definition
12
+ */
13
+ import { OdinRecord, OdinLink, LinkedOdinRecord } from '@d19n/odin-types/dist/core';
14
+ import { QaRubricProperties } from './QaRubric';
15
+ import { QaRubricItemProperties } from './QaRubricItem';
16
+ /**
17
+ * Available types for QaRubricSection records
18
+ */
19
+ export declare enum QaRubricSectionEntityTypes {
20
+ /** This is the default record type */
21
+ DEFAULT = "DEFAULT"
22
+ }
23
+ /**
24
+ * Property keys for QaRubricSection
25
+ * Use these constants instead of string literals for type safety
26
+ */
27
+ export declare enum QaRubricSectionPropertyKeys {
28
+ /** The rubric this section belongs to. */
29
+ RubricId = "RubricId",
30
+ /** Section name, e.g. Ticket Identity, Behavioural, Call Handling. */
31
+ Name = "Name",
32
+ /** The section total as a percentage of the 100-point score (e.g. Behavioural 55). */
33
+ Weight = "Weight",
34
+ /** Display order of the section within the rubric. */
35
+ Position = "Position"
36
+ }
37
+ /**
38
+ * Properties for QaRubricSection records
39
+ *
40
+ * @see SupportModule:QaRubricSection
41
+ */
42
+ export interface QaRubricSectionProperties {
43
+ /** The rubric this section belongs to.
44
+ *
45
+ * @type {LOOKUP}
46
+ * @default
47
+ */
48
+ RubricId: string;
49
+ /** Section name, e.g. Ticket Identity, Behavioural, Call Handling.
50
+ *
51
+ * @type {TEXT}
52
+ * @default
53
+ */
54
+ Name: string;
55
+ /** The section total as a percentage of the 100-point score (e.g. Behavioural 55).
56
+ *
57
+ * @type {NUMBER}
58
+ * @default
59
+ */
60
+ Weight: number;
61
+ /** Display order of the section within the rubric.
62
+ *
63
+ * @type {NUMBER}
64
+ * @default
65
+ */
66
+ Position: number;
67
+ }
68
+ /**
69
+ * QaRubricSection entity from SupportModule
70
+ *
71
+ * A weighted section within a QaRubric (e.g. Behavioural 55%). Groups the items that make it up.
72
+ *
73
+ * @module SupportModule
74
+ * @entity QaRubricSection
75
+ * @schemaId 880a4a28-6b84-4827-8367-1b368692387a
76
+ * @recordPrefix QRS
77
+ * @capabilities searchable, updateable, undeletable, triggerable
78
+ */
79
+ export declare class QaRubricSection extends OdinRecord<QaRubricSectionProperties> {
80
+ entity: 'SupportModule:QaRubricSection';
81
+ type: QaRubricSectionEntityTypes;
82
+ schemaId: '880a4a28-6b84-4827-8367-1b368692387a';
83
+ properties: QaRubricSectionProperties;
84
+ /** Linked QaRubric records (Rubric__Section) */
85
+ QaRubric: OdinLink<LinkedOdinRecord<QaRubricProperties>>;
86
+ /** Linked QaRubricItem records (Section__Item) */
87
+ QaRubricItem: OdinLink<LinkedOdinRecord<QaRubricItemProperties>>;
88
+ }
89
+ /**
90
+ * RabbitMQ routing keys for QaRubricSection events
91
+ */
92
+ export declare const ROUTING_KEY_QA_RUBRIC_SECTION_CREATED = "SupportModule.QaRubricSection.SubDbRecordCreated";
93
+ export declare const ROUTING_KEY_QA_RUBRIC_SECTION_UPDATED = "SupportModule.QaRubricSection.SubDbRecordUpdated";
94
+ export declare const ROUTING_KEY_QA_RUBRIC_SECTION_DELETED = "SupportModule.QaRubricSection.SubDbRecordDeleted";
95
+ /**
96
+ * Type-specific routing keys for QaRubricSection events
97
+ * Subscribe to these for events on specific entity types only
98
+ */
99
+ /** This is the default record type created */
100
+ export declare const ROUTING_KEY_QA_RUBRIC_SECTION_DEFAULT_CREATED = "SupportModule.QaRubricSection.DEFAULT.SubDbRecordCreated";
101
+ /** This is the default record type updated */
102
+ export declare const ROUTING_KEY_QA_RUBRIC_SECTION_DEFAULT_UPDATED = "SupportModule.QaRubricSection.DEFAULT.SubDbRecordUpdated";
103
+ /** This is the default record type deleted */
104
+ export declare const ROUTING_KEY_QA_RUBRIC_SECTION_DEFAULT_DELETED = "SupportModule.QaRubricSection.DEFAULT.SubDbRecordDeleted";
105
+ /** Event: Section__Item link created */
106
+ export declare const ROUTING_KEY_LINK_SECTION_ITEM_CREATED = "SupportModule.QaRubricSection.QaRubricItem.SubDbRecordAssociationCreated";
107
+ /** Event: Section__Item link deleted */
108
+ export declare const ROUTING_KEY_LINK_SECTION_ITEM_DELETED = "SupportModule.QaRubricSection.QaRubricItem.SubDbRecordAssociationDeleted";