@objectstack/platform-objects 7.1.0 → 7.2.1

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.
@@ -211,6 +211,13 @@ declare const SysMetadataObject: Omit<{
211
211
  caseSensitive?: boolean | undefined;
212
212
  autonumberFormat?: string | undefined;
213
213
  }>;
214
+ _lock?: "full" | "none" | "no-overlay" | "no-delete" | undefined;
215
+ _lockReason?: string | undefined;
216
+ _lockSource?: "artifact" | "package" | "env-forced" | undefined;
217
+ _provenance?: "package" | "env-forced" | "org" | undefined;
218
+ _packageId?: string | undefined;
219
+ _packageVersion?: string | undefined;
220
+ _lockDocsUrl?: string | undefined;
214
221
  label?: string | undefined;
215
222
  pluralLabel?: string | undefined;
216
223
  description?: string | undefined;
@@ -356,7 +363,7 @@ declare const SysMetadataObject: Omit<{
356
363
  wrap?: boolean | undefined;
357
364
  type?: string | undefined;
358
365
  pinned?: "left" | "right" | undefined;
359
- summary?: "min" | "max" | "count" | "sum" | "avg" | "none" | "count_empty" | "count_filled" | "count_unique" | "percent_empty" | "percent_filled" | undefined;
366
+ summary?: "none" | "min" | "max" | "count" | "sum" | "avg" | "count_empty" | "count_filled" | "count_unique" | "percent_empty" | "percent_filled" | undefined;
360
367
  link?: boolean | undefined;
361
368
  action?: string | undefined;
362
369
  }[];
