@nira-opencrvs/toolkit 1.9.11-rc.1f36427

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 (77) hide show
  1. package/README.md +70 -0
  2. package/build.sh +56 -0
  3. package/dist/api/index.d.ts +11 -0
  4. package/dist/api/index.d.ts.map +1 -0
  5. package/dist/api/index.js +52 -0
  6. package/dist/commons/api/router.d.ts +4125 -0
  7. package/dist/commons/conditionals/conditionals.d.ts +824 -0
  8. package/dist/commons/conditionals/index.d.ts +2 -0
  9. package/dist/commons/conditionals/validate.d.ts +101 -0
  10. package/dist/commons/events/ActionConfig.d.ts +1609 -0
  11. package/dist/commons/events/ActionDocument.d.ts +2180 -0
  12. package/dist/commons/events/ActionInput.d.ts +1229 -0
  13. package/dist/commons/events/ActionType.d.ts +52 -0
  14. package/dist/commons/events/AdvancedSearchConfig.d.ts +1538 -0
  15. package/dist/commons/events/CompositeFieldValue.d.ts +280 -0
  16. package/dist/commons/events/Conditional.d.ts +55 -0
  17. package/dist/commons/events/Constants.d.ts +3 -0
  18. package/dist/commons/events/CountryConfigQueryInput.d.ts +4784 -0
  19. package/dist/commons/events/CreatedAtLocation.d.ts +2 -0
  20. package/dist/commons/events/DeduplicationConfig.d.ts +233 -0
  21. package/dist/commons/events/Draft.d.ts +118 -0
  22. package/dist/commons/events/DynamicFieldValue.d.ts +139 -0
  23. package/dist/commons/events/EventConfig.d.ts +2255 -0
  24. package/dist/commons/events/EventConfigInput.d.ts +10 -0
  25. package/dist/commons/events/EventDocument.d.ts +1457 -0
  26. package/dist/commons/events/EventIndex.d.ts +1134 -0
  27. package/dist/commons/events/EventInput.d.ts +13 -0
  28. package/dist/commons/events/EventMetadata.d.ts +413 -0
  29. package/dist/commons/events/FieldConfig.d.ts +12935 -0
  30. package/dist/commons/events/FieldType.d.ts +55 -0
  31. package/dist/commons/events/FieldTypeMapping.d.ts +1289 -0
  32. package/dist/commons/events/FieldValue.d.ts +512 -0
  33. package/dist/commons/events/FileUtils.d.ts +4 -0
  34. package/dist/commons/events/FormConfig.d.ts +755 -0
  35. package/dist/commons/events/PageConfig.d.ts +342 -0
  36. package/dist/commons/events/PlainDate.d.ts +19 -0
  37. package/dist/commons/events/SummaryConfig.d.ts +170 -0
  38. package/dist/commons/events/TemplateConfig.d.ts +66 -0
  39. package/dist/commons/events/TranslationConfig.d.ts +15 -0
  40. package/dist/commons/events/WorkqueueColumnConfig.d.ts +53 -0
  41. package/dist/commons/events/WorkqueueConfig.d.ts +7957 -0
  42. package/dist/commons/events/deduplication.d.ts +69 -0
  43. package/dist/commons/events/defineConfig.d.ts +234 -0
  44. package/dist/commons/events/event.d.ts +80 -0
  45. package/dist/commons/events/field.d.ts +514 -0
  46. package/dist/commons/events/index.d.ts +45 -0
  47. package/dist/commons/events/locations.d.ts +24 -0
  48. package/dist/commons/events/scopes.d.ts +55 -0
  49. package/dist/commons/events/serializer.d.ts +2 -0
  50. package/dist/commons/events/state/availableActions.d.ts +6 -0
  51. package/dist/commons/events/state/flags.d.ts +4 -0
  52. package/dist/commons/events/state/index.d.ts +119 -0
  53. package/dist/commons/events/state/utils.d.ts +311 -0
  54. package/dist/commons/events/test.utils.d.ts +248 -0
  55. package/dist/commons/events/transactions.d.ts +2 -0
  56. package/dist/commons/events/utils.d.ts +486 -0
  57. package/dist/commons/events/workqueueDefaultColumns.d.ts +3 -0
  58. package/dist/commons/notification/UserNotifications.d.ts +762 -0
  59. package/dist/commons/notification/index.d.ts +2 -0
  60. package/dist/conditionals/index.d.ts +2 -0
  61. package/dist/conditionals/index.d.ts.map +1 -0
  62. package/dist/conditionals/index.js +689 -0
  63. package/dist/events/deduplication.d.ts +69 -0
  64. package/dist/events/deduplication.d.ts.map +1 -0
  65. package/dist/events/deduplication.js +101 -0
  66. package/dist/events/index.d.ts +2 -0
  67. package/dist/events/index.d.ts.map +1 -0
  68. package/dist/events/index.js +9327 -0
  69. package/dist/notification/index.d.ts +2 -0
  70. package/dist/notification/index.d.ts.map +1 -0
  71. package/dist/notification/index.js +6674 -0
  72. package/dist/scopes/index.d.ts +385 -0
  73. package/dist/scopes/index.d.ts.map +1 -0
  74. package/dist/scopes/index.js +349 -0
  75. package/package.json +40 -0
  76. package/tsconfig.json +27 -0
  77. package/tsconfig.tsbuildinfo +1 -0
