@brivioio/api-server-types 7.28.0 → 7.30.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.
- package/dist/candidateConversations.types.d.ts +116 -0
- package/dist/candidateConversations.types.d.ts.map +1 -1
- package/dist/candidateConversations.types.js +12 -0
- package/dist/candidateEmailMessages.types.d.ts +36 -0
- package/dist/candidateEmailMessages.types.d.ts.map +1 -1
- package/dist/shortlists.types.d.ts +66 -0
- package/dist/shortlists.types.d.ts.map +1 -1
- package/dist/shortlists.types.js +17 -0
- package/package.json +1 -1
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import type { TCandidateEmailMessageView } from './candidateEmailMessages.types';
|
|
2
|
+
import type { IResponse } from './utils.types';
|
|
1
3
|
/**
|
|
2
4
|
* Lifecycle of a single candidate↔company email thread. The communication agent
|
|
3
5
|
* advances this as the conversation progresses; the scheduler reads it to decide
|
|
@@ -30,6 +32,25 @@ export declare enum ECandidateInterest {
|
|
|
30
32
|
ON_THE_FENCE = "on_the_fence",
|
|
31
33
|
NOT_INTERESTED = "not_interested"
|
|
32
34
|
}
|
|
35
|
+
/**
|
|
36
|
+
* How an org user is involved in a candidate's email thread.
|
|
37
|
+
* - WATCHER: tracking the thread + notified of candidate replies; the agent still
|
|
38
|
+
* handles replies/reminders.
|
|
39
|
+
* - OWNER: the user has "taken over" — the agent is paused for this conversation
|
|
40
|
+
* and the human owns the replies (sent from the dashboard).
|
|
41
|
+
*/
|
|
42
|
+
export declare enum EConversationParticipantMode {
|
|
43
|
+
WATCHER = "watcher",
|
|
44
|
+
OWNER = "owner"
|
|
45
|
+
}
|
|
46
|
+
/** An org user who has joined a candidate's thread (to watch or to take over). */
|
|
47
|
+
export interface IConversationParticipant {
|
|
48
|
+
userId: string;
|
|
49
|
+
/** Denormalized for display (org users have no name field). */
|
|
50
|
+
userEmail: string;
|
|
51
|
+
mode: EConversationParticipantMode;
|
|
52
|
+
joinedAt: string;
|
|
53
|
+
}
|
|
33
54
|
/**
|
|
34
55
|
* Structured details the reply agent gathers from an interested candidate over
|
|
35
56
|
* the thread. Role-facing answers (CTC, notice, location, switch intent) live
|
|
@@ -108,6 +129,17 @@ export interface ICandidateConversation {
|
|
|
108
129
|
nextActionAt: Date | null;
|
|
109
130
|
/** Message-ID header of the last email on the thread, for In-Reply-To threading. */
|
|
110
131
|
lastMessageIdHeader: string;
|
|
132
|
+
/**
|
|
133
|
+
* Org users who have joined this thread (watchers + at most the owner who took
|
|
134
|
+
* over). Drives reply-notifications and the agent-pause behaviour.
|
|
135
|
+
*/
|
|
136
|
+
participants: IConversationParticipant[];
|
|
137
|
+
/**
|
|
138
|
+
* True when a recruiter has "taken over" — the agent stops sending on this
|
|
139
|
+
* conversation (replies + reminders) until released. Kept in sync with whether
|
|
140
|
+
* any participant is in OWNER mode.
|
|
141
|
+
*/
|
|
142
|
+
agentPaused: boolean;
|
|
111
143
|
/** Details collected from the candidate over the thread (interested path). */
|
|
112
144
|
collectedInfo: ICollectedInfo;
|
|
113
145
|
/**
|
|
@@ -116,6 +148,8 @@ export interface ICandidateConversation {
|
|
|
116
148
|
* them and write a match decision onto the shortlist.
|
|
117
149
|
*/
|
|
118
150
|
readyForEvaluation: boolean;
|
|
151
|
+
/** When the profile-evaluation agent last scored this candidate; null until run. */
|
|
152
|
+
evaluatedAt: Date | null;
|
|
119
153
|
closedAt: Date | null;
|
|
120
154
|
closedReason: string;
|
|
121
155
|
internalTags: {
|
|
@@ -126,4 +160,86 @@ export interface ICandidateConversation {
|
|
|
126
160
|
createdAt: string;
|
|
127
161
|
updatedAt: string;
|
|
128
162
|
}
|
|
163
|
+
/**
|
|
164
|
+
* Read-only details the team sees about what we've collected from a candidate
|
|
165
|
+
* over the thread (dashboard conversation view).
|
|
166
|
+
*/
|
|
167
|
+
export type TConversationCollectedInfo = {
|
|
168
|
+
currentLocation: string;
|
|
169
|
+
currentCtc: string;
|
|
170
|
+
expectedCtc: string;
|
|
171
|
+
noticePeriod: string;
|
|
172
|
+
openToSwitch: boolean | null;
|
|
173
|
+
openToRelocation: boolean | null;
|
|
174
|
+
phone: string;
|
|
175
|
+
cvReceived: boolean;
|
|
176
|
+
notes: string;
|
|
177
|
+
};
|
|
178
|
+
export type TConversationParticipant = {
|
|
179
|
+
userId: string;
|
|
180
|
+
userEmail: string;
|
|
181
|
+
mode: EConversationParticipantMode;
|
|
182
|
+
joinedAt: string;
|
|
183
|
+
};
|
|
184
|
+
/**
|
|
185
|
+
* One candidate↔company conversation as the dashboard shows it: the thread header
|
|
186
|
+
* (status, interest, counters), participants, plus its messages. Messages are
|
|
187
|
+
* `TCandidateEmailMessageView` (defined in candidateEmailMessages.types).
|
|
188
|
+
*/
|
|
189
|
+
export type TConversationThread = {
|
|
190
|
+
id: string;
|
|
191
|
+
jobRoleId: string;
|
|
192
|
+
candidateKey: string;
|
|
193
|
+
status: ECandidateConversationStatus;
|
|
194
|
+
interest: ECandidateInterest;
|
|
195
|
+
subject: string;
|
|
196
|
+
emailsSentCount: number;
|
|
197
|
+
reminderStage: number;
|
|
198
|
+
pocLoopedIn: boolean;
|
|
199
|
+
/** POC emails configured for the role, surfaced for context in the thread view. */
|
|
200
|
+
pocEmails: string[];
|
|
201
|
+
participants: TConversationParticipant[];
|
|
202
|
+
agentPaused: boolean;
|
|
203
|
+
lastOutboundAt: string | null;
|
|
204
|
+
lastInboundAt: string | null;
|
|
205
|
+
collectedInfo: TConversationCollectedInfo;
|
|
206
|
+
readyForEvaluation: boolean;
|
|
207
|
+
evaluatedAt: string | null;
|
|
208
|
+
createdAt: string;
|
|
209
|
+
/** The full email thread, oldest first. */
|
|
210
|
+
messages: TCandidateEmailMessageView[];
|
|
211
|
+
};
|
|
212
|
+
/** Actions a recruiter can take on their participation in a thread. */
|
|
213
|
+
export type TConversationParticipantAction = 'watch' | 'take_over' | 'release' | 'leave';
|
|
214
|
+
export declare namespace CandidateConversationsAPITypes {
|
|
215
|
+
/**
|
|
216
|
+
* GET a single candidate's conversation thread for a role (read-only, for the
|
|
217
|
+
* dashboard). `null` when no conversation exists for that candidate yet.
|
|
218
|
+
*/
|
|
219
|
+
type TGetConversationResponse = IResponse<{
|
|
220
|
+
conversation: TConversationThread | null;
|
|
221
|
+
} | null>;
|
|
222
|
+
/** POST a recruiter reply on a candidate's thread (sent from the team address). */
|
|
223
|
+
type TReplyRequestBody = {
|
|
224
|
+
candidateKey: string;
|
|
225
|
+
body: string;
|
|
226
|
+
subject?: string;
|
|
227
|
+
};
|
|
228
|
+
type TReplyResponse = IResponse<{
|
|
229
|
+
message: TCandidateEmailMessageView;
|
|
230
|
+
} | null>;
|
|
231
|
+
/** POST a participation change (watch / take over / release / leave). */
|
|
232
|
+
type TParticipantActionRequestBody = {
|
|
233
|
+
candidateKey: string;
|
|
234
|
+
action: TConversationParticipantAction;
|
|
235
|
+
};
|
|
236
|
+
type TParticipantActionResponse = IResponse<{
|
|
237
|
+
participants: TConversationParticipant[];
|
|
238
|
+
agentPaused: boolean;
|
|
239
|
+
} | null>;
|
|
240
|
+
/** GET a short-lived presigned download URL for one thread attachment. */
|
|
241
|
+
type TAttachmentUrlResponse = IResponse<{
|
|
242
|
+
url: string;
|
|
243
|
+
} | null>;
|
|
244
|
+
}
|
|
129
245
|
//# sourceMappingURL=candidateConversations.types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"candidateConversations.types.d.ts","sourceRoot":"","sources":["../src/candidateConversations.types.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"candidateConversations.types.d.ts","sourceRoot":"","sources":["../src/candidateConversations.types.ts"],"names":[],"mappings":"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"}
|
|
@@ -32,3 +32,15 @@ export var ECandidateInterest;
|
|
|
32
32
|
ECandidateInterest["ON_THE_FENCE"] = "on_the_fence";
|
|
33
33
|
ECandidateInterest["NOT_INTERESTED"] = "not_interested";
|
|
34
34
|
})(ECandidateInterest || (ECandidateInterest = {}));
|
|
35
|
+
/**
|
|
36
|
+
* How an org user is involved in a candidate's email thread.
|
|
37
|
+
* - WATCHER: tracking the thread + notified of candidate replies; the agent still
|
|
38
|
+
* handles replies/reminders.
|
|
39
|
+
* - OWNER: the user has "taken over" — the agent is paused for this conversation
|
|
40
|
+
* and the human owns the replies (sent from the dashboard).
|
|
41
|
+
*/
|
|
42
|
+
export var EConversationParticipantMode;
|
|
43
|
+
(function (EConversationParticipantMode) {
|
|
44
|
+
EConversationParticipantMode["WATCHER"] = "watcher";
|
|
45
|
+
EConversationParticipantMode["OWNER"] = "owner";
|
|
46
|
+
})(EConversationParticipantMode || (EConversationParticipantMode = {}));
|
|
@@ -46,6 +46,34 @@ export interface IEmailAttachment {
|
|
|
46
46
|
/** S3 object key where the attachment bytes are stored. */
|
|
47
47
|
storageKey: string;
|
|
48
48
|
}
|
|
49
|
+
/** An attachment as the dashboard shows it (no storage internals beyond the key). */
|
|
50
|
+
export type TEmailAttachmentView = {
|
|
51
|
+
filename: string;
|
|
52
|
+
mimeType: string;
|
|
53
|
+
sizeBytes: number;
|
|
54
|
+
storageKey: string;
|
|
55
|
+
};
|
|
56
|
+
/**
|
|
57
|
+
* One email on a conversation, as the dashboard renders it (read-only). Plain
|
|
58
|
+
* fields only — no threading internals.
|
|
59
|
+
*/
|
|
60
|
+
export type TCandidateEmailMessageView = {
|
|
61
|
+
id: string;
|
|
62
|
+
direction: EEmailDirection;
|
|
63
|
+
purpose: EEmailPurpose;
|
|
64
|
+
subject: string;
|
|
65
|
+
body: string;
|
|
66
|
+
fromAddress: string;
|
|
67
|
+
toAddresses: string[];
|
|
68
|
+
ccAddresses: string[];
|
|
69
|
+
attachments: TEmailAttachmentView[];
|
|
70
|
+
deliveryStatus: EEmailDeliveryStatus;
|
|
71
|
+
/** Email of the recruiter who sent this from the dashboard; empty for agent/inbound. */
|
|
72
|
+
sentByUserEmail: string;
|
|
73
|
+
sentAt: string | null;
|
|
74
|
+
receivedAt: string | null;
|
|
75
|
+
createdAt: string;
|
|
76
|
+
};
|
|
49
77
|
/**
|
|
50
78
|
* One email on a candidate conversation — sent by us or received from the
|
|
51
79
|
* candidate / POC. This is the durable audit trail: every email's purpose, body,
|
|
@@ -79,6 +107,14 @@ export interface ICandidateEmailMessage {
|
|
|
79
107
|
references: string[];
|
|
80
108
|
attachments: IEmailAttachment[];
|
|
81
109
|
deliveryStatus: EEmailDeliveryStatus;
|
|
110
|
+
/**
|
|
111
|
+
* The org user who sent this email from the dashboard (a recruiter reply). Null
|
|
112
|
+
* for agent-sent and inbound messages. The candidate never sees this — the
|
|
113
|
+
* From is always the team address; this is internal attribution only.
|
|
114
|
+
*/
|
|
115
|
+
sentByUserId: string | null;
|
|
116
|
+
/** Denormalized email of {@link sentByUserId} for display; empty otherwise. */
|
|
117
|
+
sentByUserEmail: string;
|
|
82
118
|
/** For reminders: which step of the cadence (1..N). Null for non-reminders. */
|
|
83
119
|
reminderStage: number | null;
|
|
84
120
|
/** Short note on why this email was sent / how the agent decided to send it. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"candidateEmailMessages.types.d.ts","sourceRoot":"","sources":["../src/candidateEmailMessages.types.ts"],"names":[],"mappings":"AACA,oBAAY,eAAe;IACzB,QAAQ,aAAa;IACrB,OAAO,YAAY;CACpB;AAED;;;GAGG;AACH,oBAAY,aAAa;IACvB,sDAAsD;IACtD,cAAc,mBAAmB;IACjC,qDAAqD;IACrD,QAAQ,aAAa;IACrB,qEAAqE;IACrE,YAAY,iBAAiB;IAC7B,kFAAkF;IAClF,YAAY,iBAAiB;IAC7B,+EAA+E;IAC/E,WAAW,gBAAgB;IAC3B,2EAA2E;IAC3E,mBAAmB,wBAAwB;IAC3C,6CAA6C;IAC7C,iBAAiB,sBAAsB;IACvC,kEAAkE;IAClE,WAAW,gBAAgB;IAC3B,kCAAkC;IAClC,KAAK,UAAU;CAChB;AAED;;;GAGG;AACH,oBAAY,oBAAoB;IAC9B,MAAM,WAAW;IACjB,IAAI,SAAS;IACb,SAAS,cAAc;IACvB,OAAO,YAAY;IACnB,UAAU,eAAe;IACzB,MAAM,WAAW;IACjB,QAAQ,aAAa;CACtB;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,2DAA2D;IAC3D,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;;;;GAKG;AACH,MAAM,WAAW,sBAAsB;IACrC,GAAG,EAAE,MAAM,CAAC;IACZ,qDAAqD;IACrD,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,sFAAsF;IACtF,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,eAAe,CAAC;IAC3B,OAAO,EAAE,aAAa,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,0FAA0F;IAC1F,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,0FAA0F;IAC1F,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,yCAAyC;IACzC,eAAe,EAAE,MAAM,CAAC;IACxB,+EAA+E;IAC/E,SAAS,EAAE,MAAM,CAAC;IAClB,wDAAwD;IACxD,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,WAAW,EAAE,gBAAgB,EAAE,CAAC;IAChC,cAAc,EAAE,oBAAoB,CAAC;IACrC,+EAA+E;IAC/E,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,gFAAgF;IAChF,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,IAAI,GAAG,IAAI,CAAC;IACpB,UAAU,EAAE,IAAI,GAAG,IAAI,CAAC;IACxB,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB"}
|
|
1
|
+
{"version":3,"file":"candidateEmailMessages.types.d.ts","sourceRoot":"","sources":["../src/candidateEmailMessages.types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { ECandidateConversationStatus, ECandidateInterest } from './candidateConversations.types';
|
|
1
2
|
import type { IResponse } from './utils.types';
|
|
2
3
|
export declare enum EShortlistSource {
|
|
3
4
|
/** Surfaced and selected by the sourcing search + scoring. */
|
|
@@ -54,6 +55,62 @@ export type TShortlistFeedback = {
|
|
|
54
55
|
submittedAt: string | null;
|
|
55
56
|
updatedAt: string;
|
|
56
57
|
};
|
|
58
|
+
/**
|
|
59
|
+
* How well a candidate matches the role after the full end-to-end evaluation
|
|
60
|
+
* (profile + collected info + CV, weighed against the role's latest requirements,
|
|
61
|
+
* calibration, and team feedback). This is the team-facing verdict on the
|
|
62
|
+
* shortlist, distinct from the sourcing-time `fitScore`.
|
|
63
|
+
*/
|
|
64
|
+
export declare enum EShortlistMatchLevel {
|
|
65
|
+
/** Spot on — meets the bar across the board. */
|
|
66
|
+
EXACT = "exact",
|
|
67
|
+
/** Partial / "sort of" — a real fit with some gaps. */
|
|
68
|
+
SORTA = "sorta",
|
|
69
|
+
/** Low match — notable gaps against the requirements. */
|
|
70
|
+
LOW = "low",
|
|
71
|
+
/** Not a match. */
|
|
72
|
+
NONE = "none"
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* The profile-evaluation agent's verdict on a candidate, written onto the
|
|
76
|
+
* shortlist entry once the candidate is interested and their details are
|
|
77
|
+
* collected. Visible to the team in the dashboard.
|
|
78
|
+
*/
|
|
79
|
+
export interface IShortlistEvaluation {
|
|
80
|
+
matchLevel: EShortlistMatchLevel;
|
|
81
|
+
/** 0-100 overall rating from the evaluation (separate from sourcing `fitScore`). */
|
|
82
|
+
rating: number;
|
|
83
|
+
/** Short, team-facing summary of the verdict. */
|
|
84
|
+
summary: string;
|
|
85
|
+
/** A few concrete strengths against the role. */
|
|
86
|
+
strengths: string[];
|
|
87
|
+
/** A few concrete gaps / risks against the role. */
|
|
88
|
+
concerns: string[];
|
|
89
|
+
/** The requirement version this evaluation was made against. */
|
|
90
|
+
requirementVersion: number;
|
|
91
|
+
decidedAt: string;
|
|
92
|
+
}
|
|
93
|
+
export type TShortlistEvaluation = {
|
|
94
|
+
matchLevel: EShortlistMatchLevel;
|
|
95
|
+
rating: number;
|
|
96
|
+
summary: string;
|
|
97
|
+
strengths: string[];
|
|
98
|
+
concerns: string[];
|
|
99
|
+
requirementVersion: number;
|
|
100
|
+
decidedAt: string;
|
|
101
|
+
};
|
|
102
|
+
/**
|
|
103
|
+
* The candidate's outreach/conversation state, surfaced onto the shortlist entry
|
|
104
|
+
* so the team sees where each candidate stands in the email flow at a glance.
|
|
105
|
+
* Null when no conversation has been provisioned for the candidate yet.
|
|
106
|
+
*/
|
|
107
|
+
export type TShortlistOutreachStatus = {
|
|
108
|
+
status: ECandidateConversationStatus;
|
|
109
|
+
interest: ECandidateInterest;
|
|
110
|
+
emailsSentCount: number;
|
|
111
|
+
lastOutboundAt: string | null;
|
|
112
|
+
lastInboundAt: string | null;
|
|
113
|
+
};
|
|
57
114
|
/**
|
|
58
115
|
* Per-axis fit breakdown (each 0-100). Drives the composite `fitScore` and gives
|
|
59
116
|
* the recruiter an explainable "why this rank".
|
|
@@ -101,6 +158,11 @@ export interface IShortlist {
|
|
|
101
158
|
source: EShortlistSource;
|
|
102
159
|
/** Per-teammate verdict + note on this candidate; empty until anyone reviews. */
|
|
103
160
|
feedback: IShortlistFeedback[];
|
|
161
|
+
/**
|
|
162
|
+
* The profile-evaluation agent's verdict, written once the candidate is
|
|
163
|
+
* interested and their info is collected. Null until evaluated.
|
|
164
|
+
*/
|
|
165
|
+
evaluation: IShortlistEvaluation | null;
|
|
104
166
|
internalTags: {
|
|
105
167
|
key: string;
|
|
106
168
|
value: string;
|
|
@@ -128,6 +190,10 @@ export type TShortlistEntry = {
|
|
|
128
190
|
reasoning: string;
|
|
129
191
|
source: EShortlistSource;
|
|
130
192
|
feedback: TShortlistFeedback[];
|
|
193
|
+
/** End-to-end match verdict from the evaluation agent; null until evaluated. */
|
|
194
|
+
evaluation: TShortlistEvaluation | null;
|
|
195
|
+
/** Where the candidate stands in the email outreach flow; null if not provisioned. */
|
|
196
|
+
outreach: TShortlistOutreachStatus | null;
|
|
131
197
|
createdAt: string;
|
|
132
198
|
};
|
|
133
199
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shortlists.types.d.ts","sourceRoot":"","sources":["../src/shortlists.types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"shortlists.types.d.ts","sourceRoot":"","sources":["../src/shortlists.types.ts"],"names":[],"mappings":"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"}
|
package/dist/shortlists.types.js
CHANGED
|
@@ -29,3 +29,20 @@ export var EShortlistFeedbackStatus;
|
|
|
29
29
|
EShortlistFeedbackStatus["DRAFT"] = "draft";
|
|
30
30
|
EShortlistFeedbackStatus["SUBMITTED"] = "submitted";
|
|
31
31
|
})(EShortlistFeedbackStatus || (EShortlistFeedbackStatus = {}));
|
|
32
|
+
/**
|
|
33
|
+
* How well a candidate matches the role after the full end-to-end evaluation
|
|
34
|
+
* (profile + collected info + CV, weighed against the role's latest requirements,
|
|
35
|
+
* calibration, and team feedback). This is the team-facing verdict on the
|
|
36
|
+
* shortlist, distinct from the sourcing-time `fitScore`.
|
|
37
|
+
*/
|
|
38
|
+
export var EShortlistMatchLevel;
|
|
39
|
+
(function (EShortlistMatchLevel) {
|
|
40
|
+
/** Spot on — meets the bar across the board. */
|
|
41
|
+
EShortlistMatchLevel["EXACT"] = "exact";
|
|
42
|
+
/** Partial / "sort of" — a real fit with some gaps. */
|
|
43
|
+
EShortlistMatchLevel["SORTA"] = "sorta";
|
|
44
|
+
/** Low match — notable gaps against the requirements. */
|
|
45
|
+
EShortlistMatchLevel["LOW"] = "low";
|
|
46
|
+
/** Not a match. */
|
|
47
|
+
EShortlistMatchLevel["NONE"] = "none";
|
|
48
|
+
})(EShortlistMatchLevel || (EShortlistMatchLevel = {}));
|