@yangsaiyam/helper 1.12.5 → 1.12.7

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 (53) hide show
  1. package/dist/index.cjs +56 -30
  2. package/dist/index.d.cts +23 -1
  3. package/dist/index.d.ts +677 -17
  4. package/dist/index.js +729 -17
  5. package/package.json +1 -1
  6. package/src/index.d.ts +2 -0
  7. package/dist/addressess/index.d.ts +0 -137
  8. package/dist/addressess/index.js +0 -24
  9. package/dist/addressess/index.test.d.ts +0 -1
  10. package/dist/addressess/index.test.js +0 -16
  11. package/dist/assessment-question/index.d.ts +0 -19
  12. package/dist/assessment-question/index.js +0 -22
  13. package/dist/assessment-question/index.test.d.ts +0 -1
  14. package/dist/assessment-question/index.test.js +0 -27
  15. package/dist/career/index.d.ts +0 -132
  16. package/dist/career/index.js +0 -40
  17. package/dist/contact-form/index.d.ts +0 -13
  18. package/dist/contact-form/index.js +0 -13
  19. package/dist/email-history/index.d.ts +0 -17
  20. package/dist/email-history/index.js +0 -6
  21. package/dist/email-template/index.d.ts +0 -13
  22. package/dist/email-template/index.js +0 -5
  23. package/dist/files/index.d.ts +0 -18
  24. package/dist/files/index.js +0 -8
  25. package/dist/job-applications/index.d.ts +0 -33
  26. package/dist/job-applications/index.js +0 -10
  27. package/dist/locale/index.d.ts +0 -9
  28. package/dist/locale/index.js +0 -4
  29. package/dist/roles/index.d.ts +0 -61
  30. package/dist/roles/index.js +0 -170
  31. package/dist/roles/index.test.d.ts +0 -1
  32. package/dist/roles/index.test.js +0 -80
  33. package/dist/routes/index.d.ts +0 -80
  34. package/dist/routes/index.js +0 -106
  35. package/dist/routes/index.test.d.ts +0 -1
  36. package/dist/routes/index.test.js +0 -92
  37. package/dist/shared/helpers.d.ts +0 -5
  38. package/dist/shared/helpers.js +0 -15
  39. package/dist/shared/types.d.ts +0 -5
  40. package/dist/shared/types.js +0 -1
  41. package/dist/time/index.d.ts +0 -73
  42. package/dist/time/index.js +0 -161
  43. package/dist/time/index.test.d.ts +0 -1
  44. package/dist/time/index.test.js +0 -35
  45. package/dist/track/index.d.ts +0 -17
  46. package/dist/track/index.js +0 -14
  47. package/dist/track/index.test.d.ts +0 -1
  48. package/dist/track/index.test.js +0 -7
  49. package/dist/tsconfig.json +0 -6
  50. package/dist/url-prefix/index.d.ts +0 -8
  51. package/dist/url-prefix/index.js +0 -9
  52. package/dist/website/index.d.ts +0 -16
  53. package/dist/website/index.js +0 -17