@@ -0,0 +1,2 @@
1
+ export declare const CreatedAtLocation: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodBranded<import("zod").ZodString, "UUID">>>;
2
+ //# sourceMappingURL=CreatedAtLocation.d.ts.map
@@ -0,0 +1,233 @@
1
+ import { z } from 'zod';
2
+ import { TranslationConfig } from './TranslationConfig';
3
+ declare const FuzzyMatcher: z.ZodObject<z.objectUtil.extendShape<{
4
+ /**
5
+ * Reference to the field used in matching.
6
+ *
7
+ * For `dateRange` type matcher the value of this field will also
8
+ * be used as the origin date to calculate the distance from.
9
+ */
10
+ fieldId: z.ZodString;
11
+ options: z.ZodDefault<z.ZodOptional<z.ZodObject<{
12
+ boost: z.ZodOptional<z.ZodNumber>;
13
+ matchAgainst: z.ZodOptional<z.ZodString>;
14
+ }, "strip", z.ZodTypeAny, {
15
+ boost?: number | undefined;
16
+ matchAgainst?: string | undefined;
17
+ }, {
18
+ boost?: number | undefined;
19
+ matchAgainst?: string | undefined;
20
+ }>>>;
21
+ }, {
22
+ type: z.ZodLiteral<"fuzzy">;
23
+ options: z.ZodDefault<z.ZodOptional<z.ZodObject<{
24
+ /**
25
+ * Names of length 3 or less characters = 0 edits allowed
26
+ * Names of length 4 - 6 characters = 1 edit allowed
27
+ * Names of length >7 characters = 2 edits allowed
28
+ */
29
+ fuzziness: z.ZodDefault<z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber]>>>;
30
+ boost: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
31
+ matchAgainst: z.ZodOptional<z.ZodString>;
32
+ }, "strip", z.ZodTypeAny, {
33
+ boost: number;
34
+ fuzziness: string | number;
35
+ matchAgainst?: string | undefined;
36
+ }, {
37
+ boost?: number | undefined;
38
+ matchAgainst?: string | undefined;
39
+ fuzziness?: string | number | undefined;
40
+ }>>>;
41
+ }>, "strip", z.ZodTypeAny, {
42
+ type: "fuzzy";
43
+ options: {
44
+ boost: number;
45
+ fuzziness: string | number;
46
+ matchAgainst?: string | undefined;
47
+ };
48
+ fieldId: string;
49
+ }, {
50
+ type: "fuzzy";
51
+ fieldId: string;
52
+ options?: {
53
+ boost?: number | undefined;
54
+ matchAgainst?: string | undefined;
55
+ fuzziness?: string | number | undefined;
56
+ } | undefined;
57
+ }>;
58
+ export type FuzzyMatcherOptions = z.input<typeof FuzzyMatcher>['options'];
59
+ declare const StrictMatcher: z.ZodObject<z.objectUtil.extendShape<{
60
+ /**
61
+ * Reference to the field used in matching.
62
+ *
63
+ * For `dateRange` type matcher the value of this field will also
64
+ * be used as the origin date to calculate the distance from.
65
+ */
66
+ fieldId: z.ZodString;
67
+ options: z.ZodDefault<z.ZodOptional<z.ZodObject<{
68
+ boost: z.ZodOptional<z.ZodNumber>;
69
+ matchAgainst: z.ZodOptional<z.ZodString>;
70
+ }, "strip", z.ZodTypeAny, {
71
+ boost?: number | undefined;
72
+ matchAgainst?: string | undefined;
73
+ }, {
74
+ boost?: number | undefined;
75
+ matchAgainst?: string | undefined;
76
+ }>>>;
77
+ }, {
78
+ type: z.ZodLiteral<"strict">;
79
+ options: z.ZodDefault<z.ZodOptional<z.ZodObject<{
80
+ boost: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
81
+ /**
82
+ * The constant value to be present in the field for both records
83
+ */
84
+ value: z.ZodOptional<z.ZodString>;
85
+ matchAgainst: z.ZodOptional<z.ZodString>;
86
+ }, "strip", z.ZodTypeAny, {
87
+ boost: number;
88
+ value?: string | undefined;
89
+ matchAgainst?: string | undefined;
90
+ }, {
91
+ value?: string | undefined;
92
+ boost?: number | undefined;
93
+ matchAgainst?: string | undefined;
94
+ }>>>;
95
+ }>, "strip", z.ZodTypeAny, {
96
+ type: "strict";
97
+ options: {
98
+ boost: number;
99
+ value?: string | undefined;
100
+ matchAgainst?: string | undefined;
101
+ };
102
+ fieldId: string;
103
+ }, {
104
+ type: "strict";
105
+ fieldId: string;
106
+ options?: {
107
+ value?: string | undefined;
108
+ boost?: number | undefined;
109
+ matchAgainst?: string | undefined;
110
+ } | undefined;
111
+ }>;
112
+ export type StrictMatcherOptions = z.input<typeof StrictMatcher>['options'];
113
+ declare const DateRangeMatcher: z.ZodObject<z.objectUtil.extendShape<{
114
+ /**
115
+ * Reference to the field used in matching.
116
+ *
117
+ * For `dateRange` type matcher the value of this field will also
118
+ * be used as the origin date to calculate the distance from.
119
+ */
120
+ fieldId: z.ZodString;
121
+ options: z.ZodDefault<z.ZodOptional<z.ZodObject<{
122
+ boost: z.ZodOptional<z.ZodNumber>;
123
+ matchAgainst: z.ZodOptional<z.ZodString>;
124
+ }, "strip", z.ZodTypeAny, {
125
+ boost?: number | undefined;
126
+ matchAgainst?: string | undefined;
127
+ }, {
128
+ boost?: number | undefined;
129
+ matchAgainst?: string | undefined;
130
+ }>>>;
131
+ }, {
132
+ type: z.ZodLiteral<"dateRange">;
133
+ options: z.ZodObject<{
134
+ /**
135
+ * The distance pivot in days. Distance from the origin (the value of
136
+ * fieldId) at which relevance scores receive half of the boost value
137
+ */
138
+ pivot: z.ZodOptional<z.ZodNumber>;
139
+ days: z.ZodNumber;
140
+ boost: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
141
+ matchAgainst: z.ZodOptional<z.ZodString>;
142
+ }, "strip", z.ZodTypeAny, {
143
+ boost: number;
144
+ days: number;
145
+ matchAgainst?: string | undefined;
146
+ pivot?: number | undefined;
147
+ }, {
148
+ days: number;
149
+ boost?: number | undefined;
150
+ matchAgainst?: string | undefined;
151
+ pivot?: number | undefined;
152
+ }>;
153
+ }>, "strip", z.ZodTypeAny, {
154
+ type: "dateRange";
155
+ options: {
156
+ boost: number;
157
+ days: number;
158
+ matchAgainst?: string | undefined;
159
+ pivot?: number | undefined;
160
+ };
161
+ fieldId: string;
162
+ }, {
163
+ type: "dateRange";
164
+ options: {
165
+ days: number;
166
+ boost?: number | undefined;
167
+ matchAgainst?: string | undefined;
168
+ pivot?: number | undefined;
169
+ };
170
+ fieldId: string;
171
+ }>;
172
+ export type DateRangeMatcherOptions = z.input<typeof DateRangeMatcher>['options'];
173
+ export type NotInput = {
174
+ type: 'not';
175
+ clause: ClauseInput;
176
+ };
177
+ export type NotOutput = {
178
+ type: 'not';
179
+ clause: ClauseOutput;
180
+ };
181
+ export type AndInput = {
182
+ type: 'and';
183
+ clauses: ClauseInput[];
184
+ };
185
+ export type AndOutput = {
186
+ type: 'and';
187
+ clauses: ClauseOutput[];
188
+ };
189
+ export type OrInput = {
190
+ type: 'or';
191
+ clauses: ClauseInput[];
192
+ };
193
+ export type OrOutput = {
194
+ type: 'or';
195
+ clauses: ClauseOutput[];
196
+ };
197
+ export type ClauseInput = NotInput | AndInput | OrInput | z.input<typeof FuzzyMatcher> | z.input<typeof StrictMatcher> | z.input<typeof DateRangeMatcher>;
198
+ export type ClauseOutput = NotOutput | AndOutput | OrOutput | z.output<typeof FuzzyMatcher> | z.output<typeof StrictMatcher> | z.output<typeof DateRangeMatcher>;
199
+ /**
200
+ * Defines a deduplication clause. Clauses are either matcher clauses or logical clauses. Logical clauses (and, or) are used to combine multiple clauses.
201
+ * Since the definiton is recursive, we use z.lazy to define the schema.
202
+ * Zod supports recursive schemas, but needs help with Input and Output types.
203
+ *
204
+ * Default assumption is that the ZodType is the input. Markers use default values, so we need to explicitly define output type, too.
205
+ *
206
+ */
207
+ export declare const Clause: z.ZodType<ClauseOutput, z.ZodTypeDef, ClauseInput>;
208
+ export type Clause = z.infer<typeof Clause>;
209
+ export declare const DeduplicationConfig: z.ZodObject<{
210
+ id: z.ZodString;
211
+ label: z.ZodObject<import("./TranslationConfig").MessageDescriptorZod, "strip", z.ZodTypeAny, TranslationConfig, {
212
+ id: string;
213
+ description: string;
214
+ defaultMessage: string;
215
+ }>;
216
+ query: z.ZodType<ClauseOutput, z.ZodTypeDef, ClauseInput>;
217
+ }, "strip", z.ZodTypeAny, {
218
+ id: string;
219
+ query: ClauseOutput;
220
+ label: TranslationConfig;
221
+ }, {
222
+ id: string;
223
+ query: ClauseInput;
224
+ label: {
225
+ id: string;
226
+ description: string;
227
+ defaultMessage: string;
228
+ };
229
+ }>;
230
+ export type DeduplicationConfigInput = z.input<typeof DeduplicationConfig>;
231
+ export type DeduplicationConfig = z.infer<typeof DeduplicationConfig>;
232
+ export {};
233
+ //# sourceMappingURL=DeduplicationConfig.d.ts.map
@@ -0,0 +1,118 @@
1
+ import { z } from 'zod';
2
+ export declare const Draft: z.ZodObject<{
3
+ id: z.ZodBranded<z.ZodString, "UUID">;
4
+ eventId: z.ZodBranded<z.ZodString, "UUID">;
5
+ transactionId: z.ZodString;
6
+ createdAt: z.ZodString;
7
+ action: z.ZodObject<Omit<z.objectUtil.extendShape<{
8
+ id: z.ZodBranded<z.ZodString, "UUID">;
9
+ transactionId: z.ZodString;
10
+ createdByUserType: z.ZodEnum<["user", "system"]>;
11
+ createdAt: z.ZodString;
12
+ createdBy: z.ZodString;
13
+ createdByRole: z.ZodString;
14
+ createdBySignature: z.ZodOptional<z.ZodNullable<z.ZodString>>;
15
+ createdAtLocation: z.ZodOptional<z.ZodNullable<z.ZodBranded<z.ZodString, "UUID">>>;
16
+ declaration: z.ZodRecord<z.ZodString, z.ZodType<import("./FieldValue").FieldUpdateValue, z.ZodTypeDef, import("./FieldValue").FieldUpdateValue>>;
17
+ annotation: z.ZodNullable<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodType<import("./FieldValue").FieldUpdateValue, z.ZodTypeDef, import("./FieldValue").FieldUpdateValue>>>>;
18
+ status: z.ZodEnum<["Requested", "Accepted", "Rejected"]>;
19
+ originalActionId: z.ZodNullable<z.ZodOptional<z.ZodBranded<z.ZodString, "UUID">>>;
20
+ }, {
21
+ type: z.ZodEnum<["CREATE", "NOTIFY", "DECLARE", "VALIDATE", "REGISTER", "DUPLICATE_DETECTED", "REJECT", "MARK_AS_DUPLICATE", "MARK_AS_NOT_DUPLICATE", "ARCHIVE", "PRINT_CERTIFICATE", "REQUEST_CORRECTION", "REJECT_CORRECTION", "APPROVE_CORRECTION", "READ", "ASSIGN", "UNASSIGN"]>;
22
+ }>, "id" | "createdAtLocation">, "strip", z.ZodTypeAny, {
23
+ type: "CREATE" | "NOTIFY" | "DECLARE" | "VALIDATE" | "REGISTER" | "DUPLICATE_DETECTED" | "REJECT" | "MARK_AS_DUPLICATE" | "MARK_AS_NOT_DUPLICATE" | "ARCHIVE" | "PRINT_CERTIFICATE" | "REQUEST_CORRECTION" | "REJECT_CORRECTION" | "APPROVE_CORRECTION" | "READ" | "ASSIGN" | "UNASSIGN";
24
+ status: "Rejected" | "Requested" | "Accepted";
25
+ transactionId: string;
26
+ createdByUserType: "system" | "user";
27
+ createdAt: string;
28
+ createdBy: string;
29
+ createdByRole: string;
30
+ declaration: Record<string, import("./FieldValue").FieldUpdateValue>;
31
+ createdBySignature?: string | null | undefined;
32
+ annotation?: Record<string, import("./FieldValue").FieldUpdateValue> | null | undefined;
33
+ originalActionId?: (string & z.BRAND<"UUID">) | null | undefined;
34
+ }, {
35
+ type: "CREATE" | "NOTIFY" | "DECLARE" | "VALIDATE" | "REGISTER" | "DUPLICATE_DETECTED" | "REJECT" | "MARK_AS_DUPLICATE" | "MARK_AS_NOT_DUPLICATE" | "ARCHIVE" | "PRINT_CERTIFICATE" | "REQUEST_CORRECTION" | "REJECT_CORRECTION" | "APPROVE_CORRECTION" | "READ" | "ASSIGN" | "UNASSIGN";
36
+ status: "Rejected" | "Requested" | "Accepted";
37
+ transactionId: string;
38
+ createdByUserType: "system" | "user";
39
+ createdAt: string;
40
+ createdBy: string;
41
+ createdByRole: string;
42
+ declaration: Record<string, import("./FieldValue").FieldUpdateValue>;
43
+ createdBySignature?: string | null | undefined;
44
+ annotation?: Record<string, import("./FieldValue").FieldUpdateValue> | null | undefined;
45
+ originalActionId?: string | null | undefined;
46
+ }>;
47
+ }, "strip", z.ZodTypeAny, {
48
+ id: string & z.BRAND<"UUID">;
49
+ transactionId: string;
50
+ createdAt: string;
51
+ eventId: string & z.BRAND<"UUID">;
52
+ action: {
53
+ type: "CREATE" | "NOTIFY" | "DECLARE" | "VALIDATE" | "REGISTER" | "DUPLICATE_DETECTED" | "REJECT" | "MARK_AS_DUPLICATE" | "MARK_AS_NOT_DUPLICATE" | "ARCHIVE" | "PRINT_CERTIFICATE" | "REQUEST_CORRECTION" | "REJECT_CORRECTION" | "APPROVE_CORRECTION" | "READ" | "ASSIGN" | "UNASSIGN";
54
+ status: "Rejected" | "Requested" | "Accepted";
55
+ transactionId: string;
56
+ createdByUserType: "system" | "user";
57
+ createdAt: string;
58
+ createdBy: string;
59
+ createdByRole: string;
60
+ declaration: Record<string, import("./FieldValue").FieldUpdateValue>;
61
+ createdBySignature?: string | null | undefined;
62
+ annotation?: Record<string, import("./FieldValue").FieldUpdateValue> | null | undefined;
63
+ originalActionId?: (string & z.BRAND<"UUID">) | null | undefined;
64
+ };
65
+ }, {
66
+ id: string;
67
+ transactionId: string;
68
+ createdAt: string;
69
+ eventId: string;
70
+ action: {
71
+ type: "CREATE" | "NOTIFY" | "DECLARE" | "VALIDATE" | "REGISTER" | "DUPLICATE_DETECTED" | "REJECT" | "MARK_AS_DUPLICATE" | "MARK_AS_NOT_DUPLICATE" | "ARCHIVE" | "PRINT_CERTIFICATE" | "REQUEST_CORRECTION" | "REJECT_CORRECTION" | "APPROVE_CORRECTION" | "READ" | "ASSIGN" | "UNASSIGN";
72
+ status: "Rejected" | "Requested" | "Accepted";
73
+ transactionId: string;
74
+ createdByUserType: "system" | "user";
75
+ createdAt: string;
76
+ createdBy: string;
77
+ createdByRole: string;
78
+ declaration: Record<string, import("./FieldValue").FieldUpdateValue>;
79
+ createdBySignature?: string | null | undefined;
80
+ annotation?: Record<string, import("./FieldValue").FieldUpdateValue> | null | undefined;
81
+ originalActionId?: string | null | undefined;
82
+ };
83
+ }>;
84
+ export declare const DraftInput: z.ZodObject<z.objectUtil.extendShape<{
85
+ eventId: z.ZodBranded<z.ZodString, "UUID">;
86
+ transactionId: z.ZodString;
87
+ declaration: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodType<import("./FieldValue").FieldUpdateValue, z.ZodTypeDef, import("./FieldValue").FieldUpdateValue>>>;
88
+ annotation: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodType<import("./FieldValue").FieldUpdateValue, z.ZodTypeDef, import("./FieldValue").FieldUpdateValue>>>;
89
+ originalActionId: z.ZodOptional<z.ZodBranded<z.ZodString, "UUID">>;
90
+ keepAssignment: z.ZodOptional<z.ZodBoolean>;
91
+ createdAtLocation: z.ZodOptional<z.ZodNullable<z.ZodBranded<z.ZodString, "UUID">>>;
92
+ }, {
93
+ type: z.ZodEnum<["CREATE", "NOTIFY", "DECLARE", "VALIDATE", "REGISTER", "DUPLICATE_DETECTED", "REJECT", "MARK_AS_DUPLICATE", "MARK_AS_NOT_DUPLICATE", "ARCHIVE", "PRINT_CERTIFICATE", "REQUEST_CORRECTION", "REJECT_CORRECTION", "APPROVE_CORRECTION", "READ", "ASSIGN", "UNASSIGN"]>;
94
+ status: z.ZodEnum<["Requested", "Accepted", "Rejected"]>;
95
+ }>, "strip", z.ZodTypeAny, {
96
+ type: "CREATE" | "NOTIFY" | "DECLARE" | "VALIDATE" | "REGISTER" | "DUPLICATE_DETECTED" | "REJECT" | "MARK_AS_DUPLICATE" | "MARK_AS_NOT_DUPLICATE" | "ARCHIVE" | "PRINT_CERTIFICATE" | "REQUEST_CORRECTION" | "REJECT_CORRECTION" | "APPROVE_CORRECTION" | "READ" | "ASSIGN" | "UNASSIGN";
97
+ status: "Rejected" | "Requested" | "Accepted";
98
+ transactionId: string;
99
+ declaration: Record<string, import("./FieldValue").FieldUpdateValue>;
100
+ eventId: string & z.BRAND<"UUID">;
101
+ createdAtLocation?: (string & z.BRAND<"UUID">) | null | undefined;
102
+ annotation?: Record<string, import("./FieldValue").FieldUpdateValue> | undefined;
103
+ originalActionId?: (string & z.BRAND<"UUID">) | undefined;
104
+ keepAssignment?: boolean | undefined;
105
+ }, {
106
+ type: "CREATE" | "NOTIFY" | "DECLARE" | "VALIDATE" | "REGISTER" | "DUPLICATE_DETECTED" | "REJECT" | "MARK_AS_DUPLICATE" | "MARK_AS_NOT_DUPLICATE" | "ARCHIVE" | "PRINT_CERTIFICATE" | "REQUEST_CORRECTION" | "REJECT_CORRECTION" | "APPROVE_CORRECTION" | "READ" | "ASSIGN" | "UNASSIGN";
107
+ status: "Rejected" | "Requested" | "Accepted";
108
+ transactionId: string;
109
+ eventId: string;
110
+ createdAtLocation?: string | null | undefined;
111
+ declaration?: Record<string, import("./FieldValue").FieldUpdateValue> | undefined;
112
+ annotation?: Record<string, import("./FieldValue").FieldUpdateValue> | undefined;
113
+ originalActionId?: string | undefined;
114
+ keepAssignment?: boolean | undefined;
115
+ }>;
116
+ export type Draft = z.infer<typeof Draft>;
117
+ export type DraftInput = z.infer<typeof DraftInput>;
118
+ //# sourceMappingURL=Draft.d.ts.map
@@ -0,0 +1,139 @@
1
+ import { z } from 'zod';
2
+ import { AddressField, NameField } from './FieldConfig';
3
+ /**
4
+ * Dynamically builds a Zod schema for a "NAME" field based on its configuration.
5
+ *
6
+ * Why this exists: each form field can have its own "required" configuration.
7
+ * NAME fields are composite — made up of subfields like firstname, surname, and middlename.
8
+ * We can’t just hardcode a single Zod schema for all names, because different forms
9
+ * (e.g. applicant, father, mother) may require different parts.
10
+ *
11
+ * This function reads the configuration and builds a schema that respects which
12
+ * subfields are required and which are optional.
13
+ */
14
+ export declare function getDynamicNameValue(field: NameField): z.ZodObject<{
15
+ firstname: z.ZodString;
16
+ surname: z.ZodString;
17
+ middlename: z.ZodString | z.ZodOptional<z.ZodString>;
18
+ }, "strip", z.ZodTypeAny, {
19
+ firstname: string;
20
+ surname: string;
21
+ middlename?: string | undefined;
22
+ }, {
23
+ firstname: string;
24
+ surname: string;
25
+ middlename?: string | undefined;
26
+ }>;
27
+ export type DynamicNameValue = ReturnType<typeof getDynamicNameValue>;
28
+ /**
29
+ * Dynamically builds a Zod schema for an "ADDRESS" field.
30
+ *
31
+ * Why this exists:
32
+ * The address field is dynamic — its structure depends on whether it’s a domestic
33
+ * or international address and which street-level fields (e.g. house number, ward, block)
34
+ * are configured for that event type.
35
+ *
36
+ * The validation ensures:
37
+ * - Required core fields (country, addressType) are always present.
38
+ * - Administrative area (like a district or region) can be optional.
39
+ * - Street-level details are validated against the configured set of keys.
40
+ * This prevents clients from sending unexpected data keys that don’t exist
41
+ * in the configuration (a common data integrity issue).
42
+ */
43
+ export declare function getDynamicAddressFieldValue(field: AddressField): z.ZodEffects<z.ZodDiscriminatedUnion<"addressType", [z.ZodObject<z.objectUtil.extendShape<{
44
+ country: z.ZodString;
45
+ streetLevelDetails: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
46
+ }, {
47
+ addressType: z.ZodLiteral<"DOMESTIC">;
48
+ administrativeArea: z.ZodString;
49
+ }>, "strip", z.ZodTypeAny, {
50
+ country: string;
51
+ addressType: "DOMESTIC";
52
+ administrativeArea: string;
53
+ streetLevelDetails?: Record<string, string> | undefined;
54
+ }, {
55
+ country: string;
56
+ addressType: "DOMESTIC";
57
+ administrativeArea: string;
58
+ streetLevelDetails?: Record<string, string> | undefined;
59
+ }>, z.ZodObject<z.objectUtil.extendShape<{
60
+ country: z.ZodString;
61
+ streetLevelDetails: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
62
+ }, {
63
+ addressType: z.ZodLiteral<"INTERNATIONAL">;
64
+ }>, "strip", z.ZodTypeAny, {
65
+ country: string;
66
+ addressType: "INTERNATIONAL";
67
+ streetLevelDetails?: Record<string, string> | undefined;
68
+ }, {
69
+ country: string;
70
+ addressType: "INTERNATIONAL";
71
+ streetLevelDetails?: Record<string, string> | undefined;
72
+ }>]>, {
73
+ country: string;
74
+ addressType: "DOMESTIC";
75
+ administrativeArea: string;
76
+ streetLevelDetails?: Record<string, string> | undefined;
77
+ } | {
78
+ country: string;
79
+ addressType: "INTERNATIONAL";
80
+ streetLevelDetails?: Record<string, string> | undefined;
81
+ }, {
82
+ country: string;
83
+ addressType: "DOMESTIC";
84
+ administrativeArea: string;
85
+ streetLevelDetails?: Record<string, string> | undefined;
86
+ } | {
87
+ country: string;
88
+ addressType: "INTERNATIONAL";
89
+ streetLevelDetails?: Record<string, string> | undefined;
90
+ }> | z.ZodEffects<z.ZodOptional<z.ZodNullable<z.ZodDiscriminatedUnion<"addressType", [z.ZodObject<z.objectUtil.extendShape<{
91
+ country: z.ZodOptional<z.ZodNullable<z.ZodString>>;
92
+ streetLevelDetails: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodNullable<z.ZodString>>>>;
93
+ }, {
94
+ addressType: z.ZodLiteral<"DOMESTIC">;
95
+ administrativeArea: z.ZodOptional<z.ZodNullable<z.ZodString>>;
96
+ }>, "strip", z.ZodTypeAny, {
97
+ addressType: "DOMESTIC";
98
+ country?: string | null | undefined;
99
+ streetLevelDetails?: Record<string, string | null> | null | undefined;
100
+ administrativeArea?: string | null | undefined;
101
+ }, {
102
+ addressType: "DOMESTIC";
103
+ country?: string | null | undefined;
104
+ streetLevelDetails?: Record<string, string | null> | null | undefined;
105
+ administrativeArea?: string | null | undefined;
106
+ }>, z.ZodObject<z.objectUtil.extendShape<{
107
+ country: z.ZodOptional<z.ZodNullable<z.ZodString>>;
108
+ streetLevelDetails: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodNullable<z.ZodString>>>>;
109
+ }, {
110
+ addressType: z.ZodLiteral<"INTERNATIONAL">;
111
+ }>, "strip", z.ZodTypeAny, {
112
+ addressType: "INTERNATIONAL";
113
+ country?: string | null | undefined;
114
+ streetLevelDetails?: Record<string, string | null> | null | undefined;
115
+ }, {
116
+ addressType: "INTERNATIONAL";
117
+ country?: string | null | undefined;
118
+ streetLevelDetails?: Record<string, string | null> | null | undefined;
119
+ }>]>>>, {
120
+ addressType: "DOMESTIC";
121
+ country?: string | null | undefined;
122
+ streetLevelDetails?: Record<string, string | null> | null | undefined;
123
+ administrativeArea?: string | null | undefined;
124
+ } | {
125
+ addressType: "INTERNATIONAL";
126
+ country?: string | null | undefined;
127
+ streetLevelDetails?: Record<string, string | null> | null | undefined;
128
+ } | null | undefined, {
129
+ addressType: "DOMESTIC";
130
+ country?: string | null | undefined;
131
+ streetLevelDetails?: Record<string, string | null> | null | undefined;
132
+ administrativeArea?: string | null | undefined;
133
+ } | {
134
+ addressType: "INTERNATIONAL";
135
+ country?: string | null | undefined;
136
+ streetLevelDetails?: Record<string, string | null> | null | undefined;
137
+ } | null | undefined>;
138
+ export type DynamicAddressFieldValue = ReturnType<typeof getDynamicAddressFieldValue>;
139
+ //# sourceMappingURL=DynamicFieldValue.d.ts.map