@objectstack/plugin-security 3.2.5 → 3.2.6

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/index.d.ts CHANGED
@@ -1,6 +1,8 @@
1
1
  import { Plugin, PluginContext } from '@objectstack/core';
2
2
  import { PermissionSet, FieldPermission, RowLevelSecurityPolicy } from '@objectstack/spec/security';
3
3
  import { ExecutionContext } from '@objectstack/spec/kernel';
4
+ import { z } from 'zod';
5
+ import * as _objectstack_spec_data from '@objectstack/spec/data';
4
6
 
5
7
  /**
6
8
  * SecurityPlugin
@@ -117,4 +119,3616 @@ declare class FieldMasker {
117
119
  private maskRecord;
118
120
  }
119
121
 
120
- export { FieldMasker, PermissionEvaluator, RLSCompiler, SecurityPlugin };
122
+ /**
123
+ * XState-inspired State Machine Protocol
124
+ * Used to define strict business logic constraints and lifecycle management.
125
+ * Prevent AI "hallucinations" by enforcing valid valid transitions.
126
+ */
127
+ /**
128
+ * References a named action (side effect)
129
+ * Can be a script, a webhook, or a field update.
130
+ */
131
+ declare const ActionRefSchema: z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
132
+ type: z.ZodString;
133
+ params: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
134
+ }, z.core.$strip>]>;
135
+ /**
136
+ * State Transition Definition
137
+ * "When EVENT happens, if GUARD is true, go to TARGET and run ACTIONS"
138
+ */
139
+ declare const TransitionSchema: z.ZodObject<{
140
+ target: z.ZodOptional<z.ZodString>;
141
+ cond: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
142
+ type: z.ZodString;
143
+ params: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
144
+ }, z.core.$strip>]>>;
145
+ actions: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
146
+ type: z.ZodString;
147
+ params: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
148
+ }, z.core.$strip>]>>>;
149
+ description: z.ZodOptional<z.ZodString>;
150
+ }, z.core.$strip>;
151
+ type ActionRef = z.infer<typeof ActionRefSchema>;
152
+ type Transition = z.infer<typeof TransitionSchema>;
153
+ type StateNodeConfig = {
154
+ type?: 'atomic' | 'compound' | 'parallel' | 'final' | 'history';
155
+ entry?: ActionRef[];
156
+ exit?: ActionRef[];
157
+ on?: Record<string, string | Transition | Transition[]>;
158
+ always?: Transition[];
159
+ initial?: string;
160
+ states?: Record<string, StateNodeConfig>;
161
+ meta?: {
162
+ label?: string;
163
+ description?: string;
164
+ color?: string;
165
+ aiInstructions?: string;
166
+ };
167
+ };
168
+
169
+ /**
170
+ * sys_role — System Role Object
171
+ *
172
+ * RBAC role definition for the ObjectStack platform.
173
+ * Roles group permissions and are assigned to users or members.
174
+ *
175
+ * @namespace sys
176
+ */
177
+ declare const SysRole: Omit<{
178
+ name: string;
179
+ active: boolean;
180
+ isSystem: boolean;
181
+ abstract: boolean;
182
+ datasource: string;
183
+ fields: Record<string, {
184
+ type: "number" | "boolean" | "tags" | "select" | "date" | "lookup" | "file" | "url" | "json" | "text" | "textarea" | "email" | "phone" | "password" | "markdown" | "html" | "richtext" | "currency" | "percent" | "datetime" | "time" | "toggle" | "multiselect" | "radio" | "checkboxes" | "master_detail" | "tree" | "image" | "avatar" | "video" | "audio" | "formula" | "summary" | "autonumber" | "location" | "address" | "code" | "color" | "rating" | "slider" | "signature" | "qrcode" | "progress" | "vector";
185
+ required: boolean;
186
+ searchable: boolean;
187
+ multiple: boolean;
188
+ unique: boolean;
189
+ deleteBehavior: "set_null" | "cascade" | "restrict";
190
+ auditTrail: boolean;
191
+ hidden: boolean;
192
+ readonly: boolean;
193
+ sortable: boolean;
194
+ index: boolean;
195
+ externalId: boolean;
196
+ name?: string | undefined;
197
+ label?: string | undefined;
198
+ description?: string | undefined;
199
+ format?: string | undefined;
200
+ columnName?: string | undefined;
201
+ defaultValue?: unknown;
202
+ maxLength?: number | undefined;
203
+ minLength?: number | undefined;
204
+ precision?: number | undefined;
205
+ scale?: number | undefined;
206
+ min?: number | undefined;
207
+ max?: number | undefined;
208
+ options?: {
209
+ label: string;
210
+ value: string;
211
+ color?: string | undefined;
212
+ default?: boolean | undefined;
213
+ }[] | undefined;
214
+ reference?: string | undefined;
215
+ referenceFilters?: string[] | undefined;
216
+ writeRequiresMasterRead?: boolean | undefined;
217
+ expression?: string | undefined;
218
+ summaryOperations?: {
219
+ object: string;
220
+ field: string;
221
+ function: "count" | "min" | "max" | "sum" | "avg";
222
+ } | undefined;
223
+ language?: string | undefined;
224
+ theme?: string | undefined;
225
+ lineNumbers?: boolean | undefined;
226
+ maxRating?: number | undefined;
227
+ allowHalf?: boolean | undefined;
228
+ displayMap?: boolean | undefined;
229
+ allowGeocoding?: boolean | undefined;
230
+ addressFormat?: "us" | "uk" | "international" | undefined;
231
+ colorFormat?: "hex" | "rgb" | "rgba" | "hsl" | undefined;
232
+ allowAlpha?: boolean | undefined;
233
+ presetColors?: string[] | undefined;
234
+ step?: number | undefined;
235
+ showValue?: boolean | undefined;
236
+ marks?: Record<string, string> | undefined;
237
+ barcodeFormat?: "qr" | "ean13" | "ean8" | "code128" | "code39" | "upca" | "upce" | undefined;
238
+ qrErrorCorrection?: "L" | "M" | "Q" | "H" | undefined;
239
+ displayValue?: boolean | undefined;
240
+ allowScanning?: boolean | undefined;
241
+ currencyConfig?: {
242
+ precision: number;
243
+ currencyMode: "dynamic" | "fixed";
244
+ defaultCurrency: string;
245
+ } | undefined;
246
+ vectorConfig?: {
247
+ dimensions: number;
248
+ distanceMetric: "cosine" | "euclidean" | "dotProduct" | "manhattan";
249
+ normalized: boolean;
250
+ indexed: boolean;
251
+ indexType?: "flat" | "hnsw" | "ivfflat" | undefined;
252
+ } | undefined;
253
+ fileAttachmentConfig?: {
254
+ virusScan: boolean;
255
+ virusScanOnUpload: boolean;
256
+ quarantineOnThreat: boolean;
257
+ allowMultiple: boolean;
258
+ allowReplace: boolean;
259
+ allowDelete: boolean;
260
+ requireUpload: boolean;
261
+ extractMetadata: boolean;
262
+ extractText: boolean;
263
+ versioningEnabled: boolean;
264
+ publicRead: boolean;
265
+ presignedUrlExpiry: number;
266
+ minSize?: number | undefined;
267
+ maxSize?: number | undefined;
268
+ allowedTypes?: string[] | undefined;
269
+ blockedTypes?: string[] | undefined;
270
+ allowedMimeTypes?: string[] | undefined;
271
+ blockedMimeTypes?: string[] | undefined;
272
+ virusScanProvider?: "custom" | "clamav" | "virustotal" | "metadefender" | undefined;
273
+ storageProvider?: string | undefined;
274
+ storageBucket?: string | undefined;
275
+ storagePrefix?: string | undefined;
276
+ imageValidation?: {
277
+ generateThumbnails: boolean;
278
+ preserveMetadata: boolean;
279
+ autoRotate: boolean;
280
+ minWidth?: number | undefined;
281
+ maxWidth?: number | undefined;
282
+ minHeight?: number | undefined;
283
+ maxHeight?: number | undefined;
284
+ aspectRatio?: string | undefined;
285
+ thumbnailSizes?: {
286
+ name: string;
287
+ width: number;
288
+ height: number;
289
+ crop: boolean;
290
+ }[] | undefined;
291
+ } | undefined;
292
+ maxVersions?: number | undefined;
293
+ } | undefined;
294
+ encryptionConfig?: {
295
+ enabled: boolean;
296
+ algorithm: "aes-256-gcm" | "aes-256-cbc" | "chacha20-poly1305";
297
+ keyManagement: {
298
+ provider: "local" | "aws-kms" | "azure-key-vault" | "gcp-kms" | "hashicorp-vault";
299
+ keyId?: string | undefined;
300
+ rotationPolicy?: {
301
+ enabled: boolean;
302
+ frequencyDays: number;
303
+ retainOldVersions: number;
304
+ autoRotate: boolean;
305
+ } | undefined;
306
+ };
307
+ scope: "field" | "table" | "record" | "database";
308
+ deterministicEncryption: boolean;
309
+ searchableEncryption: boolean;
310
+ } | undefined;
311
+ maskingRule?: {
312
+ field: string;
313
+ strategy: "redact" | "partial" | "hash" | "tokenize" | "randomize" | "nullify" | "substitute";
314
+ preserveFormat: boolean;
315
+ preserveLength: boolean;
316
+ pattern?: string | undefined;
317
+ roles?: string[] | undefined;
318
+ exemptRoles?: string[] | undefined;
319
+ } | undefined;
320
+ dependencies?: string[] | undefined;
321
+ cached?: {
322
+ enabled: boolean;
323
+ ttl: number;
324
+ invalidateOn: string[];
325
+ } | undefined;
326
+ dataQuality?: {
327
+ uniqueness: boolean;
328
+ completeness: number;
329
+ accuracy?: {
330
+ source: string;
331
+ threshold: number;
332
+ } | undefined;
333
+ } | undefined;
334
+ group?: string | undefined;
335
+ conditionalRequired?: string | undefined;
336
+ inlineHelpText?: string | undefined;
337
+ trackFeedHistory?: boolean | undefined;
338
+ caseSensitive?: boolean | undefined;
339
+ autonumberFormat?: string | undefined;
340
+ }>;
341
+ label?: string | undefined;
342
+ pluralLabel?: string | undefined;
343
+ description?: string | undefined;
344
+ icon?: string | undefined;
345
+ namespace?: string | undefined;
346
+ tags?: string[] | undefined;
347
+ tableName?: string | undefined;
348
+ indexes?: {
349
+ fields: string[];
350
+ type: "hash" | "btree" | "gin" | "gist" | "fulltext";
351
+ unique: boolean;
352
+ name?: string | undefined;
353
+ partial?: string | undefined;
354
+ }[] | undefined;
355
+ tenancy?: {
356
+ enabled: boolean;
357
+ strategy: "shared" | "isolated" | "hybrid";
358
+ tenantField: string;
359
+ crossTenantAccess: boolean;
360
+ } | undefined;
361
+ softDelete?: {
362
+ enabled: boolean;
363
+ field: string;
364
+ cascadeDelete: boolean;
365
+ } | undefined;
366
+ versioning?: {
367
+ enabled: boolean;
368
+ strategy: "snapshot" | "delta" | "event-sourcing";
369
+ versionField: string;
370
+ retentionDays?: number | undefined;
371
+ } | undefined;
372
+ partitioning?: {
373
+ enabled: boolean;
374
+ strategy: "hash" | "range" | "list";
375
+ key: string;
376
+ interval?: string | undefined;
377
+ } | undefined;
378
+ cdc?: {
379
+ enabled: boolean;
380
+ events: ("insert" | "update" | "delete")[];
381
+ destination: string;
382
+ } | undefined;
383
+ validations?: _objectstack_spec_data.BaseValidationRuleShape[] | undefined;
384
+ stateMachines?: Record<string, {
385
+ id: string;
386
+ initial: string;
387
+ states: Record<string, StateNodeConfig>;
388
+ description?: string | undefined;
389
+ contextSchema?: Record<string, unknown> | undefined;
390
+ on?: Record<string, string | {
391
+ target?: string | undefined;
392
+ cond?: string | {
393
+ type: string;
394
+ params?: Record<string, unknown> | undefined;
395
+ } | undefined;
396
+ actions?: (string | {
397
+ type: string;
398
+ params?: Record<string, unknown> | undefined;
399
+ })[] | undefined;
400
+ description?: string | undefined;
401
+ } | {
402
+ target?: string | undefined;
403
+ cond?: string | {
404
+ type: string;
405
+ params?: Record<string, unknown> | undefined;
406
+ } | undefined;
407
+ actions?: (string | {
408
+ type: string;
409
+ params?: Record<string, unknown> | undefined;
410
+ })[] | undefined;
411
+ description?: string | undefined;
412
+ }[]> | undefined;
413
+ }> | undefined;
414
+ displayNameField?: string | undefined;
415
+ recordName?: {
416
+ type: "text" | "autonumber";
417
+ displayFormat?: string | undefined;
418
+ startNumber?: number | undefined;
419
+ } | undefined;
420
+ titleFormat?: string | undefined;
421
+ compactLayout?: string[] | undefined;
422
+ search?: {
423
+ fields: string[];
424
+ displayFields?: string[] | undefined;
425
+ filters?: string[] | undefined;
426
+ } | undefined;
427
+ enable?: {
428
+ trackHistory: boolean;
429
+ searchable: boolean;
430
+ apiEnabled: boolean;
431
+ files: boolean;
432
+ feeds: boolean;
433
+ activities: boolean;
434
+ trash: boolean;
435
+ mru: boolean;
436
+ clone: boolean;
437
+ apiMethods?: ("aggregate" | "update" | "delete" | "search" | "list" | "upsert" | "history" | "get" | "create" | "bulk" | "restore" | "purge" | "import" | "export")[] | undefined;
438
+ } | undefined;
439
+ recordTypes?: string[] | undefined;
440
+ sharingModel?: "full" | "private" | "read" | "read_write" | undefined;
441
+ keyPrefix?: string | undefined;
442
+ actions?: {
443
+ name: string;
444
+ label: string | {
445
+ key: string;
446
+ defaultValue?: string | undefined;
447
+ params?: Record<string, string | number | boolean> | undefined;
448
+ };
449
+ type: "url" | "script" | "modal" | "flow" | "api";
450
+ refreshAfter: boolean;
451
+ objectName?: string | undefined;
452
+ icon?: string | undefined;
453
+ locations?: ("list_toolbar" | "list_item" | "record_header" | "record_more" | "record_related" | "global_nav")[] | undefined;
454
+ component?: "action:button" | "action:icon" | "action:menu" | "action:group" | undefined;
455
+ target?: string | undefined;
456
+ execute?: string | undefined;
457
+ params?: {
458
+ name: string;
459
+ label: string | {
460
+ key: string;
461
+ defaultValue?: string | undefined;
462
+ params?: Record<string, string | number | boolean> | undefined;
463
+ };
464
+ type: "number" | "boolean" | "date" | "lookup" | "file" | "url" | "json" | "text" | "textarea" | "email" | "phone" | "password" | "markdown" | "html" | "richtext" | "currency" | "percent" | "datetime" | "time" | "toggle" | "select" | "multiselect" | "radio" | "checkboxes" | "master_detail" | "tree" | "image" | "avatar" | "video" | "audio" | "formula" | "summary" | "autonumber" | "location" | "address" | "code" | "color" | "rating" | "slider" | "signature" | "qrcode" | "progress" | "tags" | "vector";
465
+ required: boolean;
466
+ options?: {
467
+ label: string | {
468
+ key: string;
469
+ defaultValue?: string | undefined;
470
+ params?: Record<string, string | number | boolean> | undefined;
471
+ };
472
+ value: string;
473
+ }[] | undefined;
474
+ }[] | undefined;
475
+ variant?: "link" | "primary" | "secondary" | "danger" | "ghost" | undefined;
476
+ confirmText?: string | {
477
+ key: string;
478
+ defaultValue?: string | undefined;
479
+ params?: Record<string, string | number | boolean> | undefined;
480
+ } | undefined;
481
+ successMessage?: string | {
482
+ key: string;
483
+ defaultValue?: string | undefined;
484
+ params?: Record<string, string | number | boolean> | undefined;
485
+ } | undefined;
486
+ visible?: string | undefined;
487
+ disabled?: string | boolean | undefined;
488
+ shortcut?: string | undefined;
489
+ bulkEnabled?: boolean | undefined;
490
+ timeout?: number | undefined;
491
+ aria?: {
492
+ ariaLabel?: string | {
493
+ key: string;
494
+ defaultValue?: string | undefined;
495
+ params?: Record<string, string | number | boolean> | undefined;
496
+ } | undefined;
497
+ ariaDescribedBy?: string | undefined;
498
+ role?: string | undefined;
499
+ } | undefined;
500
+ }[] | undefined;
501
+ }, "fields"> & Pick<{
502
+ readonly namespace: "sys";
503
+ readonly name: "role";
504
+ readonly label: "Role";
505
+ readonly pluralLabel: "Roles";
506
+ readonly icon: "shield";
507
+ readonly isSystem: true;
508
+ readonly description: "Role definitions for RBAC access control";
509
+ readonly titleFormat: "{name}";
510
+ readonly compactLayout: ["name", "label", "active"];
511
+ readonly fields: {
512
+ readonly id: {
513
+ readonly format?: string | undefined;
514
+ readonly expression?: string | undefined;
515
+ readonly readonly?: boolean | undefined;
516
+ readonly defaultValue?: unknown;
517
+ readonly min?: number | undefined;
518
+ readonly max?: number | undefined;
519
+ readonly name?: string | undefined;
520
+ readonly encryptionConfig?: {
521
+ enabled: boolean;
522
+ algorithm: "aes-256-gcm" | "aes-256-cbc" | "chacha20-poly1305";
523
+ keyManagement: {
524
+ provider: "local" | "aws-kms" | "azure-key-vault" | "gcp-kms" | "hashicorp-vault";
525
+ keyId?: string | undefined;
526
+ rotationPolicy?: {
527
+ enabled: boolean;
528
+ frequencyDays: number;
529
+ retainOldVersions: number;
530
+ autoRotate: boolean;
531
+ } | undefined;
532
+ };
533
+ scope: "table" | "record" | "field" | "database";
534
+ deterministicEncryption: boolean;
535
+ searchableEncryption: boolean;
536
+ } | undefined;
537
+ readonly label?: string | undefined;
538
+ readonly precision?: number | undefined;
539
+ readonly description?: string | undefined;
540
+ readonly columnName?: string | undefined;
541
+ readonly required?: boolean | undefined;
542
+ readonly searchable?: boolean | undefined;
543
+ readonly multiple?: boolean | undefined;
544
+ readonly unique?: boolean | undefined;
545
+ readonly maxLength?: number | undefined;
546
+ readonly minLength?: number | undefined;
547
+ readonly scale?: number | undefined;
548
+ readonly options?: {
549
+ label: string;
550
+ value: string;
551
+ color?: string | undefined;
552
+ default?: boolean | undefined;
553
+ }[] | undefined;
554
+ readonly reference?: string | undefined;
555
+ readonly referenceFilters?: string[] | undefined;
556
+ readonly writeRequiresMasterRead?: boolean | undefined;
557
+ readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
558
+ readonly summaryOperations?: {
559
+ object: string;
560
+ field: string;
561
+ function: "count" | "sum" | "avg" | "min" | "max";
562
+ } | undefined;
563
+ readonly language?: string | undefined;
564
+ readonly theme?: string | undefined;
565
+ readonly lineNumbers?: boolean | undefined;
566
+ readonly maxRating?: number | undefined;
567
+ readonly allowHalf?: boolean | undefined;
568
+ readonly displayMap?: boolean | undefined;
569
+ readonly allowGeocoding?: boolean | undefined;
570
+ readonly addressFormat?: "us" | "uk" | "international" | undefined;
571
+ readonly colorFormat?: "hex" | "rgb" | "rgba" | "hsl" | undefined;
572
+ readonly allowAlpha?: boolean | undefined;
573
+ readonly presetColors?: string[] | undefined;
574
+ readonly step?: number | undefined;
575
+ readonly showValue?: boolean | undefined;
576
+ readonly marks?: Record<string, string> | undefined;
577
+ readonly barcodeFormat?: "qr" | "ean13" | "ean8" | "code128" | "code39" | "upca" | "upce" | undefined;
578
+ readonly qrErrorCorrection?: "L" | "M" | "Q" | "H" | undefined;
579
+ readonly displayValue?: boolean | undefined;
580
+ readonly allowScanning?: boolean | undefined;
581
+ readonly currencyConfig?: {
582
+ precision: number;
583
+ currencyMode: "dynamic" | "fixed";
584
+ defaultCurrency: string;
585
+ } | undefined;
586
+ readonly vectorConfig?: {
587
+ dimensions: number;
588
+ distanceMetric: "cosine" | "euclidean" | "dotProduct" | "manhattan";
589
+ normalized: boolean;
590
+ indexed: boolean;
591
+ indexType?: "hnsw" | "ivfflat" | "flat" | undefined;
592
+ } | undefined;
593
+ readonly fileAttachmentConfig?: {
594
+ virusScan: boolean;
595
+ virusScanOnUpload: boolean;
596
+ quarantineOnThreat: boolean;
597
+ allowMultiple: boolean;
598
+ allowReplace: boolean;
599
+ allowDelete: boolean;
600
+ requireUpload: boolean;
601
+ extractMetadata: boolean;
602
+ extractText: boolean;
603
+ versioningEnabled: boolean;
604
+ publicRead: boolean;
605
+ presignedUrlExpiry: number;
606
+ minSize?: number | undefined;
607
+ maxSize?: number | undefined;
608
+ allowedTypes?: string[] | undefined;
609
+ blockedTypes?: string[] | undefined;
610
+ allowedMimeTypes?: string[] | undefined;
611
+ blockedMimeTypes?: string[] | undefined;
612
+ virusScanProvider?: "custom" | "clamav" | "virustotal" | "metadefender" | undefined;
613
+ storageProvider?: string | undefined;
614
+ storageBucket?: string | undefined;
615
+ storagePrefix?: string | undefined;
616
+ imageValidation?: {
617
+ generateThumbnails: boolean;
618
+ preserveMetadata: boolean;
619
+ autoRotate: boolean;
620
+ minWidth?: number | undefined;
621
+ maxWidth?: number | undefined;
622
+ minHeight?: number | undefined;
623
+ maxHeight?: number | undefined;
624
+ aspectRatio?: string | undefined;
625
+ thumbnailSizes?: {
626
+ name: string;
627
+ width: number;
628
+ height: number;
629
+ crop: boolean;
630
+ }[] | undefined;
631
+ } | undefined;
632
+ maxVersions?: number | undefined;
633
+ } | undefined;
634
+ readonly maskingRule?: {
635
+ field: string;
636
+ strategy: "redact" | "partial" | "hash" | "tokenize" | "randomize" | "nullify" | "substitute";
637
+ preserveFormat: boolean;
638
+ preserveLength: boolean;
639
+ pattern?: string | undefined;
640
+ roles?: string[] | undefined;
641
+ exemptRoles?: string[] | undefined;
642
+ } | undefined;
643
+ readonly auditTrail?: boolean | undefined;
644
+ readonly dependencies?: string[] | undefined;
645
+ readonly cached?: {
646
+ enabled: boolean;
647
+ ttl: number;
648
+ invalidateOn: string[];
649
+ } | undefined;
650
+ readonly dataQuality?: {
651
+ uniqueness: boolean;
652
+ completeness: number;
653
+ accuracy?: {
654
+ source: string;
655
+ threshold: number;
656
+ } | undefined;
657
+ } | undefined;
658
+ readonly group?: string | undefined;
659
+ readonly conditionalRequired?: string | undefined;
660
+ readonly hidden?: boolean | undefined;
661
+ readonly sortable?: boolean | undefined;
662
+ readonly inlineHelpText?: string | undefined;
663
+ readonly trackFeedHistory?: boolean | undefined;
664
+ readonly caseSensitive?: boolean | undefined;
665
+ readonly autonumberFormat?: string | undefined;
666
+ readonly index?: boolean | undefined;
667
+ readonly externalId?: boolean | undefined;
668
+ readonly type: "text";
669
+ };
670
+ readonly created_at: {
671
+ readonly format?: string | undefined;
672
+ readonly expression?: string | undefined;
673
+ readonly readonly?: boolean | undefined;
674
+ readonly defaultValue?: unknown;
675
+ readonly min?: number | undefined;
676
+ readonly max?: number | undefined;
677
+ readonly name?: string | undefined;
678
+ readonly encryptionConfig?: {
679
+ enabled: boolean;
680
+ algorithm: "aes-256-gcm" | "aes-256-cbc" | "chacha20-poly1305";
681
+ keyManagement: {
682
+ provider: "local" | "aws-kms" | "azure-key-vault" | "gcp-kms" | "hashicorp-vault";
683
+ keyId?: string | undefined;
684
+ rotationPolicy?: {
685
+ enabled: boolean;
686
+ frequencyDays: number;
687
+ retainOldVersions: number;
688
+ autoRotate: boolean;
689
+ } | undefined;
690
+ };
691
+ scope: "table" | "record" | "field" | "database";
692
+ deterministicEncryption: boolean;
693
+ searchableEncryption: boolean;
694
+ } | undefined;
695
+ readonly label?: string | undefined;
696
+ readonly precision?: number | undefined;
697
+ readonly description?: string | undefined;
698
+ readonly columnName?: string | undefined;
699
+ readonly required?: boolean | undefined;
700
+ readonly searchable?: boolean | undefined;
701
+ readonly multiple?: boolean | undefined;
702
+ readonly unique?: boolean | undefined;
703
+ readonly maxLength?: number | undefined;
704
+ readonly minLength?: number | undefined;
705
+ readonly scale?: number | undefined;
706
+ readonly options?: {
707
+ label: string;
708
+ value: string;
709
+ color?: string | undefined;
710
+ default?: boolean | undefined;
711
+ }[] | undefined;
712
+ readonly reference?: string | undefined;
713
+ readonly referenceFilters?: string[] | undefined;
714
+ readonly writeRequiresMasterRead?: boolean | undefined;
715
+ readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
716
+ readonly summaryOperations?: {
717
+ object: string;
718
+ field: string;
719
+ function: "count" | "sum" | "avg" | "min" | "max";
720
+ } | undefined;
721
+ readonly language?: string | undefined;
722
+ readonly theme?: string | undefined;
723
+ readonly lineNumbers?: boolean | undefined;
724
+ readonly maxRating?: number | undefined;
725
+ readonly allowHalf?: boolean | undefined;
726
+ readonly displayMap?: boolean | undefined;
727
+ readonly allowGeocoding?: boolean | undefined;
728
+ readonly addressFormat?: "us" | "uk" | "international" | undefined;
729
+ readonly colorFormat?: "hex" | "rgb" | "rgba" | "hsl" | undefined;
730
+ readonly allowAlpha?: boolean | undefined;
731
+ readonly presetColors?: string[] | undefined;
732
+ readonly step?: number | undefined;
733
+ readonly showValue?: boolean | undefined;
734
+ readonly marks?: Record<string, string> | undefined;
735
+ readonly barcodeFormat?: "qr" | "ean13" | "ean8" | "code128" | "code39" | "upca" | "upce" | undefined;
736
+ readonly qrErrorCorrection?: "L" | "M" | "Q" | "H" | undefined;
737
+ readonly displayValue?: boolean | undefined;
738
+ readonly allowScanning?: boolean | undefined;
739
+ readonly currencyConfig?: {
740
+ precision: number;
741
+ currencyMode: "dynamic" | "fixed";
742
+ defaultCurrency: string;
743
+ } | undefined;
744
+ readonly vectorConfig?: {
745
+ dimensions: number;
746
+ distanceMetric: "cosine" | "euclidean" | "dotProduct" | "manhattan";
747
+ normalized: boolean;
748
+ indexed: boolean;
749
+ indexType?: "hnsw" | "ivfflat" | "flat" | undefined;
750
+ } | undefined;
751
+ readonly fileAttachmentConfig?: {
752
+ virusScan: boolean;
753
+ virusScanOnUpload: boolean;
754
+ quarantineOnThreat: boolean;
755
+ allowMultiple: boolean;
756
+ allowReplace: boolean;
757
+ allowDelete: boolean;
758
+ requireUpload: boolean;
759
+ extractMetadata: boolean;
760
+ extractText: boolean;
761
+ versioningEnabled: boolean;
762
+ publicRead: boolean;
763
+ presignedUrlExpiry: number;
764
+ minSize?: number | undefined;
765
+ maxSize?: number | undefined;
766
+ allowedTypes?: string[] | undefined;
767
+ blockedTypes?: string[] | undefined;
768
+ allowedMimeTypes?: string[] | undefined;
769
+ blockedMimeTypes?: string[] | undefined;
770
+ virusScanProvider?: "custom" | "clamav" | "virustotal" | "metadefender" | undefined;
771
+ storageProvider?: string | undefined;
772
+ storageBucket?: string | undefined;
773
+ storagePrefix?: string | undefined;
774
+ imageValidation?: {
775
+ generateThumbnails: boolean;
776
+ preserveMetadata: boolean;
777
+ autoRotate: boolean;
778
+ minWidth?: number | undefined;
779
+ maxWidth?: number | undefined;
780
+ minHeight?: number | undefined;
781
+ maxHeight?: number | undefined;
782
+ aspectRatio?: string | undefined;
783
+ thumbnailSizes?: {
784
+ name: string;
785
+ width: number;
786
+ height: number;
787
+ crop: boolean;
788
+ }[] | undefined;
789
+ } | undefined;
790
+ maxVersions?: number | undefined;
791
+ } | undefined;
792
+ readonly maskingRule?: {
793
+ field: string;
794
+ strategy: "redact" | "partial" | "hash" | "tokenize" | "randomize" | "nullify" | "substitute";
795
+ preserveFormat: boolean;
796
+ preserveLength: boolean;
797
+ pattern?: string | undefined;
798
+ roles?: string[] | undefined;
799
+ exemptRoles?: string[] | undefined;
800
+ } | undefined;
801
+ readonly auditTrail?: boolean | undefined;
802
+ readonly dependencies?: string[] | undefined;
803
+ readonly cached?: {
804
+ enabled: boolean;
805
+ ttl: number;
806
+ invalidateOn: string[];
807
+ } | undefined;
808
+ readonly dataQuality?: {
809
+ uniqueness: boolean;
810
+ completeness: number;
811
+ accuracy?: {
812
+ source: string;
813
+ threshold: number;
814
+ } | undefined;
815
+ } | undefined;
816
+ readonly group?: string | undefined;
817
+ readonly conditionalRequired?: string | undefined;
818
+ readonly hidden?: boolean | undefined;
819
+ readonly sortable?: boolean | undefined;
820
+ readonly inlineHelpText?: string | undefined;
821
+ readonly trackFeedHistory?: boolean | undefined;
822
+ readonly caseSensitive?: boolean | undefined;
823
+ readonly autonumberFormat?: string | undefined;
824
+ readonly index?: boolean | undefined;
825
+ readonly externalId?: boolean | undefined;
826
+ readonly type: "datetime";
827
+ };
828
+ readonly updated_at: {
829
+ readonly format?: string | undefined;
830
+ readonly expression?: string | undefined;
831
+ readonly readonly?: boolean | undefined;
832
+ readonly defaultValue?: unknown;
833
+ readonly min?: number | undefined;
834
+ readonly max?: number | undefined;
835
+ readonly name?: string | undefined;
836
+ readonly encryptionConfig?: {
837
+ enabled: boolean;
838
+ algorithm: "aes-256-gcm" | "aes-256-cbc" | "chacha20-poly1305";
839
+ keyManagement: {
840
+ provider: "local" | "aws-kms" | "azure-key-vault" | "gcp-kms" | "hashicorp-vault";
841
+ keyId?: string | undefined;
842
+ rotationPolicy?: {
843
+ enabled: boolean;
844
+ frequencyDays: number;
845
+ retainOldVersions: number;
846
+ autoRotate: boolean;
847
+ } | undefined;
848
+ };
849
+ scope: "table" | "record" | "field" | "database";
850
+ deterministicEncryption: boolean;
851
+ searchableEncryption: boolean;
852
+ } | undefined;
853
+ readonly label?: string | undefined;
854
+ readonly precision?: number | undefined;
855
+ readonly description?: string | undefined;
856
+ readonly columnName?: string | undefined;
857
+ readonly required?: boolean | undefined;
858
+ readonly searchable?: boolean | undefined;
859
+ readonly multiple?: boolean | undefined;
860
+ readonly unique?: boolean | undefined;
861
+ readonly maxLength?: number | undefined;
862
+ readonly minLength?: number | undefined;
863
+ readonly scale?: number | undefined;
864
+ readonly options?: {
865
+ label: string;
866
+ value: string;
867
+ color?: string | undefined;
868
+ default?: boolean | undefined;
869
+ }[] | undefined;
870
+ readonly reference?: string | undefined;
871
+ readonly referenceFilters?: string[] | undefined;
872
+ readonly writeRequiresMasterRead?: boolean | undefined;
873
+ readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
874
+ readonly summaryOperations?: {
875
+ object: string;
876
+ field: string;
877
+ function: "count" | "sum" | "avg" | "min" | "max";
878
+ } | undefined;
879
+ readonly language?: string | undefined;
880
+ readonly theme?: string | undefined;
881
+ readonly lineNumbers?: boolean | undefined;
882
+ readonly maxRating?: number | undefined;
883
+ readonly allowHalf?: boolean | undefined;
884
+ readonly displayMap?: boolean | undefined;
885
+ readonly allowGeocoding?: boolean | undefined;
886
+ readonly addressFormat?: "us" | "uk" | "international" | undefined;
887
+ readonly colorFormat?: "hex" | "rgb" | "rgba" | "hsl" | undefined;
888
+ readonly allowAlpha?: boolean | undefined;
889
+ readonly presetColors?: string[] | undefined;
890
+ readonly step?: number | undefined;
891
+ readonly showValue?: boolean | undefined;
892
+ readonly marks?: Record<string, string> | undefined;
893
+ readonly barcodeFormat?: "qr" | "ean13" | "ean8" | "code128" | "code39" | "upca" | "upce" | undefined;
894
+ readonly qrErrorCorrection?: "L" | "M" | "Q" | "H" | undefined;
895
+ readonly displayValue?: boolean | undefined;
896
+ readonly allowScanning?: boolean | undefined;
897
+ readonly currencyConfig?: {
898
+ precision: number;
899
+ currencyMode: "dynamic" | "fixed";
900
+ defaultCurrency: string;
901
+ } | undefined;
902
+ readonly vectorConfig?: {
903
+ dimensions: number;
904
+ distanceMetric: "cosine" | "euclidean" | "dotProduct" | "manhattan";
905
+ normalized: boolean;
906
+ indexed: boolean;
907
+ indexType?: "hnsw" | "ivfflat" | "flat" | undefined;
908
+ } | undefined;
909
+ readonly fileAttachmentConfig?: {
910
+ virusScan: boolean;
911
+ virusScanOnUpload: boolean;
912
+ quarantineOnThreat: boolean;
913
+ allowMultiple: boolean;
914
+ allowReplace: boolean;
915
+ allowDelete: boolean;
916
+ requireUpload: boolean;
917
+ extractMetadata: boolean;
918
+ extractText: boolean;
919
+ versioningEnabled: boolean;
920
+ publicRead: boolean;
921
+ presignedUrlExpiry: number;
922
+ minSize?: number | undefined;
923
+ maxSize?: number | undefined;
924
+ allowedTypes?: string[] | undefined;
925
+ blockedTypes?: string[] | undefined;
926
+ allowedMimeTypes?: string[] | undefined;
927
+ blockedMimeTypes?: string[] | undefined;
928
+ virusScanProvider?: "custom" | "clamav" | "virustotal" | "metadefender" | undefined;
929
+ storageProvider?: string | undefined;
930
+ storageBucket?: string | undefined;
931
+ storagePrefix?: string | undefined;
932
+ imageValidation?: {
933
+ generateThumbnails: boolean;
934
+ preserveMetadata: boolean;
935
+ autoRotate: boolean;
936
+ minWidth?: number | undefined;
937
+ maxWidth?: number | undefined;
938
+ minHeight?: number | undefined;
939
+ maxHeight?: number | undefined;
940
+ aspectRatio?: string | undefined;
941
+ thumbnailSizes?: {
942
+ name: string;
943
+ width: number;
944
+ height: number;
945
+ crop: boolean;
946
+ }[] | undefined;
947
+ } | undefined;
948
+ maxVersions?: number | undefined;
949
+ } | undefined;
950
+ readonly maskingRule?: {
951
+ field: string;
952
+ strategy: "redact" | "partial" | "hash" | "tokenize" | "randomize" | "nullify" | "substitute";
953
+ preserveFormat: boolean;
954
+ preserveLength: boolean;
955
+ pattern?: string | undefined;
956
+ roles?: string[] | undefined;
957
+ exemptRoles?: string[] | undefined;
958
+ } | undefined;
959
+ readonly auditTrail?: boolean | undefined;
960
+ readonly dependencies?: string[] | undefined;
961
+ readonly cached?: {
962
+ enabled: boolean;
963
+ ttl: number;
964
+ invalidateOn: string[];
965
+ } | undefined;
966
+ readonly dataQuality?: {
967
+ uniqueness: boolean;
968
+ completeness: number;
969
+ accuracy?: {
970
+ source: string;
971
+ threshold: number;
972
+ } | undefined;
973
+ } | undefined;
974
+ readonly group?: string | undefined;
975
+ readonly conditionalRequired?: string | undefined;
976
+ readonly hidden?: boolean | undefined;
977
+ readonly sortable?: boolean | undefined;
978
+ readonly inlineHelpText?: string | undefined;
979
+ readonly trackFeedHistory?: boolean | undefined;
980
+ readonly caseSensitive?: boolean | undefined;
981
+ readonly autonumberFormat?: string | undefined;
982
+ readonly index?: boolean | undefined;
983
+ readonly externalId?: boolean | undefined;
984
+ readonly type: "datetime";
985
+ };
986
+ readonly name: {
987
+ readonly format?: string | undefined;
988
+ readonly expression?: string | undefined;
989
+ readonly readonly?: boolean | undefined;
990
+ readonly defaultValue?: unknown;
991
+ readonly min?: number | undefined;
992
+ readonly max?: number | undefined;
993
+ readonly name?: string | undefined;
994
+ readonly encryptionConfig?: {
995
+ enabled: boolean;
996
+ algorithm: "aes-256-gcm" | "aes-256-cbc" | "chacha20-poly1305";
997
+ keyManagement: {
998
+ provider: "local" | "aws-kms" | "azure-key-vault" | "gcp-kms" | "hashicorp-vault";
999
+ keyId?: string | undefined;
1000
+ rotationPolicy?: {
1001
+ enabled: boolean;
1002
+ frequencyDays: number;
1003
+ retainOldVersions: number;
1004
+ autoRotate: boolean;
1005
+ } | undefined;
1006
+ };
1007
+ scope: "table" | "record" | "field" | "database";
1008
+ deterministicEncryption: boolean;
1009
+ searchableEncryption: boolean;
1010
+ } | undefined;
1011
+ readonly label?: string | undefined;
1012
+ readonly precision?: number | undefined;
1013
+ readonly description?: string | undefined;
1014
+ readonly columnName?: string | undefined;
1015
+ readonly required?: boolean | undefined;
1016
+ readonly searchable?: boolean | undefined;
1017
+ readonly multiple?: boolean | undefined;
1018
+ readonly unique?: boolean | undefined;
1019
+ readonly maxLength?: number | undefined;
1020
+ readonly minLength?: number | undefined;
1021
+ readonly scale?: number | undefined;
1022
+ readonly options?: {
1023
+ label: string;
1024
+ value: string;
1025
+ color?: string | undefined;
1026
+ default?: boolean | undefined;
1027
+ }[] | undefined;
1028
+ readonly reference?: string | undefined;
1029
+ readonly referenceFilters?: string[] | undefined;
1030
+ readonly writeRequiresMasterRead?: boolean | undefined;
1031
+ readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
1032
+ readonly summaryOperations?: {
1033
+ object: string;
1034
+ field: string;
1035
+ function: "count" | "sum" | "avg" | "min" | "max";
1036
+ } | undefined;
1037
+ readonly language?: string | undefined;
1038
+ readonly theme?: string | undefined;
1039
+ readonly lineNumbers?: boolean | undefined;
1040
+ readonly maxRating?: number | undefined;
1041
+ readonly allowHalf?: boolean | undefined;
1042
+ readonly displayMap?: boolean | undefined;
1043
+ readonly allowGeocoding?: boolean | undefined;
1044
+ readonly addressFormat?: "us" | "uk" | "international" | undefined;
1045
+ readonly colorFormat?: "hex" | "rgb" | "rgba" | "hsl" | undefined;
1046
+ readonly allowAlpha?: boolean | undefined;
1047
+ readonly presetColors?: string[] | undefined;
1048
+ readonly step?: number | undefined;
1049
+ readonly showValue?: boolean | undefined;
1050
+ readonly marks?: Record<string, string> | undefined;
1051
+ readonly barcodeFormat?: "qr" | "ean13" | "ean8" | "code128" | "code39" | "upca" | "upce" | undefined;
1052
+ readonly qrErrorCorrection?: "L" | "M" | "Q" | "H" | undefined;
1053
+ readonly displayValue?: boolean | undefined;
1054
+ readonly allowScanning?: boolean | undefined;
1055
+ readonly currencyConfig?: {
1056
+ precision: number;
1057
+ currencyMode: "dynamic" | "fixed";
1058
+ defaultCurrency: string;
1059
+ } | undefined;
1060
+ readonly vectorConfig?: {
1061
+ dimensions: number;
1062
+ distanceMetric: "cosine" | "euclidean" | "dotProduct" | "manhattan";
1063
+ normalized: boolean;
1064
+ indexed: boolean;
1065
+ indexType?: "hnsw" | "ivfflat" | "flat" | undefined;
1066
+ } | undefined;
1067
+ readonly fileAttachmentConfig?: {
1068
+ virusScan: boolean;
1069
+ virusScanOnUpload: boolean;
1070
+ quarantineOnThreat: boolean;
1071
+ allowMultiple: boolean;
1072
+ allowReplace: boolean;
1073
+ allowDelete: boolean;
1074
+ requireUpload: boolean;
1075
+ extractMetadata: boolean;
1076
+ extractText: boolean;
1077
+ versioningEnabled: boolean;
1078
+ publicRead: boolean;
1079
+ presignedUrlExpiry: number;
1080
+ minSize?: number | undefined;
1081
+ maxSize?: number | undefined;
1082
+ allowedTypes?: string[] | undefined;
1083
+ blockedTypes?: string[] | undefined;
1084
+ allowedMimeTypes?: string[] | undefined;
1085
+ blockedMimeTypes?: string[] | undefined;
1086
+ virusScanProvider?: "custom" | "clamav" | "virustotal" | "metadefender" | undefined;
1087
+ storageProvider?: string | undefined;
1088
+ storageBucket?: string | undefined;
1089
+ storagePrefix?: string | undefined;
1090
+ imageValidation?: {
1091
+ generateThumbnails: boolean;
1092
+ preserveMetadata: boolean;
1093
+ autoRotate: boolean;
1094
+ minWidth?: number | undefined;
1095
+ maxWidth?: number | undefined;
1096
+ minHeight?: number | undefined;
1097
+ maxHeight?: number | undefined;
1098
+ aspectRatio?: string | undefined;
1099
+ thumbnailSizes?: {
1100
+ name: string;
1101
+ width: number;
1102
+ height: number;
1103
+ crop: boolean;
1104
+ }[] | undefined;
1105
+ } | undefined;
1106
+ maxVersions?: number | undefined;
1107
+ } | undefined;
1108
+ readonly maskingRule?: {
1109
+ field: string;
1110
+ strategy: "redact" | "partial" | "hash" | "tokenize" | "randomize" | "nullify" | "substitute";
1111
+ preserveFormat: boolean;
1112
+ preserveLength: boolean;
1113
+ pattern?: string | undefined;
1114
+ roles?: string[] | undefined;
1115
+ exemptRoles?: string[] | undefined;
1116
+ } | undefined;
1117
+ readonly auditTrail?: boolean | undefined;
1118
+ readonly dependencies?: string[] | undefined;
1119
+ readonly cached?: {
1120
+ enabled: boolean;
1121
+ ttl: number;
1122
+ invalidateOn: string[];
1123
+ } | undefined;
1124
+ readonly dataQuality?: {
1125
+ uniqueness: boolean;
1126
+ completeness: number;
1127
+ accuracy?: {
1128
+ source: string;
1129
+ threshold: number;
1130
+ } | undefined;
1131
+ } | undefined;
1132
+ readonly group?: string | undefined;
1133
+ readonly conditionalRequired?: string | undefined;
1134
+ readonly hidden?: boolean | undefined;
1135
+ readonly sortable?: boolean | undefined;
1136
+ readonly inlineHelpText?: string | undefined;
1137
+ readonly trackFeedHistory?: boolean | undefined;
1138
+ readonly caseSensitive?: boolean | undefined;
1139
+ readonly autonumberFormat?: string | undefined;
1140
+ readonly index?: boolean | undefined;
1141
+ readonly externalId?: boolean | undefined;
1142
+ readonly type: "text";
1143
+ };
1144
+ readonly label: {
1145
+ readonly format?: string | undefined;
1146
+ readonly expression?: string | undefined;
1147
+ readonly readonly?: boolean | undefined;
1148
+ readonly defaultValue?: unknown;
1149
+ readonly min?: number | undefined;
1150
+ readonly max?: number | undefined;
1151
+ readonly name?: string | undefined;
1152
+ readonly encryptionConfig?: {
1153
+ enabled: boolean;
1154
+ algorithm: "aes-256-gcm" | "aes-256-cbc" | "chacha20-poly1305";
1155
+ keyManagement: {
1156
+ provider: "local" | "aws-kms" | "azure-key-vault" | "gcp-kms" | "hashicorp-vault";
1157
+ keyId?: string | undefined;
1158
+ rotationPolicy?: {
1159
+ enabled: boolean;
1160
+ frequencyDays: number;
1161
+ retainOldVersions: number;
1162
+ autoRotate: boolean;
1163
+ } | undefined;
1164
+ };
1165
+ scope: "table" | "record" | "field" | "database";
1166
+ deterministicEncryption: boolean;
1167
+ searchableEncryption: boolean;
1168
+ } | undefined;
1169
+ readonly label?: string | undefined;
1170
+ readonly precision?: number | undefined;
1171
+ readonly description?: string | undefined;
1172
+ readonly columnName?: string | undefined;
1173
+ readonly required?: boolean | undefined;
1174
+ readonly searchable?: boolean | undefined;
1175
+ readonly multiple?: boolean | undefined;
1176
+ readonly unique?: boolean | undefined;
1177
+ readonly maxLength?: number | undefined;
1178
+ readonly minLength?: number | undefined;
1179
+ readonly scale?: number | undefined;
1180
+ readonly options?: {
1181
+ label: string;
1182
+ value: string;
1183
+ color?: string | undefined;
1184
+ default?: boolean | undefined;
1185
+ }[] | undefined;
1186
+ readonly reference?: string | undefined;
1187
+ readonly referenceFilters?: string[] | undefined;
1188
+ readonly writeRequiresMasterRead?: boolean | undefined;
1189
+ readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
1190
+ readonly summaryOperations?: {
1191
+ object: string;
1192
+ field: string;
1193
+ function: "count" | "sum" | "avg" | "min" | "max";
1194
+ } | undefined;
1195
+ readonly language?: string | undefined;
1196
+ readonly theme?: string | undefined;
1197
+ readonly lineNumbers?: boolean | undefined;
1198
+ readonly maxRating?: number | undefined;
1199
+ readonly allowHalf?: boolean | undefined;
1200
+ readonly displayMap?: boolean | undefined;
1201
+ readonly allowGeocoding?: boolean | undefined;
1202
+ readonly addressFormat?: "us" | "uk" | "international" | undefined;
1203
+ readonly colorFormat?: "hex" | "rgb" | "rgba" | "hsl" | undefined;
1204
+ readonly allowAlpha?: boolean | undefined;
1205
+ readonly presetColors?: string[] | undefined;
1206
+ readonly step?: number | undefined;
1207
+ readonly showValue?: boolean | undefined;
1208
+ readonly marks?: Record<string, string> | undefined;
1209
+ readonly barcodeFormat?: "qr" | "ean13" | "ean8" | "code128" | "code39" | "upca" | "upce" | undefined;
1210
+ readonly qrErrorCorrection?: "L" | "M" | "Q" | "H" | undefined;
1211
+ readonly displayValue?: boolean | undefined;
1212
+ readonly allowScanning?: boolean | undefined;
1213
+ readonly currencyConfig?: {
1214
+ precision: number;
1215
+ currencyMode: "dynamic" | "fixed";
1216
+ defaultCurrency: string;
1217
+ } | undefined;
1218
+ readonly vectorConfig?: {
1219
+ dimensions: number;
1220
+ distanceMetric: "cosine" | "euclidean" | "dotProduct" | "manhattan";
1221
+ normalized: boolean;
1222
+ indexed: boolean;
1223
+ indexType?: "hnsw" | "ivfflat" | "flat" | undefined;
1224
+ } | undefined;
1225
+ readonly fileAttachmentConfig?: {
1226
+ virusScan: boolean;
1227
+ virusScanOnUpload: boolean;
1228
+ quarantineOnThreat: boolean;
1229
+ allowMultiple: boolean;
1230
+ allowReplace: boolean;
1231
+ allowDelete: boolean;
1232
+ requireUpload: boolean;
1233
+ extractMetadata: boolean;
1234
+ extractText: boolean;
1235
+ versioningEnabled: boolean;
1236
+ publicRead: boolean;
1237
+ presignedUrlExpiry: number;
1238
+ minSize?: number | undefined;
1239
+ maxSize?: number | undefined;
1240
+ allowedTypes?: string[] | undefined;
1241
+ blockedTypes?: string[] | undefined;
1242
+ allowedMimeTypes?: string[] | undefined;
1243
+ blockedMimeTypes?: string[] | undefined;
1244
+ virusScanProvider?: "custom" | "clamav" | "virustotal" | "metadefender" | undefined;
1245
+ storageProvider?: string | undefined;
1246
+ storageBucket?: string | undefined;
1247
+ storagePrefix?: string | undefined;
1248
+ imageValidation?: {
1249
+ generateThumbnails: boolean;
1250
+ preserveMetadata: boolean;
1251
+ autoRotate: boolean;
1252
+ minWidth?: number | undefined;
1253
+ maxWidth?: number | undefined;
1254
+ minHeight?: number | undefined;
1255
+ maxHeight?: number | undefined;
1256
+ aspectRatio?: string | undefined;
1257
+ thumbnailSizes?: {
1258
+ name: string;
1259
+ width: number;
1260
+ height: number;
1261
+ crop: boolean;
1262
+ }[] | undefined;
1263
+ } | undefined;
1264
+ maxVersions?: number | undefined;
1265
+ } | undefined;
1266
+ readonly maskingRule?: {
1267
+ field: string;
1268
+ strategy: "redact" | "partial" | "hash" | "tokenize" | "randomize" | "nullify" | "substitute";
1269
+ preserveFormat: boolean;
1270
+ preserveLength: boolean;
1271
+ pattern?: string | undefined;
1272
+ roles?: string[] | undefined;
1273
+ exemptRoles?: string[] | undefined;
1274
+ } | undefined;
1275
+ readonly auditTrail?: boolean | undefined;
1276
+ readonly dependencies?: string[] | undefined;
1277
+ readonly cached?: {
1278
+ enabled: boolean;
1279
+ ttl: number;
1280
+ invalidateOn: string[];
1281
+ } | undefined;
1282
+ readonly dataQuality?: {
1283
+ uniqueness: boolean;
1284
+ completeness: number;
1285
+ accuracy?: {
1286
+ source: string;
1287
+ threshold: number;
1288
+ } | undefined;
1289
+ } | undefined;
1290
+ readonly group?: string | undefined;
1291
+ readonly conditionalRequired?: string | undefined;
1292
+ readonly hidden?: boolean | undefined;
1293
+ readonly sortable?: boolean | undefined;
1294
+ readonly inlineHelpText?: string | undefined;
1295
+ readonly trackFeedHistory?: boolean | undefined;
1296
+ readonly caseSensitive?: boolean | undefined;
1297
+ readonly autonumberFormat?: string | undefined;
1298
+ readonly index?: boolean | undefined;
1299
+ readonly externalId?: boolean | undefined;
1300
+ readonly type: "text";
1301
+ };
1302
+ readonly description: {
1303
+ readonly format?: string | undefined;
1304
+ readonly expression?: string | undefined;
1305
+ readonly readonly?: boolean | undefined;
1306
+ readonly defaultValue?: unknown;
1307
+ readonly min?: number | undefined;
1308
+ readonly max?: number | undefined;
1309
+ readonly name?: string | undefined;
1310
+ readonly encryptionConfig?: {
1311
+ enabled: boolean;
1312
+ algorithm: "aes-256-gcm" | "aes-256-cbc" | "chacha20-poly1305";
1313
+ keyManagement: {
1314
+ provider: "local" | "aws-kms" | "azure-key-vault" | "gcp-kms" | "hashicorp-vault";
1315
+ keyId?: string | undefined;
1316
+ rotationPolicy?: {
1317
+ enabled: boolean;
1318
+ frequencyDays: number;
1319
+ retainOldVersions: number;
1320
+ autoRotate: boolean;
1321
+ } | undefined;
1322
+ };
1323
+ scope: "table" | "record" | "field" | "database";
1324
+ deterministicEncryption: boolean;
1325
+ searchableEncryption: boolean;
1326
+ } | undefined;
1327
+ readonly label?: string | undefined;
1328
+ readonly precision?: number | undefined;
1329
+ readonly description?: string | undefined;
1330
+ readonly columnName?: string | undefined;
1331
+ readonly required?: boolean | undefined;
1332
+ readonly searchable?: boolean | undefined;
1333
+ readonly multiple?: boolean | undefined;
1334
+ readonly unique?: boolean | undefined;
1335
+ readonly maxLength?: number | undefined;
1336
+ readonly minLength?: number | undefined;
1337
+ readonly scale?: number | undefined;
1338
+ readonly options?: {
1339
+ label: string;
1340
+ value: string;
1341
+ color?: string | undefined;
1342
+ default?: boolean | undefined;
1343
+ }[] | undefined;
1344
+ readonly reference?: string | undefined;
1345
+ readonly referenceFilters?: string[] | undefined;
1346
+ readonly writeRequiresMasterRead?: boolean | undefined;
1347
+ readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
1348
+ readonly summaryOperations?: {
1349
+ object: string;
1350
+ field: string;
1351
+ function: "count" | "sum" | "avg" | "min" | "max";
1352
+ } | undefined;
1353
+ readonly language?: string | undefined;
1354
+ readonly theme?: string | undefined;
1355
+ readonly lineNumbers?: boolean | undefined;
1356
+ readonly maxRating?: number | undefined;
1357
+ readonly allowHalf?: boolean | undefined;
1358
+ readonly displayMap?: boolean | undefined;
1359
+ readonly allowGeocoding?: boolean | undefined;
1360
+ readonly addressFormat?: "us" | "uk" | "international" | undefined;
1361
+ readonly colorFormat?: "hex" | "rgb" | "rgba" | "hsl" | undefined;
1362
+ readonly allowAlpha?: boolean | undefined;
1363
+ readonly presetColors?: string[] | undefined;
1364
+ readonly step?: number | undefined;
1365
+ readonly showValue?: boolean | undefined;
1366
+ readonly marks?: Record<string, string> | undefined;
1367
+ readonly barcodeFormat?: "qr" | "ean13" | "ean8" | "code128" | "code39" | "upca" | "upce" | undefined;
1368
+ readonly qrErrorCorrection?: "L" | "M" | "Q" | "H" | undefined;
1369
+ readonly displayValue?: boolean | undefined;
1370
+ readonly allowScanning?: boolean | undefined;
1371
+ readonly currencyConfig?: {
1372
+ precision: number;
1373
+ currencyMode: "dynamic" | "fixed";
1374
+ defaultCurrency: string;
1375
+ } | undefined;
1376
+ readonly vectorConfig?: {
1377
+ dimensions: number;
1378
+ distanceMetric: "cosine" | "euclidean" | "dotProduct" | "manhattan";
1379
+ normalized: boolean;
1380
+ indexed: boolean;
1381
+ indexType?: "hnsw" | "ivfflat" | "flat" | undefined;
1382
+ } | undefined;
1383
+ readonly fileAttachmentConfig?: {
1384
+ virusScan: boolean;
1385
+ virusScanOnUpload: boolean;
1386
+ quarantineOnThreat: boolean;
1387
+ allowMultiple: boolean;
1388
+ allowReplace: boolean;
1389
+ allowDelete: boolean;
1390
+ requireUpload: boolean;
1391
+ extractMetadata: boolean;
1392
+ extractText: boolean;
1393
+ versioningEnabled: boolean;
1394
+ publicRead: boolean;
1395
+ presignedUrlExpiry: number;
1396
+ minSize?: number | undefined;
1397
+ maxSize?: number | undefined;
1398
+ allowedTypes?: string[] | undefined;
1399
+ blockedTypes?: string[] | undefined;
1400
+ allowedMimeTypes?: string[] | undefined;
1401
+ blockedMimeTypes?: string[] | undefined;
1402
+ virusScanProvider?: "custom" | "clamav" | "virustotal" | "metadefender" | undefined;
1403
+ storageProvider?: string | undefined;
1404
+ storageBucket?: string | undefined;
1405
+ storagePrefix?: string | undefined;
1406
+ imageValidation?: {
1407
+ generateThumbnails: boolean;
1408
+ preserveMetadata: boolean;
1409
+ autoRotate: boolean;
1410
+ minWidth?: number | undefined;
1411
+ maxWidth?: number | undefined;
1412
+ minHeight?: number | undefined;
1413
+ maxHeight?: number | undefined;
1414
+ aspectRatio?: string | undefined;
1415
+ thumbnailSizes?: {
1416
+ name: string;
1417
+ width: number;
1418
+ height: number;
1419
+ crop: boolean;
1420
+ }[] | undefined;
1421
+ } | undefined;
1422
+ maxVersions?: number | undefined;
1423
+ } | undefined;
1424
+ readonly maskingRule?: {
1425
+ field: string;
1426
+ strategy: "redact" | "partial" | "hash" | "tokenize" | "randomize" | "nullify" | "substitute";
1427
+ preserveFormat: boolean;
1428
+ preserveLength: boolean;
1429
+ pattern?: string | undefined;
1430
+ roles?: string[] | undefined;
1431
+ exemptRoles?: string[] | undefined;
1432
+ } | undefined;
1433
+ readonly auditTrail?: boolean | undefined;
1434
+ readonly dependencies?: string[] | undefined;
1435
+ readonly cached?: {
1436
+ enabled: boolean;
1437
+ ttl: number;
1438
+ invalidateOn: string[];
1439
+ } | undefined;
1440
+ readonly dataQuality?: {
1441
+ uniqueness: boolean;
1442
+ completeness: number;
1443
+ accuracy?: {
1444
+ source: string;
1445
+ threshold: number;
1446
+ } | undefined;
1447
+ } | undefined;
1448
+ readonly group?: string | undefined;
1449
+ readonly conditionalRequired?: string | undefined;
1450
+ readonly hidden?: boolean | undefined;
1451
+ readonly sortable?: boolean | undefined;
1452
+ readonly inlineHelpText?: string | undefined;
1453
+ readonly trackFeedHistory?: boolean | undefined;
1454
+ readonly caseSensitive?: boolean | undefined;
1455
+ readonly autonumberFormat?: string | undefined;
1456
+ readonly index?: boolean | undefined;
1457
+ readonly externalId?: boolean | undefined;
1458
+ readonly type: "textarea";
1459
+ };
1460
+ readonly permissions: {
1461
+ readonly format?: string | undefined;
1462
+ readonly expression?: string | undefined;
1463
+ readonly readonly?: boolean | undefined;
1464
+ readonly defaultValue?: unknown;
1465
+ readonly min?: number | undefined;
1466
+ readonly max?: number | undefined;
1467
+ readonly name?: string | undefined;
1468
+ readonly encryptionConfig?: {
1469
+ enabled: boolean;
1470
+ algorithm: "aes-256-gcm" | "aes-256-cbc" | "chacha20-poly1305";
1471
+ keyManagement: {
1472
+ provider: "local" | "aws-kms" | "azure-key-vault" | "gcp-kms" | "hashicorp-vault";
1473
+ keyId?: string | undefined;
1474
+ rotationPolicy?: {
1475
+ enabled: boolean;
1476
+ frequencyDays: number;
1477
+ retainOldVersions: number;
1478
+ autoRotate: boolean;
1479
+ } | undefined;
1480
+ };
1481
+ scope: "table" | "record" | "field" | "database";
1482
+ deterministicEncryption: boolean;
1483
+ searchableEncryption: boolean;
1484
+ } | undefined;
1485
+ readonly label?: string | undefined;
1486
+ readonly precision?: number | undefined;
1487
+ readonly description?: string | undefined;
1488
+ readonly columnName?: string | undefined;
1489
+ readonly required?: boolean | undefined;
1490
+ readonly searchable?: boolean | undefined;
1491
+ readonly multiple?: boolean | undefined;
1492
+ readonly unique?: boolean | undefined;
1493
+ readonly maxLength?: number | undefined;
1494
+ readonly minLength?: number | undefined;
1495
+ readonly scale?: number | undefined;
1496
+ readonly options?: {
1497
+ label: string;
1498
+ value: string;
1499
+ color?: string | undefined;
1500
+ default?: boolean | undefined;
1501
+ }[] | undefined;
1502
+ readonly reference?: string | undefined;
1503
+ readonly referenceFilters?: string[] | undefined;
1504
+ readonly writeRequiresMasterRead?: boolean | undefined;
1505
+ readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
1506
+ readonly summaryOperations?: {
1507
+ object: string;
1508
+ field: string;
1509
+ function: "count" | "sum" | "avg" | "min" | "max";
1510
+ } | undefined;
1511
+ readonly language?: string | undefined;
1512
+ readonly theme?: string | undefined;
1513
+ readonly lineNumbers?: boolean | undefined;
1514
+ readonly maxRating?: number | undefined;
1515
+ readonly allowHalf?: boolean | undefined;
1516
+ readonly displayMap?: boolean | undefined;
1517
+ readonly allowGeocoding?: boolean | undefined;
1518
+ readonly addressFormat?: "us" | "uk" | "international" | undefined;
1519
+ readonly colorFormat?: "hex" | "rgb" | "rgba" | "hsl" | undefined;
1520
+ readonly allowAlpha?: boolean | undefined;
1521
+ readonly presetColors?: string[] | undefined;
1522
+ readonly step?: number | undefined;
1523
+ readonly showValue?: boolean | undefined;
1524
+ readonly marks?: Record<string, string> | undefined;
1525
+ readonly barcodeFormat?: "qr" | "ean13" | "ean8" | "code128" | "code39" | "upca" | "upce" | undefined;
1526
+ readonly qrErrorCorrection?: "L" | "M" | "Q" | "H" | undefined;
1527
+ readonly displayValue?: boolean | undefined;
1528
+ readonly allowScanning?: boolean | undefined;
1529
+ readonly currencyConfig?: {
1530
+ precision: number;
1531
+ currencyMode: "dynamic" | "fixed";
1532
+ defaultCurrency: string;
1533
+ } | undefined;
1534
+ readonly vectorConfig?: {
1535
+ dimensions: number;
1536
+ distanceMetric: "cosine" | "euclidean" | "dotProduct" | "manhattan";
1537
+ normalized: boolean;
1538
+ indexed: boolean;
1539
+ indexType?: "hnsw" | "ivfflat" | "flat" | undefined;
1540
+ } | undefined;
1541
+ readonly fileAttachmentConfig?: {
1542
+ virusScan: boolean;
1543
+ virusScanOnUpload: boolean;
1544
+ quarantineOnThreat: boolean;
1545
+ allowMultiple: boolean;
1546
+ allowReplace: boolean;
1547
+ allowDelete: boolean;
1548
+ requireUpload: boolean;
1549
+ extractMetadata: boolean;
1550
+ extractText: boolean;
1551
+ versioningEnabled: boolean;
1552
+ publicRead: boolean;
1553
+ presignedUrlExpiry: number;
1554
+ minSize?: number | undefined;
1555
+ maxSize?: number | undefined;
1556
+ allowedTypes?: string[] | undefined;
1557
+ blockedTypes?: string[] | undefined;
1558
+ allowedMimeTypes?: string[] | undefined;
1559
+ blockedMimeTypes?: string[] | undefined;
1560
+ virusScanProvider?: "custom" | "clamav" | "virustotal" | "metadefender" | undefined;
1561
+ storageProvider?: string | undefined;
1562
+ storageBucket?: string | undefined;
1563
+ storagePrefix?: string | undefined;
1564
+ imageValidation?: {
1565
+ generateThumbnails: boolean;
1566
+ preserveMetadata: boolean;
1567
+ autoRotate: boolean;
1568
+ minWidth?: number | undefined;
1569
+ maxWidth?: number | undefined;
1570
+ minHeight?: number | undefined;
1571
+ maxHeight?: number | undefined;
1572
+ aspectRatio?: string | undefined;
1573
+ thumbnailSizes?: {
1574
+ name: string;
1575
+ width: number;
1576
+ height: number;
1577
+ crop: boolean;
1578
+ }[] | undefined;
1579
+ } | undefined;
1580
+ maxVersions?: number | undefined;
1581
+ } | undefined;
1582
+ readonly maskingRule?: {
1583
+ field: string;
1584
+ strategy: "redact" | "partial" | "hash" | "tokenize" | "randomize" | "nullify" | "substitute";
1585
+ preserveFormat: boolean;
1586
+ preserveLength: boolean;
1587
+ pattern?: string | undefined;
1588
+ roles?: string[] | undefined;
1589
+ exemptRoles?: string[] | undefined;
1590
+ } | undefined;
1591
+ readonly auditTrail?: boolean | undefined;
1592
+ readonly dependencies?: string[] | undefined;
1593
+ readonly cached?: {
1594
+ enabled: boolean;
1595
+ ttl: number;
1596
+ invalidateOn: string[];
1597
+ } | undefined;
1598
+ readonly dataQuality?: {
1599
+ uniqueness: boolean;
1600
+ completeness: number;
1601
+ accuracy?: {
1602
+ source: string;
1603
+ threshold: number;
1604
+ } | undefined;
1605
+ } | undefined;
1606
+ readonly group?: string | undefined;
1607
+ readonly conditionalRequired?: string | undefined;
1608
+ readonly hidden?: boolean | undefined;
1609
+ readonly sortable?: boolean | undefined;
1610
+ readonly inlineHelpText?: string | undefined;
1611
+ readonly trackFeedHistory?: boolean | undefined;
1612
+ readonly caseSensitive?: boolean | undefined;
1613
+ readonly autonumberFormat?: string | undefined;
1614
+ readonly index?: boolean | undefined;
1615
+ readonly externalId?: boolean | undefined;
1616
+ readonly type: "textarea";
1617
+ };
1618
+ readonly active: {
1619
+ readonly format?: string | undefined;
1620
+ readonly expression?: string | undefined;
1621
+ readonly readonly?: boolean | undefined;
1622
+ readonly defaultValue?: unknown;
1623
+ readonly min?: number | undefined;
1624
+ readonly max?: number | undefined;
1625
+ readonly name?: string | undefined;
1626
+ readonly encryptionConfig?: {
1627
+ enabled: boolean;
1628
+ algorithm: "aes-256-gcm" | "aes-256-cbc" | "chacha20-poly1305";
1629
+ keyManagement: {
1630
+ provider: "local" | "aws-kms" | "azure-key-vault" | "gcp-kms" | "hashicorp-vault";
1631
+ keyId?: string | undefined;
1632
+ rotationPolicy?: {
1633
+ enabled: boolean;
1634
+ frequencyDays: number;
1635
+ retainOldVersions: number;
1636
+ autoRotate: boolean;
1637
+ } | undefined;
1638
+ };
1639
+ scope: "table" | "record" | "field" | "database";
1640
+ deterministicEncryption: boolean;
1641
+ searchableEncryption: boolean;
1642
+ } | undefined;
1643
+ readonly label?: string | undefined;
1644
+ readonly precision?: number | undefined;
1645
+ readonly description?: string | undefined;
1646
+ readonly columnName?: string | undefined;
1647
+ readonly required?: boolean | undefined;
1648
+ readonly searchable?: boolean | undefined;
1649
+ readonly multiple?: boolean | undefined;
1650
+ readonly unique?: boolean | undefined;
1651
+ readonly maxLength?: number | undefined;
1652
+ readonly minLength?: number | undefined;
1653
+ readonly scale?: number | undefined;
1654
+ readonly options?: {
1655
+ label: string;
1656
+ value: string;
1657
+ color?: string | undefined;
1658
+ default?: boolean | undefined;
1659
+ }[] | undefined;
1660
+ readonly reference?: string | undefined;
1661
+ readonly referenceFilters?: string[] | undefined;
1662
+ readonly writeRequiresMasterRead?: boolean | undefined;
1663
+ readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
1664
+ readonly summaryOperations?: {
1665
+ object: string;
1666
+ field: string;
1667
+ function: "count" | "sum" | "avg" | "min" | "max";
1668
+ } | undefined;
1669
+ readonly language?: string | undefined;
1670
+ readonly theme?: string | undefined;
1671
+ readonly lineNumbers?: boolean | undefined;
1672
+ readonly maxRating?: number | undefined;
1673
+ readonly allowHalf?: boolean | undefined;
1674
+ readonly displayMap?: boolean | undefined;
1675
+ readonly allowGeocoding?: boolean | undefined;
1676
+ readonly addressFormat?: "us" | "uk" | "international" | undefined;
1677
+ readonly colorFormat?: "hex" | "rgb" | "rgba" | "hsl" | undefined;
1678
+ readonly allowAlpha?: boolean | undefined;
1679
+ readonly presetColors?: string[] | undefined;
1680
+ readonly step?: number | undefined;
1681
+ readonly showValue?: boolean | undefined;
1682
+ readonly marks?: Record<string, string> | undefined;
1683
+ readonly barcodeFormat?: "qr" | "ean13" | "ean8" | "code128" | "code39" | "upca" | "upce" | undefined;
1684
+ readonly qrErrorCorrection?: "L" | "M" | "Q" | "H" | undefined;
1685
+ readonly displayValue?: boolean | undefined;
1686
+ readonly allowScanning?: boolean | undefined;
1687
+ readonly currencyConfig?: {
1688
+ precision: number;
1689
+ currencyMode: "dynamic" | "fixed";
1690
+ defaultCurrency: string;
1691
+ } | undefined;
1692
+ readonly vectorConfig?: {
1693
+ dimensions: number;
1694
+ distanceMetric: "cosine" | "euclidean" | "dotProduct" | "manhattan";
1695
+ normalized: boolean;
1696
+ indexed: boolean;
1697
+ indexType?: "hnsw" | "ivfflat" | "flat" | undefined;
1698
+ } | undefined;
1699
+ readonly fileAttachmentConfig?: {
1700
+ virusScan: boolean;
1701
+ virusScanOnUpload: boolean;
1702
+ quarantineOnThreat: boolean;
1703
+ allowMultiple: boolean;
1704
+ allowReplace: boolean;
1705
+ allowDelete: boolean;
1706
+ requireUpload: boolean;
1707
+ extractMetadata: boolean;
1708
+ extractText: boolean;
1709
+ versioningEnabled: boolean;
1710
+ publicRead: boolean;
1711
+ presignedUrlExpiry: number;
1712
+ minSize?: number | undefined;
1713
+ maxSize?: number | undefined;
1714
+ allowedTypes?: string[] | undefined;
1715
+ blockedTypes?: string[] | undefined;
1716
+ allowedMimeTypes?: string[] | undefined;
1717
+ blockedMimeTypes?: string[] | undefined;
1718
+ virusScanProvider?: "custom" | "clamav" | "virustotal" | "metadefender" | undefined;
1719
+ storageProvider?: string | undefined;
1720
+ storageBucket?: string | undefined;
1721
+ storagePrefix?: string | undefined;
1722
+ imageValidation?: {
1723
+ generateThumbnails: boolean;
1724
+ preserveMetadata: boolean;
1725
+ autoRotate: boolean;
1726
+ minWidth?: number | undefined;
1727
+ maxWidth?: number | undefined;
1728
+ minHeight?: number | undefined;
1729
+ maxHeight?: number | undefined;
1730
+ aspectRatio?: string | undefined;
1731
+ thumbnailSizes?: {
1732
+ name: string;
1733
+ width: number;
1734
+ height: number;
1735
+ crop: boolean;
1736
+ }[] | undefined;
1737
+ } | undefined;
1738
+ maxVersions?: number | undefined;
1739
+ } | undefined;
1740
+ readonly maskingRule?: {
1741
+ field: string;
1742
+ strategy: "redact" | "partial" | "hash" | "tokenize" | "randomize" | "nullify" | "substitute";
1743
+ preserveFormat: boolean;
1744
+ preserveLength: boolean;
1745
+ pattern?: string | undefined;
1746
+ roles?: string[] | undefined;
1747
+ exemptRoles?: string[] | undefined;
1748
+ } | undefined;
1749
+ readonly auditTrail?: boolean | undefined;
1750
+ readonly dependencies?: string[] | undefined;
1751
+ readonly cached?: {
1752
+ enabled: boolean;
1753
+ ttl: number;
1754
+ invalidateOn: string[];
1755
+ } | undefined;
1756
+ readonly dataQuality?: {
1757
+ uniqueness: boolean;
1758
+ completeness: number;
1759
+ accuracy?: {
1760
+ source: string;
1761
+ threshold: number;
1762
+ } | undefined;
1763
+ } | undefined;
1764
+ readonly group?: string | undefined;
1765
+ readonly conditionalRequired?: string | undefined;
1766
+ readonly hidden?: boolean | undefined;
1767
+ readonly sortable?: boolean | undefined;
1768
+ readonly inlineHelpText?: string | undefined;
1769
+ readonly trackFeedHistory?: boolean | undefined;
1770
+ readonly caseSensitive?: boolean | undefined;
1771
+ readonly autonumberFormat?: string | undefined;
1772
+ readonly index?: boolean | undefined;
1773
+ readonly externalId?: boolean | undefined;
1774
+ readonly type: "boolean";
1775
+ };
1776
+ readonly is_default: {
1777
+ readonly format?: string | undefined;
1778
+ readonly expression?: string | undefined;
1779
+ readonly readonly?: boolean | undefined;
1780
+ readonly defaultValue?: unknown;
1781
+ readonly min?: number | undefined;
1782
+ readonly max?: number | undefined;
1783
+ readonly name?: string | undefined;
1784
+ readonly encryptionConfig?: {
1785
+ enabled: boolean;
1786
+ algorithm: "aes-256-gcm" | "aes-256-cbc" | "chacha20-poly1305";
1787
+ keyManagement: {
1788
+ provider: "local" | "aws-kms" | "azure-key-vault" | "gcp-kms" | "hashicorp-vault";
1789
+ keyId?: string | undefined;
1790
+ rotationPolicy?: {
1791
+ enabled: boolean;
1792
+ frequencyDays: number;
1793
+ retainOldVersions: number;
1794
+ autoRotate: boolean;
1795
+ } | undefined;
1796
+ };
1797
+ scope: "table" | "record" | "field" | "database";
1798
+ deterministicEncryption: boolean;
1799
+ searchableEncryption: boolean;
1800
+ } | undefined;
1801
+ readonly label?: string | undefined;
1802
+ readonly precision?: number | undefined;
1803
+ readonly description?: string | undefined;
1804
+ readonly columnName?: string | undefined;
1805
+ readonly required?: boolean | undefined;
1806
+ readonly searchable?: boolean | undefined;
1807
+ readonly multiple?: boolean | undefined;
1808
+ readonly unique?: boolean | undefined;
1809
+ readonly maxLength?: number | undefined;
1810
+ readonly minLength?: number | undefined;
1811
+ readonly scale?: number | undefined;
1812
+ readonly options?: {
1813
+ label: string;
1814
+ value: string;
1815
+ color?: string | undefined;
1816
+ default?: boolean | undefined;
1817
+ }[] | undefined;
1818
+ readonly reference?: string | undefined;
1819
+ readonly referenceFilters?: string[] | undefined;
1820
+ readonly writeRequiresMasterRead?: boolean | undefined;
1821
+ readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
1822
+ readonly summaryOperations?: {
1823
+ object: string;
1824
+ field: string;
1825
+ function: "count" | "sum" | "avg" | "min" | "max";
1826
+ } | undefined;
1827
+ readonly language?: string | undefined;
1828
+ readonly theme?: string | undefined;
1829
+ readonly lineNumbers?: boolean | undefined;
1830
+ readonly maxRating?: number | undefined;
1831
+ readonly allowHalf?: boolean | undefined;
1832
+ readonly displayMap?: boolean | undefined;
1833
+ readonly allowGeocoding?: boolean | undefined;
1834
+ readonly addressFormat?: "us" | "uk" | "international" | undefined;
1835
+ readonly colorFormat?: "hex" | "rgb" | "rgba" | "hsl" | undefined;
1836
+ readonly allowAlpha?: boolean | undefined;
1837
+ readonly presetColors?: string[] | undefined;
1838
+ readonly step?: number | undefined;
1839
+ readonly showValue?: boolean | undefined;
1840
+ readonly marks?: Record<string, string> | undefined;
1841
+ readonly barcodeFormat?: "qr" | "ean13" | "ean8" | "code128" | "code39" | "upca" | "upce" | undefined;
1842
+ readonly qrErrorCorrection?: "L" | "M" | "Q" | "H" | undefined;
1843
+ readonly displayValue?: boolean | undefined;
1844
+ readonly allowScanning?: boolean | undefined;
1845
+ readonly currencyConfig?: {
1846
+ precision: number;
1847
+ currencyMode: "dynamic" | "fixed";
1848
+ defaultCurrency: string;
1849
+ } | undefined;
1850
+ readonly vectorConfig?: {
1851
+ dimensions: number;
1852
+ distanceMetric: "cosine" | "euclidean" | "dotProduct" | "manhattan";
1853
+ normalized: boolean;
1854
+ indexed: boolean;
1855
+ indexType?: "hnsw" | "ivfflat" | "flat" | undefined;
1856
+ } | undefined;
1857
+ readonly fileAttachmentConfig?: {
1858
+ virusScan: boolean;
1859
+ virusScanOnUpload: boolean;
1860
+ quarantineOnThreat: boolean;
1861
+ allowMultiple: boolean;
1862
+ allowReplace: boolean;
1863
+ allowDelete: boolean;
1864
+ requireUpload: boolean;
1865
+ extractMetadata: boolean;
1866
+ extractText: boolean;
1867
+ versioningEnabled: boolean;
1868
+ publicRead: boolean;
1869
+ presignedUrlExpiry: number;
1870
+ minSize?: number | undefined;
1871
+ maxSize?: number | undefined;
1872
+ allowedTypes?: string[] | undefined;
1873
+ blockedTypes?: string[] | undefined;
1874
+ allowedMimeTypes?: string[] | undefined;
1875
+ blockedMimeTypes?: string[] | undefined;
1876
+ virusScanProvider?: "custom" | "clamav" | "virustotal" | "metadefender" | undefined;
1877
+ storageProvider?: string | undefined;
1878
+ storageBucket?: string | undefined;
1879
+ storagePrefix?: string | undefined;
1880
+ imageValidation?: {
1881
+ generateThumbnails: boolean;
1882
+ preserveMetadata: boolean;
1883
+ autoRotate: boolean;
1884
+ minWidth?: number | undefined;
1885
+ maxWidth?: number | undefined;
1886
+ minHeight?: number | undefined;
1887
+ maxHeight?: number | undefined;
1888
+ aspectRatio?: string | undefined;
1889
+ thumbnailSizes?: {
1890
+ name: string;
1891
+ width: number;
1892
+ height: number;
1893
+ crop: boolean;
1894
+ }[] | undefined;
1895
+ } | undefined;
1896
+ maxVersions?: number | undefined;
1897
+ } | undefined;
1898
+ readonly maskingRule?: {
1899
+ field: string;
1900
+ strategy: "redact" | "partial" | "hash" | "tokenize" | "randomize" | "nullify" | "substitute";
1901
+ preserveFormat: boolean;
1902
+ preserveLength: boolean;
1903
+ pattern?: string | undefined;
1904
+ roles?: string[] | undefined;
1905
+ exemptRoles?: string[] | undefined;
1906
+ } | undefined;
1907
+ readonly auditTrail?: boolean | undefined;
1908
+ readonly dependencies?: string[] | undefined;
1909
+ readonly cached?: {
1910
+ enabled: boolean;
1911
+ ttl: number;
1912
+ invalidateOn: string[];
1913
+ } | undefined;
1914
+ readonly dataQuality?: {
1915
+ uniqueness: boolean;
1916
+ completeness: number;
1917
+ accuracy?: {
1918
+ source: string;
1919
+ threshold: number;
1920
+ } | undefined;
1921
+ } | undefined;
1922
+ readonly group?: string | undefined;
1923
+ readonly conditionalRequired?: string | undefined;
1924
+ readonly hidden?: boolean | undefined;
1925
+ readonly sortable?: boolean | undefined;
1926
+ readonly inlineHelpText?: string | undefined;
1927
+ readonly trackFeedHistory?: boolean | undefined;
1928
+ readonly caseSensitive?: boolean | undefined;
1929
+ readonly autonumberFormat?: string | undefined;
1930
+ readonly index?: boolean | undefined;
1931
+ readonly externalId?: boolean | undefined;
1932
+ readonly type: "boolean";
1933
+ };
1934
+ };
1935
+ readonly indexes: [{
1936
+ readonly fields: ["name"];
1937
+ readonly unique: true;
1938
+ }, {
1939
+ readonly fields: ["active"];
1940
+ }];
1941
+ readonly enable: {
1942
+ readonly trackHistory: true;
1943
+ readonly searchable: true;
1944
+ readonly apiEnabled: true;
1945
+ readonly apiMethods: ["get", "list", "create", "update", "delete"];
1946
+ readonly trash: true;
1947
+ readonly mru: true;
1948
+ };
1949
+ }, "fields">;
1950
+
1951
+ /**
1952
+ * sys_permission_set — System Permission Set Object
1953
+ *
1954
+ * Named groupings of fine-grained permissions.
1955
+ * Permission sets can be assigned to roles or directly to users
1956
+ * for granular access control.
1957
+ *
1958
+ * @namespace sys
1959
+ */
1960
+ declare const SysPermissionSet: Omit<{
1961
+ name: string;
1962
+ active: boolean;
1963
+ isSystem: boolean;
1964
+ abstract: boolean;
1965
+ datasource: string;
1966
+ fields: Record<string, {
1967
+ type: "number" | "boolean" | "tags" | "select" | "date" | "lookup" | "file" | "url" | "json" | "text" | "textarea" | "email" | "phone" | "password" | "markdown" | "html" | "richtext" | "currency" | "percent" | "datetime" | "time" | "toggle" | "multiselect" | "radio" | "checkboxes" | "master_detail" | "tree" | "image" | "avatar" | "video" | "audio" | "formula" | "summary" | "autonumber" | "location" | "address" | "code" | "color" | "rating" | "slider" | "signature" | "qrcode" | "progress" | "vector";
1968
+ required: boolean;
1969
+ searchable: boolean;
1970
+ multiple: boolean;
1971
+ unique: boolean;
1972
+ deleteBehavior: "set_null" | "cascade" | "restrict";
1973
+ auditTrail: boolean;
1974
+ hidden: boolean;
1975
+ readonly: boolean;
1976
+ sortable: boolean;
1977
+ index: boolean;
1978
+ externalId: boolean;
1979
+ name?: string | undefined;
1980
+ label?: string | undefined;
1981
+ description?: string | undefined;
1982
+ format?: string | undefined;
1983
+ columnName?: string | undefined;
1984
+ defaultValue?: unknown;
1985
+ maxLength?: number | undefined;
1986
+ minLength?: number | undefined;
1987
+ precision?: number | undefined;
1988
+ scale?: number | undefined;
1989
+ min?: number | undefined;
1990
+ max?: number | undefined;
1991
+ options?: {
1992
+ label: string;
1993
+ value: string;
1994
+ color?: string | undefined;
1995
+ default?: boolean | undefined;
1996
+ }[] | undefined;
1997
+ reference?: string | undefined;
1998
+ referenceFilters?: string[] | undefined;
1999
+ writeRequiresMasterRead?: boolean | undefined;
2000
+ expression?: string | undefined;
2001
+ summaryOperations?: {
2002
+ object: string;
2003
+ field: string;
2004
+ function: "count" | "min" | "max" | "sum" | "avg";
2005
+ } | undefined;
2006
+ language?: string | undefined;
2007
+ theme?: string | undefined;
2008
+ lineNumbers?: boolean | undefined;
2009
+ maxRating?: number | undefined;
2010
+ allowHalf?: boolean | undefined;
2011
+ displayMap?: boolean | undefined;
2012
+ allowGeocoding?: boolean | undefined;
2013
+ addressFormat?: "us" | "uk" | "international" | undefined;
2014
+ colorFormat?: "hex" | "rgb" | "rgba" | "hsl" | undefined;
2015
+ allowAlpha?: boolean | undefined;
2016
+ presetColors?: string[] | undefined;
2017
+ step?: number | undefined;
2018
+ showValue?: boolean | undefined;
2019
+ marks?: Record<string, string> | undefined;
2020
+ barcodeFormat?: "qr" | "ean13" | "ean8" | "code128" | "code39" | "upca" | "upce" | undefined;
2021
+ qrErrorCorrection?: "L" | "M" | "Q" | "H" | undefined;
2022
+ displayValue?: boolean | undefined;
2023
+ allowScanning?: boolean | undefined;
2024
+ currencyConfig?: {
2025
+ precision: number;
2026
+ currencyMode: "dynamic" | "fixed";
2027
+ defaultCurrency: string;
2028
+ } | undefined;
2029
+ vectorConfig?: {
2030
+ dimensions: number;
2031
+ distanceMetric: "cosine" | "euclidean" | "dotProduct" | "manhattan";
2032
+ normalized: boolean;
2033
+ indexed: boolean;
2034
+ indexType?: "flat" | "hnsw" | "ivfflat" | undefined;
2035
+ } | undefined;
2036
+ fileAttachmentConfig?: {
2037
+ virusScan: boolean;
2038
+ virusScanOnUpload: boolean;
2039
+ quarantineOnThreat: boolean;
2040
+ allowMultiple: boolean;
2041
+ allowReplace: boolean;
2042
+ allowDelete: boolean;
2043
+ requireUpload: boolean;
2044
+ extractMetadata: boolean;
2045
+ extractText: boolean;
2046
+ versioningEnabled: boolean;
2047
+ publicRead: boolean;
2048
+ presignedUrlExpiry: number;
2049
+ minSize?: number | undefined;
2050
+ maxSize?: number | undefined;
2051
+ allowedTypes?: string[] | undefined;
2052
+ blockedTypes?: string[] | undefined;
2053
+ allowedMimeTypes?: string[] | undefined;
2054
+ blockedMimeTypes?: string[] | undefined;
2055
+ virusScanProvider?: "custom" | "clamav" | "virustotal" | "metadefender" | undefined;
2056
+ storageProvider?: string | undefined;
2057
+ storageBucket?: string | undefined;
2058
+ storagePrefix?: string | undefined;
2059
+ imageValidation?: {
2060
+ generateThumbnails: boolean;
2061
+ preserveMetadata: boolean;
2062
+ autoRotate: boolean;
2063
+ minWidth?: number | undefined;
2064
+ maxWidth?: number | undefined;
2065
+ minHeight?: number | undefined;
2066
+ maxHeight?: number | undefined;
2067
+ aspectRatio?: string | undefined;
2068
+ thumbnailSizes?: {
2069
+ name: string;
2070
+ width: number;
2071
+ height: number;
2072
+ crop: boolean;
2073
+ }[] | undefined;
2074
+ } | undefined;
2075
+ maxVersions?: number | undefined;
2076
+ } | undefined;
2077
+ encryptionConfig?: {
2078
+ enabled: boolean;
2079
+ algorithm: "aes-256-gcm" | "aes-256-cbc" | "chacha20-poly1305";
2080
+ keyManagement: {
2081
+ provider: "local" | "aws-kms" | "azure-key-vault" | "gcp-kms" | "hashicorp-vault";
2082
+ keyId?: string | undefined;
2083
+ rotationPolicy?: {
2084
+ enabled: boolean;
2085
+ frequencyDays: number;
2086
+ retainOldVersions: number;
2087
+ autoRotate: boolean;
2088
+ } | undefined;
2089
+ };
2090
+ scope: "field" | "table" | "record" | "database";
2091
+ deterministicEncryption: boolean;
2092
+ searchableEncryption: boolean;
2093
+ } | undefined;
2094
+ maskingRule?: {
2095
+ field: string;
2096
+ strategy: "redact" | "partial" | "hash" | "tokenize" | "randomize" | "nullify" | "substitute";
2097
+ preserveFormat: boolean;
2098
+ preserveLength: boolean;
2099
+ pattern?: string | undefined;
2100
+ roles?: string[] | undefined;
2101
+ exemptRoles?: string[] | undefined;
2102
+ } | undefined;
2103
+ dependencies?: string[] | undefined;
2104
+ cached?: {
2105
+ enabled: boolean;
2106
+ ttl: number;
2107
+ invalidateOn: string[];
2108
+ } | undefined;
2109
+ dataQuality?: {
2110
+ uniqueness: boolean;
2111
+ completeness: number;
2112
+ accuracy?: {
2113
+ source: string;
2114
+ threshold: number;
2115
+ } | undefined;
2116
+ } | undefined;
2117
+ group?: string | undefined;
2118
+ conditionalRequired?: string | undefined;
2119
+ inlineHelpText?: string | undefined;
2120
+ trackFeedHistory?: boolean | undefined;
2121
+ caseSensitive?: boolean | undefined;
2122
+ autonumberFormat?: string | undefined;
2123
+ }>;
2124
+ label?: string | undefined;
2125
+ pluralLabel?: string | undefined;
2126
+ description?: string | undefined;
2127
+ icon?: string | undefined;
2128
+ namespace?: string | undefined;
2129
+ tags?: string[] | undefined;
2130
+ tableName?: string | undefined;
2131
+ indexes?: {
2132
+ fields: string[];
2133
+ type: "hash" | "btree" | "gin" | "gist" | "fulltext";
2134
+ unique: boolean;
2135
+ name?: string | undefined;
2136
+ partial?: string | undefined;
2137
+ }[] | undefined;
2138
+ tenancy?: {
2139
+ enabled: boolean;
2140
+ strategy: "shared" | "isolated" | "hybrid";
2141
+ tenantField: string;
2142
+ crossTenantAccess: boolean;
2143
+ } | undefined;
2144
+ softDelete?: {
2145
+ enabled: boolean;
2146
+ field: string;
2147
+ cascadeDelete: boolean;
2148
+ } | undefined;
2149
+ versioning?: {
2150
+ enabled: boolean;
2151
+ strategy: "snapshot" | "delta" | "event-sourcing";
2152
+ versionField: string;
2153
+ retentionDays?: number | undefined;
2154
+ } | undefined;
2155
+ partitioning?: {
2156
+ enabled: boolean;
2157
+ strategy: "hash" | "range" | "list";
2158
+ key: string;
2159
+ interval?: string | undefined;
2160
+ } | undefined;
2161
+ cdc?: {
2162
+ enabled: boolean;
2163
+ events: ("insert" | "update" | "delete")[];
2164
+ destination: string;
2165
+ } | undefined;
2166
+ validations?: _objectstack_spec_data.BaseValidationRuleShape[] | undefined;
2167
+ stateMachines?: Record<string, {
2168
+ id: string;
2169
+ initial: string;
2170
+ states: Record<string, StateNodeConfig>;
2171
+ description?: string | undefined;
2172
+ contextSchema?: Record<string, unknown> | undefined;
2173
+ on?: Record<string, string | {
2174
+ target?: string | undefined;
2175
+ cond?: string | {
2176
+ type: string;
2177
+ params?: Record<string, unknown> | undefined;
2178
+ } | undefined;
2179
+ actions?: (string | {
2180
+ type: string;
2181
+ params?: Record<string, unknown> | undefined;
2182
+ })[] | undefined;
2183
+ description?: string | undefined;
2184
+ } | {
2185
+ target?: string | undefined;
2186
+ cond?: string | {
2187
+ type: string;
2188
+ params?: Record<string, unknown> | undefined;
2189
+ } | undefined;
2190
+ actions?: (string | {
2191
+ type: string;
2192
+ params?: Record<string, unknown> | undefined;
2193
+ })[] | undefined;
2194
+ description?: string | undefined;
2195
+ }[]> | undefined;
2196
+ }> | undefined;
2197
+ displayNameField?: string | undefined;
2198
+ recordName?: {
2199
+ type: "text" | "autonumber";
2200
+ displayFormat?: string | undefined;
2201
+ startNumber?: number | undefined;
2202
+ } | undefined;
2203
+ titleFormat?: string | undefined;
2204
+ compactLayout?: string[] | undefined;
2205
+ search?: {
2206
+ fields: string[];
2207
+ displayFields?: string[] | undefined;
2208
+ filters?: string[] | undefined;
2209
+ } | undefined;
2210
+ enable?: {
2211
+ trackHistory: boolean;
2212
+ searchable: boolean;
2213
+ apiEnabled: boolean;
2214
+ files: boolean;
2215
+ feeds: boolean;
2216
+ activities: boolean;
2217
+ trash: boolean;
2218
+ mru: boolean;
2219
+ clone: boolean;
2220
+ apiMethods?: ("aggregate" | "update" | "delete" | "search" | "list" | "upsert" | "history" | "get" | "create" | "bulk" | "restore" | "purge" | "import" | "export")[] | undefined;
2221
+ } | undefined;
2222
+ recordTypes?: string[] | undefined;
2223
+ sharingModel?: "full" | "private" | "read" | "read_write" | undefined;
2224
+ keyPrefix?: string | undefined;
2225
+ actions?: {
2226
+ name: string;
2227
+ label: string | {
2228
+ key: string;
2229
+ defaultValue?: string | undefined;
2230
+ params?: Record<string, string | number | boolean> | undefined;
2231
+ };
2232
+ type: "url" | "script" | "modal" | "flow" | "api";
2233
+ refreshAfter: boolean;
2234
+ objectName?: string | undefined;
2235
+ icon?: string | undefined;
2236
+ locations?: ("list_toolbar" | "list_item" | "record_header" | "record_more" | "record_related" | "global_nav")[] | undefined;
2237
+ component?: "action:button" | "action:icon" | "action:menu" | "action:group" | undefined;
2238
+ target?: string | undefined;
2239
+ execute?: string | undefined;
2240
+ params?: {
2241
+ name: string;
2242
+ label: string | {
2243
+ key: string;
2244
+ defaultValue?: string | undefined;
2245
+ params?: Record<string, string | number | boolean> | undefined;
2246
+ };
2247
+ type: "number" | "boolean" | "date" | "lookup" | "file" | "url" | "json" | "text" | "textarea" | "email" | "phone" | "password" | "markdown" | "html" | "richtext" | "currency" | "percent" | "datetime" | "time" | "toggle" | "select" | "multiselect" | "radio" | "checkboxes" | "master_detail" | "tree" | "image" | "avatar" | "video" | "audio" | "formula" | "summary" | "autonumber" | "location" | "address" | "code" | "color" | "rating" | "slider" | "signature" | "qrcode" | "progress" | "tags" | "vector";
2248
+ required: boolean;
2249
+ options?: {
2250
+ label: string | {
2251
+ key: string;
2252
+ defaultValue?: string | undefined;
2253
+ params?: Record<string, string | number | boolean> | undefined;
2254
+ };
2255
+ value: string;
2256
+ }[] | undefined;
2257
+ }[] | undefined;
2258
+ variant?: "link" | "primary" | "secondary" | "danger" | "ghost" | undefined;
2259
+ confirmText?: string | {
2260
+ key: string;
2261
+ defaultValue?: string | undefined;
2262
+ params?: Record<string, string | number | boolean> | undefined;
2263
+ } | undefined;
2264
+ successMessage?: string | {
2265
+ key: string;
2266
+ defaultValue?: string | undefined;
2267
+ params?: Record<string, string | number | boolean> | undefined;
2268
+ } | undefined;
2269
+ visible?: string | undefined;
2270
+ disabled?: string | boolean | undefined;
2271
+ shortcut?: string | undefined;
2272
+ bulkEnabled?: boolean | undefined;
2273
+ timeout?: number | undefined;
2274
+ aria?: {
2275
+ ariaLabel?: string | {
2276
+ key: string;
2277
+ defaultValue?: string | undefined;
2278
+ params?: Record<string, string | number | boolean> | undefined;
2279
+ } | undefined;
2280
+ ariaDescribedBy?: string | undefined;
2281
+ role?: string | undefined;
2282
+ } | undefined;
2283
+ }[] | undefined;
2284
+ }, "fields"> & Pick<{
2285
+ readonly namespace: "sys";
2286
+ readonly name: "permission_set";
2287
+ readonly label: "Permission Set";
2288
+ readonly pluralLabel: "Permission Sets";
2289
+ readonly icon: "lock";
2290
+ readonly isSystem: true;
2291
+ readonly description: "Named permission groupings for fine-grained access control";
2292
+ readonly titleFormat: "{name}";
2293
+ readonly compactLayout: ["name", "label", "active"];
2294
+ readonly fields: {
2295
+ readonly id: {
2296
+ readonly format?: string | undefined;
2297
+ readonly expression?: string | undefined;
2298
+ readonly readonly?: boolean | undefined;
2299
+ readonly defaultValue?: unknown;
2300
+ readonly min?: number | undefined;
2301
+ readonly max?: number | undefined;
2302
+ readonly name?: string | undefined;
2303
+ readonly encryptionConfig?: {
2304
+ enabled: boolean;
2305
+ algorithm: "aes-256-gcm" | "aes-256-cbc" | "chacha20-poly1305";
2306
+ keyManagement: {
2307
+ provider: "local" | "aws-kms" | "azure-key-vault" | "gcp-kms" | "hashicorp-vault";
2308
+ keyId?: string | undefined;
2309
+ rotationPolicy?: {
2310
+ enabled: boolean;
2311
+ frequencyDays: number;
2312
+ retainOldVersions: number;
2313
+ autoRotate: boolean;
2314
+ } | undefined;
2315
+ };
2316
+ scope: "table" | "record" | "field" | "database";
2317
+ deterministicEncryption: boolean;
2318
+ searchableEncryption: boolean;
2319
+ } | undefined;
2320
+ readonly label?: string | undefined;
2321
+ readonly precision?: number | undefined;
2322
+ readonly description?: string | undefined;
2323
+ readonly columnName?: string | undefined;
2324
+ readonly required?: boolean | undefined;
2325
+ readonly searchable?: boolean | undefined;
2326
+ readonly multiple?: boolean | undefined;
2327
+ readonly unique?: boolean | undefined;
2328
+ readonly maxLength?: number | undefined;
2329
+ readonly minLength?: number | undefined;
2330
+ readonly scale?: number | undefined;
2331
+ readonly options?: {
2332
+ label: string;
2333
+ value: string;
2334
+ color?: string | undefined;
2335
+ default?: boolean | undefined;
2336
+ }[] | undefined;
2337
+ readonly reference?: string | undefined;
2338
+ readonly referenceFilters?: string[] | undefined;
2339
+ readonly writeRequiresMasterRead?: boolean | undefined;
2340
+ readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
2341
+ readonly summaryOperations?: {
2342
+ object: string;
2343
+ field: string;
2344
+ function: "count" | "sum" | "avg" | "min" | "max";
2345
+ } | undefined;
2346
+ readonly language?: string | undefined;
2347
+ readonly theme?: string | undefined;
2348
+ readonly lineNumbers?: boolean | undefined;
2349
+ readonly maxRating?: number | undefined;
2350
+ readonly allowHalf?: boolean | undefined;
2351
+ readonly displayMap?: boolean | undefined;
2352
+ readonly allowGeocoding?: boolean | undefined;
2353
+ readonly addressFormat?: "us" | "uk" | "international" | undefined;
2354
+ readonly colorFormat?: "hex" | "rgb" | "rgba" | "hsl" | undefined;
2355
+ readonly allowAlpha?: boolean | undefined;
2356
+ readonly presetColors?: string[] | undefined;
2357
+ readonly step?: number | undefined;
2358
+ readonly showValue?: boolean | undefined;
2359
+ readonly marks?: Record<string, string> | undefined;
2360
+ readonly barcodeFormat?: "qr" | "ean13" | "ean8" | "code128" | "code39" | "upca" | "upce" | undefined;
2361
+ readonly qrErrorCorrection?: "L" | "M" | "Q" | "H" | undefined;
2362
+ readonly displayValue?: boolean | undefined;
2363
+ readonly allowScanning?: boolean | undefined;
2364
+ readonly currencyConfig?: {
2365
+ precision: number;
2366
+ currencyMode: "dynamic" | "fixed";
2367
+ defaultCurrency: string;
2368
+ } | undefined;
2369
+ readonly vectorConfig?: {
2370
+ dimensions: number;
2371
+ distanceMetric: "cosine" | "euclidean" | "dotProduct" | "manhattan";
2372
+ normalized: boolean;
2373
+ indexed: boolean;
2374
+ indexType?: "hnsw" | "ivfflat" | "flat" | undefined;
2375
+ } | undefined;
2376
+ readonly fileAttachmentConfig?: {
2377
+ virusScan: boolean;
2378
+ virusScanOnUpload: boolean;
2379
+ quarantineOnThreat: boolean;
2380
+ allowMultiple: boolean;
2381
+ allowReplace: boolean;
2382
+ allowDelete: boolean;
2383
+ requireUpload: boolean;
2384
+ extractMetadata: boolean;
2385
+ extractText: boolean;
2386
+ versioningEnabled: boolean;
2387
+ publicRead: boolean;
2388
+ presignedUrlExpiry: number;
2389
+ minSize?: number | undefined;
2390
+ maxSize?: number | undefined;
2391
+ allowedTypes?: string[] | undefined;
2392
+ blockedTypes?: string[] | undefined;
2393
+ allowedMimeTypes?: string[] | undefined;
2394
+ blockedMimeTypes?: string[] | undefined;
2395
+ virusScanProvider?: "custom" | "clamav" | "virustotal" | "metadefender" | undefined;
2396
+ storageProvider?: string | undefined;
2397
+ storageBucket?: string | undefined;
2398
+ storagePrefix?: string | undefined;
2399
+ imageValidation?: {
2400
+ generateThumbnails: boolean;
2401
+ preserveMetadata: boolean;
2402
+ autoRotate: boolean;
2403
+ minWidth?: number | undefined;
2404
+ maxWidth?: number | undefined;
2405
+ minHeight?: number | undefined;
2406
+ maxHeight?: number | undefined;
2407
+ aspectRatio?: string | undefined;
2408
+ thumbnailSizes?: {
2409
+ name: string;
2410
+ width: number;
2411
+ height: number;
2412
+ crop: boolean;
2413
+ }[] | undefined;
2414
+ } | undefined;
2415
+ maxVersions?: number | undefined;
2416
+ } | undefined;
2417
+ readonly maskingRule?: {
2418
+ field: string;
2419
+ strategy: "redact" | "partial" | "hash" | "tokenize" | "randomize" | "nullify" | "substitute";
2420
+ preserveFormat: boolean;
2421
+ preserveLength: boolean;
2422
+ pattern?: string | undefined;
2423
+ roles?: string[] | undefined;
2424
+ exemptRoles?: string[] | undefined;
2425
+ } | undefined;
2426
+ readonly auditTrail?: boolean | undefined;
2427
+ readonly dependencies?: string[] | undefined;
2428
+ readonly cached?: {
2429
+ enabled: boolean;
2430
+ ttl: number;
2431
+ invalidateOn: string[];
2432
+ } | undefined;
2433
+ readonly dataQuality?: {
2434
+ uniqueness: boolean;
2435
+ completeness: number;
2436
+ accuracy?: {
2437
+ source: string;
2438
+ threshold: number;
2439
+ } | undefined;
2440
+ } | undefined;
2441
+ readonly group?: string | undefined;
2442
+ readonly conditionalRequired?: string | undefined;
2443
+ readonly hidden?: boolean | undefined;
2444
+ readonly sortable?: boolean | undefined;
2445
+ readonly inlineHelpText?: string | undefined;
2446
+ readonly trackFeedHistory?: boolean | undefined;
2447
+ readonly caseSensitive?: boolean | undefined;
2448
+ readonly autonumberFormat?: string | undefined;
2449
+ readonly index?: boolean | undefined;
2450
+ readonly externalId?: boolean | undefined;
2451
+ readonly type: "text";
2452
+ };
2453
+ readonly created_at: {
2454
+ readonly format?: string | undefined;
2455
+ readonly expression?: string | undefined;
2456
+ readonly readonly?: boolean | undefined;
2457
+ readonly defaultValue?: unknown;
2458
+ readonly min?: number | undefined;
2459
+ readonly max?: number | undefined;
2460
+ readonly name?: string | undefined;
2461
+ readonly encryptionConfig?: {
2462
+ enabled: boolean;
2463
+ algorithm: "aes-256-gcm" | "aes-256-cbc" | "chacha20-poly1305";
2464
+ keyManagement: {
2465
+ provider: "local" | "aws-kms" | "azure-key-vault" | "gcp-kms" | "hashicorp-vault";
2466
+ keyId?: string | undefined;
2467
+ rotationPolicy?: {
2468
+ enabled: boolean;
2469
+ frequencyDays: number;
2470
+ retainOldVersions: number;
2471
+ autoRotate: boolean;
2472
+ } | undefined;
2473
+ };
2474
+ scope: "table" | "record" | "field" | "database";
2475
+ deterministicEncryption: boolean;
2476
+ searchableEncryption: boolean;
2477
+ } | undefined;
2478
+ readonly label?: string | undefined;
2479
+ readonly precision?: number | undefined;
2480
+ readonly description?: string | undefined;
2481
+ readonly columnName?: string | undefined;
2482
+ readonly required?: boolean | undefined;
2483
+ readonly searchable?: boolean | undefined;
2484
+ readonly multiple?: boolean | undefined;
2485
+ readonly unique?: boolean | undefined;
2486
+ readonly maxLength?: number | undefined;
2487
+ readonly minLength?: number | undefined;
2488
+ readonly scale?: number | undefined;
2489
+ readonly options?: {
2490
+ label: string;
2491
+ value: string;
2492
+ color?: string | undefined;
2493
+ default?: boolean | undefined;
2494
+ }[] | undefined;
2495
+ readonly reference?: string | undefined;
2496
+ readonly referenceFilters?: string[] | undefined;
2497
+ readonly writeRequiresMasterRead?: boolean | undefined;
2498
+ readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
2499
+ readonly summaryOperations?: {
2500
+ object: string;
2501
+ field: string;
2502
+ function: "count" | "sum" | "avg" | "min" | "max";
2503
+ } | undefined;
2504
+ readonly language?: string | undefined;
2505
+ readonly theme?: string | undefined;
2506
+ readonly lineNumbers?: boolean | undefined;
2507
+ readonly maxRating?: number | undefined;
2508
+ readonly allowHalf?: boolean | undefined;
2509
+ readonly displayMap?: boolean | undefined;
2510
+ readonly allowGeocoding?: boolean | undefined;
2511
+ readonly addressFormat?: "us" | "uk" | "international" | undefined;
2512
+ readonly colorFormat?: "hex" | "rgb" | "rgba" | "hsl" | undefined;
2513
+ readonly allowAlpha?: boolean | undefined;
2514
+ readonly presetColors?: string[] | undefined;
2515
+ readonly step?: number | undefined;
2516
+ readonly showValue?: boolean | undefined;
2517
+ readonly marks?: Record<string, string> | undefined;
2518
+ readonly barcodeFormat?: "qr" | "ean13" | "ean8" | "code128" | "code39" | "upca" | "upce" | undefined;
2519
+ readonly qrErrorCorrection?: "L" | "M" | "Q" | "H" | undefined;
2520
+ readonly displayValue?: boolean | undefined;
2521
+ readonly allowScanning?: boolean | undefined;
2522
+ readonly currencyConfig?: {
2523
+ precision: number;
2524
+ currencyMode: "dynamic" | "fixed";
2525
+ defaultCurrency: string;
2526
+ } | undefined;
2527
+ readonly vectorConfig?: {
2528
+ dimensions: number;
2529
+ distanceMetric: "cosine" | "euclidean" | "dotProduct" | "manhattan";
2530
+ normalized: boolean;
2531
+ indexed: boolean;
2532
+ indexType?: "hnsw" | "ivfflat" | "flat" | undefined;
2533
+ } | undefined;
2534
+ readonly fileAttachmentConfig?: {
2535
+ virusScan: boolean;
2536
+ virusScanOnUpload: boolean;
2537
+ quarantineOnThreat: boolean;
2538
+ allowMultiple: boolean;
2539
+ allowReplace: boolean;
2540
+ allowDelete: boolean;
2541
+ requireUpload: boolean;
2542
+ extractMetadata: boolean;
2543
+ extractText: boolean;
2544
+ versioningEnabled: boolean;
2545
+ publicRead: boolean;
2546
+ presignedUrlExpiry: number;
2547
+ minSize?: number | undefined;
2548
+ maxSize?: number | undefined;
2549
+ allowedTypes?: string[] | undefined;
2550
+ blockedTypes?: string[] | undefined;
2551
+ allowedMimeTypes?: string[] | undefined;
2552
+ blockedMimeTypes?: string[] | undefined;
2553
+ virusScanProvider?: "custom" | "clamav" | "virustotal" | "metadefender" | undefined;
2554
+ storageProvider?: string | undefined;
2555
+ storageBucket?: string | undefined;
2556
+ storagePrefix?: string | undefined;
2557
+ imageValidation?: {
2558
+ generateThumbnails: boolean;
2559
+ preserveMetadata: boolean;
2560
+ autoRotate: boolean;
2561
+ minWidth?: number | undefined;
2562
+ maxWidth?: number | undefined;
2563
+ minHeight?: number | undefined;
2564
+ maxHeight?: number | undefined;
2565
+ aspectRatio?: string | undefined;
2566
+ thumbnailSizes?: {
2567
+ name: string;
2568
+ width: number;
2569
+ height: number;
2570
+ crop: boolean;
2571
+ }[] | undefined;
2572
+ } | undefined;
2573
+ maxVersions?: number | undefined;
2574
+ } | undefined;
2575
+ readonly maskingRule?: {
2576
+ field: string;
2577
+ strategy: "redact" | "partial" | "hash" | "tokenize" | "randomize" | "nullify" | "substitute";
2578
+ preserveFormat: boolean;
2579
+ preserveLength: boolean;
2580
+ pattern?: string | undefined;
2581
+ roles?: string[] | undefined;
2582
+ exemptRoles?: string[] | undefined;
2583
+ } | undefined;
2584
+ readonly auditTrail?: boolean | undefined;
2585
+ readonly dependencies?: string[] | undefined;
2586
+ readonly cached?: {
2587
+ enabled: boolean;
2588
+ ttl: number;
2589
+ invalidateOn: string[];
2590
+ } | undefined;
2591
+ readonly dataQuality?: {
2592
+ uniqueness: boolean;
2593
+ completeness: number;
2594
+ accuracy?: {
2595
+ source: string;
2596
+ threshold: number;
2597
+ } | undefined;
2598
+ } | undefined;
2599
+ readonly group?: string | undefined;
2600
+ readonly conditionalRequired?: string | undefined;
2601
+ readonly hidden?: boolean | undefined;
2602
+ readonly sortable?: boolean | undefined;
2603
+ readonly inlineHelpText?: string | undefined;
2604
+ readonly trackFeedHistory?: boolean | undefined;
2605
+ readonly caseSensitive?: boolean | undefined;
2606
+ readonly autonumberFormat?: string | undefined;
2607
+ readonly index?: boolean | undefined;
2608
+ readonly externalId?: boolean | undefined;
2609
+ readonly type: "datetime";
2610
+ };
2611
+ readonly updated_at: {
2612
+ readonly format?: string | undefined;
2613
+ readonly expression?: string | undefined;
2614
+ readonly readonly?: boolean | undefined;
2615
+ readonly defaultValue?: unknown;
2616
+ readonly min?: number | undefined;
2617
+ readonly max?: number | undefined;
2618
+ readonly name?: string | undefined;
2619
+ readonly encryptionConfig?: {
2620
+ enabled: boolean;
2621
+ algorithm: "aes-256-gcm" | "aes-256-cbc" | "chacha20-poly1305";
2622
+ keyManagement: {
2623
+ provider: "local" | "aws-kms" | "azure-key-vault" | "gcp-kms" | "hashicorp-vault";
2624
+ keyId?: string | undefined;
2625
+ rotationPolicy?: {
2626
+ enabled: boolean;
2627
+ frequencyDays: number;
2628
+ retainOldVersions: number;
2629
+ autoRotate: boolean;
2630
+ } | undefined;
2631
+ };
2632
+ scope: "table" | "record" | "field" | "database";
2633
+ deterministicEncryption: boolean;
2634
+ searchableEncryption: boolean;
2635
+ } | undefined;
2636
+ readonly label?: string | undefined;
2637
+ readonly precision?: number | undefined;
2638
+ readonly description?: string | undefined;
2639
+ readonly columnName?: string | undefined;
2640
+ readonly required?: boolean | undefined;
2641
+ readonly searchable?: boolean | undefined;
2642
+ readonly multiple?: boolean | undefined;
2643
+ readonly unique?: boolean | undefined;
2644
+ readonly maxLength?: number | undefined;
2645
+ readonly minLength?: number | undefined;
2646
+ readonly scale?: number | undefined;
2647
+ readonly options?: {
2648
+ label: string;
2649
+ value: string;
2650
+ color?: string | undefined;
2651
+ default?: boolean | undefined;
2652
+ }[] | undefined;
2653
+ readonly reference?: string | undefined;
2654
+ readonly referenceFilters?: string[] | undefined;
2655
+ readonly writeRequiresMasterRead?: boolean | undefined;
2656
+ readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
2657
+ readonly summaryOperations?: {
2658
+ object: string;
2659
+ field: string;
2660
+ function: "count" | "sum" | "avg" | "min" | "max";
2661
+ } | undefined;
2662
+ readonly language?: string | undefined;
2663
+ readonly theme?: string | undefined;
2664
+ readonly lineNumbers?: boolean | undefined;
2665
+ readonly maxRating?: number | undefined;
2666
+ readonly allowHalf?: boolean | undefined;
2667
+ readonly displayMap?: boolean | undefined;
2668
+ readonly allowGeocoding?: boolean | undefined;
2669
+ readonly addressFormat?: "us" | "uk" | "international" | undefined;
2670
+ readonly colorFormat?: "hex" | "rgb" | "rgba" | "hsl" | undefined;
2671
+ readonly allowAlpha?: boolean | undefined;
2672
+ readonly presetColors?: string[] | undefined;
2673
+ readonly step?: number | undefined;
2674
+ readonly showValue?: boolean | undefined;
2675
+ readonly marks?: Record<string, string> | undefined;
2676
+ readonly barcodeFormat?: "qr" | "ean13" | "ean8" | "code128" | "code39" | "upca" | "upce" | undefined;
2677
+ readonly qrErrorCorrection?: "L" | "M" | "Q" | "H" | undefined;
2678
+ readonly displayValue?: boolean | undefined;
2679
+ readonly allowScanning?: boolean | undefined;
2680
+ readonly currencyConfig?: {
2681
+ precision: number;
2682
+ currencyMode: "dynamic" | "fixed";
2683
+ defaultCurrency: string;
2684
+ } | undefined;
2685
+ readonly vectorConfig?: {
2686
+ dimensions: number;
2687
+ distanceMetric: "cosine" | "euclidean" | "dotProduct" | "manhattan";
2688
+ normalized: boolean;
2689
+ indexed: boolean;
2690
+ indexType?: "hnsw" | "ivfflat" | "flat" | undefined;
2691
+ } | undefined;
2692
+ readonly fileAttachmentConfig?: {
2693
+ virusScan: boolean;
2694
+ virusScanOnUpload: boolean;
2695
+ quarantineOnThreat: boolean;
2696
+ allowMultiple: boolean;
2697
+ allowReplace: boolean;
2698
+ allowDelete: boolean;
2699
+ requireUpload: boolean;
2700
+ extractMetadata: boolean;
2701
+ extractText: boolean;
2702
+ versioningEnabled: boolean;
2703
+ publicRead: boolean;
2704
+ presignedUrlExpiry: number;
2705
+ minSize?: number | undefined;
2706
+ maxSize?: number | undefined;
2707
+ allowedTypes?: string[] | undefined;
2708
+ blockedTypes?: string[] | undefined;
2709
+ allowedMimeTypes?: string[] | undefined;
2710
+ blockedMimeTypes?: string[] | undefined;
2711
+ virusScanProvider?: "custom" | "clamav" | "virustotal" | "metadefender" | undefined;
2712
+ storageProvider?: string | undefined;
2713
+ storageBucket?: string | undefined;
2714
+ storagePrefix?: string | undefined;
2715
+ imageValidation?: {
2716
+ generateThumbnails: boolean;
2717
+ preserveMetadata: boolean;
2718
+ autoRotate: boolean;
2719
+ minWidth?: number | undefined;
2720
+ maxWidth?: number | undefined;
2721
+ minHeight?: number | undefined;
2722
+ maxHeight?: number | undefined;
2723
+ aspectRatio?: string | undefined;
2724
+ thumbnailSizes?: {
2725
+ name: string;
2726
+ width: number;
2727
+ height: number;
2728
+ crop: boolean;
2729
+ }[] | undefined;
2730
+ } | undefined;
2731
+ maxVersions?: number | undefined;
2732
+ } | undefined;
2733
+ readonly maskingRule?: {
2734
+ field: string;
2735
+ strategy: "redact" | "partial" | "hash" | "tokenize" | "randomize" | "nullify" | "substitute";
2736
+ preserveFormat: boolean;
2737
+ preserveLength: boolean;
2738
+ pattern?: string | undefined;
2739
+ roles?: string[] | undefined;
2740
+ exemptRoles?: string[] | undefined;
2741
+ } | undefined;
2742
+ readonly auditTrail?: boolean | undefined;
2743
+ readonly dependencies?: string[] | undefined;
2744
+ readonly cached?: {
2745
+ enabled: boolean;
2746
+ ttl: number;
2747
+ invalidateOn: string[];
2748
+ } | undefined;
2749
+ readonly dataQuality?: {
2750
+ uniqueness: boolean;
2751
+ completeness: number;
2752
+ accuracy?: {
2753
+ source: string;
2754
+ threshold: number;
2755
+ } | undefined;
2756
+ } | undefined;
2757
+ readonly group?: string | undefined;
2758
+ readonly conditionalRequired?: string | undefined;
2759
+ readonly hidden?: boolean | undefined;
2760
+ readonly sortable?: boolean | undefined;
2761
+ readonly inlineHelpText?: string | undefined;
2762
+ readonly trackFeedHistory?: boolean | undefined;
2763
+ readonly caseSensitive?: boolean | undefined;
2764
+ readonly autonumberFormat?: string | undefined;
2765
+ readonly index?: boolean | undefined;
2766
+ readonly externalId?: boolean | undefined;
2767
+ readonly type: "datetime";
2768
+ };
2769
+ readonly name: {
2770
+ readonly format?: string | undefined;
2771
+ readonly expression?: string | undefined;
2772
+ readonly readonly?: boolean | undefined;
2773
+ readonly defaultValue?: unknown;
2774
+ readonly min?: number | undefined;
2775
+ readonly max?: number | undefined;
2776
+ readonly name?: string | undefined;
2777
+ readonly encryptionConfig?: {
2778
+ enabled: boolean;
2779
+ algorithm: "aes-256-gcm" | "aes-256-cbc" | "chacha20-poly1305";
2780
+ keyManagement: {
2781
+ provider: "local" | "aws-kms" | "azure-key-vault" | "gcp-kms" | "hashicorp-vault";
2782
+ keyId?: string | undefined;
2783
+ rotationPolicy?: {
2784
+ enabled: boolean;
2785
+ frequencyDays: number;
2786
+ retainOldVersions: number;
2787
+ autoRotate: boolean;
2788
+ } | undefined;
2789
+ };
2790
+ scope: "table" | "record" | "field" | "database";
2791
+ deterministicEncryption: boolean;
2792
+ searchableEncryption: boolean;
2793
+ } | undefined;
2794
+ readonly label?: string | undefined;
2795
+ readonly precision?: number | undefined;
2796
+ readonly description?: string | undefined;
2797
+ readonly columnName?: string | undefined;
2798
+ readonly required?: boolean | undefined;
2799
+ readonly searchable?: boolean | undefined;
2800
+ readonly multiple?: boolean | undefined;
2801
+ readonly unique?: boolean | undefined;
2802
+ readonly maxLength?: number | undefined;
2803
+ readonly minLength?: number | undefined;
2804
+ readonly scale?: number | undefined;
2805
+ readonly options?: {
2806
+ label: string;
2807
+ value: string;
2808
+ color?: string | undefined;
2809
+ default?: boolean | undefined;
2810
+ }[] | undefined;
2811
+ readonly reference?: string | undefined;
2812
+ readonly referenceFilters?: string[] | undefined;
2813
+ readonly writeRequiresMasterRead?: boolean | undefined;
2814
+ readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
2815
+ readonly summaryOperations?: {
2816
+ object: string;
2817
+ field: string;
2818
+ function: "count" | "sum" | "avg" | "min" | "max";
2819
+ } | undefined;
2820
+ readonly language?: string | undefined;
2821
+ readonly theme?: string | undefined;
2822
+ readonly lineNumbers?: boolean | undefined;
2823
+ readonly maxRating?: number | undefined;
2824
+ readonly allowHalf?: boolean | undefined;
2825
+ readonly displayMap?: boolean | undefined;
2826
+ readonly allowGeocoding?: boolean | undefined;
2827
+ readonly addressFormat?: "us" | "uk" | "international" | undefined;
2828
+ readonly colorFormat?: "hex" | "rgb" | "rgba" | "hsl" | undefined;
2829
+ readonly allowAlpha?: boolean | undefined;
2830
+ readonly presetColors?: string[] | undefined;
2831
+ readonly step?: number | undefined;
2832
+ readonly showValue?: boolean | undefined;
2833
+ readonly marks?: Record<string, string> | undefined;
2834
+ readonly barcodeFormat?: "qr" | "ean13" | "ean8" | "code128" | "code39" | "upca" | "upce" | undefined;
2835
+ readonly qrErrorCorrection?: "L" | "M" | "Q" | "H" | undefined;
2836
+ readonly displayValue?: boolean | undefined;
2837
+ readonly allowScanning?: boolean | undefined;
2838
+ readonly currencyConfig?: {
2839
+ precision: number;
2840
+ currencyMode: "dynamic" | "fixed";
2841
+ defaultCurrency: string;
2842
+ } | undefined;
2843
+ readonly vectorConfig?: {
2844
+ dimensions: number;
2845
+ distanceMetric: "cosine" | "euclidean" | "dotProduct" | "manhattan";
2846
+ normalized: boolean;
2847
+ indexed: boolean;
2848
+ indexType?: "hnsw" | "ivfflat" | "flat" | undefined;
2849
+ } | undefined;
2850
+ readonly fileAttachmentConfig?: {
2851
+ virusScan: boolean;
2852
+ virusScanOnUpload: boolean;
2853
+ quarantineOnThreat: boolean;
2854
+ allowMultiple: boolean;
2855
+ allowReplace: boolean;
2856
+ allowDelete: boolean;
2857
+ requireUpload: boolean;
2858
+ extractMetadata: boolean;
2859
+ extractText: boolean;
2860
+ versioningEnabled: boolean;
2861
+ publicRead: boolean;
2862
+ presignedUrlExpiry: number;
2863
+ minSize?: number | undefined;
2864
+ maxSize?: number | undefined;
2865
+ allowedTypes?: string[] | undefined;
2866
+ blockedTypes?: string[] | undefined;
2867
+ allowedMimeTypes?: string[] | undefined;
2868
+ blockedMimeTypes?: string[] | undefined;
2869
+ virusScanProvider?: "custom" | "clamav" | "virustotal" | "metadefender" | undefined;
2870
+ storageProvider?: string | undefined;
2871
+ storageBucket?: string | undefined;
2872
+ storagePrefix?: string | undefined;
2873
+ imageValidation?: {
2874
+ generateThumbnails: boolean;
2875
+ preserveMetadata: boolean;
2876
+ autoRotate: boolean;
2877
+ minWidth?: number | undefined;
2878
+ maxWidth?: number | undefined;
2879
+ minHeight?: number | undefined;
2880
+ maxHeight?: number | undefined;
2881
+ aspectRatio?: string | undefined;
2882
+ thumbnailSizes?: {
2883
+ name: string;
2884
+ width: number;
2885
+ height: number;
2886
+ crop: boolean;
2887
+ }[] | undefined;
2888
+ } | undefined;
2889
+ maxVersions?: number | undefined;
2890
+ } | undefined;
2891
+ readonly maskingRule?: {
2892
+ field: string;
2893
+ strategy: "redact" | "partial" | "hash" | "tokenize" | "randomize" | "nullify" | "substitute";
2894
+ preserveFormat: boolean;
2895
+ preserveLength: boolean;
2896
+ pattern?: string | undefined;
2897
+ roles?: string[] | undefined;
2898
+ exemptRoles?: string[] | undefined;
2899
+ } | undefined;
2900
+ readonly auditTrail?: boolean | undefined;
2901
+ readonly dependencies?: string[] | undefined;
2902
+ readonly cached?: {
2903
+ enabled: boolean;
2904
+ ttl: number;
2905
+ invalidateOn: string[];
2906
+ } | undefined;
2907
+ readonly dataQuality?: {
2908
+ uniqueness: boolean;
2909
+ completeness: number;
2910
+ accuracy?: {
2911
+ source: string;
2912
+ threshold: number;
2913
+ } | undefined;
2914
+ } | undefined;
2915
+ readonly group?: string | undefined;
2916
+ readonly conditionalRequired?: string | undefined;
2917
+ readonly hidden?: boolean | undefined;
2918
+ readonly sortable?: boolean | undefined;
2919
+ readonly inlineHelpText?: string | undefined;
2920
+ readonly trackFeedHistory?: boolean | undefined;
2921
+ readonly caseSensitive?: boolean | undefined;
2922
+ readonly autonumberFormat?: string | undefined;
2923
+ readonly index?: boolean | undefined;
2924
+ readonly externalId?: boolean | undefined;
2925
+ readonly type: "text";
2926
+ };
2927
+ readonly label: {
2928
+ readonly format?: string | undefined;
2929
+ readonly expression?: string | undefined;
2930
+ readonly readonly?: boolean | undefined;
2931
+ readonly defaultValue?: unknown;
2932
+ readonly min?: number | undefined;
2933
+ readonly max?: number | undefined;
2934
+ readonly name?: string | undefined;
2935
+ readonly encryptionConfig?: {
2936
+ enabled: boolean;
2937
+ algorithm: "aes-256-gcm" | "aes-256-cbc" | "chacha20-poly1305";
2938
+ keyManagement: {
2939
+ provider: "local" | "aws-kms" | "azure-key-vault" | "gcp-kms" | "hashicorp-vault";
2940
+ keyId?: string | undefined;
2941
+ rotationPolicy?: {
2942
+ enabled: boolean;
2943
+ frequencyDays: number;
2944
+ retainOldVersions: number;
2945
+ autoRotate: boolean;
2946
+ } | undefined;
2947
+ };
2948
+ scope: "table" | "record" | "field" | "database";
2949
+ deterministicEncryption: boolean;
2950
+ searchableEncryption: boolean;
2951
+ } | undefined;
2952
+ readonly label?: string | undefined;
2953
+ readonly precision?: number | undefined;
2954
+ readonly description?: string | undefined;
2955
+ readonly columnName?: string | undefined;
2956
+ readonly required?: boolean | undefined;
2957
+ readonly searchable?: boolean | undefined;
2958
+ readonly multiple?: boolean | undefined;
2959
+ readonly unique?: boolean | undefined;
2960
+ readonly maxLength?: number | undefined;
2961
+ readonly minLength?: number | undefined;
2962
+ readonly scale?: number | undefined;
2963
+ readonly options?: {
2964
+ label: string;
2965
+ value: string;
2966
+ color?: string | undefined;
2967
+ default?: boolean | undefined;
2968
+ }[] | undefined;
2969
+ readonly reference?: string | undefined;
2970
+ readonly referenceFilters?: string[] | undefined;
2971
+ readonly writeRequiresMasterRead?: boolean | undefined;
2972
+ readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
2973
+ readonly summaryOperations?: {
2974
+ object: string;
2975
+ field: string;
2976
+ function: "count" | "sum" | "avg" | "min" | "max";
2977
+ } | undefined;
2978
+ readonly language?: string | undefined;
2979
+ readonly theme?: string | undefined;
2980
+ readonly lineNumbers?: boolean | undefined;
2981
+ readonly maxRating?: number | undefined;
2982
+ readonly allowHalf?: boolean | undefined;
2983
+ readonly displayMap?: boolean | undefined;
2984
+ readonly allowGeocoding?: boolean | undefined;
2985
+ readonly addressFormat?: "us" | "uk" | "international" | undefined;
2986
+ readonly colorFormat?: "hex" | "rgb" | "rgba" | "hsl" | undefined;
2987
+ readonly allowAlpha?: boolean | undefined;
2988
+ readonly presetColors?: string[] | undefined;
2989
+ readonly step?: number | undefined;
2990
+ readonly showValue?: boolean | undefined;
2991
+ readonly marks?: Record<string, string> | undefined;
2992
+ readonly barcodeFormat?: "qr" | "ean13" | "ean8" | "code128" | "code39" | "upca" | "upce" | undefined;
2993
+ readonly qrErrorCorrection?: "L" | "M" | "Q" | "H" | undefined;
2994
+ readonly displayValue?: boolean | undefined;
2995
+ readonly allowScanning?: boolean | undefined;
2996
+ readonly currencyConfig?: {
2997
+ precision: number;
2998
+ currencyMode: "dynamic" | "fixed";
2999
+ defaultCurrency: string;
3000
+ } | undefined;
3001
+ readonly vectorConfig?: {
3002
+ dimensions: number;
3003
+ distanceMetric: "cosine" | "euclidean" | "dotProduct" | "manhattan";
3004
+ normalized: boolean;
3005
+ indexed: boolean;
3006
+ indexType?: "hnsw" | "ivfflat" | "flat" | undefined;
3007
+ } | undefined;
3008
+ readonly fileAttachmentConfig?: {
3009
+ virusScan: boolean;
3010
+ virusScanOnUpload: boolean;
3011
+ quarantineOnThreat: boolean;
3012
+ allowMultiple: boolean;
3013
+ allowReplace: boolean;
3014
+ allowDelete: boolean;
3015
+ requireUpload: boolean;
3016
+ extractMetadata: boolean;
3017
+ extractText: boolean;
3018
+ versioningEnabled: boolean;
3019
+ publicRead: boolean;
3020
+ presignedUrlExpiry: number;
3021
+ minSize?: number | undefined;
3022
+ maxSize?: number | undefined;
3023
+ allowedTypes?: string[] | undefined;
3024
+ blockedTypes?: string[] | undefined;
3025
+ allowedMimeTypes?: string[] | undefined;
3026
+ blockedMimeTypes?: string[] | undefined;
3027
+ virusScanProvider?: "custom" | "clamav" | "virustotal" | "metadefender" | undefined;
3028
+ storageProvider?: string | undefined;
3029
+ storageBucket?: string | undefined;
3030
+ storagePrefix?: string | undefined;
3031
+ imageValidation?: {
3032
+ generateThumbnails: boolean;
3033
+ preserveMetadata: boolean;
3034
+ autoRotate: boolean;
3035
+ minWidth?: number | undefined;
3036
+ maxWidth?: number | undefined;
3037
+ minHeight?: number | undefined;
3038
+ maxHeight?: number | undefined;
3039
+ aspectRatio?: string | undefined;
3040
+ thumbnailSizes?: {
3041
+ name: string;
3042
+ width: number;
3043
+ height: number;
3044
+ crop: boolean;
3045
+ }[] | undefined;
3046
+ } | undefined;
3047
+ maxVersions?: number | undefined;
3048
+ } | undefined;
3049
+ readonly maskingRule?: {
3050
+ field: string;
3051
+ strategy: "redact" | "partial" | "hash" | "tokenize" | "randomize" | "nullify" | "substitute";
3052
+ preserveFormat: boolean;
3053
+ preserveLength: boolean;
3054
+ pattern?: string | undefined;
3055
+ roles?: string[] | undefined;
3056
+ exemptRoles?: string[] | undefined;
3057
+ } | undefined;
3058
+ readonly auditTrail?: boolean | undefined;
3059
+ readonly dependencies?: string[] | undefined;
3060
+ readonly cached?: {
3061
+ enabled: boolean;
3062
+ ttl: number;
3063
+ invalidateOn: string[];
3064
+ } | undefined;
3065
+ readonly dataQuality?: {
3066
+ uniqueness: boolean;
3067
+ completeness: number;
3068
+ accuracy?: {
3069
+ source: string;
3070
+ threshold: number;
3071
+ } | undefined;
3072
+ } | undefined;
3073
+ readonly group?: string | undefined;
3074
+ readonly conditionalRequired?: string | undefined;
3075
+ readonly hidden?: boolean | undefined;
3076
+ readonly sortable?: boolean | undefined;
3077
+ readonly inlineHelpText?: string | undefined;
3078
+ readonly trackFeedHistory?: boolean | undefined;
3079
+ readonly caseSensitive?: boolean | undefined;
3080
+ readonly autonumberFormat?: string | undefined;
3081
+ readonly index?: boolean | undefined;
3082
+ readonly externalId?: boolean | undefined;
3083
+ readonly type: "text";
3084
+ };
3085
+ readonly description: {
3086
+ readonly format?: string | undefined;
3087
+ readonly expression?: string | undefined;
3088
+ readonly readonly?: boolean | undefined;
3089
+ readonly defaultValue?: unknown;
3090
+ readonly min?: number | undefined;
3091
+ readonly max?: number | undefined;
3092
+ readonly name?: string | undefined;
3093
+ readonly encryptionConfig?: {
3094
+ enabled: boolean;
3095
+ algorithm: "aes-256-gcm" | "aes-256-cbc" | "chacha20-poly1305";
3096
+ keyManagement: {
3097
+ provider: "local" | "aws-kms" | "azure-key-vault" | "gcp-kms" | "hashicorp-vault";
3098
+ keyId?: string | undefined;
3099
+ rotationPolicy?: {
3100
+ enabled: boolean;
3101
+ frequencyDays: number;
3102
+ retainOldVersions: number;
3103
+ autoRotate: boolean;
3104
+ } | undefined;
3105
+ };
3106
+ scope: "table" | "record" | "field" | "database";
3107
+ deterministicEncryption: boolean;
3108
+ searchableEncryption: boolean;
3109
+ } | undefined;
3110
+ readonly label?: string | undefined;
3111
+ readonly precision?: number | undefined;
3112
+ readonly description?: string | undefined;
3113
+ readonly columnName?: string | undefined;
3114
+ readonly required?: boolean | undefined;
3115
+ readonly searchable?: boolean | undefined;
3116
+ readonly multiple?: boolean | undefined;
3117
+ readonly unique?: boolean | undefined;
3118
+ readonly maxLength?: number | undefined;
3119
+ readonly minLength?: number | undefined;
3120
+ readonly scale?: number | undefined;
3121
+ readonly options?: {
3122
+ label: string;
3123
+ value: string;
3124
+ color?: string | undefined;
3125
+ default?: boolean | undefined;
3126
+ }[] | undefined;
3127
+ readonly reference?: string | undefined;
3128
+ readonly referenceFilters?: string[] | undefined;
3129
+ readonly writeRequiresMasterRead?: boolean | undefined;
3130
+ readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
3131
+ readonly summaryOperations?: {
3132
+ object: string;
3133
+ field: string;
3134
+ function: "count" | "sum" | "avg" | "min" | "max";
3135
+ } | undefined;
3136
+ readonly language?: string | undefined;
3137
+ readonly theme?: string | undefined;
3138
+ readonly lineNumbers?: boolean | undefined;
3139
+ readonly maxRating?: number | undefined;
3140
+ readonly allowHalf?: boolean | undefined;
3141
+ readonly displayMap?: boolean | undefined;
3142
+ readonly allowGeocoding?: boolean | undefined;
3143
+ readonly addressFormat?: "us" | "uk" | "international" | undefined;
3144
+ readonly colorFormat?: "hex" | "rgb" | "rgba" | "hsl" | undefined;
3145
+ readonly allowAlpha?: boolean | undefined;
3146
+ readonly presetColors?: string[] | undefined;
3147
+ readonly step?: number | undefined;
3148
+ readonly showValue?: boolean | undefined;
3149
+ readonly marks?: Record<string, string> | undefined;
3150
+ readonly barcodeFormat?: "qr" | "ean13" | "ean8" | "code128" | "code39" | "upca" | "upce" | undefined;
3151
+ readonly qrErrorCorrection?: "L" | "M" | "Q" | "H" | undefined;
3152
+ readonly displayValue?: boolean | undefined;
3153
+ readonly allowScanning?: boolean | undefined;
3154
+ readonly currencyConfig?: {
3155
+ precision: number;
3156
+ currencyMode: "dynamic" | "fixed";
3157
+ defaultCurrency: string;
3158
+ } | undefined;
3159
+ readonly vectorConfig?: {
3160
+ dimensions: number;
3161
+ distanceMetric: "cosine" | "euclidean" | "dotProduct" | "manhattan";
3162
+ normalized: boolean;
3163
+ indexed: boolean;
3164
+ indexType?: "hnsw" | "ivfflat" | "flat" | undefined;
3165
+ } | undefined;
3166
+ readonly fileAttachmentConfig?: {
3167
+ virusScan: boolean;
3168
+ virusScanOnUpload: boolean;
3169
+ quarantineOnThreat: boolean;
3170
+ allowMultiple: boolean;
3171
+ allowReplace: boolean;
3172
+ allowDelete: boolean;
3173
+ requireUpload: boolean;
3174
+ extractMetadata: boolean;
3175
+ extractText: boolean;
3176
+ versioningEnabled: boolean;
3177
+ publicRead: boolean;
3178
+ presignedUrlExpiry: number;
3179
+ minSize?: number | undefined;
3180
+ maxSize?: number | undefined;
3181
+ allowedTypes?: string[] | undefined;
3182
+ blockedTypes?: string[] | undefined;
3183
+ allowedMimeTypes?: string[] | undefined;
3184
+ blockedMimeTypes?: string[] | undefined;
3185
+ virusScanProvider?: "custom" | "clamav" | "virustotal" | "metadefender" | undefined;
3186
+ storageProvider?: string | undefined;
3187
+ storageBucket?: string | undefined;
3188
+ storagePrefix?: string | undefined;
3189
+ imageValidation?: {
3190
+ generateThumbnails: boolean;
3191
+ preserveMetadata: boolean;
3192
+ autoRotate: boolean;
3193
+ minWidth?: number | undefined;
3194
+ maxWidth?: number | undefined;
3195
+ minHeight?: number | undefined;
3196
+ maxHeight?: number | undefined;
3197
+ aspectRatio?: string | undefined;
3198
+ thumbnailSizes?: {
3199
+ name: string;
3200
+ width: number;
3201
+ height: number;
3202
+ crop: boolean;
3203
+ }[] | undefined;
3204
+ } | undefined;
3205
+ maxVersions?: number | undefined;
3206
+ } | undefined;
3207
+ readonly maskingRule?: {
3208
+ field: string;
3209
+ strategy: "redact" | "partial" | "hash" | "tokenize" | "randomize" | "nullify" | "substitute";
3210
+ preserveFormat: boolean;
3211
+ preserveLength: boolean;
3212
+ pattern?: string | undefined;
3213
+ roles?: string[] | undefined;
3214
+ exemptRoles?: string[] | undefined;
3215
+ } | undefined;
3216
+ readonly auditTrail?: boolean | undefined;
3217
+ readonly dependencies?: string[] | undefined;
3218
+ readonly cached?: {
3219
+ enabled: boolean;
3220
+ ttl: number;
3221
+ invalidateOn: string[];
3222
+ } | undefined;
3223
+ readonly dataQuality?: {
3224
+ uniqueness: boolean;
3225
+ completeness: number;
3226
+ accuracy?: {
3227
+ source: string;
3228
+ threshold: number;
3229
+ } | undefined;
3230
+ } | undefined;
3231
+ readonly group?: string | undefined;
3232
+ readonly conditionalRequired?: string | undefined;
3233
+ readonly hidden?: boolean | undefined;
3234
+ readonly sortable?: boolean | undefined;
3235
+ readonly inlineHelpText?: string | undefined;
3236
+ readonly trackFeedHistory?: boolean | undefined;
3237
+ readonly caseSensitive?: boolean | undefined;
3238
+ readonly autonumberFormat?: string | undefined;
3239
+ readonly index?: boolean | undefined;
3240
+ readonly externalId?: boolean | undefined;
3241
+ readonly type: "textarea";
3242
+ };
3243
+ readonly object_permissions: {
3244
+ readonly format?: string | undefined;
3245
+ readonly expression?: string | undefined;
3246
+ readonly readonly?: boolean | undefined;
3247
+ readonly defaultValue?: unknown;
3248
+ readonly min?: number | undefined;
3249
+ readonly max?: number | undefined;
3250
+ readonly name?: string | undefined;
3251
+ readonly encryptionConfig?: {
3252
+ enabled: boolean;
3253
+ algorithm: "aes-256-gcm" | "aes-256-cbc" | "chacha20-poly1305";
3254
+ keyManagement: {
3255
+ provider: "local" | "aws-kms" | "azure-key-vault" | "gcp-kms" | "hashicorp-vault";
3256
+ keyId?: string | undefined;
3257
+ rotationPolicy?: {
3258
+ enabled: boolean;
3259
+ frequencyDays: number;
3260
+ retainOldVersions: number;
3261
+ autoRotate: boolean;
3262
+ } | undefined;
3263
+ };
3264
+ scope: "table" | "record" | "field" | "database";
3265
+ deterministicEncryption: boolean;
3266
+ searchableEncryption: boolean;
3267
+ } | undefined;
3268
+ readonly label?: string | undefined;
3269
+ readonly precision?: number | undefined;
3270
+ readonly description?: string | undefined;
3271
+ readonly columnName?: string | undefined;
3272
+ readonly required?: boolean | undefined;
3273
+ readonly searchable?: boolean | undefined;
3274
+ readonly multiple?: boolean | undefined;
3275
+ readonly unique?: boolean | undefined;
3276
+ readonly maxLength?: number | undefined;
3277
+ readonly minLength?: number | undefined;
3278
+ readonly scale?: number | undefined;
3279
+ readonly options?: {
3280
+ label: string;
3281
+ value: string;
3282
+ color?: string | undefined;
3283
+ default?: boolean | undefined;
3284
+ }[] | undefined;
3285
+ readonly reference?: string | undefined;
3286
+ readonly referenceFilters?: string[] | undefined;
3287
+ readonly writeRequiresMasterRead?: boolean | undefined;
3288
+ readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
3289
+ readonly summaryOperations?: {
3290
+ object: string;
3291
+ field: string;
3292
+ function: "count" | "sum" | "avg" | "min" | "max";
3293
+ } | undefined;
3294
+ readonly language?: string | undefined;
3295
+ readonly theme?: string | undefined;
3296
+ readonly lineNumbers?: boolean | undefined;
3297
+ readonly maxRating?: number | undefined;
3298
+ readonly allowHalf?: boolean | undefined;
3299
+ readonly displayMap?: boolean | undefined;
3300
+ readonly allowGeocoding?: boolean | undefined;
3301
+ readonly addressFormat?: "us" | "uk" | "international" | undefined;
3302
+ readonly colorFormat?: "hex" | "rgb" | "rgba" | "hsl" | undefined;
3303
+ readonly allowAlpha?: boolean | undefined;
3304
+ readonly presetColors?: string[] | undefined;
3305
+ readonly step?: number | undefined;
3306
+ readonly showValue?: boolean | undefined;
3307
+ readonly marks?: Record<string, string> | undefined;
3308
+ readonly barcodeFormat?: "qr" | "ean13" | "ean8" | "code128" | "code39" | "upca" | "upce" | undefined;
3309
+ readonly qrErrorCorrection?: "L" | "M" | "Q" | "H" | undefined;
3310
+ readonly displayValue?: boolean | undefined;
3311
+ readonly allowScanning?: boolean | undefined;
3312
+ readonly currencyConfig?: {
3313
+ precision: number;
3314
+ currencyMode: "dynamic" | "fixed";
3315
+ defaultCurrency: string;
3316
+ } | undefined;
3317
+ readonly vectorConfig?: {
3318
+ dimensions: number;
3319
+ distanceMetric: "cosine" | "euclidean" | "dotProduct" | "manhattan";
3320
+ normalized: boolean;
3321
+ indexed: boolean;
3322
+ indexType?: "hnsw" | "ivfflat" | "flat" | undefined;
3323
+ } | undefined;
3324
+ readonly fileAttachmentConfig?: {
3325
+ virusScan: boolean;
3326
+ virusScanOnUpload: boolean;
3327
+ quarantineOnThreat: boolean;
3328
+ allowMultiple: boolean;
3329
+ allowReplace: boolean;
3330
+ allowDelete: boolean;
3331
+ requireUpload: boolean;
3332
+ extractMetadata: boolean;
3333
+ extractText: boolean;
3334
+ versioningEnabled: boolean;
3335
+ publicRead: boolean;
3336
+ presignedUrlExpiry: number;
3337
+ minSize?: number | undefined;
3338
+ maxSize?: number | undefined;
3339
+ allowedTypes?: string[] | undefined;
3340
+ blockedTypes?: string[] | undefined;
3341
+ allowedMimeTypes?: string[] | undefined;
3342
+ blockedMimeTypes?: string[] | undefined;
3343
+ virusScanProvider?: "custom" | "clamav" | "virustotal" | "metadefender" | undefined;
3344
+ storageProvider?: string | undefined;
3345
+ storageBucket?: string | undefined;
3346
+ storagePrefix?: string | undefined;
3347
+ imageValidation?: {
3348
+ generateThumbnails: boolean;
3349
+ preserveMetadata: boolean;
3350
+ autoRotate: boolean;
3351
+ minWidth?: number | undefined;
3352
+ maxWidth?: number | undefined;
3353
+ minHeight?: number | undefined;
3354
+ maxHeight?: number | undefined;
3355
+ aspectRatio?: string | undefined;
3356
+ thumbnailSizes?: {
3357
+ name: string;
3358
+ width: number;
3359
+ height: number;
3360
+ crop: boolean;
3361
+ }[] | undefined;
3362
+ } | undefined;
3363
+ maxVersions?: number | undefined;
3364
+ } | undefined;
3365
+ readonly maskingRule?: {
3366
+ field: string;
3367
+ strategy: "redact" | "partial" | "hash" | "tokenize" | "randomize" | "nullify" | "substitute";
3368
+ preserveFormat: boolean;
3369
+ preserveLength: boolean;
3370
+ pattern?: string | undefined;
3371
+ roles?: string[] | undefined;
3372
+ exemptRoles?: string[] | undefined;
3373
+ } | undefined;
3374
+ readonly auditTrail?: boolean | undefined;
3375
+ readonly dependencies?: string[] | undefined;
3376
+ readonly cached?: {
3377
+ enabled: boolean;
3378
+ ttl: number;
3379
+ invalidateOn: string[];
3380
+ } | undefined;
3381
+ readonly dataQuality?: {
3382
+ uniqueness: boolean;
3383
+ completeness: number;
3384
+ accuracy?: {
3385
+ source: string;
3386
+ threshold: number;
3387
+ } | undefined;
3388
+ } | undefined;
3389
+ readonly group?: string | undefined;
3390
+ readonly conditionalRequired?: string | undefined;
3391
+ readonly hidden?: boolean | undefined;
3392
+ readonly sortable?: boolean | undefined;
3393
+ readonly inlineHelpText?: string | undefined;
3394
+ readonly trackFeedHistory?: boolean | undefined;
3395
+ readonly caseSensitive?: boolean | undefined;
3396
+ readonly autonumberFormat?: string | undefined;
3397
+ readonly index?: boolean | undefined;
3398
+ readonly externalId?: boolean | undefined;
3399
+ readonly type: "textarea";
3400
+ };
3401
+ readonly field_permissions: {
3402
+ readonly format?: string | undefined;
3403
+ readonly expression?: string | undefined;
3404
+ readonly readonly?: boolean | undefined;
3405
+ readonly defaultValue?: unknown;
3406
+ readonly min?: number | undefined;
3407
+ readonly max?: number | undefined;
3408
+ readonly name?: string | undefined;
3409
+ readonly encryptionConfig?: {
3410
+ enabled: boolean;
3411
+ algorithm: "aes-256-gcm" | "aes-256-cbc" | "chacha20-poly1305";
3412
+ keyManagement: {
3413
+ provider: "local" | "aws-kms" | "azure-key-vault" | "gcp-kms" | "hashicorp-vault";
3414
+ keyId?: string | undefined;
3415
+ rotationPolicy?: {
3416
+ enabled: boolean;
3417
+ frequencyDays: number;
3418
+ retainOldVersions: number;
3419
+ autoRotate: boolean;
3420
+ } | undefined;
3421
+ };
3422
+ scope: "table" | "record" | "field" | "database";
3423
+ deterministicEncryption: boolean;
3424
+ searchableEncryption: boolean;
3425
+ } | undefined;
3426
+ readonly label?: string | undefined;
3427
+ readonly precision?: number | undefined;
3428
+ readonly description?: string | undefined;
3429
+ readonly columnName?: string | undefined;
3430
+ readonly required?: boolean | undefined;
3431
+ readonly searchable?: boolean | undefined;
3432
+ readonly multiple?: boolean | undefined;
3433
+ readonly unique?: boolean | undefined;
3434
+ readonly maxLength?: number | undefined;
3435
+ readonly minLength?: number | undefined;
3436
+ readonly scale?: number | undefined;
3437
+ readonly options?: {
3438
+ label: string;
3439
+ value: string;
3440
+ color?: string | undefined;
3441
+ default?: boolean | undefined;
3442
+ }[] | undefined;
3443
+ readonly reference?: string | undefined;
3444
+ readonly referenceFilters?: string[] | undefined;
3445
+ readonly writeRequiresMasterRead?: boolean | undefined;
3446
+ readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
3447
+ readonly summaryOperations?: {
3448
+ object: string;
3449
+ field: string;
3450
+ function: "count" | "sum" | "avg" | "min" | "max";
3451
+ } | undefined;
3452
+ readonly language?: string | undefined;
3453
+ readonly theme?: string | undefined;
3454
+ readonly lineNumbers?: boolean | undefined;
3455
+ readonly maxRating?: number | undefined;
3456
+ readonly allowHalf?: boolean | undefined;
3457
+ readonly displayMap?: boolean | undefined;
3458
+ readonly allowGeocoding?: boolean | undefined;
3459
+ readonly addressFormat?: "us" | "uk" | "international" | undefined;
3460
+ readonly colorFormat?: "hex" | "rgb" | "rgba" | "hsl" | undefined;
3461
+ readonly allowAlpha?: boolean | undefined;
3462
+ readonly presetColors?: string[] | undefined;
3463
+ readonly step?: number | undefined;
3464
+ readonly showValue?: boolean | undefined;
3465
+ readonly marks?: Record<string, string> | undefined;
3466
+ readonly barcodeFormat?: "qr" | "ean13" | "ean8" | "code128" | "code39" | "upca" | "upce" | undefined;
3467
+ readonly qrErrorCorrection?: "L" | "M" | "Q" | "H" | undefined;
3468
+ readonly displayValue?: boolean | undefined;
3469
+ readonly allowScanning?: boolean | undefined;
3470
+ readonly currencyConfig?: {
3471
+ precision: number;
3472
+ currencyMode: "dynamic" | "fixed";
3473
+ defaultCurrency: string;
3474
+ } | undefined;
3475
+ readonly vectorConfig?: {
3476
+ dimensions: number;
3477
+ distanceMetric: "cosine" | "euclidean" | "dotProduct" | "manhattan";
3478
+ normalized: boolean;
3479
+ indexed: boolean;
3480
+ indexType?: "hnsw" | "ivfflat" | "flat" | undefined;
3481
+ } | undefined;
3482
+ readonly fileAttachmentConfig?: {
3483
+ virusScan: boolean;
3484
+ virusScanOnUpload: boolean;
3485
+ quarantineOnThreat: boolean;
3486
+ allowMultiple: boolean;
3487
+ allowReplace: boolean;
3488
+ allowDelete: boolean;
3489
+ requireUpload: boolean;
3490
+ extractMetadata: boolean;
3491
+ extractText: boolean;
3492
+ versioningEnabled: boolean;
3493
+ publicRead: boolean;
3494
+ presignedUrlExpiry: number;
3495
+ minSize?: number | undefined;
3496
+ maxSize?: number | undefined;
3497
+ allowedTypes?: string[] | undefined;
3498
+ blockedTypes?: string[] | undefined;
3499
+ allowedMimeTypes?: string[] | undefined;
3500
+ blockedMimeTypes?: string[] | undefined;
3501
+ virusScanProvider?: "custom" | "clamav" | "virustotal" | "metadefender" | undefined;
3502
+ storageProvider?: string | undefined;
3503
+ storageBucket?: string | undefined;
3504
+ storagePrefix?: string | undefined;
3505
+ imageValidation?: {
3506
+ generateThumbnails: boolean;
3507
+ preserveMetadata: boolean;
3508
+ autoRotate: boolean;
3509
+ minWidth?: number | undefined;
3510
+ maxWidth?: number | undefined;
3511
+ minHeight?: number | undefined;
3512
+ maxHeight?: number | undefined;
3513
+ aspectRatio?: string | undefined;
3514
+ thumbnailSizes?: {
3515
+ name: string;
3516
+ width: number;
3517
+ height: number;
3518
+ crop: boolean;
3519
+ }[] | undefined;
3520
+ } | undefined;
3521
+ maxVersions?: number | undefined;
3522
+ } | undefined;
3523
+ readonly maskingRule?: {
3524
+ field: string;
3525
+ strategy: "redact" | "partial" | "hash" | "tokenize" | "randomize" | "nullify" | "substitute";
3526
+ preserveFormat: boolean;
3527
+ preserveLength: boolean;
3528
+ pattern?: string | undefined;
3529
+ roles?: string[] | undefined;
3530
+ exemptRoles?: string[] | undefined;
3531
+ } | undefined;
3532
+ readonly auditTrail?: boolean | undefined;
3533
+ readonly dependencies?: string[] | undefined;
3534
+ readonly cached?: {
3535
+ enabled: boolean;
3536
+ ttl: number;
3537
+ invalidateOn: string[];
3538
+ } | undefined;
3539
+ readonly dataQuality?: {
3540
+ uniqueness: boolean;
3541
+ completeness: number;
3542
+ accuracy?: {
3543
+ source: string;
3544
+ threshold: number;
3545
+ } | undefined;
3546
+ } | undefined;
3547
+ readonly group?: string | undefined;
3548
+ readonly conditionalRequired?: string | undefined;
3549
+ readonly hidden?: boolean | undefined;
3550
+ readonly sortable?: boolean | undefined;
3551
+ readonly inlineHelpText?: string | undefined;
3552
+ readonly trackFeedHistory?: boolean | undefined;
3553
+ readonly caseSensitive?: boolean | undefined;
3554
+ readonly autonumberFormat?: string | undefined;
3555
+ readonly index?: boolean | undefined;
3556
+ readonly externalId?: boolean | undefined;
3557
+ readonly type: "textarea";
3558
+ };
3559
+ readonly active: {
3560
+ readonly format?: string | undefined;
3561
+ readonly expression?: string | undefined;
3562
+ readonly readonly?: boolean | undefined;
3563
+ readonly defaultValue?: unknown;
3564
+ readonly min?: number | undefined;
3565
+ readonly max?: number | undefined;
3566
+ readonly name?: string | undefined;
3567
+ readonly encryptionConfig?: {
3568
+ enabled: boolean;
3569
+ algorithm: "aes-256-gcm" | "aes-256-cbc" | "chacha20-poly1305";
3570
+ keyManagement: {
3571
+ provider: "local" | "aws-kms" | "azure-key-vault" | "gcp-kms" | "hashicorp-vault";
3572
+ keyId?: string | undefined;
3573
+ rotationPolicy?: {
3574
+ enabled: boolean;
3575
+ frequencyDays: number;
3576
+ retainOldVersions: number;
3577
+ autoRotate: boolean;
3578
+ } | undefined;
3579
+ };
3580
+ scope: "table" | "record" | "field" | "database";
3581
+ deterministicEncryption: boolean;
3582
+ searchableEncryption: boolean;
3583
+ } | undefined;
3584
+ readonly label?: string | undefined;
3585
+ readonly precision?: number | undefined;
3586
+ readonly description?: string | undefined;
3587
+ readonly columnName?: string | undefined;
3588
+ readonly required?: boolean | undefined;
3589
+ readonly searchable?: boolean | undefined;
3590
+ readonly multiple?: boolean | undefined;
3591
+ readonly unique?: boolean | undefined;
3592
+ readonly maxLength?: number | undefined;
3593
+ readonly minLength?: number | undefined;
3594
+ readonly scale?: number | undefined;
3595
+ readonly options?: {
3596
+ label: string;
3597
+ value: string;
3598
+ color?: string | undefined;
3599
+ default?: boolean | undefined;
3600
+ }[] | undefined;
3601
+ readonly reference?: string | undefined;
3602
+ readonly referenceFilters?: string[] | undefined;
3603
+ readonly writeRequiresMasterRead?: boolean | undefined;
3604
+ readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
3605
+ readonly summaryOperations?: {
3606
+ object: string;
3607
+ field: string;
3608
+ function: "count" | "sum" | "avg" | "min" | "max";
3609
+ } | undefined;
3610
+ readonly language?: string | undefined;
3611
+ readonly theme?: string | undefined;
3612
+ readonly lineNumbers?: boolean | undefined;
3613
+ readonly maxRating?: number | undefined;
3614
+ readonly allowHalf?: boolean | undefined;
3615
+ readonly displayMap?: boolean | undefined;
3616
+ readonly allowGeocoding?: boolean | undefined;
3617
+ readonly addressFormat?: "us" | "uk" | "international" | undefined;
3618
+ readonly colorFormat?: "hex" | "rgb" | "rgba" | "hsl" | undefined;
3619
+ readonly allowAlpha?: boolean | undefined;
3620
+ readonly presetColors?: string[] | undefined;
3621
+ readonly step?: number | undefined;
3622
+ readonly showValue?: boolean | undefined;
3623
+ readonly marks?: Record<string, string> | undefined;
3624
+ readonly barcodeFormat?: "qr" | "ean13" | "ean8" | "code128" | "code39" | "upca" | "upce" | undefined;
3625
+ readonly qrErrorCorrection?: "L" | "M" | "Q" | "H" | undefined;
3626
+ readonly displayValue?: boolean | undefined;
3627
+ readonly allowScanning?: boolean | undefined;
3628
+ readonly currencyConfig?: {
3629
+ precision: number;
3630
+ currencyMode: "dynamic" | "fixed";
3631
+ defaultCurrency: string;
3632
+ } | undefined;
3633
+ readonly vectorConfig?: {
3634
+ dimensions: number;
3635
+ distanceMetric: "cosine" | "euclidean" | "dotProduct" | "manhattan";
3636
+ normalized: boolean;
3637
+ indexed: boolean;
3638
+ indexType?: "hnsw" | "ivfflat" | "flat" | undefined;
3639
+ } | undefined;
3640
+ readonly fileAttachmentConfig?: {
3641
+ virusScan: boolean;
3642
+ virusScanOnUpload: boolean;
3643
+ quarantineOnThreat: boolean;
3644
+ allowMultiple: boolean;
3645
+ allowReplace: boolean;
3646
+ allowDelete: boolean;
3647
+ requireUpload: boolean;
3648
+ extractMetadata: boolean;
3649
+ extractText: boolean;
3650
+ versioningEnabled: boolean;
3651
+ publicRead: boolean;
3652
+ presignedUrlExpiry: number;
3653
+ minSize?: number | undefined;
3654
+ maxSize?: number | undefined;
3655
+ allowedTypes?: string[] | undefined;
3656
+ blockedTypes?: string[] | undefined;
3657
+ allowedMimeTypes?: string[] | undefined;
3658
+ blockedMimeTypes?: string[] | undefined;
3659
+ virusScanProvider?: "custom" | "clamav" | "virustotal" | "metadefender" | undefined;
3660
+ storageProvider?: string | undefined;
3661
+ storageBucket?: string | undefined;
3662
+ storagePrefix?: string | undefined;
3663
+ imageValidation?: {
3664
+ generateThumbnails: boolean;
3665
+ preserveMetadata: boolean;
3666
+ autoRotate: boolean;
3667
+ minWidth?: number | undefined;
3668
+ maxWidth?: number | undefined;
3669
+ minHeight?: number | undefined;
3670
+ maxHeight?: number | undefined;
3671
+ aspectRatio?: string | undefined;
3672
+ thumbnailSizes?: {
3673
+ name: string;
3674
+ width: number;
3675
+ height: number;
3676
+ crop: boolean;
3677
+ }[] | undefined;
3678
+ } | undefined;
3679
+ maxVersions?: number | undefined;
3680
+ } | undefined;
3681
+ readonly maskingRule?: {
3682
+ field: string;
3683
+ strategy: "redact" | "partial" | "hash" | "tokenize" | "randomize" | "nullify" | "substitute";
3684
+ preserveFormat: boolean;
3685
+ preserveLength: boolean;
3686
+ pattern?: string | undefined;
3687
+ roles?: string[] | undefined;
3688
+ exemptRoles?: string[] | undefined;
3689
+ } | undefined;
3690
+ readonly auditTrail?: boolean | undefined;
3691
+ readonly dependencies?: string[] | undefined;
3692
+ readonly cached?: {
3693
+ enabled: boolean;
3694
+ ttl: number;
3695
+ invalidateOn: string[];
3696
+ } | undefined;
3697
+ readonly dataQuality?: {
3698
+ uniqueness: boolean;
3699
+ completeness: number;
3700
+ accuracy?: {
3701
+ source: string;
3702
+ threshold: number;
3703
+ } | undefined;
3704
+ } | undefined;
3705
+ readonly group?: string | undefined;
3706
+ readonly conditionalRequired?: string | undefined;
3707
+ readonly hidden?: boolean | undefined;
3708
+ readonly sortable?: boolean | undefined;
3709
+ readonly inlineHelpText?: string | undefined;
3710
+ readonly trackFeedHistory?: boolean | undefined;
3711
+ readonly caseSensitive?: boolean | undefined;
3712
+ readonly autonumberFormat?: string | undefined;
3713
+ readonly index?: boolean | undefined;
3714
+ readonly externalId?: boolean | undefined;
3715
+ readonly type: "boolean";
3716
+ };
3717
+ };
3718
+ readonly indexes: [{
3719
+ readonly fields: ["name"];
3720
+ readonly unique: true;
3721
+ }, {
3722
+ readonly fields: ["active"];
3723
+ }];
3724
+ readonly enable: {
3725
+ readonly trackHistory: true;
3726
+ readonly searchable: true;
3727
+ readonly apiEnabled: true;
3728
+ readonly apiMethods: ["get", "list", "create", "update", "delete"];
3729
+ readonly trash: true;
3730
+ readonly mru: true;
3731
+ };
3732
+ }, "fields">;
3733
+
3734
+ export { FieldMasker, PermissionEvaluator, RLSCompiler, SecurityPlugin, SysPermissionSet, SysRole };