package/dist/index.d.ts CHANGED
@@ -1,17 +1,677 @@
1
- export * from "./assessment-question/index.js";
2
- export * from "./career/index.js";
3
- export * from "./contact-form/index.js";
4
- export * from "./files/index.js";
5
- export * from "./locale/index.js";
6
- export * from "./roles/index.js";
7
- export * from "./routes/index.js";
8
- export * from "./shared/helpers.js";
9
- export * from "./shared/types.js";
10
- export * from "./time/index.js";
11
- export * from "./track/index.js";
12
- export * from "./url-prefix/index.js";
13
- export * from "./website/index.js";
14
- export * from "./addressess/index.js";
15
- export * from "./job-applications/index.js";
16
- export * from "./email-template/index.js";
17
- export * from "./email-history/index.js";
1
+ declare const QuestionType: {
2
+ readonly Subjective: 1;
3
+ readonly Objective: 2;
4
+ readonly MultipleChoice: 3;
5
+ };
6
+ type QuestionType = (typeof QuestionType)[keyof typeof QuestionType];
7
+ declare const ASSESSMENT_QUESTION_TYPE: readonly [{
8
+ readonly key: 1;
9
+ readonly value: "Subjective";
10
+ readonly i18nKey: "assessmentQuestion.questionType.1";
11
+ }, {
12
+ readonly key: 2;
13
+ readonly value: "Objective";
14
+ readonly i18nKey: "assessmentQuestion.questionType.2";
15
+ }, {
16
+ readonly key: 3;
17
+ readonly value: "MultipleChoice";
18
+ readonly i18nKey: "assessmentQuestion.questionType.3";
19
+ }];
20
+
21
+ declare const CAREER_JOB_TYPE: readonly [{
22
+ readonly key: 1;
23
+ readonly value: "Full-time";
24
+ readonly i18nKey: "career.jobType.1";
25
+ }, {
26
+ readonly key: 2;
27
+ readonly value: "Part-time";
28
+ readonly i18nKey: "career.jobType.2";
29
+ }, {
30
+ readonly key: 3;
31
+ readonly value: "Contract";
32
+ readonly i18nKey: "career.jobType.3";
33
+ }, {
34
+ readonly key: 4;
35
+ readonly value: "Internship";
36
+ readonly i18nKey: "career.jobType.4";
37
+ }];
38
+ declare const CAREER_CATEGORY: readonly [{
39
+ readonly key: 1;
40
+ readonly value: "Technology";
41
+ readonly i18nKey: "career.category.1";
42
+ }, {
43
+ readonly key: 2;
44
+ readonly value: "Design";
45
+ readonly i18nKey: "career.category.2";
46
+ }, {
47
+ readonly key: 3;
48
+ readonly value: "Business";
49
+ readonly i18nKey: "career.category.3";
50
+ }, {
51
+ readonly key: 4;
52
+ readonly value: "Marketing";
53
+ readonly i18nKey: "career.category.4";
54
+ }, {
55
+ readonly key: 5;
56
+ readonly value: "Operations";
57
+ readonly i18nKey: "career.category.5";
58
+ }, {
59
+ readonly key: 6;
60
+ readonly value: "Finance";
61
+ readonly i18nKey: "career.category.6";
62
+ }, {
63
+ readonly key: 7;
64
+ readonly value: "Human Resources";
65
+ readonly i18nKey: "career.category.7";
66
+ }, {
67
+ readonly key: 8;
68
+ readonly value: "Legal";
69
+ readonly i18nKey: "career.category.8";
70
+ }, {
71
+ readonly key: 9;
72
+ readonly value: "Customer Support";
73
+ readonly i18nKey: "career.category.9";
74
+ }, {
75
+ readonly key: 10;
76
+ readonly value: "Management";
77
+ readonly i18nKey: "career.category.10";
78
+ }];
79
+ declare const CAREER_MODE: readonly [{
80
+ readonly key: 1;
81
+ readonly value: "On-site";
82
+ readonly i18nKey: "career.mode.1";
83
+ }, {
84
+ readonly key: 2;
85
+ readonly value: "Remote";
86
+ readonly i18nKey: "career.mode.2";
87
+ }, {
88
+ readonly key: 3;
89
+ readonly value: "Hybrid";
90
+ readonly i18nKey: "career.mode.3";
91
+ }];
92
+ declare const CAREER_LOCATION: readonly [{
93
+ readonly key: 1;
94
+ readonly value: "KualaLumpur";
95
+ readonly i18nKey: "career.location.1";
96
+ }, {
97
+ readonly key: 2;
98
+ readonly value: "Selangor";
99
+ readonly i18nKey: "career.location.2";
100
+ }, {
101
+ readonly key: 3;
102
+ readonly value: "Johor";
103
+ readonly i18nKey: "career.location.3";
104
+ }, {
105
+ readonly key: 4;
106
+ readonly value: "Penang";
107
+ readonly i18nKey: "career.location.4";
108
+ }, {
109
+ readonly key: 5;
110
+ readonly value: "Sabah";
111
+ readonly i18nKey: "career.location.5";
112
+ }, {
113
+ readonly key: 6;
114
+ readonly value: "Sarawak";
115
+ readonly i18nKey: "career.location.6";
116
+ }, {
117
+ readonly key: 7;
118
+ readonly value: "NegeriSembilan";
119
+ readonly i18nKey: "career.location.7";
120
+ }, {
121
+ readonly key: 8;
122
+ readonly value: "Kedah";
123
+ readonly i18nKey: "career.location.8";
124
+ }, {
125
+ readonly key: 9;
126
+ readonly value: "Kelantan";
127
+ readonly i18nKey: "career.location.9";
128
+ }, {
129
+ readonly key: 10;
130
+ readonly value: "Perak";
131
+ readonly i18nKey: "career.location.10";
132
+ }, {
133
+ readonly key: 11;
134
+ readonly value: "Terengganu";
135
+ readonly i18nKey: "career.location.11";
136
+ }, {
137
+ readonly key: 12;
138
+ readonly value: "Perlis";
139
+ readonly i18nKey: "career.location.12";
140
+ }, {
141
+ readonly key: 13;
142
+ readonly value: "Melaka";
143
+ readonly i18nKey: "career.location.13";
144
+ }, {
145
+ readonly key: 14;
146
+ readonly value: "Putrajaya";
147
+ readonly i18nKey: "career.location.14";
148
+ }, {
149
+ readonly key: 15;
150
+ readonly value: "Labuan";
151
+ readonly i18nKey: "career.location.15";
152
+ }];
153
+
154
+ declare const CONTACT_FORM_ENQUIRY_TYPE: readonly [{
155
+ readonly key: 1;
156
+ readonly value: "Software Development";
157
+ readonly i18nKey: "contactForm.enquiryType.1";
158
+ }, {
159
+ readonly key: 2;
160
+ readonly value: "Advertising Platform";
161
+ readonly i18nKey: "contactForm.enquiryType.2";
162
+ }, {
163
+ readonly key: 3;
164
+ readonly value: "MCN Business";
165
+ readonly i18nKey: "contactForm.enquiryType.3";
166
+ }];
167
+
168
+ declare const FILE_STATUS: readonly [{
169
+ readonly key: 1;
170
+ readonly value: "pending";
171
+ readonly i18nKey: "files.status.1";
172
+ }, {
173
+ readonly key: 2;
174
+ readonly value: "submitted";
175
+ readonly i18nKey: "files.status.2";
176
+ }];
177
+ declare const FILE_ORIGIN: readonly [{
178
+ readonly key: 1;
179
+ readonly value: "job applications";
180
+ readonly i18nKey: "files.origin.1";
181
+ }, {
182
+ readonly key: 2;
183
+ readonly value: "submitted";
184
+ readonly i18nKey: "files.origin.2";
185
+ }];
186
+
187
+ declare const LOCALE: readonly [{
188
+ readonly key: 1;
189
+ readonly value: "en";
190
+ readonly i18nKey: "locale.en";
191
+ }, {
192
+ readonly key: 2;
193
+ readonly value: "zh";
194
+ readonly i18nKey: "locale.zh";
195
+ }];
196
+
197
+ type CanonicalRole = "super-admin" | "admin" | "staff" | "hr" | "visitor" | "none";
198
+ type RoleValue = CanonicalRole | number;
199
+ type RoleInput = RoleValue | string;
200
+ declare const ROLE_MAP: Record<number, CanonicalRole>;
201
+ declare const ROLE: readonly [{
202
+ readonly key: 0;
203
+ readonly value: "super-admin";
204
+ readonly i18nKey: "users.roleSuperAdmin";
205
+ }, {
206
+ readonly key: 1;
207
+ readonly value: "admin";
208
+ readonly i18nKey: "users.roleAdmin";
209
+ }, {
210
+ readonly key: 2;
211
+ readonly value: "staff";
212
+ readonly i18nKey: "users.roleStaff";
213
+ }, {
214
+ readonly key: 3;
215
+ readonly value: "hr";
216
+ readonly i18nKey: "users.roleHr";
217
+ }, {
218
+ readonly key: 32766;
219
+ readonly value: "visitor";
220
+ readonly i18nKey: "users.roleVisitor";
221
+ }, {
222
+ readonly key: 32767;
223
+ readonly value: "none";
224
+ readonly i18nKey: "users.roleNone";
225
+ }];
226
+ declare function normalizeRole(role: RoleInput | undefined): CanonicalRole | undefined;
227
+ declare function roleLabelKey(role: RoleInput | undefined): string;
228
+ declare function roleToId(role: RoleInput | undefined): number | undefined;
229
+ declare const Permission: {
230
+ readonly ALLOWED_EMAILS_READ: "allowed-emails:read";
231
+ readonly ALLOWED_EMAILS_WRITE: "allowed-emails:write";
232
+ readonly USERS_READ: "users:read";
233
+ readonly USERS_WRITE: "users:write";
234
+ readonly USERS_DELETE: "users:delete";
235
+ readonly CAREERS_READ: "careers:read";
236
+ readonly CAREERS_WRITE: "careers:write";
237
+ readonly CAREERS_DELETE: "careers:delete";
238
+ readonly CONTACT_FORM_READ: "contact-form:read";
239
+ readonly CONTACT_FORM_DELETE: "contact-form:delete";
240
+ readonly JOB_APPLICATIONS_READ: "job-applications:read";
241
+ readonly OTP_ATTEMPTS_READ: "otp-attempts:read";
242
+ readonly OTP_ATTEMPTS_WRITE: "otp-attempts:write";
243
+ readonly TWO_FACTOR_AUTH_READ: "two-factor-auth:read";
244
+ readonly TWO_FACTOR_AUTH_WRITE: "two-factor-auth:write";
245
+ readonly VIEWS_READ: "views:read";
246
+ readonly LOGS_READ: "logs:read";
247
+ readonly UTM_RECORDS_READ: "utm-records:read";
248
+ readonly UTM_RECORDS_WRITE: "utm-records:write";
249
+ readonly ORIGIN_READ: "origin:read";
250
+ readonly ORIGIN_WRITE: "origin:write";
251
+ readonly ORIGIN_DELETE: "origin:delete";
252
+ };
253
+ type Permission = (typeof Permission)[keyof typeof Permission];
254
+ declare const PERMISSION_I18N_KEY: Record<Permission, string>;
255
+ declare const ROLE_PERMISSIONS: Record<CanonicalRole, Permission[]>;
256
+ declare function hasPermission(role: RoleInput | undefined, permission: Permission): boolean;
257
+ declare function permissionLabelKey(permission: Permission): string;
258
+
259
+ type RouteKey = "home" | "about" | "career" | "careerDetail" | "careerApply" | "careerAssessment" | "contact" | "services" | "servicesAdvertisingPlatform" | "servicesMcnBusiness" | "servicesSoftwareDevelopment";
260
+ type RouteMapping = {
261
+ key: RouteKey;
262
+ path: string;
263
+ path_name: string;
264
+ path_key: string;
265
+ i18nKey: string;
266
+ };
267
+ declare const ROUTES: readonly [{
268
+ readonly key: "home";
269
+ readonly path: "/[locale]";
270
+ readonly path_name: "/";
271
+ readonly path_key: "/";
272
+ readonly i18nKey: "routes.home";
273
+ }, {
274
+ readonly key: "about";
275
+ readonly path: "/[locale]/about";
276
+ readonly path_name: "/about";
277
+ readonly path_key: "/about";
278
+ readonly i18nKey: "routes.about";
279
+ }, {
280
+ readonly key: "career";
281
+ readonly path: "/[locale]/career";
282
+ readonly path_name: "/career";
283
+ readonly path_key: "/career";
284
+ readonly i18nKey: "routes.career";
285
+ }, {
286
+ readonly key: "careerDetail";
287
+ readonly path: "/[locale]/career/[id]";
288
+ readonly path_name: "/career/[id]";
289
+ readonly path_key: "/career/[id]";
290
+ readonly i18nKey: "routes.careerDetail";
291
+ }, {
292
+ readonly key: "careerApply";
293
+ readonly path: "/[locale]/career/[id]/apply";
294
+ readonly path_name: "/career/[id]/apply";
295
+ readonly path_key: "/career/[id]/apply";
296
+ readonly i18nKey: "routes.careerApply";
297
+ }, {
298
+ readonly key: "careerAssessment";
299
+ readonly path: "/[locale]/career/[id]/apply/assessment";
300
+ readonly path_name: "/career/[id]/apply/assessment";
301
+ readonly path_key: "/career/[id]/apply/assessment";
302
+ readonly i18nKey: "routes.careerAssessment";
303
+ }, {
304
+ readonly key: "contact";
305
+ readonly path: "/[locale]/contact";
306
+ readonly path_name: "/contact";
307
+ readonly path_key: "/contact";
308
+ readonly i18nKey: "routes.contact";
309
+ }, {
310
+ readonly key: "services";
311
+ readonly path: "/[locale]/services";
312
+ readonly path_name: "/services";
313
+ readonly path_key: "/services";
314
+ readonly i18nKey: "routes.services";
315
+ }, {
316
+ readonly key: "servicesAdvertisingPlatform";
317
+ readonly path: "/[locale]/services/advertising-platform";
318
+ readonly path_name: "/services/advertising-platform";
319
+ readonly path_key: "/services/advertising-platform";
320
+ readonly i18nKey: "routes.servicesAdvertisingPlatform";
321
+ }, {
322
+ readonly key: "servicesMcnBusiness";
323
+ readonly path: "/[locale]/services/mcn-business";
324
+ readonly path_name: "/services/mcn-business";
325
+ readonly path_key: "/services/mcn-business";
326
+ readonly i18nKey: "routes.servicesMcnBusiness";
327
+ }, {
328
+ readonly key: "servicesSoftwareDevelopment";
329
+ readonly path: "/[locale]/services/software-development";
330
+ readonly path_name: "/services/software-development";
331
+ readonly path_key: "/services/software-development";
332
+ readonly i18nKey: "routes.servicesSoftwareDevelopment";
333
+ }];
334
+ declare const ROUTE: Record<RouteKey, string>;
335
+ declare function routeLabelKey(route: RouteKey): string;
336
+ declare function routePathKey(route: RouteKey): string;
337
+ declare function buildRoutePathName(route: RouteKey, params?: Partial<Record<"id", string | number>>): string;
338
+ declare function buildLocalizedRoute(route: RouteKey, locale: string, params?: Partial<Record<"id", string | number>>): string;
339
+
340
+ type MappingOption<K extends number = number> = {
341
+ key: K;
342
+ value: string;
343
+ i18nKey: string;
344
+ };
345
+
346
+ declare function getOptionByKey<T extends MappingOption>(options: readonly T[], key?: number | null): T | undefined;
347
+ declare function getLabelByKey<T extends MappingOption>(options: readonly T[], key?: number | null, fallback?: string): string;
348
+ declare function getI18nKeyByKey<T extends MappingOption>(options: readonly T[], key?: number | null, fallback?: string): string;
349
+ declare function toRecord<T extends MappingOption>(options: readonly T[]): Record<number, string>;
350
+
351
+ declare const TIMEZONE: readonly [{
352
+ readonly key: 1;
353
+ readonly value: "UTC";
354
+ readonly i18nKey: "time.timezone.utc";
355
+ }, {
356
+ readonly key: 2;
357
+ readonly value: "Asia/Kuala_Lumpur";
358
+ readonly i18nKey: "time.timezone.asiaKualaLumpur";
359
+ }, {
360
+ readonly key: 3;
361
+ readonly value: "Asia/Singapore";
362
+ readonly i18nKey: "time.timezone.asiaSingapore";
363
+ }, {
364
+ readonly key: 4;
365
+ readonly value: "Asia/Bangkok";
366
+ readonly i18nKey: "time.timezone.asiaBangkok";
367
+ }, {
368
+ readonly key: 5;
369
+ readonly value: "Asia/Jakarta";
370
+ readonly i18nKey: "time.timezone.asiaJakarta";
371
+ }, {
372
+ readonly key: 6;
373
+ readonly value: "Asia/Manila";
374
+ readonly i18nKey: "time.timezone.asiaManila";
375
+ }, {
376
+ readonly key: 7;
377
+ readonly value: "Asia/Hong_Kong";
378
+ readonly i18nKey: "time.timezone.asiaHongKong";
379
+ }, {
380
+ readonly key: 8;
381
+ readonly value: "Asia/Shanghai";
382
+ readonly i18nKey: "time.timezone.asiaShanghai";
383
+ }, {
384
+ readonly key: 9;
385
+ readonly value: "Asia/Tokyo";
386
+ readonly i18nKey: "time.timezone.asiaTokyo";
387
+ }, {
388
+ readonly key: 10;
389
+ readonly value: "Australia/Sydney";
390
+ readonly i18nKey: "time.timezone.australiaSydney";
391
+ }, {
392
+ readonly key: 11;
393
+ readonly value: "Europe/London";
394
+ readonly i18nKey: "time.timezone.europeLondon";
395
+ }, {
396
+ readonly key: 12;
397
+ readonly value: "Europe/Berlin";
398
+ readonly i18nKey: "time.timezone.europeBerlin";
399
+ }, {
400
+ readonly key: 13;
401
+ readonly value: "America/New_York";
402
+ readonly i18nKey: "time.timezone.americaNewYork";
403
+ }, {
404
+ readonly key: 14;
405
+ readonly value: "America/Chicago";
406
+ readonly i18nKey: "time.timezone.americaChicago";
407
+ }, {
408
+ readonly key: 15;
409
+ readonly value: "America/Denver";
410
+ readonly i18nKey: "time.timezone.americaDenver";
411
+ }, {
412
+ readonly key: 16;
413
+ readonly value: "America/Los_Angeles";
414
+ readonly i18nKey: "time.timezone.americaLosAngeles";
415
+ }];
416
+ type CanonicalTimezone = (typeof TIMEZONE)[number]["value"];
417
+ type TimezoneInput = CanonicalTimezone | string;
418
+ declare function normalizeTimezone(timezone: TimezoneInput | undefined): CanonicalTimezone | undefined;
419
+ declare function timezoneToUtc(timezone: TimezoneInput | undefined, timestamp?: number): string | undefined;
420
+ declare const TIMEZONE_CURRENT_UTC_OFFSET: Record<CanonicalTimezone, string>;
421
+ declare const TIMEZONE_TO_UTC: Record<"UTC" | "Asia/Kuala_Lumpur" | "Asia/Singapore" | "Asia/Bangkok" | "Asia/Jakarta" | "Asia/Manila" | "Asia/Hong_Kong" | "Asia/Shanghai" | "Asia/Tokyo" | "Australia/Sydney" | "Europe/London" | "Europe/Berlin" | "America/New_York" | "America/Chicago" | "America/Denver" | "America/Los_Angeles", string>;
422
+ declare function timezoneLabelKey(timezone: TimezoneInput | undefined): string;
423
+ declare function convertTimestampToTimezone(timestamp: number, sourceTimezone: TimezoneInput | undefined, targetTimezone: TimezoneInput | undefined): number | undefined;
424
+
425
+ declare const ORIGIN: readonly [{
426
+ readonly key: 0;
427
+ readonly value: "Website";
428
+ readonly i18nKey: "track.origin.0";
429
+ }, {
430
+ readonly key: 1;
431
+ readonly value: "Linkedin";
432
+ readonly i18nKey: "track.origin.1";
433
+ }, {
434
+ readonly key: 2;
435
+ readonly value: "Jobstreet";
436
+ readonly i18nKey: "track.origin.2";
437
+ }, {
438
+ readonly key: 3;
439
+ readonly value: "Maukerja";
440
+ readonly i18nKey: "track.origin.3";
441
+ }];
442
+
443
+ declare const URL_PREFIXES: {
444
+ 1: {
445
+ contact: string;
446
+ careerDetail: string;
447
+ careerApply: string;
448
+ };
449
+ 2: {};
450
+ };
451
+
452
+ declare enum Website {
453
+ KORRE = 1,
454
+ KORRE_LABS = 2
455
+ }
456
+ declare const WEBSITES: {
457
+ 1: {
458
+ id: Website;
459
+ name: string;
460
+ url: string;
461
+ };
462
+ 2: {
463
+ id: Website;
464
+ name: string;
465
+ url: string;
466
+ };
467
+ };
468
+
469
+ declare const COUNTRY_CODE: readonly [{
470
+ readonly key: 1;
471
+ readonly value: "MY";
472
+ readonly i18nKey: "country.code.1";
473
+ }];
474
+ declare const STATES: {
475
+ readonly MY: readonly [{
476
+ readonly key: 1;
477
+ readonly value: "Johor";
478
+ readonly i18nKey: "malaysia.state.1";
479
+ }, {
480
+ readonly key: 2;
481
+ readonly value: "Kedah";
482
+ readonly i18nKey: "malaysia.state.2";
483
+ }, {
484
+ readonly key: 3;
485
+ readonly value: "Kelantan";
486
+ readonly i18nKey: "malaysia.state.3";
487
+ }, {
488
+ readonly key: 4;
489
+ readonly value: "Melaka";
490
+ readonly i18nKey: "malaysia.state.4";
491
+ }, {
492
+ readonly key: 5;
493
+ readonly value: "Negeri Sembilan";
494
+ readonly i18nKey: "malaysia.state.5";
495
+ }, {
496
+ readonly key: 6;
497
+ readonly value: "Pahang";
498
+ readonly i18nKey: "malaysia.state.6";
499
+ }, {
500
+ readonly key: 7;
501
+ readonly value: "Penang";
502
+ readonly i18nKey: "malaysia.state.7";
503
+ }, {
504
+ readonly key: 8;
505
+ readonly value: "Perak";
506
+ readonly i18nKey: "malaysia.state.8";
507
+ }, {
508
+ readonly key: 9;
509
+ readonly value: "Perlis";
510
+ readonly i18nKey: "malaysia.state.9";
511
+ }, {
512
+ readonly key: 10;
513
+ readonly value: "Sabah";
514
+ readonly i18nKey: "malaysia.state.10";
515
+ }, {
516
+ readonly key: 11;
517
+ readonly value: "Sarawak";
518
+ readonly i18nKey: "malaysia.state.11";
519
+ }, {
520
+ readonly key: 12;
521
+ readonly value: "Selangor";
522
+ readonly i18nKey: "malaysia.state.12";
523
+ }, {
524
+ readonly key: 13;
525
+ readonly value: "Terengganu";
526
+ readonly i18nKey: "malaysia.state.13";
527
+ }, {
528
+ readonly key: 14;
529
+ readonly value: "Kuala Lumpur";
530
+ readonly i18nKey: "malaysia.state.14";
531
+ }, {
532
+ readonly key: 15;
533
+ readonly value: "Labuan";
534
+ readonly i18nKey: "malaysia.state.15";
535
+ }, {
536
+ readonly key: 16;
537
+ readonly value: "Putrajaya";
538
+ readonly i18nKey: "malaysia.state.16";
539
+ }];
540
+ };
541
+ declare const MALAYSIA_STATE: readonly [{
542
+ readonly key: 1;
543
+ readonly value: "Johor";
544
+ readonly i18nKey: "malaysia.state.1";
545
+ }, {
546
+ readonly key: 2;
547
+ readonly value: "Kedah";
548
+ readonly i18nKey: "malaysia.state.2";
549
+ }, {
550
+ readonly key: 3;
551
+ readonly value: "Kelantan";
552
+ readonly i18nKey: "malaysia.state.3";
553
+ }, {
554
+ readonly key: 4;
555
+ readonly value: "Melaka";
556
+ readonly i18nKey: "malaysia.state.4";
557
+ }, {
558
+ readonly key: 5;
559
+ readonly value: "Negeri Sembilan";
560
+ readonly i18nKey: "malaysia.state.5";
561
+ }, {
562
+ readonly key: 6;
563
+ readonly value: "Pahang";
564
+ readonly i18nKey: "malaysia.state.6";
565
+ }, {
566
+ readonly key: 7;
567
+ readonly value: "Penang";
568
+ readonly i18nKey: "malaysia.state.7";
569
+ }, {
570
+ readonly key: 8;
571
+ readonly value: "Perak";
572
+ readonly i18nKey: "malaysia.state.8";
573
+ }, {
574
+ readonly key: 9;
575
+ readonly value: "Perlis";
576
+ readonly i18nKey: "malaysia.state.9";
577
+ }, {
578
+ readonly key: 10;
579
+ readonly value: "Sabah";
580
+ readonly i18nKey: "malaysia.state.10";
581
+ }, {
582
+ readonly key: 11;
583
+ readonly value: "Sarawak";
584
+ readonly i18nKey: "malaysia.state.11";
585
+ }, {
586
+ readonly key: 12;
587
+ readonly value: "Selangor";
588
+ readonly i18nKey: "malaysia.state.12";
589
+ }, {
590
+ readonly key: 13;
591
+ readonly value: "Terengganu";
592
+ readonly i18nKey: "malaysia.state.13";
593
+ }, {
594
+ readonly key: 14;
595
+ readonly value: "Kuala Lumpur";
596
+ readonly i18nKey: "malaysia.state.14";
597
+ }, {
598
+ readonly key: 15;
599
+ readonly value: "Labuan";
600
+ readonly i18nKey: "malaysia.state.15";
601
+ }, {
602
+ readonly key: 16;
603
+ readonly value: "Putrajaya";
604
+ readonly i18nKey: "malaysia.state.16";
605
+ }];
606
+
607
+ declare const JOB_APPLICATION_STATUS: readonly [{
608
+ readonly key: 0;
609
+ readonly value: "Pending Review";
610
+ readonly i18nKey: "jobApplication.status.0";
611
+ }, {
612
+ readonly key: 1;
613
+ readonly value: "Shortlisted";
614
+ readonly i18nKey: "jobApplication.status.1";
615
+ }, {
616
+ readonly key: 2;
617
+ readonly value: "Interview";
618
+ readonly i18nKey: "jobApplication.status.2";
619
+ }, {
620
+ readonly key: 3;
621
+ readonly value: "Offered";
622
+ readonly i18nKey: "jobApplication.status.3";
623
+ }, {
624
+ readonly key: 4;
625
+ readonly value: "Hired";
626
+ readonly i18nKey: "jobApplication.status.4";
627
+ }, {
628
+ readonly key: 5;
629
+ readonly value: "Rejected";
630
+ readonly i18nKey: "jobApplication.status.5";
631
+ }, {
632
+ readonly key: 6;
633
+ readonly value: "Withdrawn";
634
+ readonly i18nKey: "jobApplication.status.6";
635
+ }, {
636
+ readonly key: 7;
637
+ readonly value: "Ghosted";
638
+ readonly i18nKey: "jobApplication.status.7";
639
+ }];
640
+
641
+ declare const EMAIL_TEMPLATE_ROLES: readonly [{
642
+ readonly key: 0;
643
+ readonly value: "Creator";
644
+ readonly i18nKey: "emailTemplate.role.0";
645
+ }, {
646
+ readonly key: 1;
647
+ readonly value: "Editor";
648
+ readonly i18nKey: "emailTemplate.role.1";
649
+ }, {
650
+ readonly key: 2;
651
+ readonly value: "Viewer";
652
+ readonly i18nKey: "emailTemplate.role.2";
653
+ }];
654
+
655
+ declare const EMAIL_HISTORY_STATUS: readonly [{
656
+ readonly key: 0;
657
+ readonly value: "Scheduled";
658
+ readonly i18nKey: "emailHistory.status.0";
659
+ }, {
660
+ readonly key: 1;
661
+ readonly value: "Delivering";
662
+ readonly i18nKey: "emailHistory.status.1";
663
+ }, {
664
+ readonly key: 2;
665
+ readonly value: "Delivered";
666
+ readonly i18nKey: "emailHistory.status.2";
667
+ }, {
668
+ readonly key: 3;
669
+ readonly value: "Failed";
670
+ readonly i18nKey: "emailHistory.status.3";
671
+ }, {
672
+ readonly key: 4;
673
+ readonly value: "Canceled";
674
+ readonly i18nKey: "emailHistory.status.4";
675
+ }];
676
+
677
+ export { ASSESSMENT_QUESTION_TYPE, CAREER_CATEGORY, CAREER_JOB_TYPE, CAREER_LOCATION, CAREER_MODE, CONTACT_FORM_ENQUIRY_TYPE, COUNTRY_CODE, type CanonicalRole, type CanonicalTimezone, EMAIL_HISTORY_STATUS, EMAIL_TEMPLATE_ROLES, FILE_ORIGIN, FILE_STATUS, JOB_APPLICATION_STATUS, LOCALE, MALAYSIA_STATE, type MappingOption, ORIGIN, PERMISSION_I18N_KEY, Permission, QuestionType, ROLE, ROLE_MAP, ROLE_PERMISSIONS, ROUTE, ROUTES, type RoleInput, type RoleValue, type RouteKey, type RouteMapping, STATES, TIMEZONE, TIMEZONE_CURRENT_UTC_OFFSET, TIMEZONE_TO_UTC, type TimezoneInput, URL_PREFIXES, WEBSITES, Website, buildLocalizedRoute, buildRoutePathName, convertTimestampToTimezone, getI18nKeyByKey, getLabelByKey, getOptionByKey, hasPermission, normalizeRole, normalizeTimezone, permissionLabelKey, roleLabelKey, roleToId, routeLabelKey, routePathKey, timezoneLabelKey, timezoneToUtc, toRecord };