@@ -405,7 +412,7 @@ declare const SysMetadataObject: Omit<{
405
412
  bordered?: boolean | undefined;
406
413
  compactToolbar?: boolean | undefined;
407
414
  selection?: {
408
- type: "multiple" | "single" | "none";
415
+ type: "none" | "multiple" | "single";
409
416
  } | undefined;
410
417
  navigation?: {
411
418
  mode: "none" | "split" | "page" | "modal" | "drawer" | "popover" | "new_window";
@@ -600,7 +607,7 @@ declare const SysMetadataObject: Omit<{
600
607
  apiMethods?: ("search" | "create" | "import" | "delete" | "list" | "get" | "update" | "upsert" | "history" | "bulk" | "aggregate" | "restore" | "purge" | "export")[] | undefined;
601
608
  } | undefined;
602
609
  recordTypes?: string[] | undefined;
603
- sharingModel?: "read" | "full" | "private" | "read_write" | undefined;
610
+ sharingModel?: "full" | "read" | "private" | "read_write" | undefined;
604
611
  publicSharing?: {
605
612
  enabled: boolean;
606
613
  allowedAudiences?: ("email" | "public" | "link_only" | "signed_in")[] | undefined;
@@ -703,6 +710,11 @@ declare const SysMetadataObject: Omit<{
703
710
  role?: string | undefined;
704
711
  } | undefined;
705
712
  }[] | undefined;
713
+ protection?: {
714
+ lock: "full" | "none" | "no-overlay" | "no-delete";
715
+ reason: string;
716
+ docsUrl?: string | undefined;
717
+ } | undefined;
706
718
  }, "fields"> & Pick<{
707
719
  readonly name: "sys_metadata";
708
720
  readonly label: "System Metadata";
@@ -5090,6 +5102,13 @@ declare const SysMetadataHistoryObject: Omit<{
5090
5102
  caseSensitive?: boolean | undefined;
5091
5103
  autonumberFormat?: string | undefined;
5092
5104
  }>;
5105
+ _lock?: "full" | "none" | "no-overlay" | "no-delete" | undefined;
5106
+ _lockReason?: string | undefined;
5107
+ _lockSource?: "artifact" | "package" | "env-forced" | undefined;
5108
+ _provenance?: "package" | "env-forced" | "org" | undefined;
5109
+ _packageId?: string | undefined;
5110
+ _packageVersion?: string | undefined;
5111
+ _lockDocsUrl?: string | undefined;
5093
5112
  label?: string | undefined;
5094
5113
  pluralLabel?: string | undefined;
5095
5114
  description?: string | undefined;
@@ -5235,7 +5254,7 @@ declare const SysMetadataHistoryObject: Omit<{
5235
5254
  wrap?: boolean | undefined;
5236
5255
  type?: string | undefined;
5237
5256
  pinned?: "left" | "right" | undefined;
5238
- summary?: "min" | "max" | "count" | "sum" | "avg" | "none" | "count_empty" | "count_filled" | "count_unique" | "percent_empty" | "percent_filled" | undefined;
5257
+ summary?: "none" | "min" | "max" | "count" | "sum" | "avg" | "count_empty" | "count_filled" | "count_unique" | "percent_empty" | "percent_filled" | undefined;
5239
5258
  link?: boolean | undefined;
5240
5259
  action?: string | undefined;
5241
5260
  }[];
@@ -5284,7 +5303,7 @@ declare const SysMetadataHistoryObject: Omit<{
5284
5303
  bordered?: boolean | undefined;
5285
5304
  compactToolbar?: boolean | undefined;
5286
5305
  selection?: {
5287
- type: "multiple" | "single" | "none";
5306
+ type: "none" | "multiple" | "single";
5288
5307
  } | undefined;
5289
5308
  navigation?: {
5290
5309
  mode: "none" | "split" | "page" | "modal" | "drawer" | "popover" | "new_window";
@@ -5479,7 +5498,7 @@ declare const SysMetadataHistoryObject: Omit<{
5479
5498
  apiMethods?: ("search" | "create" | "import" | "delete" | "list" | "get" | "update" | "upsert" | "history" | "bulk" | "aggregate" | "restore" | "purge" | "export")[] | undefined;
5480
5499
  } | undefined;
5481
5500
  recordTypes?: string[] | undefined;
5482
- sharingModel?: "read" | "full" | "private" | "read_write" | undefined;
5501
+ sharingModel?: "full" | "read" | "private" | "read_write" | undefined;
5483
5502
  publicSharing?: {
5484
5503
  enabled: boolean;
5485
5504
  allowedAudiences?: ("email" | "public" | "link_only" | "signed_in")[] | undefined;
@@ -5582,6 +5601,11 @@ declare const SysMetadataHistoryObject: Omit<{
5582
5601
  role?: string | undefined;
5583
5602
  } | undefined;
5584
5603
  }[] | undefined;
5604
+ protection?: {
5605
+ lock: "full" | "none" | "no-overlay" | "no-delete";
5606
+ reason: string;
5607
+ docsUrl?: string | undefined;
5608
+ } | undefined;
5585
5609
  }, "fields"> & Pick<{
5586
5610
  readonly name: "sys_metadata_history";
5587
5611
  readonly label: "Metadata History";
@@ -8089,4 +8113,3237 @@ declare const SysMetadataHistoryObject: Omit<{
8089
8113
  };
8090
8114
  }, "fields">;
8091
8115
 
8092
- export { SysMetadataObject as SysMetadata, SysMetadataHistoryObject, SysMetadataObject };
8116
+ /**
8117
+ * sys_metadata_audit — Metadata Protection Audit Log
8118
+ *
8119
+ * Append-only audit trail for every metadata write **decision** — both
8120
+ * allowed writes and refused ones. Introduced in ADR-0010 Phase 1 as
8121
+ * the compliance surface for the new `_lock` enforcement: every PUT /
8122
+ * publish / rollback / delete that targets `sys_metadata` writes one
8123
+ * row here describing the outcome and the lock state that produced it.
8124
+ *
8125
+ * Distinct from `sys_metadata_history`:
8126
+ * - `sys_metadata_history` records the **body** of every successful
8127
+ * write (full JSON snapshot + checksum). Used for rollback,
8128
+ * diff, and history() reads.
8129
+ * - `sys_metadata_audit` records the **decision** (who tried what,
8130
+ * what code was emitted, was a lock involved). Refused writes
8131
+ * never reach history; they DO reach audit.
8132
+ *
8133
+ * Designed as the smallest possible row that satisfies the four
8134
+ * compliance questions of metadata governance:
8135
+ * 1. Who tried to change what? → actor + type + name
8136
+ * 2. When? → occurred_at
8137
+ * 3. What outcome? → outcome + code
8138
+ * 4. Was an override involved? → lock_overridden + lock_state
8139
+ *
8140
+ * Indexed on `(organization_id, occurred_at)` for the per-org timeline
8141
+ * query and `(type, name, occurred_at)` for the per-item history tab
8142
+ * Studio surfaces on the editor page.
8143
+ */
8144
+ declare const SysMetadataAuditObject: Omit<{
8145
+ name: string;
8146
+ active: boolean;
8147
+ isSystem: boolean;
8148
+ abstract: boolean;
8149
+ datasource: string;
8150
+ fields: Record<string, {
8151
+ type: "number" | "boolean" | "tags" | "date" | "record" | "file" | "code" | "datetime" | "signature" | "progress" | "url" | "text" | "textarea" | "email" | "phone" | "password" | "markdown" | "html" | "richtext" | "currency" | "percent" | "time" | "toggle" | "select" | "multiselect" | "radio" | "checkboxes" | "lookup" | "master_detail" | "tree" | "image" | "avatar" | "video" | "audio" | "formula" | "summary" | "autonumber" | "composite" | "repeater" | "location" | "address" | "json" | "color" | "rating" | "slider" | "qrcode" | "vector";
8152
+ required: boolean;
8153
+ searchable: boolean;
8154
+ multiple: boolean;
8155
+ unique: boolean;
8156
+ deleteBehavior: "set_null" | "cascade" | "restrict";
8157
+ auditTrail: boolean;
8158
+ hidden: boolean;
8159
+ readonly: boolean;
8160
+ sortable: boolean;
8161
+ index: boolean;
8162
+ externalId: boolean;
8163
+ name?: string | undefined;
8164
+ label?: string | undefined;
8165
+ description?: string | undefined;
8166
+ format?: string | undefined;
8167
+ columnName?: string | undefined;
8168
+ defaultValue?: unknown;
8169
+ maxLength?: number | undefined;
8170
+ minLength?: number | undefined;
8171
+ precision?: number | undefined;
8172
+ scale?: number | undefined;
8173
+ min?: number | undefined;
8174
+ max?: number | undefined;
8175
+ options?: {
8176
+ label: string;
8177
+ value: string;
8178
+ color?: string | undefined;
8179
+ default?: boolean | undefined;
8180
+ }[] | undefined;
8181
+ reference?: string | undefined;
8182
+ referenceFilters?: string[] | undefined;
8183
+ writeRequiresMasterRead?: boolean | undefined;
8184
+ expression?: {
8185
+ dialect: "cel" | "js" | "cron" | "template";
8186
+ source?: string | undefined;
8187
+ ast?: unknown;
8188
+ meta?: {
8189
+ rationale?: string | undefined;
8190
+ generatedBy?: string | undefined;
8191
+ } | undefined;
8192
+ } | {
8193
+ dialect: "cel" | "js" | "cron" | "template";
8194
+ source?: string | undefined;
8195
+ ast?: unknown;
8196
+ meta?: {
8197
+ rationale?: string | undefined;
8198
+ generatedBy?: string | undefined;
8199
+ } | undefined;
8200
+ } | undefined;
8201
+ summaryOperations?: {
8202
+ object: string;
8203
+ field: string;
8204
+ function: "min" | "max" | "count" | "sum" | "avg";
8205
+ } | undefined;
8206
+ language?: string | undefined;
8207
+ theme?: string | undefined;
8208
+ lineNumbers?: boolean | undefined;
8209
+ maxRating?: number | undefined;
8210
+ allowHalf?: boolean | undefined;
8211
+ displayMap?: boolean | undefined;
8212
+ allowGeocoding?: boolean | undefined;
8213
+ addressFormat?: "us" | "uk" | "international" | undefined;
8214
+ colorFormat?: "hex" | "rgb" | "rgba" | "hsl" | undefined;
8215
+ allowAlpha?: boolean | undefined;
8216
+ presetColors?: string[] | undefined;
8217
+ step?: number | undefined;
8218
+ showValue?: boolean | undefined;
8219
+ marks?: Record<string, string> | undefined;
8220
+ barcodeFormat?: "qr" | "ean13" | "ean8" | "code128" | "code39" | "upca" | "upce" | undefined;
8221
+ qrErrorCorrection?: "L" | "M" | "Q" | "H" | undefined;
8222
+ displayValue?: boolean | undefined;
8223
+ allowScanning?: boolean | undefined;
8224
+ currencyConfig?: {
8225
+ precision: number;
8226
+ currencyMode: "fixed" | "dynamic";
8227
+ defaultCurrency: string;
8228
+ } | undefined;
8229
+ vectorConfig?: {
8230
+ dimensions: number;
8231
+ distanceMetric: "cosine" | "euclidean" | "dotProduct" | "manhattan";
8232
+ normalized: boolean;
8233
+ indexed: boolean;
8234
+ indexType?: "flat" | "hnsw" | "ivfflat" | undefined;
8235
+ } | undefined;
8236
+ fileAttachmentConfig?: {
8237
+ virusScan: boolean;
8238
+ virusScanOnUpload: boolean;
8239
+ quarantineOnThreat: boolean;
8240
+ allowMultiple: boolean;
8241
+ allowReplace: boolean;
8242
+ allowDelete: boolean;
8243
+ requireUpload: boolean;
8244
+ extractMetadata: boolean;
8245
+ extractText: boolean;
8246
+ versioningEnabled: boolean;
8247
+ publicRead: boolean;
8248
+ presignedUrlExpiry: number;
8249
+ minSize?: number | undefined;
8250
+ maxSize?: number | undefined;
8251
+ allowedTypes?: string[] | undefined;
8252
+ blockedTypes?: string[] | undefined;
8253
+ allowedMimeTypes?: string[] | undefined;
8254
+ blockedMimeTypes?: string[] | undefined;
8255
+ virusScanProvider?: "custom" | "clamav" | "virustotal" | "metadefender" | undefined;
8256
+ storageProvider?: string | undefined;
8257
+ storageBucket?: string | undefined;
8258
+ storagePrefix?: string | undefined;
8259
+ imageValidation?: {
8260
+ generateThumbnails: boolean;
8261
+ preserveMetadata: boolean;
8262
+ autoRotate: boolean;
8263
+ minWidth?: number | undefined;
8264
+ maxWidth?: number | undefined;
8265
+ minHeight?: number | undefined;
8266
+ maxHeight?: number | undefined;
8267
+ aspectRatio?: string | undefined;
8268
+ thumbnailSizes?: {
8269
+ name: string;
8270
+ width: number;
8271
+ height: number;
8272
+ crop: boolean;
8273
+ }[] | undefined;
8274
+ } | undefined;
8275
+ maxVersions?: number | undefined;
8276
+ } | undefined;
8277
+ encryptionConfig?: {
8278
+ enabled: boolean;
8279
+ algorithm: "aes-256-gcm" | "aes-256-cbc" | "chacha20-poly1305";
8280
+ keyManagement: {
8281
+ provider: "local" | "aws-kms" | "azure-key-vault" | "gcp-kms" | "hashicorp-vault";
8282
+ keyId?: string | undefined;
8283
+ rotationPolicy?: {
8284
+ enabled: boolean;
8285
+ frequencyDays: number;
8286
+ retainOldVersions: number;
8287
+ autoRotate: boolean;
8288
+ } | undefined;
8289
+ };
8290
+ scope: "record" | "field" | "table" | "database";
8291
+ deterministicEncryption: boolean;
8292
+ searchableEncryption: boolean;
8293
+ } | undefined;
8294
+ maskingRule?: {
8295
+ field: string;
8296
+ strategy: "partial" | "hash" | "redact" | "tokenize" | "randomize" | "nullify" | "substitute";
8297
+ preserveFormat: boolean;
8298
+ preserveLength: boolean;
8299
+ pattern?: string | undefined;
8300
+ roles?: string[] | undefined;
8301
+ exemptRoles?: string[] | undefined;
8302
+ } | undefined;
8303
+ dependencies?: string[] | undefined;
8304
+ cached?: {
8305
+ enabled: boolean;
8306
+ ttl: number;
8307
+ invalidateOn: string[];
8308
+ } | undefined;
8309
+ dataQuality?: {
8310
+ uniqueness: boolean;
8311
+ completeness: number;
8312
+ accuracy?: {
8313
+ source: string;
8314
+ threshold: number;
8315
+ } | undefined;
8316
+ } | undefined;
8317
+ group?: string | undefined;
8318
+ conditionalRequired?: {
8319
+ dialect: "cel" | "js" | "cron" | "template";
8320
+ source?: string | undefined;
8321
+ ast?: unknown;
8322
+ meta?: {
8323
+ rationale?: string | undefined;
8324
+ generatedBy?: string | undefined;
8325
+ } | undefined;
8326
+ } | {
8327
+ dialect: "cel" | "js" | "cron" | "template";
8328
+ source?: string | undefined;
8329
+ ast?: unknown;
8330
+ meta?: {
8331
+ rationale?: string | undefined;
8332
+ generatedBy?: string | undefined;
8333
+ } | undefined;
8334
+ } | undefined;
8335
+ system?: boolean | undefined;
8336
+ inlineHelpText?: string | undefined;
8337
+ trackFeedHistory?: boolean | undefined;
8338
+ caseSensitive?: boolean | undefined;
8339
+ autonumberFormat?: string | undefined;
8340
+ }>;
8341
+ _lock?: "full" | "none" | "no-overlay" | "no-delete" | undefined;
8342
+ _lockReason?: string | undefined;
8343
+ _lockSource?: "artifact" | "package" | "env-forced" | undefined;
8344
+ _provenance?: "package" | "env-forced" | "org" | undefined;
8345
+ _packageId?: string | undefined;
8346
+ _packageVersion?: string | undefined;
8347
+ _lockDocsUrl?: string | undefined;
8348
+ label?: string | undefined;
8349
+ pluralLabel?: string | undefined;
8350
+ description?: string | undefined;
8351
+ icon?: string | undefined;
8352
+ tags?: string[] | undefined;
8353
+ managedBy?: "system" | "config" | "platform" | "append-only" | "better-auth" | undefined;
8354
+ userActions?: {
8355
+ create?: boolean | undefined;
8356
+ import?: boolean | undefined;
8357
+ edit?: boolean | undefined;
8358
+ delete?: boolean | undefined;
8359
+ exportCsv?: boolean | undefined;
8360
+ } | undefined;
8361
+ systemFields?: false | {
8362
+ tenant?: boolean | undefined;
8363
+ owner?: boolean | undefined;
8364
+ audit?: boolean | undefined;
8365
+ } | undefined;
8366
+ indexes?: {
8367
+ fields: string[];
8368
+ type: "hash" | "btree" | "gin" | "gist" | "fulltext";
8369
+ unique: boolean;
8370
+ name?: string | undefined;
8371
+ partial?: string | undefined;
8372
+ }[] | undefined;
8373
+ fieldGroups?: {
8374
+ key: string;
8375
+ label: string;
8376
+ defaultExpanded: boolean;
8377
+ icon?: string | undefined;
8378
+ description?: string | undefined;
8379
+ visibleOn?: {
8380
+ dialect: "cel" | "js" | "cron" | "template";
8381
+ source?: string | undefined;
8382
+ ast?: unknown;
8383
+ meta?: {
8384
+ rationale?: string | undefined;
8385
+ generatedBy?: string | undefined;
8386
+ } | undefined;
8387
+ } | {
8388
+ dialect: "cel" | "js" | "cron" | "template";
8389
+ source?: string | undefined;
8390
+ ast?: unknown;
8391
+ meta?: {
8392
+ rationale?: string | undefined;
8393
+ generatedBy?: string | undefined;
8394
+ } | undefined;
8395
+ } | undefined;
8396
+ }[] | undefined;
8397
+ tenancy?: {
8398
+ enabled: boolean;
8399
+ strategy: "hybrid" | "shared" | "isolated";
8400
+ tenantField: string;
8401
+ crossTenantAccess: boolean;
8402
+ } | undefined;
8403
+ softDelete?: {
8404
+ enabled: boolean;
8405
+ field: string;
8406
+ cascadeDelete: boolean;
8407
+ } | undefined;
8408
+ versioning?: {
8409
+ enabled: boolean;
8410
+ strategy: "snapshot" | "delta" | "event-sourcing";
8411
+ versionField: string;
8412
+ retentionDays?: number | undefined;
8413
+ } | undefined;
8414
+ partitioning?: {
8415
+ enabled: boolean;
8416
+ strategy: "hash" | "list" | "range";
8417
+ key: string;
8418
+ interval?: string | undefined;
8419
+ } | undefined;
8420
+ cdc?: {
8421
+ enabled: boolean;
8422
+ events: ("delete" | "update" | "insert")[];
8423
+ destination: string;
8424
+ } | undefined;
8425
+ validations?: _objectstack_spec_data.BaseValidationRuleShape[] | undefined;
8426
+ stateMachines?: Record<string, {
8427
+ id: string;
8428
+ initial: string;
8429
+ states: Record<string, StateNodeConfig>;
8430
+ description?: string | undefined;
8431
+ contextSchema?: Record<string, unknown> | undefined;
8432
+ on?: Record<string, string | {
8433
+ target?: string | undefined;
8434
+ cond?: string | {
8435
+ type: string;
8436
+ params?: Record<string, unknown> | undefined;
8437
+ } | undefined;
8438
+ actions?: (string | {
8439
+ type: string;
8440
+ params?: Record<string, unknown> | undefined;
8441
+ })[] | undefined;
8442
+ description?: string | undefined;
8443
+ } | {
8444
+ target?: string | undefined;
8445
+ cond?: string | {
8446
+ type: string;
8447
+ params?: Record<string, unknown> | undefined;
8448
+ } | undefined;
8449
+ actions?: (string | {
8450
+ type: string;
8451
+ params?: Record<string, unknown> | undefined;
8452
+ })[] | undefined;
8453
+ description?: string | undefined;
8454
+ }[]> | undefined;
8455
+ }> | undefined;
8456
+ displayNameField?: string | undefined;
8457
+ recordName?: {
8458
+ type: "text" | "autonumber";
8459
+ displayFormat?: string | undefined;
8460
+ startNumber?: number | undefined;
8461
+ } | undefined;
8462
+ titleFormat?: {
8463
+ dialect: "cel" | "js" | "cron" | "template";
8464
+ source?: string | undefined;
8465
+ ast?: unknown;
8466
+ meta?: {
8467
+ rationale?: string | undefined;
8468
+ generatedBy?: string | undefined;
8469
+ } | undefined;
8470
+ } | {
8471
+ dialect: "cel" | "js" | "cron" | "template";
8472
+ source?: string | undefined;
8473
+ ast?: unknown;
8474
+ meta?: {
8475
+ rationale?: string | undefined;
8476
+ generatedBy?: string | undefined;
8477
+ } | undefined;
8478
+ } | undefined;
8479
+ compactLayout?: string[] | undefined;
8480
+ listViews?: Record<string, {
8481
+ type: "kanban" | "calendar" | "gantt" | "gallery" | "timeline" | "chart" | "map" | "grid";
8482
+ columns: string[] | {
8483
+ field: string;
8484
+ label?: string | undefined;
8485
+ width?: number | undefined;
8486
+ align?: "left" | "center" | "right" | undefined;
8487
+ hidden?: boolean | undefined;
8488
+ sortable?: boolean | undefined;
8489
+ resizable?: boolean | undefined;
8490
+ wrap?: boolean | undefined;
8491
+ type?: string | undefined;
8492
+ pinned?: "left" | "right" | undefined;
8493
+ summary?: "none" | "min" | "max" | "count" | "sum" | "avg" | "count_empty" | "count_filled" | "count_unique" | "percent_empty" | "percent_filled" | undefined;
8494
+ link?: boolean | undefined;
8495
+ action?: string | undefined;
8496
+ }[];
8497
+ name?: string | undefined;
8498
+ label?: string | undefined;
8499
+ data?: {
8500
+ provider: "object";
8501
+ object: string;
8502
+ } | {
8503
+ provider: "api";
8504
+ read?: {
8505
+ url: string;
8506
+ method: "GET" | "POST" | "PATCH" | "PUT" | "DELETE";
8507
+ headers?: Record<string, string> | undefined;
8508
+ params?: Record<string, unknown> | undefined;
8509
+ body?: unknown;
8510
+ } | undefined;
8511
+ write?: {
8512
+ url: string;
8513
+ method: "GET" | "POST" | "PATCH" | "PUT" | "DELETE";
8514
+ headers?: Record<string, string> | undefined;
8515
+ params?: Record<string, unknown> | undefined;
8516
+ body?: unknown;
8517
+ } | undefined;
8518
+ } | {
8519
+ provider: "value";
8520
+ items: unknown[];
8521
+ } | {
8522
+ provider: "schema";
8523
+ schemaId: string;
8524
+ schema?: Record<string, unknown> | undefined;
8525
+ } | undefined;
8526
+ filter?: {
8527
+ field: string;
8528
+ operator: string;
8529
+ value?: string | number | boolean | (string | number)[] | null | undefined;
8530
+ }[] | undefined;
8531
+ sort?: string | {
8532
+ field: string;
8533
+ order: "asc" | "desc";
8534
+ }[] | undefined;
8535
+ searchableFields?: string[] | undefined;
8536
+ filterableFields?: string[] | undefined;
8537
+ resizable?: boolean | undefined;
8538
+ striped?: boolean | undefined;
8539
+ bordered?: boolean | undefined;
8540
+ compactToolbar?: boolean | undefined;
8541
+ selection?: {
8542
+ type: "none" | "multiple" | "single";
8543
+ } | undefined;
8544
+ navigation?: {
8545
+ mode: "none" | "split" | "page" | "modal" | "drawer" | "popover" | "new_window";
8546
+ preventNavigation: boolean;
8547
+ openNewTab: boolean;
8548
+ view?: string | undefined;
8549
+ width?: string | number | undefined;
8550
+ } | undefined;
8551
+ pagination?: {
8552
+ pageSize: number;
8553
+ pageSizeOptions?: number[] | undefined;
8554
+ } | undefined;
8555
+ kanban?: {
8556
+ groupByField: string;
8557
+ columns: string[];
8558
+ summarizeField?: string | undefined;
8559
+ } | undefined;
8560
+ calendar?: {
8561
+ startDateField: string;
8562
+ titleField: string;
8563
+ endDateField?: string | undefined;
8564
+ colorField?: string | undefined;
8565
+ } | undefined;
8566
+ gantt?: {
8567
+ startDateField: string;
8568
+ endDateField: string;
8569
+ titleField: string;
8570
+ progressField?: string | undefined;
8571
+ dependenciesField?: string | undefined;
8572
+ } | undefined;
8573
+ gallery?: {
8574
+ coverFit: "cover" | "contain";
8575
+ cardSize: "small" | "medium" | "large";
8576
+ coverField?: string | undefined;
8577
+ titleField?: string | undefined;
8578
+ visibleFields?: string[] | undefined;
8579
+ } | undefined;
8580
+ timeline?: {
8581
+ startDateField: string;
8582
+ titleField: string;
8583
+ scale: "hour" | "day" | "week" | "month" | "quarter" | "year";
8584
+ endDateField?: string | undefined;
8585
+ groupByField?: string | undefined;
8586
+ colorField?: string | undefined;
8587
+ } | undefined;
8588
+ chart?: {
8589
+ chartType: "bar" | "line" | "pie" | "area" | "scatter";
8590
+ xAxisField: string;
8591
+ yAxisFields: string[];
8592
+ aggregation?: "min" | "max" | "count" | "sum" | "avg" | undefined;
8593
+ groupByField?: string | undefined;
8594
+ } | undefined;
8595
+ description?: string | undefined;
8596
+ sharing?: {
8597
+ type: "personal" | "collaborative";
8598
+ lockedBy?: string | undefined;
8599
+ } | undefined;
8600
+ rowHeight?: "medium" | "short" | "compact" | "tall" | "extra_tall" | undefined;
8601
+ grouping?: {
8602
+ fields: {
8603
+ field: string;
8604
+ order: "asc" | "desc";
8605
+ collapsed: boolean;
8606
+ }[];
8607
+ } | undefined;
8608
+ rowColor?: {
8609
+ field: string;
8610
+ colors?: Record<string, string> | undefined;
8611
+ } | undefined;
8612
+ hiddenFields?: string[] | undefined;
8613
+ fieldOrder?: string[] | undefined;
8614
+ rowActions?: string[] | undefined;
8615
+ bulkActions?: string[] | undefined;
8616
+ bulkActionDefs?: Record<string, any>[] | undefined;
8617
+ virtualScroll?: boolean | undefined;
8618
+ conditionalFormatting?: {
8619
+ condition: {
8620
+ dialect: "cel" | "js" | "cron" | "template";
8621
+ source?: string | undefined;
8622
+ ast?: unknown;
8623
+ meta?: {
8624
+ rationale?: string | undefined;
8625
+ generatedBy?: string | undefined;
8626
+ } | undefined;
8627
+ } | {
8628
+ dialect: "cel" | "js" | "cron" | "template";
8629
+ source?: string | undefined;
8630
+ ast?: unknown;
8631
+ meta?: {
8632
+ rationale?: string | undefined;
8633
+ generatedBy?: string | undefined;
8634
+ } | undefined;
8635
+ };
8636
+ style: Record<string, string>;
8637
+ }[] | undefined;
8638
+ inlineEdit?: boolean | undefined;
8639
+ exportOptions?: ("json" | "csv" | "xlsx" | "pdf")[] | undefined;
8640
+ userActions?: {
8641
+ sort: boolean;
8642
+ search: boolean;
8643
+ filter: boolean;
8644
+ rowHeight: boolean;
8645
+ addRecordForm: boolean;
8646
+ buttons?: string[] | undefined;
8647
+ } | undefined;
8648
+ appearance?: {
8649
+ showDescription: boolean;
8650
+ allowedVisualizations?: ("kanban" | "calendar" | "gantt" | "gallery" | "timeline" | "map" | "grid")[] | undefined;
8651
+ } | undefined;
8652
+ tabs?: {
8653
+ name: string;
8654
+ pinned: boolean;
8655
+ isDefault: boolean;
8656
+ visible: boolean;
8657
+ label?: string | undefined;
8658
+ icon?: string | undefined;
8659
+ view?: string | undefined;
8660
+ filter?: {
8661
+ field: string;
8662
+ operator: string;
8663
+ value?: string | number | boolean | (string | number)[] | null | undefined;
8664
+ }[] | undefined;
8665
+ order?: number | undefined;
8666
+ }[] | undefined;
8667
+ addRecord?: {
8668
+ enabled: boolean;
8669
+ position: "top" | "bottom" | "both";
8670
+ mode: "modal" | "form" | "inline";
8671
+ formView?: string | undefined;
8672
+ } | undefined;
8673
+ showRecordCount?: boolean | undefined;
8674
+ allowPrinting?: boolean | undefined;
8675
+ emptyState?: {
8676
+ title?: string | undefined;
8677
+ message?: string | undefined;
8678
+ icon?: string | undefined;
8679
+ } | undefined;
8680
+ aria?: {
8681
+ ariaLabel?: string | undefined;
8682
+ ariaDescribedBy?: string | undefined;
8683
+ role?: string | undefined;
8684
+ } | undefined;
8685
+ responsive?: {
8686
+ breakpoint?: "md" | "xs" | "sm" | "lg" | "xl" | "2xl" | undefined;
8687
+ hiddenOn?: ("md" | "xs" | "sm" | "lg" | "xl" | "2xl")[] | undefined;
8688
+ columns?: {
8689
+ xs?: number | undefined;
8690
+ sm?: number | undefined;
8691
+ md?: number | undefined;
8692
+ lg?: number | undefined;
8693
+ xl?: number | undefined;
8694
+ '2xl'?: number | undefined;
8695
+ } | undefined;
8696
+ order?: {
8697
+ xs?: number | undefined;
8698
+ sm?: number | undefined;
8699
+ md?: number | undefined;
8700
+ lg?: number | undefined;
8701
+ xl?: number | undefined;
8702
+ '2xl'?: number | undefined;
8703
+ } | undefined;
8704
+ } | undefined;
8705
+ performance?: {
8706
+ lazyLoad?: boolean | undefined;
8707
+ virtualScroll?: {
8708
+ enabled: boolean;
8709
+ itemHeight?: number | undefined;
8710
+ overscan?: number | undefined;
8711
+ } | undefined;
8712
+ cacheStrategy?: "none" | "cache-first" | "network-first" | "stale-while-revalidate" | undefined;
8713
+ prefetch?: boolean | undefined;
8714
+ pageSize?: number | undefined;
8715
+ debounceMs?: number | undefined;
8716
+ } | undefined;
8717
+ }> | undefined;
8718
+ defaultDetailForm?: string | undefined;
8719
+ search?: {
8720
+ fields: string[];
8721
+ displayFields?: string[] | undefined;
8722
+ filters?: string[] | undefined;
8723
+ } | undefined;
8724
+ enable?: {
8725
+ trackHistory: boolean;
8726
+ searchable: boolean;
8727
+ apiEnabled: boolean;
8728
+ files: boolean;
8729
+ feeds: boolean;
8730
+ activities: boolean;
8731
+ trash: boolean;
8732
+ mru: boolean;
8733
+ clone: boolean;
8734
+ apiMethods?: ("search" | "create" | "import" | "delete" | "list" | "get" | "update" | "upsert" | "history" | "bulk" | "aggregate" | "restore" | "purge" | "export")[] | undefined;
8735
+ } | undefined;
8736
+ recordTypes?: string[] | undefined;
8737
+ sharingModel?: "full" | "read" | "private" | "read_write" | undefined;
8738
+ publicSharing?: {
8739
+ enabled: boolean;
8740
+ allowedAudiences?: ("email" | "public" | "link_only" | "signed_in")[] | undefined;
8741
+ allowedPermissions?: ("edit" | "view" | "comment")[] | undefined;
8742
+ maxExpiryDays?: number | undefined;
8743
+ redactFields?: string[] | undefined;
8744
+ eligibility?: string | undefined;
8745
+ } | undefined;
8746
+ keyPrefix?: string | undefined;
8747
+ detail?: {
8748
+ [x: string]: unknown;
8749
+ renderViaSchema?: boolean | undefined;
8750
+ hideReferenceRail?: boolean | undefined;
8751
+ hideRelatedTab?: boolean | undefined;
8752
+ } | undefined;
8753
+ actions?: {
8754
+ name: string;
8755
+ label: string;
8756
+ type: "url" | "flow" | "api" | "script" | "modal" | "form";
8757
+ refreshAfter: boolean;
8758
+ objectName?: string | undefined;
8759
+ icon?: string | undefined;
8760
+ locations?: ("list_toolbar" | "list_item" | "record_header" | "record_more" | "record_related" | "record_section" | "global_nav")[] | undefined;
8761
+ component?: "action:button" | "action:icon" | "action:menu" | "action:group" | undefined;
8762
+ target?: string | undefined;
8763
+ body?: {
8764
+ language: "expression";
8765
+ source: string;
8766
+ } | {
8767
+ language: "js";
8768
+ source: string;
8769
+ capabilities: ("api.read" | "api.write" | "crypto.uuid" | "crypto.hash" | "log")[];
8770
+ timeoutMs?: number | undefined;
8771
+ memoryMb?: number | undefined;
8772
+ } | undefined;
8773
+ execute?: string | undefined;
8774
+ params?: {
8775
+ required: boolean;
8776
+ name?: string | undefined;
8777
+ field?: string | undefined;
8778
+ objectOverride?: string | undefined;
8779
+ label?: string | undefined;
8780
+ type?: "number" | "boolean" | "date" | "record" | "file" | "code" | "datetime" | "signature" | "progress" | "url" | "text" | "textarea" | "email" | "phone" | "password" | "markdown" | "html" | "richtext" | "currency" | "percent" | "time" | "toggle" | "select" | "multiselect" | "radio" | "checkboxes" | "lookup" | "master_detail" | "tree" | "image" | "avatar" | "video" | "audio" | "formula" | "summary" | "autonumber" | "composite" | "repeater" | "location" | "address" | "json" | "color" | "rating" | "slider" | "qrcode" | "tags" | "vector" | undefined;
8781
+ options?: {
8782
+ label: string;
8783
+ value: string;
8784
+ }[] | undefined;
8785
+ placeholder?: string | undefined;
8786
+ helpText?: string | undefined;
8787
+ defaultValue?: unknown;
8788
+ defaultFromRow?: boolean | undefined;
8789
+ }[] | undefined;
8790
+ variant?: "link" | "primary" | "secondary" | "danger" | "ghost" | undefined;
8791
+ confirmText?: string | undefined;
8792
+ successMessage?: string | undefined;
8793
+ resultDialog?: {
8794
+ title?: string | undefined;
8795
+ description?: string | undefined;
8796
+ acknowledge?: string | undefined;
8797
+ format?: "secret" | "text" | "json" | "qrcode" | "code-list" | undefined;
8798
+ fields?: {
8799
+ path: string;
8800
+ label?: string | undefined;
8801
+ format?: "secret" | "text" | "json" | "qrcode" | "code-list" | undefined;
8802
+ }[] | undefined;
8803
+ } | undefined;
8804
+ visible?: {
8805
+ dialect: "cel" | "js" | "cron" | "template";
8806
+ source?: string | undefined;
8807
+ ast?: unknown;
8808
+ meta?: {
8809
+ rationale?: string | undefined;
8810
+ generatedBy?: string | undefined;
8811
+ } | undefined;
8812
+ } | undefined;
8813
+ disabled?: boolean | {
8814
+ dialect: "cel" | "js" | "cron" | "template";
8815
+ source?: string | undefined;
8816
+ ast?: unknown;
8817
+ meta?: {
8818
+ rationale?: string | undefined;
8819
+ generatedBy?: string | undefined;
8820
+ } | undefined;
8821
+ } | undefined;
8822
+ shortcut?: string | undefined;
8823
+ bulkEnabled?: boolean | undefined;
8824
+ aiExposed?: boolean | undefined;
8825
+ recordIdParam?: string | undefined;
8826
+ recordIdField?: string | undefined;
8827
+ bodyShape?: "flat" | {
8828
+ wrap: string;
8829
+ } | undefined;
8830
+ method?: "POST" | "PATCH" | "PUT" | "DELETE" | undefined;
8831
+ bodyExtra?: Record<string, unknown> | undefined;
8832
+ mode?: "custom" | "delete" | "create" | "edit" | undefined;
8833
+ timeout?: number | undefined;
8834
+ aria?: {
8835
+ ariaLabel?: string | undefined;
8836
+ ariaDescribedBy?: string | undefined;
8837
+ role?: string | undefined;
8838
+ } | undefined;
8839
+ }[] | undefined;
8840
+ protection?: {
8841
+ lock: "full" | "none" | "no-overlay" | "no-delete";
8842
+ reason: string;
8843
+ docsUrl?: string | undefined;
8844
+ } | undefined;
8845
+ }, "fields"> & Pick<{
8846
+ readonly name: "sys_metadata_audit";
8847
+ readonly label: "Metadata Audit";
8848
+ readonly pluralLabel: "Metadata Audit";
8849
+ readonly icon: "shield-check";
8850
+ readonly isSystem: true;
8851
+ readonly managedBy: "append-only";
8852
+ readonly description: "Append-only audit trail of metadata write decisions (ADR-0010).";
8853
+ readonly fields: {
8854
+ /** Primary Key (UUID) */
8855
+ readonly id: {
8856
+ readonly readonly?: boolean | undefined;
8857
+ readonly format?: string | undefined;
8858
+ readonly options?: {
8859
+ label: string;
8860
+ value: string;
8861
+ color?: string | undefined;
8862
+ default?: boolean | undefined;
8863
+ }[] | undefined;
8864
+ readonly description?: string | undefined;
8865
+ readonly label?: string | undefined;
8866
+ readonly name?: string | undefined;
8867
+ readonly precision?: number | undefined;
8868
+ readonly required?: boolean | undefined;
8869
+ readonly multiple?: boolean | undefined;
8870
+ readonly dependencies?: string[] | undefined;
8871
+ readonly theme?: string | undefined;
8872
+ readonly externalId?: boolean | undefined;
8873
+ readonly system?: boolean | undefined;
8874
+ readonly min?: number | undefined;
8875
+ readonly max?: number | undefined;
8876
+ readonly group?: string | undefined;
8877
+ readonly encryptionConfig?: {
8878
+ enabled: boolean;
8879
+ algorithm: "aes-256-gcm" | "aes-256-cbc" | "chacha20-poly1305";
8880
+ keyManagement: {
8881
+ provider: "local" | "aws-kms" | "azure-key-vault" | "gcp-kms" | "hashicorp-vault";
8882
+ keyId?: string | undefined;
8883
+ rotationPolicy?: {
8884
+ enabled: boolean;
8885
+ frequencyDays: number;
8886
+ retainOldVersions: number;
8887
+ autoRotate: boolean;
8888
+ } | undefined;
8889
+ };
8890
+ scope: "record" | "field" | "table" | "database";
8891
+ deterministicEncryption: boolean;
8892
+ searchableEncryption: boolean;
8893
+ } | undefined;
8894
+ readonly columnName?: string | undefined;
8895
+ readonly searchable?: boolean | undefined;
8896
+ readonly unique?: boolean | undefined;
8897
+ readonly defaultValue?: unknown;
8898
+ readonly maxLength?: number | undefined;
8899
+ readonly minLength?: number | undefined;
8900
+ readonly scale?: number | undefined;
8901
+ readonly reference?: string | undefined;
8902
+ readonly referenceFilters?: string[] | undefined;
8903
+ readonly writeRequiresMasterRead?: boolean | undefined;
8904
+ readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
8905
+ readonly expression?: {
8906
+ dialect: "cel" | "js" | "cron" | "template";
8907
+ source?: string | undefined;
8908
+ ast?: unknown;
8909
+ meta?: {
8910
+ rationale?: string | undefined;
8911
+ generatedBy?: string | undefined;
8912
+ } | undefined;
8913
+ } | undefined;
8914
+ readonly summaryOperations?: {
8915
+ object: string;
8916
+ field: string;
8917
+ function: "min" | "max" | "count" | "sum" | "avg";
8918
+ } | undefined;
8919
+ readonly language?: string | undefined;
8920
+ readonly lineNumbers?: boolean | undefined;
8921
+ readonly maxRating?: number | undefined;
8922
+ readonly allowHalf?: boolean | undefined;
8923
+ readonly displayMap?: boolean | undefined;
8924
+ readonly allowGeocoding?: boolean | undefined;
8925
+ readonly addressFormat?: "us" | "uk" | "international" | undefined;
8926
+ readonly colorFormat?: "hex" | "rgb" | "rgba" | "hsl" | undefined;
8927
+ readonly allowAlpha?: boolean | undefined;
8928
+ readonly presetColors?: string[] | undefined;
8929
+ readonly step?: number | undefined;
8930
+ readonly showValue?: boolean | undefined;
8931
+ readonly marks?: Record<string, string> | undefined;
8932
+ readonly barcodeFormat?: "qr" | "ean13" | "ean8" | "code128" | "code39" | "upca" | "upce" | undefined;
8933
+ readonly qrErrorCorrection?: "L" | "M" | "Q" | "H" | undefined;
8934
+ readonly displayValue?: boolean | undefined;
8935
+ readonly allowScanning?: boolean | undefined;
8936
+ readonly currencyConfig?: {
8937
+ precision: number;
8938
+ currencyMode: "fixed" | "dynamic";
8939
+ defaultCurrency: string;
8940
+ } | undefined;
8941
+ readonly vectorConfig?: {
8942
+ dimensions: number;
8943
+ distanceMetric: "cosine" | "euclidean" | "dotProduct" | "manhattan";
8944
+ normalized: boolean;
8945
+ indexed: boolean;
8946
+ indexType?: "flat" | "hnsw" | "ivfflat" | undefined;
8947
+ } | undefined;
8948
+ readonly fileAttachmentConfig?: {
8949
+ virusScan: boolean;
8950
+ virusScanOnUpload: boolean;
8951
+ quarantineOnThreat: boolean;
8952
+ allowMultiple: boolean;
8953
+ allowReplace: boolean;
8954
+ allowDelete: boolean;
8955
+ requireUpload: boolean;
8956
+ extractMetadata: boolean;
8957
+ extractText: boolean;
8958
+ versioningEnabled: boolean;
8959
+ publicRead: boolean;
8960
+ presignedUrlExpiry: number;
8961
+ minSize?: number | undefined;
8962
+ maxSize?: number | undefined;
8963
+ allowedTypes?: string[] | undefined;
8964
+ blockedTypes?: string[] | undefined;
8965
+ allowedMimeTypes?: string[] | undefined;
8966
+ blockedMimeTypes?: string[] | undefined;
8967
+ virusScanProvider?: "custom" | "clamav" | "virustotal" | "metadefender" | undefined;
8968
+ storageProvider?: string | undefined;
8969
+ storageBucket?: string | undefined;
8970
+ storagePrefix?: string | undefined;
8971
+ imageValidation?: {
8972
+ generateThumbnails: boolean;
8973
+ preserveMetadata: boolean;
8974
+ autoRotate: boolean;
8975
+ minWidth?: number | undefined;
8976
+ maxWidth?: number | undefined;
8977
+ minHeight?: number | undefined;
8978
+ maxHeight?: number | undefined;
8979
+ aspectRatio?: string | undefined;
8980
+ thumbnailSizes?: {
8981
+ name: string;
8982
+ width: number;
8983
+ height: number;
8984
+ crop: boolean;
8985
+ }[] | undefined;
8986
+ } | undefined;
8987
+ maxVersions?: number | undefined;
8988
+ } | undefined;
8989
+ readonly maskingRule?: {
8990
+ field: string;
8991
+ strategy: "partial" | "hash" | "redact" | "tokenize" | "randomize" | "nullify" | "substitute";
8992
+ preserveFormat: boolean;
8993
+ preserveLength: boolean;
8994
+ pattern?: string | undefined;
8995
+ roles?: string[] | undefined;
8996
+ exemptRoles?: string[] | undefined;
8997
+ } | undefined;
8998
+ readonly auditTrail?: boolean | undefined;
8999
+ readonly cached?: {
9000
+ enabled: boolean;
9001
+ ttl: number;
9002
+ invalidateOn: string[];
9003
+ } | undefined;
9004
+ readonly dataQuality?: {
9005
+ uniqueness: boolean;
9006
+ completeness: number;
9007
+ accuracy?: {
9008
+ source: string;
9009
+ threshold: number;
9010
+ } | undefined;
9011
+ } | undefined;
9012
+ readonly conditionalRequired?: {
9013
+ dialect: "cel" | "js" | "cron" | "template";
9014
+ source?: string | undefined;
9015
+ ast?: unknown;
9016
+ meta?: {
9017
+ rationale?: string | undefined;
9018
+ generatedBy?: string | undefined;
9019
+ } | undefined;
9020
+ } | undefined;
9021
+ readonly hidden?: boolean | undefined;
9022
+ readonly sortable?: boolean | undefined;
9023
+ readonly inlineHelpText?: string | undefined;
9024
+ readonly trackFeedHistory?: boolean | undefined;
9025
+ readonly caseSensitive?: boolean | undefined;
9026
+ readonly autonumberFormat?: string | undefined;
9027
+ readonly index?: boolean | undefined;
9028
+ readonly type: "text";
9029
+ };
9030
+ /** When the decision was made (ISO-8601 UTC). */
9031
+ readonly occurred_at: {
9032
+ readonly readonly?: boolean | undefined;
9033
+ readonly format?: string | undefined;
9034
+ readonly options?: {
9035
+ label: string;
9036
+ value: string;
9037
+ color?: string | undefined;
9038
+ default?: boolean | undefined;
9039
+ }[] | undefined;
9040
+ readonly description?: string | undefined;
9041
+ readonly label?: string | undefined;
9042
+ readonly name?: string | undefined;
9043
+ readonly precision?: number | undefined;
9044
+ readonly required?: boolean | undefined;
9045
+ readonly multiple?: boolean | undefined;
9046
+ readonly dependencies?: string[] | undefined;
9047
+ readonly theme?: string | undefined;
9048
+ readonly externalId?: boolean | undefined;
9049
+ readonly system?: boolean | undefined;
9050
+ readonly min?: number | undefined;
9051
+ readonly max?: number | undefined;
9052
+ readonly group?: string | undefined;
9053
+ readonly encryptionConfig?: {
9054
+ enabled: boolean;
9055
+ algorithm: "aes-256-gcm" | "aes-256-cbc" | "chacha20-poly1305";
9056
+ keyManagement: {
9057
+ provider: "local" | "aws-kms" | "azure-key-vault" | "gcp-kms" | "hashicorp-vault";
9058
+ keyId?: string | undefined;
9059
+ rotationPolicy?: {
9060
+ enabled: boolean;
9061
+ frequencyDays: number;
9062
+ retainOldVersions: number;
9063
+ autoRotate: boolean;
9064
+ } | undefined;
9065
+ };
9066
+ scope: "record" | "field" | "table" | "database";
9067
+ deterministicEncryption: boolean;
9068
+ searchableEncryption: boolean;
9069
+ } | undefined;
9070
+ readonly columnName?: string | undefined;
9071
+ readonly searchable?: boolean | undefined;
9072
+ readonly unique?: boolean | undefined;
9073
+ readonly defaultValue?: unknown;
9074
+ readonly maxLength?: number | undefined;
9075
+ readonly minLength?: number | undefined;
9076
+ readonly scale?: number | undefined;
9077
+ readonly reference?: string | undefined;
9078
+ readonly referenceFilters?: string[] | undefined;
9079
+ readonly writeRequiresMasterRead?: boolean | undefined;
9080
+ readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
9081
+ readonly expression?: {
9082
+ dialect: "cel" | "js" | "cron" | "template";
9083
+ source?: string | undefined;
9084
+ ast?: unknown;
9085
+ meta?: {
9086
+ rationale?: string | undefined;
9087
+ generatedBy?: string | undefined;
9088
+ } | undefined;
9089
+ } | undefined;
9090
+ readonly summaryOperations?: {
9091
+ object: string;
9092
+ field: string;
9093
+ function: "min" | "max" | "count" | "sum" | "avg";
9094
+ } | undefined;
9095
+ readonly language?: string | undefined;
9096
+ readonly lineNumbers?: boolean | undefined;
9097
+ readonly maxRating?: number | undefined;
9098
+ readonly allowHalf?: boolean | undefined;
9099
+ readonly displayMap?: boolean | undefined;
9100
+ readonly allowGeocoding?: boolean | undefined;
9101
+ readonly addressFormat?: "us" | "uk" | "international" | undefined;
9102
+ readonly colorFormat?: "hex" | "rgb" | "rgba" | "hsl" | undefined;
9103
+ readonly allowAlpha?: boolean | undefined;
9104
+ readonly presetColors?: string[] | undefined;
9105
+ readonly step?: number | undefined;
9106
+ readonly showValue?: boolean | undefined;
9107
+ readonly marks?: Record<string, string> | undefined;
9108
+ readonly barcodeFormat?: "qr" | "ean13" | "ean8" | "code128" | "code39" | "upca" | "upce" | undefined;
9109
+ readonly qrErrorCorrection?: "L" | "M" | "Q" | "H" | undefined;
9110
+ readonly displayValue?: boolean | undefined;
9111
+ readonly allowScanning?: boolean | undefined;
9112
+ readonly currencyConfig?: {
9113
+ precision: number;
9114
+ currencyMode: "fixed" | "dynamic";
9115
+ defaultCurrency: string;
9116
+ } | undefined;
9117
+ readonly vectorConfig?: {
9118
+ dimensions: number;
9119
+ distanceMetric: "cosine" | "euclidean" | "dotProduct" | "manhattan";
9120
+ normalized: boolean;
9121
+ indexed: boolean;
9122
+ indexType?: "flat" | "hnsw" | "ivfflat" | undefined;
9123
+ } | undefined;
9124
+ readonly fileAttachmentConfig?: {
9125
+ virusScan: boolean;
9126
+ virusScanOnUpload: boolean;
9127
+ quarantineOnThreat: boolean;
9128
+ allowMultiple: boolean;
9129
+ allowReplace: boolean;
9130
+ allowDelete: boolean;
9131
+ requireUpload: boolean;
9132
+ extractMetadata: boolean;
9133
+ extractText: boolean;
9134
+ versioningEnabled: boolean;
9135
+ publicRead: boolean;
9136
+ presignedUrlExpiry: number;
9137
+ minSize?: number | undefined;
9138
+ maxSize?: number | undefined;
9139
+ allowedTypes?: string[] | undefined;
9140
+ blockedTypes?: string[] | undefined;
9141
+ allowedMimeTypes?: string[] | undefined;
9142
+ blockedMimeTypes?: string[] | undefined;
9143
+ virusScanProvider?: "custom" | "clamav" | "virustotal" | "metadefender" | undefined;
9144
+ storageProvider?: string | undefined;
9145
+ storageBucket?: string | undefined;
9146
+ storagePrefix?: string | undefined;
9147
+ imageValidation?: {
9148
+ generateThumbnails: boolean;
9149
+ preserveMetadata: boolean;
9150
+ autoRotate: boolean;
9151
+ minWidth?: number | undefined;
9152
+ maxWidth?: number | undefined;
9153
+ minHeight?: number | undefined;
9154
+ maxHeight?: number | undefined;
9155
+ aspectRatio?: string | undefined;
9156
+ thumbnailSizes?: {
9157
+ name: string;
9158
+ width: number;
9159
+ height: number;
9160
+ crop: boolean;
9161
+ }[] | undefined;
9162
+ } | undefined;
9163
+ maxVersions?: number | undefined;
9164
+ } | undefined;
9165
+ readonly maskingRule?: {
9166
+ field: string;
9167
+ strategy: "partial" | "hash" | "redact" | "tokenize" | "randomize" | "nullify" | "substitute";
9168
+ preserveFormat: boolean;
9169
+ preserveLength: boolean;
9170
+ pattern?: string | undefined;
9171
+ roles?: string[] | undefined;
9172
+ exemptRoles?: string[] | undefined;
9173
+ } | undefined;
9174
+ readonly auditTrail?: boolean | undefined;
9175
+ readonly cached?: {
9176
+ enabled: boolean;
9177
+ ttl: number;
9178
+ invalidateOn: string[];
9179
+ } | undefined;
9180
+ readonly dataQuality?: {
9181
+ uniqueness: boolean;
9182
+ completeness: number;
9183
+ accuracy?: {
9184
+ source: string;
9185
+ threshold: number;
9186
+ } | undefined;
9187
+ } | undefined;
9188
+ readonly conditionalRequired?: {
9189
+ dialect: "cel" | "js" | "cron" | "template";
9190
+ source?: string | undefined;
9191
+ ast?: unknown;
9192
+ meta?: {
9193
+ rationale?: string | undefined;
9194
+ generatedBy?: string | undefined;
9195
+ } | undefined;
9196
+ } | undefined;
9197
+ readonly hidden?: boolean | undefined;
9198
+ readonly sortable?: boolean | undefined;
9199
+ readonly inlineHelpText?: string | undefined;
9200
+ readonly trackFeedHistory?: boolean | undefined;
9201
+ readonly caseSensitive?: boolean | undefined;
9202
+ readonly autonumberFormat?: string | undefined;
9203
+ readonly index?: boolean | undefined;
9204
+ readonly type: "datetime";
9205
+ };
9206
+ /** Acting principal (user id, system id, or 'system'). */
9207
+ readonly actor: {
9208
+ readonly readonly?: boolean | undefined;
9209
+ readonly format?: string | undefined;
9210
+ readonly options?: {
9211
+ label: string;
9212
+ value: string;
9213
+ color?: string | undefined;
9214
+ default?: boolean | undefined;
9215
+ }[] | undefined;
9216
+ readonly description?: string | undefined;
9217
+ readonly label?: string | undefined;
9218
+ readonly name?: string | undefined;
9219
+ readonly precision?: number | undefined;
9220
+ readonly required?: boolean | undefined;
9221
+ readonly multiple?: boolean | undefined;
9222
+ readonly dependencies?: string[] | undefined;
9223
+ readonly theme?: string | undefined;
9224
+ readonly externalId?: boolean | undefined;
9225
+ readonly system?: boolean | undefined;
9226
+ readonly min?: number | undefined;
9227
+ readonly max?: number | undefined;
9228
+ readonly group?: string | undefined;
9229
+ readonly encryptionConfig?: {
9230
+ enabled: boolean;
9231
+ algorithm: "aes-256-gcm" | "aes-256-cbc" | "chacha20-poly1305";
9232
+ keyManagement: {
9233
+ provider: "local" | "aws-kms" | "azure-key-vault" | "gcp-kms" | "hashicorp-vault";
9234
+ keyId?: string | undefined;
9235
+ rotationPolicy?: {
9236
+ enabled: boolean;
9237
+ frequencyDays: number;
9238
+ retainOldVersions: number;
9239
+ autoRotate: boolean;
9240
+ } | undefined;
9241
+ };
9242
+ scope: "record" | "field" | "table" | "database";
9243
+ deterministicEncryption: boolean;
9244
+ searchableEncryption: boolean;
9245
+ } | undefined;
9246
+ readonly columnName?: string | undefined;
9247
+ readonly searchable?: boolean | undefined;
9248
+ readonly unique?: boolean | undefined;
9249
+ readonly defaultValue?: unknown;
9250
+ readonly maxLength?: number | undefined;
9251
+ readonly minLength?: number | undefined;
9252
+ readonly scale?: number | undefined;
9253
+ readonly reference?: string | undefined;
9254
+ readonly referenceFilters?: string[] | undefined;
9255
+ readonly writeRequiresMasterRead?: boolean | undefined;
9256
+ readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
9257
+ readonly expression?: {
9258
+ dialect: "cel" | "js" | "cron" | "template";
9259
+ source?: string | undefined;
9260
+ ast?: unknown;
9261
+ meta?: {
9262
+ rationale?: string | undefined;
9263
+ generatedBy?: string | undefined;
9264
+ } | undefined;
9265
+ } | undefined;
9266
+ readonly summaryOperations?: {
9267
+ object: string;
9268
+ field: string;
9269
+ function: "min" | "max" | "count" | "sum" | "avg";
9270
+ } | undefined;
9271
+ readonly language?: string | undefined;
9272
+ readonly lineNumbers?: boolean | undefined;
9273
+ readonly maxRating?: number | undefined;
9274
+ readonly allowHalf?: boolean | undefined;
9275
+ readonly displayMap?: boolean | undefined;
9276
+ readonly allowGeocoding?: boolean | undefined;
9277
+ readonly addressFormat?: "us" | "uk" | "international" | undefined;
9278
+ readonly colorFormat?: "hex" | "rgb" | "rgba" | "hsl" | undefined;
9279
+ readonly allowAlpha?: boolean | undefined;
9280
+ readonly presetColors?: string[] | undefined;
9281
+ readonly step?: number | undefined;
9282
+ readonly showValue?: boolean | undefined;
9283
+ readonly marks?: Record<string, string> | undefined;
9284
+ readonly barcodeFormat?: "qr" | "ean13" | "ean8" | "code128" | "code39" | "upca" | "upce" | undefined;
9285
+ readonly qrErrorCorrection?: "L" | "M" | "Q" | "H" | undefined;
9286
+ readonly displayValue?: boolean | undefined;
9287
+ readonly allowScanning?: boolean | undefined;
9288
+ readonly currencyConfig?: {
9289
+ precision: number;
9290
+ currencyMode: "fixed" | "dynamic";
9291
+ defaultCurrency: string;
9292
+ } | undefined;
9293
+ readonly vectorConfig?: {
9294
+ dimensions: number;
9295
+ distanceMetric: "cosine" | "euclidean" | "dotProduct" | "manhattan";
9296
+ normalized: boolean;
9297
+ indexed: boolean;
9298
+ indexType?: "flat" | "hnsw" | "ivfflat" | undefined;
9299
+ } | undefined;
9300
+ readonly fileAttachmentConfig?: {
9301
+ virusScan: boolean;
9302
+ virusScanOnUpload: boolean;
9303
+ quarantineOnThreat: boolean;
9304
+ allowMultiple: boolean;
9305
+ allowReplace: boolean;
9306
+ allowDelete: boolean;
9307
+ requireUpload: boolean;
9308
+ extractMetadata: boolean;
9309
+ extractText: boolean;
9310
+ versioningEnabled: boolean;
9311
+ publicRead: boolean;
9312
+ presignedUrlExpiry: number;
9313
+ minSize?: number | undefined;
9314
+ maxSize?: number | undefined;
9315
+ allowedTypes?: string[] | undefined;
9316
+ blockedTypes?: string[] | undefined;
9317
+ allowedMimeTypes?: string[] | undefined;
9318
+ blockedMimeTypes?: string[] | undefined;
9319
+ virusScanProvider?: "custom" | "clamav" | "virustotal" | "metadefender" | undefined;
9320
+ storageProvider?: string | undefined;
9321
+ storageBucket?: string | undefined;
9322
+ storagePrefix?: string | undefined;
9323
+ imageValidation?: {
9324
+ generateThumbnails: boolean;
9325
+ preserveMetadata: boolean;
9326
+ autoRotate: boolean;
9327
+ minWidth?: number | undefined;
9328
+ maxWidth?: number | undefined;
9329
+ minHeight?: number | undefined;
9330
+ maxHeight?: number | undefined;
9331
+ aspectRatio?: string | undefined;
9332
+ thumbnailSizes?: {
9333
+ name: string;
9334
+ width: number;
9335
+ height: number;
9336
+ crop: boolean;
9337
+ }[] | undefined;
9338
+ } | undefined;
9339
+ maxVersions?: number | undefined;
9340
+ } | undefined;
9341
+ readonly maskingRule?: {
9342
+ field: string;
9343
+ strategy: "partial" | "hash" | "redact" | "tokenize" | "randomize" | "nullify" | "substitute";
9344
+ preserveFormat: boolean;
9345
+ preserveLength: boolean;
9346
+ pattern?: string | undefined;
9347
+ roles?: string[] | undefined;
9348
+ exemptRoles?: string[] | undefined;
9349
+ } | undefined;
9350
+ readonly auditTrail?: boolean | undefined;
9351
+ readonly cached?: {
9352
+ enabled: boolean;
9353
+ ttl: number;
9354
+ invalidateOn: string[];
9355
+ } | undefined;
9356
+ readonly dataQuality?: {
9357
+ uniqueness: boolean;
9358
+ completeness: number;
9359
+ accuracy?: {
9360
+ source: string;
9361
+ threshold: number;
9362
+ } | undefined;
9363
+ } | undefined;
9364
+ readonly conditionalRequired?: {
9365
+ dialect: "cel" | "js" | "cron" | "template";
9366
+ source?: string | undefined;
9367
+ ast?: unknown;
9368
+ meta?: {
9369
+ rationale?: string | undefined;
9370
+ generatedBy?: string | undefined;
9371
+ } | undefined;
9372
+ } | undefined;
9373
+ readonly hidden?: boolean | undefined;
9374
+ readonly sortable?: boolean | undefined;
9375
+ readonly inlineHelpText?: string | undefined;
9376
+ readonly trackFeedHistory?: boolean | undefined;
9377
+ readonly caseSensitive?: boolean | undefined;
9378
+ readonly autonumberFormat?: string | undefined;
9379
+ readonly index?: boolean | undefined;
9380
+ readonly type: "text";
9381
+ };
9382
+ /** Code path that produced the decision (e.g. `protocol.saveMetaItem`). */
9383
+ readonly source: {
9384
+ readonly readonly?: boolean | undefined;
9385
+ readonly format?: string | undefined;
9386
+ readonly options?: {
9387
+ label: string;
9388
+ value: string;
9389
+ color?: string | undefined;
9390
+ default?: boolean | undefined;
9391
+ }[] | undefined;
9392
+ readonly description?: string | undefined;
9393
+ readonly label?: string | undefined;
9394
+ readonly name?: string | undefined;
9395
+ readonly precision?: number | undefined;
9396
+ readonly required?: boolean | undefined;
9397
+ readonly multiple?: boolean | undefined;
9398
+ readonly dependencies?: string[] | undefined;
9399
+ readonly theme?: string | undefined;
9400
+ readonly externalId?: boolean | undefined;
9401
+ readonly system?: boolean | undefined;
9402
+ readonly min?: number | undefined;
9403
+ readonly max?: number | undefined;
9404
+ readonly group?: string | undefined;
9405
+ readonly encryptionConfig?: {
9406
+ enabled: boolean;
9407
+ algorithm: "aes-256-gcm" | "aes-256-cbc" | "chacha20-poly1305";
9408
+ keyManagement: {
9409
+ provider: "local" | "aws-kms" | "azure-key-vault" | "gcp-kms" | "hashicorp-vault";
9410
+ keyId?: string | undefined;
9411
+ rotationPolicy?: {
9412
+ enabled: boolean;
9413
+ frequencyDays: number;
9414
+ retainOldVersions: number;
9415
+ autoRotate: boolean;
9416
+ } | undefined;
9417
+ };
9418
+ scope: "record" | "field" | "table" | "database";
9419
+ deterministicEncryption: boolean;
9420
+ searchableEncryption: boolean;
9421
+ } | undefined;
9422
+ readonly columnName?: string | undefined;
9423
+ readonly searchable?: boolean | undefined;
9424
+ readonly unique?: boolean | undefined;
9425
+ readonly defaultValue?: unknown;
9426
+ readonly maxLength?: number | undefined;
9427
+ readonly minLength?: number | undefined;
9428
+ readonly scale?: number | undefined;
9429
+ readonly reference?: string | undefined;
9430
+ readonly referenceFilters?: string[] | undefined;
9431
+ readonly writeRequiresMasterRead?: boolean | undefined;
9432
+ readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
9433
+ readonly expression?: {
9434
+ dialect: "cel" | "js" | "cron" | "template";
9435
+ source?: string | undefined;
9436
+ ast?: unknown;
9437
+ meta?: {
9438
+ rationale?: string | undefined;
9439
+ generatedBy?: string | undefined;
9440
+ } | undefined;
9441
+ } | undefined;
9442
+ readonly summaryOperations?: {
9443
+ object: string;
9444
+ field: string;
9445
+ function: "min" | "max" | "count" | "sum" | "avg";
9446
+ } | undefined;
9447
+ readonly language?: string | undefined;
9448
+ readonly lineNumbers?: boolean | undefined;
9449
+ readonly maxRating?: number | undefined;
9450
+ readonly allowHalf?: boolean | undefined;
9451
+ readonly displayMap?: boolean | undefined;
9452
+ readonly allowGeocoding?: boolean | undefined;
9453
+ readonly addressFormat?: "us" | "uk" | "international" | undefined;
9454
+ readonly colorFormat?: "hex" | "rgb" | "rgba" | "hsl" | undefined;
9455
+ readonly allowAlpha?: boolean | undefined;
9456
+ readonly presetColors?: string[] | undefined;
9457
+ readonly step?: number | undefined;
9458
+ readonly showValue?: boolean | undefined;
9459
+ readonly marks?: Record<string, string> | undefined;
9460
+ readonly barcodeFormat?: "qr" | "ean13" | "ean8" | "code128" | "code39" | "upca" | "upce" | undefined;
9461
+ readonly qrErrorCorrection?: "L" | "M" | "Q" | "H" | undefined;
9462
+ readonly displayValue?: boolean | undefined;
9463
+ readonly allowScanning?: boolean | undefined;
9464
+ readonly currencyConfig?: {
9465
+ precision: number;
9466
+ currencyMode: "fixed" | "dynamic";
9467
+ defaultCurrency: string;
9468
+ } | undefined;
9469
+ readonly vectorConfig?: {
9470
+ dimensions: number;
9471
+ distanceMetric: "cosine" | "euclidean" | "dotProduct" | "manhattan";
9472
+ normalized: boolean;
9473
+ indexed: boolean;
9474
+ indexType?: "flat" | "hnsw" | "ivfflat" | undefined;
9475
+ } | undefined;
9476
+ readonly fileAttachmentConfig?: {
9477
+ virusScan: boolean;
9478
+ virusScanOnUpload: boolean;
9479
+ quarantineOnThreat: boolean;
9480
+ allowMultiple: boolean;
9481
+ allowReplace: boolean;
9482
+ allowDelete: boolean;
9483
+ requireUpload: boolean;
9484
+ extractMetadata: boolean;
9485
+ extractText: boolean;
9486
+ versioningEnabled: boolean;
9487
+ publicRead: boolean;
9488
+ presignedUrlExpiry: number;
9489
+ minSize?: number | undefined;
9490
+ maxSize?: number | undefined;
9491
+ allowedTypes?: string[] | undefined;
9492
+ blockedTypes?: string[] | undefined;
9493
+ allowedMimeTypes?: string[] | undefined;
9494
+ blockedMimeTypes?: string[] | undefined;
9495
+ virusScanProvider?: "custom" | "clamav" | "virustotal" | "metadefender" | undefined;
9496
+ storageProvider?: string | undefined;
9497
+ storageBucket?: string | undefined;
9498
+ storagePrefix?: string | undefined;
9499
+ imageValidation?: {
9500
+ generateThumbnails: boolean;
9501
+ preserveMetadata: boolean;
9502
+ autoRotate: boolean;
9503
+ minWidth?: number | undefined;
9504
+ maxWidth?: number | undefined;
9505
+ minHeight?: number | undefined;
9506
+ maxHeight?: number | undefined;
9507
+ aspectRatio?: string | undefined;
9508
+ thumbnailSizes?: {
9509
+ name: string;
9510
+ width: number;
9511
+ height: number;
9512
+ crop: boolean;
9513
+ }[] | undefined;
9514
+ } | undefined;
9515
+ maxVersions?: number | undefined;
9516
+ } | undefined;
9517
+ readonly maskingRule?: {
9518
+ field: string;
9519
+ strategy: "partial" | "hash" | "redact" | "tokenize" | "randomize" | "nullify" | "substitute";
9520
+ preserveFormat: boolean;
9521
+ preserveLength: boolean;
9522
+ pattern?: string | undefined;
9523
+ roles?: string[] | undefined;
9524
+ exemptRoles?: string[] | undefined;
9525
+ } | undefined;
9526
+ readonly auditTrail?: boolean | undefined;
9527
+ readonly cached?: {
9528
+ enabled: boolean;
9529
+ ttl: number;
9530
+ invalidateOn: string[];
9531
+ } | undefined;
9532
+ readonly dataQuality?: {
9533
+ uniqueness: boolean;
9534
+ completeness: number;
9535
+ accuracy?: {
9536
+ source: string;
9537
+ threshold: number;
9538
+ } | undefined;
9539
+ } | undefined;
9540
+ readonly conditionalRequired?: {
9541
+ dialect: "cel" | "js" | "cron" | "template";
9542
+ source?: string | undefined;
9543
+ ast?: unknown;
9544
+ meta?: {
9545
+ rationale?: string | undefined;
9546
+ generatedBy?: string | undefined;
9547
+ } | undefined;
9548
+ } | undefined;
9549
+ readonly hidden?: boolean | undefined;
9550
+ readonly sortable?: boolean | undefined;
9551
+ readonly inlineHelpText?: string | undefined;
9552
+ readonly trackFeedHistory?: boolean | undefined;
9553
+ readonly caseSensitive?: boolean | undefined;
9554
+ readonly autonumberFormat?: string | undefined;
9555
+ readonly index?: boolean | undefined;
9556
+ readonly type: "text";
9557
+ };
9558
+ /** Metadata type (singular, e.g. `app`, `object`, `view`). */
9559
+ readonly type: {
9560
+ readonly readonly?: boolean | undefined;
9561
+ readonly format?: string | undefined;
9562
+ readonly options?: {
9563
+ label: string;
9564
+ value: string;
9565
+ color?: string | undefined;
9566
+ default?: boolean | undefined;
9567
+ }[] | undefined;
9568
+ readonly description?: string | undefined;
9569
+ readonly label?: string | undefined;
9570
+ readonly name?: string | undefined;
9571
+ readonly precision?: number | undefined;
9572
+ readonly required?: boolean | undefined;
9573
+ readonly multiple?: boolean | undefined;
9574
+ readonly dependencies?: string[] | undefined;
9575
+ readonly theme?: string | undefined;
9576
+ readonly externalId?: boolean | undefined;
9577
+ readonly system?: boolean | undefined;
9578
+ readonly min?: number | undefined;
9579
+ readonly max?: number | undefined;
9580
+ readonly group?: string | undefined;
9581
+ readonly encryptionConfig?: {
9582
+ enabled: boolean;
9583
+ algorithm: "aes-256-gcm" | "aes-256-cbc" | "chacha20-poly1305";
9584
+ keyManagement: {
9585
+ provider: "local" | "aws-kms" | "azure-key-vault" | "gcp-kms" | "hashicorp-vault";
9586
+ keyId?: string | undefined;
9587
+ rotationPolicy?: {
9588
+ enabled: boolean;
9589
+ frequencyDays: number;
9590
+ retainOldVersions: number;
9591
+ autoRotate: boolean;
9592
+ } | undefined;
9593
+ };
9594
+ scope: "record" | "field" | "table" | "database";
9595
+ deterministicEncryption: boolean;
9596
+ searchableEncryption: boolean;
9597
+ } | undefined;
9598
+ readonly columnName?: string | undefined;
9599
+ readonly searchable?: boolean | undefined;
9600
+ readonly unique?: boolean | undefined;
9601
+ readonly defaultValue?: unknown;
9602
+ readonly maxLength?: number | undefined;
9603
+ readonly minLength?: number | undefined;
9604
+ readonly scale?: number | undefined;
9605
+ readonly reference?: string | undefined;
9606
+ readonly referenceFilters?: string[] | undefined;
9607
+ readonly writeRequiresMasterRead?: boolean | undefined;
9608
+ readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
9609
+ readonly expression?: {
9610
+ dialect: "cel" | "js" | "cron" | "template";
9611
+ source?: string | undefined;
9612
+ ast?: unknown;
9613
+ meta?: {
9614
+ rationale?: string | undefined;
9615
+ generatedBy?: string | undefined;
9616
+ } | undefined;
9617
+ } | undefined;
9618
+ readonly summaryOperations?: {
9619
+ object: string;
9620
+ field: string;
9621
+ function: "min" | "max" | "count" | "sum" | "avg";
9622
+ } | undefined;
9623
+ readonly language?: string | undefined;
9624
+ readonly lineNumbers?: boolean | undefined;
9625
+ readonly maxRating?: number | undefined;
9626
+ readonly allowHalf?: boolean | undefined;
9627
+ readonly displayMap?: boolean | undefined;
9628
+ readonly allowGeocoding?: boolean | undefined;
9629
+ readonly addressFormat?: "us" | "uk" | "international" | undefined;
9630
+ readonly colorFormat?: "hex" | "rgb" | "rgba" | "hsl" | undefined;
9631
+ readonly allowAlpha?: boolean | undefined;
9632
+ readonly presetColors?: string[] | undefined;
9633
+ readonly step?: number | undefined;
9634
+ readonly showValue?: boolean | undefined;
9635
+ readonly marks?: Record<string, string> | undefined;
9636
+ readonly barcodeFormat?: "qr" | "ean13" | "ean8" | "code128" | "code39" | "upca" | "upce" | undefined;
9637
+ readonly qrErrorCorrection?: "L" | "M" | "Q" | "H" | undefined;
9638
+ readonly displayValue?: boolean | undefined;
9639
+ readonly allowScanning?: boolean | undefined;
9640
+ readonly currencyConfig?: {
9641
+ precision: number;
9642
+ currencyMode: "fixed" | "dynamic";
9643
+ defaultCurrency: string;
9644
+ } | undefined;
9645
+ readonly vectorConfig?: {
9646
+ dimensions: number;
9647
+ distanceMetric: "cosine" | "euclidean" | "dotProduct" | "manhattan";
9648
+ normalized: boolean;
9649
+ indexed: boolean;
9650
+ indexType?: "flat" | "hnsw" | "ivfflat" | undefined;
9651
+ } | undefined;
9652
+ readonly fileAttachmentConfig?: {
9653
+ virusScan: boolean;
9654
+ virusScanOnUpload: boolean;
9655
+ quarantineOnThreat: boolean;
9656
+ allowMultiple: boolean;
9657
+ allowReplace: boolean;
9658
+ allowDelete: boolean;
9659
+ requireUpload: boolean;
9660
+ extractMetadata: boolean;
9661
+ extractText: boolean;
9662
+ versioningEnabled: boolean;
9663
+ publicRead: boolean;
9664
+ presignedUrlExpiry: number;
9665
+ minSize?: number | undefined;
9666
+ maxSize?: number | undefined;
9667
+ allowedTypes?: string[] | undefined;
9668
+ blockedTypes?: string[] | undefined;
9669
+ allowedMimeTypes?: string[] | undefined;
9670
+ blockedMimeTypes?: string[] | undefined;
9671
+ virusScanProvider?: "custom" | "clamav" | "virustotal" | "metadefender" | undefined;
9672
+ storageProvider?: string | undefined;
9673
+ storageBucket?: string | undefined;
9674
+ storagePrefix?: string | undefined;
9675
+ imageValidation?: {
9676
+ generateThumbnails: boolean;
9677
+ preserveMetadata: boolean;
9678
+ autoRotate: boolean;
9679
+ minWidth?: number | undefined;
9680
+ maxWidth?: number | undefined;
9681
+ minHeight?: number | undefined;
9682
+ maxHeight?: number | undefined;
9683
+ aspectRatio?: string | undefined;
9684
+ thumbnailSizes?: {
9685
+ name: string;
9686
+ width: number;
9687
+ height: number;
9688
+ crop: boolean;
9689
+ }[] | undefined;
9690
+ } | undefined;
9691
+ maxVersions?: number | undefined;
9692
+ } | undefined;
9693
+ readonly maskingRule?: {
9694
+ field: string;
9695
+ strategy: "partial" | "hash" | "redact" | "tokenize" | "randomize" | "nullify" | "substitute";
9696
+ preserveFormat: boolean;
9697
+ preserveLength: boolean;
9698
+ pattern?: string | undefined;
9699
+ roles?: string[] | undefined;
9700
+ exemptRoles?: string[] | undefined;
9701
+ } | undefined;
9702
+ readonly auditTrail?: boolean | undefined;
9703
+ readonly cached?: {
9704
+ enabled: boolean;
9705
+ ttl: number;
9706
+ invalidateOn: string[];
9707
+ } | undefined;
9708
+ readonly dataQuality?: {
9709
+ uniqueness: boolean;
9710
+ completeness: number;
9711
+ accuracy?: {
9712
+ source: string;
9713
+ threshold: number;
9714
+ } | undefined;
9715
+ } | undefined;
9716
+ readonly conditionalRequired?: {
9717
+ dialect: "cel" | "js" | "cron" | "template";
9718
+ source?: string | undefined;
9719
+ ast?: unknown;
9720
+ meta?: {
9721
+ rationale?: string | undefined;
9722
+ generatedBy?: string | undefined;
9723
+ } | undefined;
9724
+ } | undefined;
9725
+ readonly hidden?: boolean | undefined;
9726
+ readonly sortable?: boolean | undefined;
9727
+ readonly inlineHelpText?: string | undefined;
9728
+ readonly trackFeedHistory?: boolean | undefined;
9729
+ readonly caseSensitive?: boolean | undefined;
9730
+ readonly autonumberFormat?: string | undefined;
9731
+ readonly index?: boolean | undefined;
9732
+ readonly type: "text";
9733
+ };
9734
+ /** Item machine name. */
9735
+ readonly name: {
9736
+ readonly readonly?: boolean | undefined;
9737
+ readonly format?: string | undefined;
9738
+ readonly options?: {
9739
+ label: string;
9740
+ value: string;
9741
+ color?: string | undefined;
9742
+ default?: boolean | undefined;
9743
+ }[] | undefined;
9744
+ readonly description?: string | undefined;
9745
+ readonly label?: string | undefined;
9746
+ readonly name?: string | undefined;
9747
+ readonly precision?: number | undefined;
9748
+ readonly required?: boolean | undefined;
9749
+ readonly multiple?: boolean | undefined;
9750
+ readonly dependencies?: string[] | undefined;
9751
+ readonly theme?: string | undefined;
9752
+ readonly externalId?: boolean | undefined;
9753
+ readonly system?: boolean | undefined;
9754
+ readonly min?: number | undefined;
9755
+ readonly max?: number | undefined;
9756
+ readonly group?: string | undefined;
9757
+ readonly encryptionConfig?: {
9758
+ enabled: boolean;
9759
+ algorithm: "aes-256-gcm" | "aes-256-cbc" | "chacha20-poly1305";
9760
+ keyManagement: {
9761
+ provider: "local" | "aws-kms" | "azure-key-vault" | "gcp-kms" | "hashicorp-vault";
9762
+ keyId?: string | undefined;
9763
+ rotationPolicy?: {
9764
+ enabled: boolean;
9765
+ frequencyDays: number;
9766
+ retainOldVersions: number;
9767
+ autoRotate: boolean;
9768
+ } | undefined;
9769
+ };
9770
+ scope: "record" | "field" | "table" | "database";
9771
+ deterministicEncryption: boolean;
9772
+ searchableEncryption: boolean;
9773
+ } | undefined;
9774
+ readonly columnName?: string | undefined;
9775
+ readonly searchable?: boolean | undefined;
9776
+ readonly unique?: boolean | undefined;
9777
+ readonly defaultValue?: unknown;
9778
+ readonly maxLength?: number | undefined;
9779
+ readonly minLength?: number | undefined;
9780
+ readonly scale?: number | undefined;
9781
+ readonly reference?: string | undefined;
9782
+ readonly referenceFilters?: string[] | undefined;
9783
+ readonly writeRequiresMasterRead?: boolean | undefined;
9784
+ readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
9785
+ readonly expression?: {
9786
+ dialect: "cel" | "js" | "cron" | "template";
9787
+ source?: string | undefined;
9788
+ ast?: unknown;
9789
+ meta?: {
9790
+ rationale?: string | undefined;
9791
+ generatedBy?: string | undefined;
9792
+ } | undefined;
9793
+ } | undefined;
9794
+ readonly summaryOperations?: {
9795
+ object: string;
9796
+ field: string;
9797
+ function: "min" | "max" | "count" | "sum" | "avg";
9798
+ } | undefined;
9799
+ readonly language?: string | undefined;
9800
+ readonly lineNumbers?: boolean | undefined;
9801
+ readonly maxRating?: number | undefined;
9802
+ readonly allowHalf?: boolean | undefined;
9803
+ readonly displayMap?: boolean | undefined;
9804
+ readonly allowGeocoding?: boolean | undefined;
9805
+ readonly addressFormat?: "us" | "uk" | "international" | undefined;
9806
+ readonly colorFormat?: "hex" | "rgb" | "rgba" | "hsl" | undefined;
9807
+ readonly allowAlpha?: boolean | undefined;
9808
+ readonly presetColors?: string[] | undefined;
9809
+ readonly step?: number | undefined;
9810
+ readonly showValue?: boolean | undefined;
9811
+ readonly marks?: Record<string, string> | undefined;
9812
+ readonly barcodeFormat?: "qr" | "ean13" | "ean8" | "code128" | "code39" | "upca" | "upce" | undefined;
9813
+ readonly qrErrorCorrection?: "L" | "M" | "Q" | "H" | undefined;
9814
+ readonly displayValue?: boolean | undefined;
9815
+ readonly allowScanning?: boolean | undefined;
9816
+ readonly currencyConfig?: {
9817
+ precision: number;
9818
+ currencyMode: "fixed" | "dynamic";
9819
+ defaultCurrency: string;
9820
+ } | undefined;
9821
+ readonly vectorConfig?: {
9822
+ dimensions: number;
9823
+ distanceMetric: "cosine" | "euclidean" | "dotProduct" | "manhattan";
9824
+ normalized: boolean;
9825
+ indexed: boolean;
9826
+ indexType?: "flat" | "hnsw" | "ivfflat" | undefined;
9827
+ } | undefined;
9828
+ readonly fileAttachmentConfig?: {
9829
+ virusScan: boolean;
9830
+ virusScanOnUpload: boolean;
9831
+ quarantineOnThreat: boolean;
9832
+ allowMultiple: boolean;
9833
+ allowReplace: boolean;
9834
+ allowDelete: boolean;
9835
+ requireUpload: boolean;
9836
+ extractMetadata: boolean;
9837
+ extractText: boolean;
9838
+ versioningEnabled: boolean;
9839
+ publicRead: boolean;
9840
+ presignedUrlExpiry: number;
9841
+ minSize?: number | undefined;
9842
+ maxSize?: number | undefined;
9843
+ allowedTypes?: string[] | undefined;
9844
+ blockedTypes?: string[] | undefined;
9845
+ allowedMimeTypes?: string[] | undefined;
9846
+ blockedMimeTypes?: string[] | undefined;
9847
+ virusScanProvider?: "custom" | "clamav" | "virustotal" | "metadefender" | undefined;
9848
+ storageProvider?: string | undefined;
9849
+ storageBucket?: string | undefined;
9850
+ storagePrefix?: string | undefined;
9851
+ imageValidation?: {
9852
+ generateThumbnails: boolean;
9853
+ preserveMetadata: boolean;
9854
+ autoRotate: boolean;
9855
+ minWidth?: number | undefined;
9856
+ maxWidth?: number | undefined;
9857
+ minHeight?: number | undefined;
9858
+ maxHeight?: number | undefined;
9859
+ aspectRatio?: string | undefined;
9860
+ thumbnailSizes?: {
9861
+ name: string;
9862
+ width: number;
9863
+ height: number;
9864
+ crop: boolean;
9865
+ }[] | undefined;
9866
+ } | undefined;
9867
+ maxVersions?: number | undefined;
9868
+ } | undefined;
9869
+ readonly maskingRule?: {
9870
+ field: string;
9871
+ strategy: "partial" | "hash" | "redact" | "tokenize" | "randomize" | "nullify" | "substitute";
9872
+ preserveFormat: boolean;
9873
+ preserveLength: boolean;
9874
+ pattern?: string | undefined;
9875
+ roles?: string[] | undefined;
9876
+ exemptRoles?: string[] | undefined;
9877
+ } | undefined;
9878
+ readonly auditTrail?: boolean | undefined;
9879
+ readonly cached?: {
9880
+ enabled: boolean;
9881
+ ttl: number;
9882
+ invalidateOn: string[];
9883
+ } | undefined;
9884
+ readonly dataQuality?: {
9885
+ uniqueness: boolean;
9886
+ completeness: number;
9887
+ accuracy?: {
9888
+ source: string;
9889
+ threshold: number;
9890
+ } | undefined;
9891
+ } | undefined;
9892
+ readonly conditionalRequired?: {
9893
+ dialect: "cel" | "js" | "cron" | "template";
9894
+ source?: string | undefined;
9895
+ ast?: unknown;
9896
+ meta?: {
9897
+ rationale?: string | undefined;
9898
+ generatedBy?: string | undefined;
9899
+ } | undefined;
9900
+ } | undefined;
9901
+ readonly hidden?: boolean | undefined;
9902
+ readonly sortable?: boolean | undefined;
9903
+ readonly inlineHelpText?: string | undefined;
9904
+ readonly trackFeedHistory?: boolean | undefined;
9905
+ readonly caseSensitive?: boolean | undefined;
9906
+ readonly autonumberFormat?: string | undefined;
9907
+ readonly index?: boolean | undefined;
9908
+ readonly type: "text";
9909
+ };
9910
+ /** Organization for multi-tenant filtering. NULL for env-wide writes. */
9911
+ readonly organization_id: {
9912
+ readonly readonly?: boolean | undefined;
9913
+ readonly format?: string | undefined;
9914
+ readonly options?: {
9915
+ label: string;
9916
+ value: string;
9917
+ color?: string | undefined;
9918
+ default?: boolean | undefined;
9919
+ }[] | undefined;
9920
+ readonly description?: string | undefined;
9921
+ readonly label?: string | undefined;
9922
+ readonly name?: string | undefined;
9923
+ readonly precision?: number | undefined;
9924
+ readonly required?: boolean | undefined;
9925
+ readonly multiple?: boolean | undefined;
9926
+ readonly dependencies?: string[] | undefined;
9927
+ readonly theme?: string | undefined;
9928
+ readonly externalId?: boolean | undefined;
9929
+ readonly system?: boolean | undefined;
9930
+ readonly min?: number | undefined;
9931
+ readonly max?: number | undefined;
9932
+ readonly group?: string | undefined;
9933
+ readonly encryptionConfig?: {
9934
+ enabled: boolean;
9935
+ algorithm: "aes-256-gcm" | "aes-256-cbc" | "chacha20-poly1305";
9936
+ keyManagement: {
9937
+ provider: "local" | "aws-kms" | "azure-key-vault" | "gcp-kms" | "hashicorp-vault";
9938
+ keyId?: string | undefined;
9939
+ rotationPolicy?: {
9940
+ enabled: boolean;
9941
+ frequencyDays: number;
9942
+ retainOldVersions: number;
9943
+ autoRotate: boolean;
9944
+ } | undefined;
9945
+ };
9946
+ scope: "record" | "field" | "table" | "database";
9947
+ deterministicEncryption: boolean;
9948
+ searchableEncryption: boolean;
9949
+ } | undefined;
9950
+ readonly columnName?: string | undefined;
9951
+ readonly searchable?: boolean | undefined;
9952
+ readonly unique?: boolean | undefined;
9953
+ readonly defaultValue?: unknown;
9954
+ readonly maxLength?: number | undefined;
9955
+ readonly minLength?: number | undefined;
9956
+ readonly scale?: number | undefined;
9957
+ reference: string;
9958
+ readonly referenceFilters?: string[] | undefined;
9959
+ readonly writeRequiresMasterRead?: boolean | undefined;
9960
+ readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
9961
+ readonly expression?: {
9962
+ dialect: "cel" | "js" | "cron" | "template";
9963
+ source?: string | undefined;
9964
+ ast?: unknown;
9965
+ meta?: {
9966
+ rationale?: string | undefined;
9967
+ generatedBy?: string | undefined;
9968
+ } | undefined;
9969
+ } | undefined;
9970
+ readonly summaryOperations?: {
9971
+ object: string;
9972
+ field: string;
9973
+ function: "min" | "max" | "count" | "sum" | "avg";
9974
+ } | undefined;
9975
+ readonly language?: string | undefined;
9976
+ readonly lineNumbers?: boolean | undefined;
9977
+ readonly maxRating?: number | undefined;
9978
+ readonly allowHalf?: boolean | undefined;
9979
+ readonly displayMap?: boolean | undefined;
9980
+ readonly allowGeocoding?: boolean | undefined;
9981
+ readonly addressFormat?: "us" | "uk" | "international" | undefined;
9982
+ readonly colorFormat?: "hex" | "rgb" | "rgba" | "hsl" | undefined;
9983
+ readonly allowAlpha?: boolean | undefined;
9984
+ readonly presetColors?: string[] | undefined;
9985
+ readonly step?: number | undefined;
9986
+ readonly showValue?: boolean | undefined;
9987
+ readonly marks?: Record<string, string> | undefined;
9988
+ readonly barcodeFormat?: "qr" | "ean13" | "ean8" | "code128" | "code39" | "upca" | "upce" | undefined;
9989
+ readonly qrErrorCorrection?: "L" | "M" | "Q" | "H" | undefined;
9990
+ readonly displayValue?: boolean | undefined;
9991
+ readonly allowScanning?: boolean | undefined;
9992
+ readonly currencyConfig?: {
9993
+ precision: number;
9994
+ currencyMode: "fixed" | "dynamic";
9995
+ defaultCurrency: string;
9996
+ } | undefined;
9997
+ readonly vectorConfig?: {
9998
+ dimensions: number;
9999
+ distanceMetric: "cosine" | "euclidean" | "dotProduct" | "manhattan";
10000
+ normalized: boolean;
10001
+ indexed: boolean;
10002
+ indexType?: "flat" | "hnsw" | "ivfflat" | undefined;
10003
+ } | undefined;
10004
+ readonly fileAttachmentConfig?: {
10005
+ virusScan: boolean;
10006
+ virusScanOnUpload: boolean;
10007
+ quarantineOnThreat: boolean;
10008
+ allowMultiple: boolean;
10009
+ allowReplace: boolean;
10010
+ allowDelete: boolean;
10011
+ requireUpload: boolean;
10012
+ extractMetadata: boolean;
10013
+ extractText: boolean;
10014
+ versioningEnabled: boolean;
10015
+ publicRead: boolean;
10016
+ presignedUrlExpiry: number;
10017
+ minSize?: number | undefined;
10018
+ maxSize?: number | undefined;
10019
+ allowedTypes?: string[] | undefined;
10020
+ blockedTypes?: string[] | undefined;
10021
+ allowedMimeTypes?: string[] | undefined;
10022
+ blockedMimeTypes?: string[] | undefined;
10023
+ virusScanProvider?: "custom" | "clamav" | "virustotal" | "metadefender" | undefined;
10024
+ storageProvider?: string | undefined;
10025
+ storageBucket?: string | undefined;
10026
+ storagePrefix?: string | undefined;
10027
+ imageValidation?: {
10028
+ generateThumbnails: boolean;
10029
+ preserveMetadata: boolean;
10030
+ autoRotate: boolean;
10031
+ minWidth?: number | undefined;
10032
+ maxWidth?: number | undefined;
10033
+ minHeight?: number | undefined;
10034
+ maxHeight?: number | undefined;
10035
+ aspectRatio?: string | undefined;
10036
+ thumbnailSizes?: {
10037
+ name: string;
10038
+ width: number;
10039
+ height: number;
10040
+ crop: boolean;
10041
+ }[] | undefined;
10042
+ } | undefined;
10043
+ maxVersions?: number | undefined;
10044
+ } | undefined;
10045
+ readonly maskingRule?: {
10046
+ field: string;
10047
+ strategy: "partial" | "hash" | "redact" | "tokenize" | "randomize" | "nullify" | "substitute";
10048
+ preserveFormat: boolean;
10049
+ preserveLength: boolean;
10050
+ pattern?: string | undefined;
10051
+ roles?: string[] | undefined;
10052
+ exemptRoles?: string[] | undefined;
10053
+ } | undefined;
10054
+ readonly auditTrail?: boolean | undefined;
10055
+ readonly cached?: {
10056
+ enabled: boolean;
10057
+ ttl: number;
10058
+ invalidateOn: string[];
10059
+ } | undefined;
10060
+ readonly dataQuality?: {
10061
+ uniqueness: boolean;
10062
+ completeness: number;
10063
+ accuracy?: {
10064
+ source: string;
10065
+ threshold: number;
10066
+ } | undefined;
10067
+ } | undefined;
10068
+ readonly conditionalRequired?: {
10069
+ dialect: "cel" | "js" | "cron" | "template";
10070
+ source?: string | undefined;
10071
+ ast?: unknown;
10072
+ meta?: {
10073
+ rationale?: string | undefined;
10074
+ generatedBy?: string | undefined;
10075
+ } | undefined;
10076
+ } | undefined;
10077
+ readonly hidden?: boolean | undefined;
10078
+ readonly sortable?: boolean | undefined;
10079
+ readonly inlineHelpText?: string | undefined;
10080
+ readonly trackFeedHistory?: boolean | undefined;
10081
+ readonly caseSensitive?: boolean | undefined;
10082
+ readonly autonumberFormat?: string | undefined;
10083
+ readonly index?: boolean | undefined;
10084
+ readonly type: "lookup";
10085
+ };
10086
+ /** Operation kind. */
10087
+ readonly operation: {
10088
+ readonly readonly?: boolean | undefined;
10089
+ readonly format?: string | undefined;
10090
+ options: {
10091
+ label: string;
10092
+ value: string;
10093
+ color?: string | undefined;
10094
+ default?: boolean | undefined;
10095
+ }[];
10096
+ readonly description?: string | undefined;
10097
+ readonly label?: string | undefined;
10098
+ readonly name?: string | undefined;
10099
+ readonly precision?: number | undefined;
10100
+ readonly required?: boolean | undefined;
10101
+ readonly multiple?: boolean | undefined;
10102
+ readonly dependencies?: string[] | undefined;
10103
+ readonly theme?: string | undefined;
10104
+ readonly externalId?: boolean | undefined;
10105
+ readonly system?: boolean | undefined;
10106
+ readonly min?: number | undefined;
10107
+ readonly max?: number | undefined;
10108
+ readonly group?: string | undefined;
10109
+ readonly encryptionConfig?: {
10110
+ enabled: boolean;
10111
+ algorithm: "aes-256-gcm" | "aes-256-cbc" | "chacha20-poly1305";
10112
+ keyManagement: {
10113
+ provider: "local" | "aws-kms" | "azure-key-vault" | "gcp-kms" | "hashicorp-vault";
10114
+ keyId?: string | undefined;
10115
+ rotationPolicy?: {
10116
+ enabled: boolean;
10117
+ frequencyDays: number;
10118
+ retainOldVersions: number;
10119
+ autoRotate: boolean;
10120
+ } | undefined;
10121
+ };
10122
+ scope: "record" | "field" | "table" | "database";
10123
+ deterministicEncryption: boolean;
10124
+ searchableEncryption: boolean;
10125
+ } | undefined;
10126
+ readonly columnName?: string | undefined;
10127
+ readonly searchable?: boolean | undefined;
10128
+ readonly unique?: boolean | undefined;
10129
+ readonly defaultValue?: unknown;
10130
+ readonly maxLength?: number | undefined;
10131
+ readonly minLength?: number | undefined;
10132
+ readonly scale?: number | undefined;
10133
+ readonly reference?: string | undefined;
10134
+ readonly referenceFilters?: string[] | undefined;
10135
+ readonly writeRequiresMasterRead?: boolean | undefined;
10136
+ readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
10137
+ readonly expression?: {
10138
+ dialect: "cel" | "js" | "cron" | "template";
10139
+ source?: string | undefined;
10140
+ ast?: unknown;
10141
+ meta?: {
10142
+ rationale?: string | undefined;
10143
+ generatedBy?: string | undefined;
10144
+ } | undefined;
10145
+ } | undefined;
10146
+ readonly summaryOperations?: {
10147
+ object: string;
10148
+ field: string;
10149
+ function: "min" | "max" | "count" | "sum" | "avg";
10150
+ } | undefined;
10151
+ readonly language?: string | undefined;
10152
+ readonly lineNumbers?: boolean | undefined;
10153
+ readonly maxRating?: number | undefined;
10154
+ readonly allowHalf?: boolean | undefined;
10155
+ readonly displayMap?: boolean | undefined;
10156
+ readonly allowGeocoding?: boolean | undefined;
10157
+ readonly addressFormat?: "us" | "uk" | "international" | undefined;
10158
+ readonly colorFormat?: "hex" | "rgb" | "rgba" | "hsl" | undefined;
10159
+ readonly allowAlpha?: boolean | undefined;
10160
+ readonly presetColors?: string[] | undefined;
10161
+ readonly step?: number | undefined;
10162
+ readonly showValue?: boolean | undefined;
10163
+ readonly marks?: Record<string, string> | undefined;
10164
+ readonly barcodeFormat?: "qr" | "ean13" | "ean8" | "code128" | "code39" | "upca" | "upce" | undefined;
10165
+ readonly qrErrorCorrection?: "L" | "M" | "Q" | "H" | undefined;
10166
+ readonly displayValue?: boolean | undefined;
10167
+ readonly allowScanning?: boolean | undefined;
10168
+ readonly currencyConfig?: {
10169
+ precision: number;
10170
+ currencyMode: "fixed" | "dynamic";
10171
+ defaultCurrency: string;
10172
+ } | undefined;
10173
+ readonly vectorConfig?: {
10174
+ dimensions: number;
10175
+ distanceMetric: "cosine" | "euclidean" | "dotProduct" | "manhattan";
10176
+ normalized: boolean;
10177
+ indexed: boolean;
10178
+ indexType?: "flat" | "hnsw" | "ivfflat" | undefined;
10179
+ } | undefined;
10180
+ readonly fileAttachmentConfig?: {
10181
+ virusScan: boolean;
10182
+ virusScanOnUpload: boolean;
10183
+ quarantineOnThreat: boolean;
10184
+ allowMultiple: boolean;
10185
+ allowReplace: boolean;
10186
+ allowDelete: boolean;
10187
+ requireUpload: boolean;
10188
+ extractMetadata: boolean;
10189
+ extractText: boolean;
10190
+ versioningEnabled: boolean;
10191
+ publicRead: boolean;
10192
+ presignedUrlExpiry: number;
10193
+ minSize?: number | undefined;
10194
+ maxSize?: number | undefined;
10195
+ allowedTypes?: string[] | undefined;
10196
+ blockedTypes?: string[] | undefined;
10197
+ allowedMimeTypes?: string[] | undefined;
10198
+ blockedMimeTypes?: string[] | undefined;
10199
+ virusScanProvider?: "custom" | "clamav" | "virustotal" | "metadefender" | undefined;
10200
+ storageProvider?: string | undefined;
10201
+ storageBucket?: string | undefined;
10202
+ storagePrefix?: string | undefined;
10203
+ imageValidation?: {
10204
+ generateThumbnails: boolean;
10205
+ preserveMetadata: boolean;
10206
+ autoRotate: boolean;
10207
+ minWidth?: number | undefined;
10208
+ maxWidth?: number | undefined;
10209
+ minHeight?: number | undefined;
10210
+ maxHeight?: number | undefined;
10211
+ aspectRatio?: string | undefined;
10212
+ thumbnailSizes?: {
10213
+ name: string;
10214
+ width: number;
10215
+ height: number;
10216
+ crop: boolean;
10217
+ }[] | undefined;
10218
+ } | undefined;
10219
+ maxVersions?: number | undefined;
10220
+ } | undefined;
10221
+ readonly maskingRule?: {
10222
+ field: string;
10223
+ strategy: "partial" | "hash" | "redact" | "tokenize" | "randomize" | "nullify" | "substitute";
10224
+ preserveFormat: boolean;
10225
+ preserveLength: boolean;
10226
+ pattern?: string | undefined;
10227
+ roles?: string[] | undefined;
10228
+ exemptRoles?: string[] | undefined;
10229
+ } | undefined;
10230
+ readonly auditTrail?: boolean | undefined;
10231
+ readonly cached?: {
10232
+ enabled: boolean;
10233
+ ttl: number;
10234
+ invalidateOn: string[];
10235
+ } | undefined;
10236
+ readonly dataQuality?: {
10237
+ uniqueness: boolean;
10238
+ completeness: number;
10239
+ accuracy?: {
10240
+ source: string;
10241
+ threshold: number;
10242
+ } | undefined;
10243
+ } | undefined;
10244
+ readonly conditionalRequired?: {
10245
+ dialect: "cel" | "js" | "cron" | "template";
10246
+ source?: string | undefined;
10247
+ ast?: unknown;
10248
+ meta?: {
10249
+ rationale?: string | undefined;
10250
+ generatedBy?: string | undefined;
10251
+ } | undefined;
10252
+ } | undefined;
10253
+ readonly hidden?: boolean | undefined;
10254
+ readonly sortable?: boolean | undefined;
10255
+ readonly inlineHelpText?: string | undefined;
10256
+ readonly trackFeedHistory?: boolean | undefined;
10257
+ readonly caseSensitive?: boolean | undefined;
10258
+ readonly autonumberFormat?: string | undefined;
10259
+ readonly index?: boolean | undefined;
10260
+ readonly type: "select";
10261
+ };
10262
+ /** Decision outcome — allowed, denied (refused), or forced (bypassed via override). */
10263
+ readonly outcome: {
10264
+ readonly readonly?: boolean | undefined;
10265
+ readonly format?: string | undefined;
10266
+ options: {
10267
+ label: string;
10268
+ value: string;
10269
+ color?: string | undefined;
10270
+ default?: boolean | undefined;
10271
+ }[];
10272
+ readonly description?: string | undefined;
10273
+ readonly label?: string | undefined;
10274
+ readonly name?: string | undefined;
10275
+ readonly precision?: number | undefined;
10276
+ readonly required?: boolean | undefined;
10277
+ readonly multiple?: boolean | undefined;
10278
+ readonly dependencies?: string[] | undefined;
10279
+ readonly theme?: string | undefined;
10280
+ readonly externalId?: boolean | undefined;
10281
+ readonly system?: boolean | undefined;
10282
+ readonly min?: number | undefined;
10283
+ readonly max?: number | undefined;
10284
+ readonly group?: string | undefined;
10285
+ readonly encryptionConfig?: {
10286
+ enabled: boolean;
10287
+ algorithm: "aes-256-gcm" | "aes-256-cbc" | "chacha20-poly1305";
10288
+ keyManagement: {
10289
+ provider: "local" | "aws-kms" | "azure-key-vault" | "gcp-kms" | "hashicorp-vault";
10290
+ keyId?: string | undefined;
10291
+ rotationPolicy?: {
10292
+ enabled: boolean;
10293
+ frequencyDays: number;
10294
+ retainOldVersions: number;
10295
+ autoRotate: boolean;
10296
+ } | undefined;
10297
+ };
10298
+ scope: "record" | "field" | "table" | "database";
10299
+ deterministicEncryption: boolean;
10300
+ searchableEncryption: boolean;
10301
+ } | undefined;
10302
+ readonly columnName?: string | undefined;
10303
+ readonly searchable?: boolean | undefined;
10304
+ readonly unique?: boolean | undefined;
10305
+ readonly defaultValue?: unknown;
10306
+ readonly maxLength?: number | undefined;
10307
+ readonly minLength?: number | undefined;
10308
+ readonly scale?: number | undefined;
10309
+ readonly reference?: string | undefined;
10310
+ readonly referenceFilters?: string[] | undefined;
10311
+ readonly writeRequiresMasterRead?: boolean | undefined;
10312
+ readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
10313
+ readonly expression?: {
10314
+ dialect: "cel" | "js" | "cron" | "template";
10315
+ source?: string | undefined;
10316
+ ast?: unknown;
10317
+ meta?: {
10318
+ rationale?: string | undefined;
10319
+ generatedBy?: string | undefined;
10320
+ } | undefined;
10321
+ } | undefined;
10322
+ readonly summaryOperations?: {
10323
+ object: string;
10324
+ field: string;
10325
+ function: "min" | "max" | "count" | "sum" | "avg";
10326
+ } | undefined;
10327
+ readonly language?: string | undefined;
10328
+ readonly lineNumbers?: boolean | undefined;
10329
+ readonly maxRating?: number | undefined;
10330
+ readonly allowHalf?: boolean | undefined;
10331
+ readonly displayMap?: boolean | undefined;
10332
+ readonly allowGeocoding?: boolean | undefined;
10333
+ readonly addressFormat?: "us" | "uk" | "international" | undefined;
10334
+ readonly colorFormat?: "hex" | "rgb" | "rgba" | "hsl" | undefined;
10335
+ readonly allowAlpha?: boolean | undefined;
10336
+ readonly presetColors?: string[] | undefined;
10337
+ readonly step?: number | undefined;
10338
+ readonly showValue?: boolean | undefined;
10339
+ readonly marks?: Record<string, string> | undefined;
10340
+ readonly barcodeFormat?: "qr" | "ean13" | "ean8" | "code128" | "code39" | "upca" | "upce" | undefined;
10341
+ readonly qrErrorCorrection?: "L" | "M" | "Q" | "H" | undefined;
10342
+ readonly displayValue?: boolean | undefined;
10343
+ readonly allowScanning?: boolean | undefined;
10344
+ readonly currencyConfig?: {
10345
+ precision: number;
10346
+ currencyMode: "fixed" | "dynamic";
10347
+ defaultCurrency: string;
10348
+ } | undefined;
10349
+ readonly vectorConfig?: {
10350
+ dimensions: number;
10351
+ distanceMetric: "cosine" | "euclidean" | "dotProduct" | "manhattan";
10352
+ normalized: boolean;
10353
+ indexed: boolean;
10354
+ indexType?: "flat" | "hnsw" | "ivfflat" | undefined;
10355
+ } | undefined;
10356
+ readonly fileAttachmentConfig?: {
10357
+ virusScan: boolean;
10358
+ virusScanOnUpload: boolean;
10359
+ quarantineOnThreat: boolean;
10360
+ allowMultiple: boolean;
10361
+ allowReplace: boolean;
10362
+ allowDelete: boolean;
10363
+ requireUpload: boolean;
10364
+ extractMetadata: boolean;
10365
+ extractText: boolean;
10366
+ versioningEnabled: boolean;
10367
+ publicRead: boolean;
10368
+ presignedUrlExpiry: number;
10369
+ minSize?: number | undefined;
10370
+ maxSize?: number | undefined;
10371
+ allowedTypes?: string[] | undefined;
10372
+ blockedTypes?: string[] | undefined;
10373
+ allowedMimeTypes?: string[] | undefined;
10374
+ blockedMimeTypes?: string[] | undefined;
10375
+ virusScanProvider?: "custom" | "clamav" | "virustotal" | "metadefender" | undefined;
10376
+ storageProvider?: string | undefined;
10377
+ storageBucket?: string | undefined;
10378
+ storagePrefix?: string | undefined;
10379
+ imageValidation?: {
10380
+ generateThumbnails: boolean;
10381
+ preserveMetadata: boolean;
10382
+ autoRotate: boolean;
10383
+ minWidth?: number | undefined;
10384
+ maxWidth?: number | undefined;
10385
+ minHeight?: number | undefined;
10386
+ maxHeight?: number | undefined;
10387
+ aspectRatio?: string | undefined;
10388
+ thumbnailSizes?: {
10389
+ name: string;
10390
+ width: number;
10391
+ height: number;
10392
+ crop: boolean;
10393
+ }[] | undefined;
10394
+ } | undefined;
10395
+ maxVersions?: number | undefined;
10396
+ } | undefined;
10397
+ readonly maskingRule?: {
10398
+ field: string;
10399
+ strategy: "partial" | "hash" | "redact" | "tokenize" | "randomize" | "nullify" | "substitute";
10400
+ preserveFormat: boolean;
10401
+ preserveLength: boolean;
10402
+ pattern?: string | undefined;
10403
+ roles?: string[] | undefined;
10404
+ exemptRoles?: string[] | undefined;
10405
+ } | undefined;
10406
+ readonly auditTrail?: boolean | undefined;
10407
+ readonly cached?: {
10408
+ enabled: boolean;
10409
+ ttl: number;
10410
+ invalidateOn: string[];
10411
+ } | undefined;
10412
+ readonly dataQuality?: {
10413
+ uniqueness: boolean;
10414
+ completeness: number;
10415
+ accuracy?: {
10416
+ source: string;
10417
+ threshold: number;
10418
+ } | undefined;
10419
+ } | undefined;
10420
+ readonly conditionalRequired?: {
10421
+ dialect: "cel" | "js" | "cron" | "template";
10422
+ source?: string | undefined;
10423
+ ast?: unknown;
10424
+ meta?: {
10425
+ rationale?: string | undefined;
10426
+ generatedBy?: string | undefined;
10427
+ } | undefined;
10428
+ } | undefined;
10429
+ readonly hidden?: boolean | undefined;
10430
+ readonly sortable?: boolean | undefined;
10431
+ readonly inlineHelpText?: string | undefined;
10432
+ readonly trackFeedHistory?: boolean | undefined;
10433
+ readonly caseSensitive?: boolean | undefined;
10434
+ readonly autonumberFormat?: string | undefined;
10435
+ readonly index?: boolean | undefined;
10436
+ readonly type: "select";
10437
+ };
10438
+ /**
10439
+ * Machine-readable code for the decision:
10440
+ * - on `allowed`: `'ok'`
10441
+ * - on `denied`: `'not_overridable'` | `'not_creatable'` |
10442
+ * `'item_locked'` | `'invalid_metadata'` | `'destructive_change'` |
10443
+ * `'metadata_conflict'`
10444
+ * - on `forced`: `'lock_override'` (Phase 3)
10445
+ */
10446
+ readonly code: {
10447
+ readonly readonly?: boolean | undefined;
10448
+ readonly format?: string | undefined;
10449
+ readonly options?: {
10450
+ label: string;
10451
+ value: string;
10452
+ color?: string | undefined;
10453
+ default?: boolean | undefined;
10454
+ }[] | undefined;
10455
+ readonly description?: string | undefined;
10456
+ readonly label?: string | undefined;
10457
+ readonly name?: string | undefined;
10458
+ readonly precision?: number | undefined;
10459
+ readonly required?: boolean | undefined;
10460
+ readonly multiple?: boolean | undefined;
10461
+ readonly dependencies?: string[] | undefined;
10462
+ readonly theme?: string | undefined;
10463
+ readonly externalId?: boolean | undefined;
10464
+ readonly system?: boolean | undefined;
10465
+ readonly min?: number | undefined;
10466
+ readonly max?: number | undefined;
10467
+ readonly group?: string | undefined;
10468
+ readonly encryptionConfig?: {
10469
+ enabled: boolean;
10470
+ algorithm: "aes-256-gcm" | "aes-256-cbc" | "chacha20-poly1305";
10471
+ keyManagement: {
10472
+ provider: "local" | "aws-kms" | "azure-key-vault" | "gcp-kms" | "hashicorp-vault";
10473
+ keyId?: string | undefined;
10474
+ rotationPolicy?: {
10475
+ enabled: boolean;
10476
+ frequencyDays: number;
10477
+ retainOldVersions: number;
10478
+ autoRotate: boolean;
10479
+ } | undefined;
10480
+ };
10481
+ scope: "record" | "field" | "table" | "database";
10482
+ deterministicEncryption: boolean;
10483
+ searchableEncryption: boolean;
10484
+ } | undefined;
10485
+ readonly columnName?: string | undefined;
10486
+ readonly searchable?: boolean | undefined;
10487
+ readonly unique?: boolean | undefined;
10488
+ readonly defaultValue?: unknown;
10489
+ readonly maxLength?: number | undefined;
10490
+ readonly minLength?: number | undefined;
10491
+ readonly scale?: number | undefined;
10492
+ readonly reference?: string | undefined;
10493
+ readonly referenceFilters?: string[] | undefined;
10494
+ readonly writeRequiresMasterRead?: boolean | undefined;
10495
+ readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
10496
+ readonly expression?: {
10497
+ dialect: "cel" | "js" | "cron" | "template";
10498
+ source?: string | undefined;
10499
+ ast?: unknown;
10500
+ meta?: {
10501
+ rationale?: string | undefined;
10502
+ generatedBy?: string | undefined;
10503
+ } | undefined;
10504
+ } | undefined;
10505
+ readonly summaryOperations?: {
10506
+ object: string;
10507
+ field: string;
10508
+ function: "min" | "max" | "count" | "sum" | "avg";
10509
+ } | undefined;
10510
+ readonly language?: string | undefined;
10511
+ readonly lineNumbers?: boolean | undefined;
10512
+ readonly maxRating?: number | undefined;
10513
+ readonly allowHalf?: boolean | undefined;
10514
+ readonly displayMap?: boolean | undefined;
10515
+ readonly allowGeocoding?: boolean | undefined;
10516
+ readonly addressFormat?: "us" | "uk" | "international" | undefined;
10517
+ readonly colorFormat?: "hex" | "rgb" | "rgba" | "hsl" | undefined;
10518
+ readonly allowAlpha?: boolean | undefined;
10519
+ readonly presetColors?: string[] | undefined;
10520
+ readonly step?: number | undefined;
10521
+ readonly showValue?: boolean | undefined;
10522
+ readonly marks?: Record<string, string> | undefined;
10523
+ readonly barcodeFormat?: "qr" | "ean13" | "ean8" | "code128" | "code39" | "upca" | "upce" | undefined;
10524
+ readonly qrErrorCorrection?: "L" | "M" | "Q" | "H" | undefined;
10525
+ readonly displayValue?: boolean | undefined;
10526
+ readonly allowScanning?: boolean | undefined;
10527
+ readonly currencyConfig?: {
10528
+ precision: number;
10529
+ currencyMode: "fixed" | "dynamic";
10530
+ defaultCurrency: string;
10531
+ } | undefined;
10532
+ readonly vectorConfig?: {
10533
+ dimensions: number;
10534
+ distanceMetric: "cosine" | "euclidean" | "dotProduct" | "manhattan";
10535
+ normalized: boolean;
10536
+ indexed: boolean;
10537
+ indexType?: "flat" | "hnsw" | "ivfflat" | undefined;
10538
+ } | undefined;
10539
+ readonly fileAttachmentConfig?: {
10540
+ virusScan: boolean;
10541
+ virusScanOnUpload: boolean;
10542
+ quarantineOnThreat: boolean;
10543
+ allowMultiple: boolean;
10544
+ allowReplace: boolean;
10545
+ allowDelete: boolean;
10546
+ requireUpload: boolean;
10547
+ extractMetadata: boolean;
10548
+ extractText: boolean;
10549
+ versioningEnabled: boolean;
10550
+ publicRead: boolean;
10551
+ presignedUrlExpiry: number;
10552
+ minSize?: number | undefined;
10553
+ maxSize?: number | undefined;
10554
+ allowedTypes?: string[] | undefined;
10555
+ blockedTypes?: string[] | undefined;
10556
+ allowedMimeTypes?: string[] | undefined;
10557
+ blockedMimeTypes?: string[] | undefined;
10558
+ virusScanProvider?: "custom" | "clamav" | "virustotal" | "metadefender" | undefined;
10559
+ storageProvider?: string | undefined;
10560
+ storageBucket?: string | undefined;
10561
+ storagePrefix?: string | undefined;
10562
+ imageValidation?: {
10563
+ generateThumbnails: boolean;
10564
+ preserveMetadata: boolean;
10565
+ autoRotate: boolean;
10566
+ minWidth?: number | undefined;
10567
+ maxWidth?: number | undefined;
10568
+ minHeight?: number | undefined;
10569
+ maxHeight?: number | undefined;
10570
+ aspectRatio?: string | undefined;
10571
+ thumbnailSizes?: {
10572
+ name: string;
10573
+ width: number;
10574
+ height: number;
10575
+ crop: boolean;
10576
+ }[] | undefined;
10577
+ } | undefined;
10578
+ maxVersions?: number | undefined;
10579
+ } | undefined;
10580
+ readonly maskingRule?: {
10581
+ field: string;
10582
+ strategy: "partial" | "hash" | "redact" | "tokenize" | "randomize" | "nullify" | "substitute";
10583
+ preserveFormat: boolean;
10584
+ preserveLength: boolean;
10585
+ pattern?: string | undefined;
10586
+ roles?: string[] | undefined;
10587
+ exemptRoles?: string[] | undefined;
10588
+ } | undefined;
10589
+ readonly auditTrail?: boolean | undefined;
10590
+ readonly cached?: {
10591
+ enabled: boolean;
10592
+ ttl: number;
10593
+ invalidateOn: string[];
10594
+ } | undefined;
10595
+ readonly dataQuality?: {
10596
+ uniqueness: boolean;
10597
+ completeness: number;
10598
+ accuracy?: {
10599
+ source: string;
10600
+ threshold: number;
10601
+ } | undefined;
10602
+ } | undefined;
10603
+ readonly conditionalRequired?: {
10604
+ dialect: "cel" | "js" | "cron" | "template";
10605
+ source?: string | undefined;
10606
+ ast?: unknown;
10607
+ meta?: {
10608
+ rationale?: string | undefined;
10609
+ generatedBy?: string | undefined;
10610
+ } | undefined;
10611
+ } | undefined;
10612
+ readonly hidden?: boolean | undefined;
10613
+ readonly sortable?: boolean | undefined;
10614
+ readonly inlineHelpText?: string | undefined;
10615
+ readonly trackFeedHistory?: boolean | undefined;
10616
+ readonly caseSensitive?: boolean | undefined;
10617
+ readonly autonumberFormat?: string | undefined;
10618
+ readonly index?: boolean | undefined;
10619
+ readonly type: "text";
10620
+ };
10621
+ /**
10622
+ * Lock state observed at the time of the decision (`none` if the
10623
+ * item carried no `_lock`). Captured even on `allowed` rows so
10624
+ * later compliance queries can see "what was the lock state when
10625
+ * this write succeeded".
10626
+ */
10627
+ readonly lock_state: {
10628
+ readonly readonly?: boolean | undefined;
10629
+ readonly format?: string | undefined;
10630
+ options: {
10631
+ label: string;
10632
+ value: string;
10633
+ color?: string | undefined;
10634
+ default?: boolean | undefined;
10635
+ }[];
10636
+ readonly description?: string | undefined;
10637
+ readonly label?: string | undefined;
10638
+ readonly name?: string | undefined;
10639
+ readonly precision?: number | undefined;
10640
+ readonly required?: boolean | undefined;
10641
+ readonly multiple?: boolean | undefined;
10642
+ readonly dependencies?: string[] | undefined;
10643
+ readonly theme?: string | undefined;
10644
+ readonly externalId?: boolean | undefined;
10645
+ readonly system?: boolean | undefined;
10646
+ readonly min?: number | undefined;
10647
+ readonly max?: number | undefined;
10648
+ readonly group?: string | undefined;
10649
+ readonly encryptionConfig?: {
10650
+ enabled: boolean;
10651
+ algorithm: "aes-256-gcm" | "aes-256-cbc" | "chacha20-poly1305";
10652
+ keyManagement: {
10653
+ provider: "local" | "aws-kms" | "azure-key-vault" | "gcp-kms" | "hashicorp-vault";
10654
+ keyId?: string | undefined;
10655
+ rotationPolicy?: {
10656
+ enabled: boolean;
10657
+ frequencyDays: number;
10658
+ retainOldVersions: number;
10659
+ autoRotate: boolean;
10660
+ } | undefined;
10661
+ };
10662
+ scope: "record" | "field" | "table" | "database";
10663
+ deterministicEncryption: boolean;
10664
+ searchableEncryption: boolean;
10665
+ } | undefined;
10666
+ readonly columnName?: string | undefined;
10667
+ readonly searchable?: boolean | undefined;
10668
+ readonly unique?: boolean | undefined;
10669
+ readonly defaultValue?: unknown;
10670
+ readonly maxLength?: number | undefined;
10671
+ readonly minLength?: number | undefined;
10672
+ readonly scale?: number | undefined;
10673
+ readonly reference?: string | undefined;
10674
+ readonly referenceFilters?: string[] | undefined;
10675
+ readonly writeRequiresMasterRead?: boolean | undefined;
10676
+ readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
10677
+ readonly expression?: {
10678
+ dialect: "cel" | "js" | "cron" | "template";
10679
+ source?: string | undefined;
10680
+ ast?: unknown;
10681
+ meta?: {
10682
+ rationale?: string | undefined;
10683
+ generatedBy?: string | undefined;
10684
+ } | undefined;
10685
+ } | undefined;
10686
+ readonly summaryOperations?: {
10687
+ object: string;
10688
+ field: string;
10689
+ function: "min" | "max" | "count" | "sum" | "avg";
10690
+ } | undefined;
10691
+ readonly language?: string | undefined;
10692
+ readonly lineNumbers?: boolean | undefined;
10693
+ readonly maxRating?: number | undefined;
10694
+ readonly allowHalf?: boolean | undefined;
10695
+ readonly displayMap?: boolean | undefined;
10696
+ readonly allowGeocoding?: boolean | undefined;
10697
+ readonly addressFormat?: "us" | "uk" | "international" | undefined;
10698
+ readonly colorFormat?: "hex" | "rgb" | "rgba" | "hsl" | undefined;
10699
+ readonly allowAlpha?: boolean | undefined;
10700
+ readonly presetColors?: string[] | undefined;
10701
+ readonly step?: number | undefined;
10702
+ readonly showValue?: boolean | undefined;
10703
+ readonly marks?: Record<string, string> | undefined;
10704
+ readonly barcodeFormat?: "qr" | "ean13" | "ean8" | "code128" | "code39" | "upca" | "upce" | undefined;
10705
+ readonly qrErrorCorrection?: "L" | "M" | "Q" | "H" | undefined;
10706
+ readonly displayValue?: boolean | undefined;
10707
+ readonly allowScanning?: boolean | undefined;
10708
+ readonly currencyConfig?: {
10709
+ precision: number;
10710
+ currencyMode: "fixed" | "dynamic";
10711
+ defaultCurrency: string;
10712
+ } | undefined;
10713
+ readonly vectorConfig?: {
10714
+ dimensions: number;
10715
+ distanceMetric: "cosine" | "euclidean" | "dotProduct" | "manhattan";
10716
+ normalized: boolean;
10717
+ indexed: boolean;
10718
+ indexType?: "flat" | "hnsw" | "ivfflat" | undefined;
10719
+ } | undefined;
10720
+ readonly fileAttachmentConfig?: {
10721
+ virusScan: boolean;
10722
+ virusScanOnUpload: boolean;
10723
+ quarantineOnThreat: boolean;
10724
+ allowMultiple: boolean;
10725
+ allowReplace: boolean;
10726
+ allowDelete: boolean;
10727
+ requireUpload: boolean;
10728
+ extractMetadata: boolean;
10729
+ extractText: boolean;
10730
+ versioningEnabled: boolean;
10731
+ publicRead: boolean;
10732
+ presignedUrlExpiry: number;
10733
+ minSize?: number | undefined;
10734
+ maxSize?: number | undefined;
10735
+ allowedTypes?: string[] | undefined;
10736
+ blockedTypes?: string[] | undefined;
10737
+ allowedMimeTypes?: string[] | undefined;
10738
+ blockedMimeTypes?: string[] | undefined;
10739
+ virusScanProvider?: "custom" | "clamav" | "virustotal" | "metadefender" | undefined;
10740
+ storageProvider?: string | undefined;
10741
+ storageBucket?: string | undefined;
10742
+ storagePrefix?: string | undefined;
10743
+ imageValidation?: {
10744
+ generateThumbnails: boolean;
10745
+ preserveMetadata: boolean;
10746
+ autoRotate: boolean;
10747
+ minWidth?: number | undefined;
10748
+ maxWidth?: number | undefined;
10749
+ minHeight?: number | undefined;
10750
+ maxHeight?: number | undefined;
10751
+ aspectRatio?: string | undefined;
10752
+ thumbnailSizes?: {
10753
+ name: string;
10754
+ width: number;
10755
+ height: number;
10756
+ crop: boolean;
10757
+ }[] | undefined;
10758
+ } | undefined;
10759
+ maxVersions?: number | undefined;
10760
+ } | undefined;
10761
+ readonly maskingRule?: {
10762
+ field: string;
10763
+ strategy: "partial" | "hash" | "redact" | "tokenize" | "randomize" | "nullify" | "substitute";
10764
+ preserveFormat: boolean;
10765
+ preserveLength: boolean;
10766
+ pattern?: string | undefined;
10767
+ roles?: string[] | undefined;
10768
+ exemptRoles?: string[] | undefined;
10769
+ } | undefined;
10770
+ readonly auditTrail?: boolean | undefined;
10771
+ readonly cached?: {
10772
+ enabled: boolean;
10773
+ ttl: number;
10774
+ invalidateOn: string[];
10775
+ } | undefined;
10776
+ readonly dataQuality?: {
10777
+ uniqueness: boolean;
10778
+ completeness: number;
10779
+ accuracy?: {
10780
+ source: string;
10781
+ threshold: number;
10782
+ } | undefined;
10783
+ } | undefined;
10784
+ readonly conditionalRequired?: {
10785
+ dialect: "cel" | "js" | "cron" | "template";
10786
+ source?: string | undefined;
10787
+ ast?: unknown;
10788
+ meta?: {
10789
+ rationale?: string | undefined;
10790
+ generatedBy?: string | undefined;
10791
+ } | undefined;
10792
+ } | undefined;
10793
+ readonly hidden?: boolean | undefined;
10794
+ readonly sortable?: boolean | undefined;
10795
+ readonly inlineHelpText?: string | undefined;
10796
+ readonly trackFeedHistory?: boolean | undefined;
10797
+ readonly caseSensitive?: boolean | undefined;
10798
+ readonly autonumberFormat?: string | undefined;
10799
+ readonly index?: boolean | undefined;
10800
+ readonly type: "select";
10801
+ };
10802
+ /** True when the write succeeded by bypassing a lock (Phase 3). */
10803
+ readonly lock_overridden: {
10804
+ readonly readonly?: boolean | undefined;
10805
+ readonly format?: string | undefined;
10806
+ readonly options?: {
10807
+ label: string;
10808
+ value: string;
10809
+ color?: string | undefined;
10810
+ default?: boolean | undefined;
10811
+ }[] | undefined;
10812
+ readonly description?: string | undefined;
10813
+ readonly label?: string | undefined;
10814
+ readonly name?: string | undefined;
10815
+ readonly precision?: number | undefined;
10816
+ readonly required?: boolean | undefined;
10817
+ readonly multiple?: boolean | undefined;
10818
+ readonly dependencies?: string[] | undefined;
10819
+ readonly theme?: string | undefined;
10820
+ readonly externalId?: boolean | undefined;
10821
+ readonly system?: boolean | undefined;
10822
+ readonly min?: number | undefined;
10823
+ readonly max?: number | undefined;
10824
+ readonly group?: string | undefined;
10825
+ readonly encryptionConfig?: {
10826
+ enabled: boolean;
10827
+ algorithm: "aes-256-gcm" | "aes-256-cbc" | "chacha20-poly1305";
10828
+ keyManagement: {
10829
+ provider: "local" | "aws-kms" | "azure-key-vault" | "gcp-kms" | "hashicorp-vault";
10830
+ keyId?: string | undefined;
10831
+ rotationPolicy?: {
10832
+ enabled: boolean;
10833
+ frequencyDays: number;
10834
+ retainOldVersions: number;
10835
+ autoRotate: boolean;
10836
+ } | undefined;
10837
+ };
10838
+ scope: "record" | "field" | "table" | "database";
10839
+ deterministicEncryption: boolean;
10840
+ searchableEncryption: boolean;
10841
+ } | undefined;
10842
+ readonly columnName?: string | undefined;
10843
+ readonly searchable?: boolean | undefined;
10844
+ readonly unique?: boolean | undefined;
10845
+ readonly defaultValue?: unknown;
10846
+ readonly maxLength?: number | undefined;
10847
+ readonly minLength?: number | undefined;
10848
+ readonly scale?: number | undefined;
10849
+ readonly reference?: string | undefined;
10850
+ readonly referenceFilters?: string[] | undefined;
10851
+ readonly writeRequiresMasterRead?: boolean | undefined;
10852
+ readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
10853
+ readonly expression?: {
10854
+ dialect: "cel" | "js" | "cron" | "template";
10855
+ source?: string | undefined;
10856
+ ast?: unknown;
10857
+ meta?: {
10858
+ rationale?: string | undefined;
10859
+ generatedBy?: string | undefined;
10860
+ } | undefined;
10861
+ } | undefined;
10862
+ readonly summaryOperations?: {
10863
+ object: string;
10864
+ field: string;
10865
+ function: "min" | "max" | "count" | "sum" | "avg";
10866
+ } | undefined;
10867
+ readonly language?: string | undefined;
10868
+ readonly lineNumbers?: boolean | undefined;
10869
+ readonly maxRating?: number | undefined;
10870
+ readonly allowHalf?: boolean | undefined;
10871
+ readonly displayMap?: boolean | undefined;
10872
+ readonly allowGeocoding?: boolean | undefined;
10873
+ readonly addressFormat?: "us" | "uk" | "international" | undefined;
10874
+ readonly colorFormat?: "hex" | "rgb" | "rgba" | "hsl" | undefined;
10875
+ readonly allowAlpha?: boolean | undefined;
10876
+ readonly presetColors?: string[] | undefined;
10877
+ readonly step?: number | undefined;
10878
+ readonly showValue?: boolean | undefined;
10879
+ readonly marks?: Record<string, string> | undefined;
10880
+ readonly barcodeFormat?: "qr" | "ean13" | "ean8" | "code128" | "code39" | "upca" | "upce" | undefined;
10881
+ readonly qrErrorCorrection?: "L" | "M" | "Q" | "H" | undefined;
10882
+ readonly displayValue?: boolean | undefined;
10883
+ readonly allowScanning?: boolean | undefined;
10884
+ readonly currencyConfig?: {
10885
+ precision: number;
10886
+ currencyMode: "fixed" | "dynamic";
10887
+ defaultCurrency: string;
10888
+ } | undefined;
10889
+ readonly vectorConfig?: {
10890
+ dimensions: number;
10891
+ distanceMetric: "cosine" | "euclidean" | "dotProduct" | "manhattan";
10892
+ normalized: boolean;
10893
+ indexed: boolean;
10894
+ indexType?: "flat" | "hnsw" | "ivfflat" | undefined;
10895
+ } | undefined;
10896
+ readonly fileAttachmentConfig?: {
10897
+ virusScan: boolean;
10898
+ virusScanOnUpload: boolean;
10899
+ quarantineOnThreat: boolean;
10900
+ allowMultiple: boolean;
10901
+ allowReplace: boolean;
10902
+ allowDelete: boolean;
10903
+ requireUpload: boolean;
10904
+ extractMetadata: boolean;
10905
+ extractText: boolean;
10906
+ versioningEnabled: boolean;
10907
+ publicRead: boolean;
10908
+ presignedUrlExpiry: number;
10909
+ minSize?: number | undefined;
10910
+ maxSize?: number | undefined;
10911
+ allowedTypes?: string[] | undefined;
10912
+ blockedTypes?: string[] | undefined;
10913
+ allowedMimeTypes?: string[] | undefined;
10914
+ blockedMimeTypes?: string[] | undefined;
10915
+ virusScanProvider?: "custom" | "clamav" | "virustotal" | "metadefender" | undefined;
10916
+ storageProvider?: string | undefined;
10917
+ storageBucket?: string | undefined;
10918
+ storagePrefix?: string | undefined;
10919
+ imageValidation?: {
10920
+ generateThumbnails: boolean;
10921
+ preserveMetadata: boolean;
10922
+ autoRotate: boolean;
10923
+ minWidth?: number | undefined;
10924
+ maxWidth?: number | undefined;
10925
+ minHeight?: number | undefined;
10926
+ maxHeight?: number | undefined;
10927
+ aspectRatio?: string | undefined;
10928
+ thumbnailSizes?: {
10929
+ name: string;
10930
+ width: number;
10931
+ height: number;
10932
+ crop: boolean;
10933
+ }[] | undefined;
10934
+ } | undefined;
10935
+ maxVersions?: number | undefined;
10936
+ } | undefined;
10937
+ readonly maskingRule?: {
10938
+ field: string;
10939
+ strategy: "partial" | "hash" | "redact" | "tokenize" | "randomize" | "nullify" | "substitute";
10940
+ preserveFormat: boolean;
10941
+ preserveLength: boolean;
10942
+ pattern?: string | undefined;
10943
+ roles?: string[] | undefined;
10944
+ exemptRoles?: string[] | undefined;
10945
+ } | undefined;
10946
+ readonly auditTrail?: boolean | undefined;
10947
+ readonly cached?: {
10948
+ enabled: boolean;
10949
+ ttl: number;
10950
+ invalidateOn: string[];
10951
+ } | undefined;
10952
+ readonly dataQuality?: {
10953
+ uniqueness: boolean;
10954
+ completeness: number;
10955
+ accuracy?: {
10956
+ source: string;
10957
+ threshold: number;
10958
+ } | undefined;
10959
+ } | undefined;
10960
+ readonly conditionalRequired?: {
10961
+ dialect: "cel" | "js" | "cron" | "template";
10962
+ source?: string | undefined;
10963
+ ast?: unknown;
10964
+ meta?: {
10965
+ rationale?: string | undefined;
10966
+ generatedBy?: string | undefined;
10967
+ } | undefined;
10968
+ } | undefined;
10969
+ readonly hidden?: boolean | undefined;
10970
+ readonly sortable?: boolean | undefined;
10971
+ readonly inlineHelpText?: string | undefined;
10972
+ readonly trackFeedHistory?: boolean | undefined;
10973
+ readonly caseSensitive?: boolean | undefined;
10974
+ readonly autonumberFormat?: string | undefined;
10975
+ readonly index?: boolean | undefined;
10976
+ readonly type: "boolean";
10977
+ };
10978
+ /** Optional request correlation id for tracing. */
10979
+ readonly request_id: {
10980
+ readonly readonly?: boolean | undefined;
10981
+ readonly format?: string | undefined;
10982
+ readonly options?: {
10983
+ label: string;
10984
+ value: string;
10985
+ color?: string | undefined;
10986
+ default?: boolean | undefined;
10987
+ }[] | undefined;
10988
+ readonly description?: string | undefined;
10989
+ readonly label?: string | undefined;
10990
+ readonly name?: string | undefined;
10991
+ readonly precision?: number | undefined;
10992
+ readonly required?: boolean | undefined;
10993
+ readonly multiple?: boolean | undefined;
10994
+ readonly dependencies?: string[] | undefined;
10995
+ readonly theme?: string | undefined;
10996
+ readonly externalId?: boolean | undefined;
10997
+ readonly system?: boolean | undefined;
10998
+ readonly min?: number | undefined;
10999
+ readonly max?: number | undefined;
11000
+ readonly group?: string | undefined;
11001
+ readonly encryptionConfig?: {
11002
+ enabled: boolean;
11003
+ algorithm: "aes-256-gcm" | "aes-256-cbc" | "chacha20-poly1305";
11004
+ keyManagement: {
11005
+ provider: "local" | "aws-kms" | "azure-key-vault" | "gcp-kms" | "hashicorp-vault";
11006
+ keyId?: string | undefined;
11007
+ rotationPolicy?: {
11008
+ enabled: boolean;
11009
+ frequencyDays: number;
11010
+ retainOldVersions: number;
11011
+ autoRotate: boolean;
11012
+ } | undefined;
11013
+ };
11014
+ scope: "record" | "field" | "table" | "database";
11015
+ deterministicEncryption: boolean;
11016
+ searchableEncryption: boolean;
11017
+ } | undefined;
11018
+ readonly columnName?: string | undefined;
11019
+ readonly searchable?: boolean | undefined;
11020
+ readonly unique?: boolean | undefined;
11021
+ readonly defaultValue?: unknown;
11022
+ readonly maxLength?: number | undefined;
11023
+ readonly minLength?: number | undefined;
11024
+ readonly scale?: number | undefined;
11025
+ readonly reference?: string | undefined;
11026
+ readonly referenceFilters?: string[] | undefined;
11027
+ readonly writeRequiresMasterRead?: boolean | undefined;
11028
+ readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
11029
+ readonly expression?: {
11030
+ dialect: "cel" | "js" | "cron" | "template";
11031
+ source?: string | undefined;
11032
+ ast?: unknown;
11033
+ meta?: {
11034
+ rationale?: string | undefined;
11035
+ generatedBy?: string | undefined;
11036
+ } | undefined;
11037
+ } | undefined;
11038
+ readonly summaryOperations?: {
11039
+ object: string;
11040
+ field: string;
11041
+ function: "min" | "max" | "count" | "sum" | "avg";
11042
+ } | undefined;
11043
+ readonly language?: string | undefined;
11044
+ readonly lineNumbers?: boolean | undefined;
11045
+ readonly maxRating?: number | undefined;
11046
+ readonly allowHalf?: boolean | undefined;
11047
+ readonly displayMap?: boolean | undefined;
11048
+ readonly allowGeocoding?: boolean | undefined;
11049
+ readonly addressFormat?: "us" | "uk" | "international" | undefined;
11050
+ readonly colorFormat?: "hex" | "rgb" | "rgba" | "hsl" | undefined;
11051
+ readonly allowAlpha?: boolean | undefined;
11052
+ readonly presetColors?: string[] | undefined;
11053
+ readonly step?: number | undefined;
11054
+ readonly showValue?: boolean | undefined;
11055
+ readonly marks?: Record<string, string> | undefined;
11056
+ readonly barcodeFormat?: "qr" | "ean13" | "ean8" | "code128" | "code39" | "upca" | "upce" | undefined;
11057
+ readonly qrErrorCorrection?: "L" | "M" | "Q" | "H" | undefined;
11058
+ readonly displayValue?: boolean | undefined;
11059
+ readonly allowScanning?: boolean | undefined;
11060
+ readonly currencyConfig?: {
11061
+ precision: number;
11062
+ currencyMode: "fixed" | "dynamic";
11063
+ defaultCurrency: string;
11064
+ } | undefined;
11065
+ readonly vectorConfig?: {
11066
+ dimensions: number;
11067
+ distanceMetric: "cosine" | "euclidean" | "dotProduct" | "manhattan";
11068
+ normalized: boolean;
11069
+ indexed: boolean;
11070
+ indexType?: "flat" | "hnsw" | "ivfflat" | undefined;
11071
+ } | undefined;
11072
+ readonly fileAttachmentConfig?: {
11073
+ virusScan: boolean;
11074
+ virusScanOnUpload: boolean;
11075
+ quarantineOnThreat: boolean;
11076
+ allowMultiple: boolean;
11077
+ allowReplace: boolean;
11078
+ allowDelete: boolean;
11079
+ requireUpload: boolean;
11080
+ extractMetadata: boolean;
11081
+ extractText: boolean;
11082
+ versioningEnabled: boolean;
11083
+ publicRead: boolean;
11084
+ presignedUrlExpiry: number;
11085
+ minSize?: number | undefined;
11086
+ maxSize?: number | undefined;
11087
+ allowedTypes?: string[] | undefined;
11088
+ blockedTypes?: string[] | undefined;
11089
+ allowedMimeTypes?: string[] | undefined;
11090
+ blockedMimeTypes?: string[] | undefined;
11091
+ virusScanProvider?: "custom" | "clamav" | "virustotal" | "metadefender" | undefined;
11092
+ storageProvider?: string | undefined;
11093
+ storageBucket?: string | undefined;
11094
+ storagePrefix?: string | undefined;
11095
+ imageValidation?: {
11096
+ generateThumbnails: boolean;
11097
+ preserveMetadata: boolean;
11098
+ autoRotate: boolean;
11099
+ minWidth?: number | undefined;
11100
+ maxWidth?: number | undefined;
11101
+ minHeight?: number | undefined;
11102
+ maxHeight?: number | undefined;
11103
+ aspectRatio?: string | undefined;
11104
+ thumbnailSizes?: {
11105
+ name: string;
11106
+ width: number;
11107
+ height: number;
11108
+ crop: boolean;
11109
+ }[] | undefined;
11110
+ } | undefined;
11111
+ maxVersions?: number | undefined;
11112
+ } | undefined;
11113
+ readonly maskingRule?: {
11114
+ field: string;
11115
+ strategy: "partial" | "hash" | "redact" | "tokenize" | "randomize" | "nullify" | "substitute";
11116
+ preserveFormat: boolean;
11117
+ preserveLength: boolean;
11118
+ pattern?: string | undefined;
11119
+ roles?: string[] | undefined;
11120
+ exemptRoles?: string[] | undefined;
11121
+ } | undefined;
11122
+ readonly auditTrail?: boolean | undefined;
11123
+ readonly cached?: {
11124
+ enabled: boolean;
11125
+ ttl: number;
11126
+ invalidateOn: string[];
11127
+ } | undefined;
11128
+ readonly dataQuality?: {
11129
+ uniqueness: boolean;
11130
+ completeness: number;
11131
+ accuracy?: {
11132
+ source: string;
11133
+ threshold: number;
11134
+ } | undefined;
11135
+ } | undefined;
11136
+ readonly conditionalRequired?: {
11137
+ dialect: "cel" | "js" | "cron" | "template";
11138
+ source?: string | undefined;
11139
+ ast?: unknown;
11140
+ meta?: {
11141
+ rationale?: string | undefined;
11142
+ generatedBy?: string | undefined;
11143
+ } | undefined;
11144
+ } | undefined;
11145
+ readonly hidden?: boolean | undefined;
11146
+ readonly sortable?: boolean | undefined;
11147
+ readonly inlineHelpText?: string | undefined;
11148
+ readonly trackFeedHistory?: boolean | undefined;
11149
+ readonly caseSensitive?: boolean | undefined;
11150
+ readonly autonumberFormat?: string | undefined;
11151
+ readonly index?: boolean | undefined;
11152
+ readonly type: "text";
11153
+ };
11154
+ /** Optional free-form context (e.g. brief diff summary). */
11155
+ readonly note: {
11156
+ readonly readonly?: boolean | undefined;
11157
+ readonly format?: string | undefined;
11158
+ readonly options?: {
11159
+ label: string;
11160
+ value: string;
11161
+ color?: string | undefined;
11162
+ default?: boolean | undefined;
11163
+ }[] | undefined;
11164
+ readonly description?: string | undefined;
11165
+ readonly label?: string | undefined;
11166
+ readonly name?: string | undefined;
11167
+ readonly precision?: number | undefined;
11168
+ readonly required?: boolean | undefined;
11169
+ readonly multiple?: boolean | undefined;
11170
+ readonly dependencies?: string[] | undefined;
11171
+ readonly theme?: string | undefined;
11172
+ readonly externalId?: boolean | undefined;
11173
+ readonly system?: boolean | undefined;
11174
+ readonly min?: number | undefined;
11175
+ readonly max?: number | undefined;
11176
+ readonly group?: string | undefined;
11177
+ readonly encryptionConfig?: {
11178
+ enabled: boolean;
11179
+ algorithm: "aes-256-gcm" | "aes-256-cbc" | "chacha20-poly1305";
11180
+ keyManagement: {
11181
+ provider: "local" | "aws-kms" | "azure-key-vault" | "gcp-kms" | "hashicorp-vault";
11182
+ keyId?: string | undefined;
11183
+ rotationPolicy?: {
11184
+ enabled: boolean;
11185
+ frequencyDays: number;
11186
+ retainOldVersions: number;
11187
+ autoRotate: boolean;
11188
+ } | undefined;
11189
+ };
11190
+ scope: "record" | "field" | "table" | "database";
11191
+ deterministicEncryption: boolean;
11192
+ searchableEncryption: boolean;
11193
+ } | undefined;
11194
+ readonly columnName?: string | undefined;
11195
+ readonly searchable?: boolean | undefined;
11196
+ readonly unique?: boolean | undefined;
11197
+ readonly defaultValue?: unknown;
11198
+ readonly maxLength?: number | undefined;
11199
+ readonly minLength?: number | undefined;
11200
+ readonly scale?: number | undefined;
11201
+ readonly reference?: string | undefined;
11202
+ readonly referenceFilters?: string[] | undefined;
11203
+ readonly writeRequiresMasterRead?: boolean | undefined;
11204
+ readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
11205
+ readonly expression?: {
11206
+ dialect: "cel" | "js" | "cron" | "template";
11207
+ source?: string | undefined;
11208
+ ast?: unknown;
11209
+ meta?: {
11210
+ rationale?: string | undefined;
11211
+ generatedBy?: string | undefined;
11212
+ } | undefined;
11213
+ } | undefined;
11214
+ readonly summaryOperations?: {
11215
+ object: string;
11216
+ field: string;
11217
+ function: "min" | "max" | "count" | "sum" | "avg";
11218
+ } | undefined;
11219
+ readonly language?: string | undefined;
11220
+ readonly lineNumbers?: boolean | undefined;
11221
+ readonly maxRating?: number | undefined;
11222
+ readonly allowHalf?: boolean | undefined;
11223
+ readonly displayMap?: boolean | undefined;
11224
+ readonly allowGeocoding?: boolean | undefined;
11225
+ readonly addressFormat?: "us" | "uk" | "international" | undefined;
11226
+ readonly colorFormat?: "hex" | "rgb" | "rgba" | "hsl" | undefined;
11227
+ readonly allowAlpha?: boolean | undefined;
11228
+ readonly presetColors?: string[] | undefined;
11229
+ readonly step?: number | undefined;
11230
+ readonly showValue?: boolean | undefined;
11231
+ readonly marks?: Record<string, string> | undefined;
11232
+ readonly barcodeFormat?: "qr" | "ean13" | "ean8" | "code128" | "code39" | "upca" | "upce" | undefined;
11233
+ readonly qrErrorCorrection?: "L" | "M" | "Q" | "H" | undefined;
11234
+ readonly displayValue?: boolean | undefined;
11235
+ readonly allowScanning?: boolean | undefined;
11236
+ readonly currencyConfig?: {
11237
+ precision: number;
11238
+ currencyMode: "fixed" | "dynamic";
11239
+ defaultCurrency: string;
11240
+ } | undefined;
11241
+ readonly vectorConfig?: {
11242
+ dimensions: number;
11243
+ distanceMetric: "cosine" | "euclidean" | "dotProduct" | "manhattan";
11244
+ normalized: boolean;
11245
+ indexed: boolean;
11246
+ indexType?: "flat" | "hnsw" | "ivfflat" | undefined;
11247
+ } | undefined;
11248
+ readonly fileAttachmentConfig?: {
11249
+ virusScan: boolean;
11250
+ virusScanOnUpload: boolean;
11251
+ quarantineOnThreat: boolean;
11252
+ allowMultiple: boolean;
11253
+ allowReplace: boolean;
11254
+ allowDelete: boolean;
11255
+ requireUpload: boolean;
11256
+ extractMetadata: boolean;
11257
+ extractText: boolean;
11258
+ versioningEnabled: boolean;
11259
+ publicRead: boolean;
11260
+ presignedUrlExpiry: number;
11261
+ minSize?: number | undefined;
11262
+ maxSize?: number | undefined;
11263
+ allowedTypes?: string[] | undefined;
11264
+ blockedTypes?: string[] | undefined;
11265
+ allowedMimeTypes?: string[] | undefined;
11266
+ blockedMimeTypes?: string[] | undefined;
11267
+ virusScanProvider?: "custom" | "clamav" | "virustotal" | "metadefender" | undefined;
11268
+ storageProvider?: string | undefined;
11269
+ storageBucket?: string | undefined;
11270
+ storagePrefix?: string | undefined;
11271
+ imageValidation?: {
11272
+ generateThumbnails: boolean;
11273
+ preserveMetadata: boolean;
11274
+ autoRotate: boolean;
11275
+ minWidth?: number | undefined;
11276
+ maxWidth?: number | undefined;
11277
+ minHeight?: number | undefined;
11278
+ maxHeight?: number | undefined;
11279
+ aspectRatio?: string | undefined;
11280
+ thumbnailSizes?: {
11281
+ name: string;
11282
+ width: number;
11283
+ height: number;
11284
+ crop: boolean;
11285
+ }[] | undefined;
11286
+ } | undefined;
11287
+ maxVersions?: number | undefined;
11288
+ } | undefined;
11289
+ readonly maskingRule?: {
11290
+ field: string;
11291
+ strategy: "partial" | "hash" | "redact" | "tokenize" | "randomize" | "nullify" | "substitute";
11292
+ preserveFormat: boolean;
11293
+ preserveLength: boolean;
11294
+ pattern?: string | undefined;
11295
+ roles?: string[] | undefined;
11296
+ exemptRoles?: string[] | undefined;
11297
+ } | undefined;
11298
+ readonly auditTrail?: boolean | undefined;
11299
+ readonly cached?: {
11300
+ enabled: boolean;
11301
+ ttl: number;
11302
+ invalidateOn: string[];
11303
+ } | undefined;
11304
+ readonly dataQuality?: {
11305
+ uniqueness: boolean;
11306
+ completeness: number;
11307
+ accuracy?: {
11308
+ source: string;
11309
+ threshold: number;
11310
+ } | undefined;
11311
+ } | undefined;
11312
+ readonly conditionalRequired?: {
11313
+ dialect: "cel" | "js" | "cron" | "template";
11314
+ source?: string | undefined;
11315
+ ast?: unknown;
11316
+ meta?: {
11317
+ rationale?: string | undefined;
11318
+ generatedBy?: string | undefined;
11319
+ } | undefined;
11320
+ } | undefined;
11321
+ readonly hidden?: boolean | undefined;
11322
+ readonly sortable?: boolean | undefined;
11323
+ readonly inlineHelpText?: string | undefined;
11324
+ readonly trackFeedHistory?: boolean | undefined;
11325
+ readonly caseSensitive?: boolean | undefined;
11326
+ readonly autonumberFormat?: string | undefined;
11327
+ readonly index?: boolean | undefined;
11328
+ readonly type: "textarea";
11329
+ };
11330
+ };
11331
+ readonly indexes: [{
11332
+ readonly fields: ["organization_id", "occurred_at"];
11333
+ }, {
11334
+ readonly fields: ["type", "name", "occurred_at"];
11335
+ }, {
11336
+ readonly fields: ["actor", "occurred_at"];
11337
+ }, {
11338
+ readonly fields: ["outcome"];
11339
+ }];
11340
+ readonly enable: {
11341
+ readonly trackHistory: false;
11342
+ readonly searchable: false;
11343
+ readonly apiEnabled: true;
11344
+ readonly apiMethods: ["get", "list"];
11345
+ readonly trash: false;
11346
+ };
11347
+ }, "fields">;
11348
+
11349
+ export { SysMetadataObject as SysMetadata, SysMetadataAuditObject, SysMetadataHistoryObject, SysMetadataObject };