@timebyping/configuration-service-sdk 7.72.0 → 7.73.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/src/index.ts CHANGED
@@ -214,12 +214,6 @@ export interface TimeZoneEntity {
214
214
  }
215
215
  export const TimeZoneEntitySchema = z.object({ IANA: z.string() });
216
216
 
217
- export interface CustomerEncryptionKey {
218
- enabled: boolean;
219
- type: "aws" | "azure" | "none";
220
- }
221
- export const CustomerEncryptionKeySchema = z.object({ enabled: z.boolean(), type: z.enum(['aws', 'azure', 'none']) });
222
-
223
217
  export interface EnabledWebappTimekeepingFeatures {
224
218
  phaseCodes?: (boolean | null);
225
219
  taskCodes?: (boolean | null);
@@ -287,6 +281,35 @@ export interface TimeVelocityConfig {
287
281
  }
288
282
  export const TimeVelocityConfigSchema = z.object({ minimumStartDate: z.union([LuxonDateSchema, z.null()]).optional() });
289
283
 
284
+ export interface CustomerEncryptionKey {
285
+ enabled: boolean;
286
+ type: "aws" | "azure" | "none";
287
+ }
288
+ export const CustomerEncryptionKeySchema = z.object({ enabled: z.boolean(), type: z.enum(['aws', 'azure', 'none']) });
289
+
290
+ export interface AwsCustomerEncryptionKey {
291
+ enabled: boolean;
292
+ type: "aws" | "azure" | "none";
293
+ accountId: string;
294
+ region: string;
295
+ kmsKeyArn: string;
296
+ crossAccountRoleArn: string;
297
+ }
298
+ export const AwsCustomerEncryptionKeySchema = z.object({ enabled: z.boolean(), type: z.enum(['aws', 'azure', 'none']), accountId: z.string(), region: z.string(), kmsKeyArn: z.string(), crossAccountRoleArn: z.string() });
299
+
300
+ export interface AzureCustomerEncryptionKey {
301
+ enabled: boolean;
302
+ type: "aws" | "azure" | "none";
303
+ tenantId: string;
304
+ subscriptionId: string;
305
+ keyVaultEndpoint: string;
306
+ keyName: string;
307
+ keyVersion: string;
308
+ clientId: string;
309
+ clientSecret?: (string | null);
310
+ }
311
+ export const AzureCustomerEncryptionKeySchema = z.object({ enabled: z.boolean(), type: z.enum(['aws', 'azure', 'none']), tenantId: z.string(), subscriptionId: z.string(), keyVaultEndpoint: z.string(), keyName: z.string(), keyVersion: z.string(), clientId: z.string(), clientSecret: z.union([z.string(), z.null()]).optional() });
312
+
290
313
  export interface AgentWebsiteEntryInput {
291
314
  applicationName: string;
292
315
  displayName?: string;
@@ -581,7 +604,7 @@ export interface CustomerConfigCreateDto {
581
604
  agentOutlookCaptureAdditionalMetaData?: (boolean | null);
582
605
  billingSystem?: (string | null);
583
606
  code?: (string | null);
584
- customerEncryptionKey?: (CustomerEncryptionKey | null);
607
+ customerEncryptionKey?: ((AwsCustomerEncryptionKey | AzureCustomerEncryptionKey | CustomerEncryptionKey) | null);
585
608
  defaultBillingIncrementSeconds?: (number | null);
586
609
  deletedAt?: (LuxonDateTimeSchemaOutput | null);
587
610
  egressExportIntervalSeconds?: (number | null);
@@ -663,7 +686,7 @@ export interface CustomerConfigCreateDto {
663
686
  disableMobileApp?: (boolean | null);
664
687
  onboardingResource?: (OnboardingResource | null);
665
688
  }
666
- export const CustomerConfigCreateDtoSchema = z.object({ agentAccessibilityCheckDurationInMinutes: z.union([z.number(), z.null()]).optional(), agentEntryMinimumDuration: z.union([z.number(), z.null()]).optional(), agentExcludedWebsiteEntries: z.array(AgentWebsiteEntrySchema).optional(), agentIdleTime: z.union([z.number(), z.null()]).optional(), agentLaunchDarklyPollingIntervalDuration: z.union([z.number(), z.null()]).optional(), agentLoggingEndpoint: z.union([z.string(), z.null()]).optional(), agentLoggingSecureEndpoint: z.union([z.string(), z.null()]).optional(), agentLoggingToken: z.union([z.string(), z.null()]).optional(), agentMacApplicationEntries: z.array(AgentApplicationEntrySchema).optional(), agentMetricsEndpoint: z.union([z.string(), z.null()]).optional(), agentNonActivityServiceThresholdInSeconds: z.union([z.number(), z.null()]).optional(), agentSqlDbFlushTime: z.union([z.number(), z.null()]).optional(), agentTracingEndpoint: z.union([z.string(), z.null()]).optional(), agentWebsiteEntries: z.array(AgentWebsiteEntrySchema).optional(), agentWindowsApplicationEntries: z.array(AgentApplicationEntrySchema).optional(), agentMinimumWindowsClientVersionSupported: z.union([z.string(), z.null()]).optional(), agentMinimumWindowsClientVersionSupportedMessage: z.union([z.string(), z.null()]).optional(), agentMinimumMacClientVersionSupported: z.union([z.string(), z.null()]).optional(), agentMinimumMacClientVersionSupportedMessage: z.union([z.string(), z.null()]).optional(), agentDelayAfterOutlookStartSeconds: z.union([z.number(), z.null()]).optional(), agentOutlookDelayAfterLaurelStartSeconds: z.union([z.number(), z.null()]).optional(), agentOutlookCaptureBody: z.union([z.boolean(), z.null()]).optional(), agentOutlookCaptureAdditionalMetaData: z.union([z.boolean(), z.null()]).optional(), billingSystem: z.union([z.string(), z.null()]).optional(), code: z.union([z.string(), z.null()]).optional(), customerEncryptionKey: z.union([CustomerEncryptionKeySchema, z.null()]).optional(), defaultBillingIncrementSeconds: z.union([z.number(), z.null()]).optional(), deletedAt: z.union([LuxonDateTimeSchema, z.null()]).optional(), egressExportIntervalSeconds: z.union([z.number(), z.null()]).optional(), egressFFFields: z.union([z.string(), z.null()]).optional(), egressFFHeaders: z.union([z.string(), z.null()]).optional(), enabledWebappTimekeepingFeatures: z.union([EnabledWebappTimekeepingFeaturesSchema, z.null()]).optional(), dataRetention: z.union([DataRetentionConfigurationSchema, z.null()]).optional(), privacy: z.union([CustomerPrivacyConfigurationSchema, z.null()]).optional(), enabledWebappAdministrativeFeatures: z.union([EnabledWebappAdministrativeFeaturesSchema, z.null()]).optional(), webexTracking: z.union([WebexTrackingSchema, z.null()]).optional(), webexContacts: z.union([WebexContactsSchema, z.null()]).optional(), ringCentralTracking: z.union([RingCentralTrackingSchema, z.null()]).optional(), enablePostReleaseEditing: z.union([z.boolean(), z.null()]).optional(), narrativeGuidelinesMode: z.union([z.enum(['customer_only', 'inferred_only', 'customer_then_inferred', 'disabled']), z.null()]).optional(), summaryCharacterLimitCount: z.union([z.number(), z.null()]).optional(), enableLaurelConnect: z.union([z.boolean(), z.null()]).optional(), enableTracking: z.union([z.boolean(), z.null()]).optional(), enableTrackingMicrosoftTeams: z.union([z.boolean(), z.null()]).optional(), enableTrackingGoogle: z.union([z.boolean(), z.null()]).optional(), enableTrackingZoom: z.union([z.boolean(), z.null()]).optional(), enableCloudAssistantCdr: z.union([z.boolean(), z.null()]).optional(), feedbackUrl: z.union([z.string(), z.null()]).optional(), fiscalYearStartDate: z.union([LuxonDateTimeSchema, z.null()]).optional(), fiscalQ2StartDate: z.union([LuxonDateSchema, z.null()]).optional(), fiscalQ3StartDate: z.union([LuxonDateSchema, z.null()]).optional(), fiscalQ4StartDate: z.union([LuxonDateSchema, z.null()]).optional(), i18Language: z.union([z.string(), z.null()]).optional(), launchDarklyCustomerKey: z.union([z.string(), z.null()]).optional(), launchDarklyEnvironmentKey: z.union([z.string(), z.null()]).optional(), launchDarklyRelay: z.union([z.string(), z.null()]).optional(), laurelConnectType: z.union([z.enum(['ADERANT', 'CSV']), z.null()]).optional(), laurelConnectCsvBucketArn: z.union([z.string(), z.null()]).optional(), laurelConnectSnsSubscriptionArn: z.union([z.string(), z.null()]).optional(), logLevel: z.union([z.enum(['DEBUG', 'INFO', 'ERROR', 'WARN']), z.null()]).optional(), name: z.union([z.string(), z.null()]).optional(), salesforceId: z.union([z.string(), z.null()]).optional(), supportUrl: z.union([z.string(), z.null()]).optional(), laurelUrl: z.union([z.string(), z.null()]).optional(), timeServiceUrl: z.union([z.string(), z.null()]).optional(), trackingMicrosoftGraphApiAppId: z.union([z.string(), z.null()]).optional(), trackingMicrosoftGraphApiTenantId: z.union([z.string(), z.null()]).optional(), trackingMicrosoftTeamsGraphApiSecretId: z.union([z.string().min(1), z.null()]).optional(), trackingMicrosoftTeamsGraphApiSecret: z.union([z.string().min(1), z.null()]).optional(), trackingMicrosoftTeamsGraphApiSecretExpiration: z.union([LuxonDateTimeSchema, z.null()]).optional(), trackingMicrosoftTeamsGraphApiSubscriptionSecret: z.union([z.string(), z.null()]).optional(), trackingGoogleProjectId: z.union([z.string(), z.null()]).optional(), trackingGoogleServiceAccountEmail: z.union([z.string(), z.null()]).optional(), trackingGoogleServiceAccountPrivateKey: z.union([z.string().min(1), z.null()]).optional(), trackingZoomApiAccountId: z.union([z.string(), z.null()]).optional(), trackingZoomApiAppSecret: z.union([z.string().min(1), z.null()]).optional(), intappTermsApiKey: z.union([z.string(), z.null()]).optional(), intappTermsApiSecret: z.union([z.string().min(1), z.null()]).optional(), intappTermsRestrictedWordEnforcementLevel: z.union([z.enum(['block', 'acknowledge', 'warn', 'off']), z.null()]).optional(), trackingZoomApiClientId: z.union([z.string(), z.null()]).optional(), trackingZoomApiEventSecretToken: z.union([z.string().min(1), z.null()]).optional(), trackingZoomApiVariant: z.union([z.enum(['Zoom', 'ZoomGov']), z.null()]).optional(), enableOutlookFolderSearch: z.union([z.boolean(), z.null()]).optional(), outlookServerType: z.union([z.enum(['O365', 'OnPremise']), z.null()]).optional(), outlookServerUrl: z.union([z.string(), z.null()]).optional(), outlookFolderSearchAdminUsername: z.union([z.string(), z.null()]).optional(), outlookFolderSearchAdminPassword: z.union([z.string().min(1), z.null()]).optional(), outlookFolderSearchAdminDomain: z.union([z.string(), z.null()]).optional(), outlookFolderSearchAzureAppSecret: z.union([z.string().min(1), z.null()]).optional(), outlookFolderSearchAzureAppSecretExpiration: z.union([LuxonDateTimeSchema, z.null()]).optional(), outlookFolderSearchAzureAppClientId: z.union([z.string(), z.null()]).optional(), outlookFolderSearchAzureTenantId: z.union([z.string(), z.null()]).optional(), microsoftApiType: z.union([z.enum(['Ews', 'Graph']), z.null()]).optional(), laurelConnectSftpUserRoleName: z.union([z.string(), z.null()]).optional(), laurelConnectSftpUserSshPrivateKey: z.union([z.string().min(1), z.null()]).optional(), webappDisplayClientCallSignForInitiatives: z.union([z.boolean(), z.null()]).optional(), versionUserId: z.union([ObjectIdSchema, z.null()]).optional(), defaultDateTimeLocale: z.union([z.string(), z.null()]).optional(), switchInitiativeDisplayLabel: z.union([z.boolean(), z.null()]).optional(), delegateMapping: z.union([DelegateMappingConfigurationSchema, z.null()]).optional(), timesheetInitiativeCategorizationScoreThreshold: z.union([z.number(), z.null()]).optional(), userInitiativesEnabled: z.union([z.boolean(), z.null()]).optional(), allowUserVersionOverride: z.union([z.boolean(), z.null()]).optional(), autoAddUsers: z.union([z.boolean(), z.null()]).optional(), disableMobileApp: z.union([z.boolean(), z.null()]).optional(), onboardingResource: z.union([OnboardingResourceSchema, z.null()]).optional() });
689
+ export const CustomerConfigCreateDtoSchema = z.object({ agentAccessibilityCheckDurationInMinutes: z.union([z.number(), z.null()]).optional(), agentEntryMinimumDuration: z.union([z.number(), z.null()]).optional(), agentExcludedWebsiteEntries: z.array(AgentWebsiteEntrySchema).optional(), agentIdleTime: z.union([z.number(), z.null()]).optional(), agentLaunchDarklyPollingIntervalDuration: z.union([z.number(), z.null()]).optional(), agentLoggingEndpoint: z.union([z.string(), z.null()]).optional(), agentLoggingSecureEndpoint: z.union([z.string(), z.null()]).optional(), agentLoggingToken: z.union([z.string(), z.null()]).optional(), agentMacApplicationEntries: z.array(AgentApplicationEntrySchema).optional(), agentMetricsEndpoint: z.union([z.string(), z.null()]).optional(), agentNonActivityServiceThresholdInSeconds: z.union([z.number(), z.null()]).optional(), agentSqlDbFlushTime: z.union([z.number(), z.null()]).optional(), agentTracingEndpoint: z.union([z.string(), z.null()]).optional(), agentWebsiteEntries: z.array(AgentWebsiteEntrySchema).optional(), agentWindowsApplicationEntries: z.array(AgentApplicationEntrySchema).optional(), agentMinimumWindowsClientVersionSupported: z.union([z.string(), z.null()]).optional(), agentMinimumWindowsClientVersionSupportedMessage: z.union([z.string(), z.null()]).optional(), agentMinimumMacClientVersionSupported: z.union([z.string(), z.null()]).optional(), agentMinimumMacClientVersionSupportedMessage: z.union([z.string(), z.null()]).optional(), agentDelayAfterOutlookStartSeconds: z.union([z.number(), z.null()]).optional(), agentOutlookDelayAfterLaurelStartSeconds: z.union([z.number(), z.null()]).optional(), agentOutlookCaptureBody: z.union([z.boolean(), z.null()]).optional(), agentOutlookCaptureAdditionalMetaData: z.union([z.boolean(), z.null()]).optional(), billingSystem: z.union([z.string(), z.null()]).optional(), code: z.union([z.string(), z.null()]).optional(), customerEncryptionKey: z.union([z.union([AwsCustomerEncryptionKeySchema, AzureCustomerEncryptionKeySchema, CustomerEncryptionKeySchema]), z.null()]).optional(), defaultBillingIncrementSeconds: z.union([z.number(), z.null()]).optional(), deletedAt: z.union([LuxonDateTimeSchema, z.null()]).optional(), egressExportIntervalSeconds: z.union([z.number(), z.null()]).optional(), egressFFFields: z.union([z.string(), z.null()]).optional(), egressFFHeaders: z.union([z.string(), z.null()]).optional(), enabledWebappTimekeepingFeatures: z.union([EnabledWebappTimekeepingFeaturesSchema, z.null()]).optional(), dataRetention: z.union([DataRetentionConfigurationSchema, z.null()]).optional(), privacy: z.union([CustomerPrivacyConfigurationSchema, z.null()]).optional(), enabledWebappAdministrativeFeatures: z.union([EnabledWebappAdministrativeFeaturesSchema, z.null()]).optional(), webexTracking: z.union([WebexTrackingSchema, z.null()]).optional(), webexContacts: z.union([WebexContactsSchema, z.null()]).optional(), ringCentralTracking: z.union([RingCentralTrackingSchema, z.null()]).optional(), enablePostReleaseEditing: z.union([z.boolean(), z.null()]).optional(), narrativeGuidelinesMode: z.union([z.enum(['customer_only', 'inferred_only', 'customer_then_inferred', 'disabled']), z.null()]).optional(), summaryCharacterLimitCount: z.union([z.number(), z.null()]).optional(), enableLaurelConnect: z.union([z.boolean(), z.null()]).optional(), enableTracking: z.union([z.boolean(), z.null()]).optional(), enableTrackingMicrosoftTeams: z.union([z.boolean(), z.null()]).optional(), enableTrackingGoogle: z.union([z.boolean(), z.null()]).optional(), enableTrackingZoom: z.union([z.boolean(), z.null()]).optional(), enableCloudAssistantCdr: z.union([z.boolean(), z.null()]).optional(), feedbackUrl: z.union([z.string(), z.null()]).optional(), fiscalYearStartDate: z.union([LuxonDateTimeSchema, z.null()]).optional(), fiscalQ2StartDate: z.union([LuxonDateSchema, z.null()]).optional(), fiscalQ3StartDate: z.union([LuxonDateSchema, z.null()]).optional(), fiscalQ4StartDate: z.union([LuxonDateSchema, z.null()]).optional(), i18Language: z.union([z.string(), z.null()]).optional(), launchDarklyCustomerKey: z.union([z.string(), z.null()]).optional(), launchDarklyEnvironmentKey: z.union([z.string(), z.null()]).optional(), launchDarklyRelay: z.union([z.string(), z.null()]).optional(), laurelConnectType: z.union([z.enum(['ADERANT', 'CSV']), z.null()]).optional(), laurelConnectCsvBucketArn: z.union([z.string(), z.null()]).optional(), laurelConnectSnsSubscriptionArn: z.union([z.string(), z.null()]).optional(), logLevel: z.union([z.enum(['DEBUG', 'INFO', 'ERROR', 'WARN']), z.null()]).optional(), name: z.union([z.string(), z.null()]).optional(), salesforceId: z.union([z.string(), z.null()]).optional(), supportUrl: z.union([z.string(), z.null()]).optional(), laurelUrl: z.union([z.string(), z.null()]).optional(), timeServiceUrl: z.union([z.string(), z.null()]).optional(), trackingMicrosoftGraphApiAppId: z.union([z.string(), z.null()]).optional(), trackingMicrosoftGraphApiTenantId: z.union([z.string(), z.null()]).optional(), trackingMicrosoftTeamsGraphApiSecretId: z.union([z.string().min(1), z.null()]).optional(), trackingMicrosoftTeamsGraphApiSecret: z.union([z.string().min(1), z.null()]).optional(), trackingMicrosoftTeamsGraphApiSecretExpiration: z.union([LuxonDateTimeSchema, z.null()]).optional(), trackingMicrosoftTeamsGraphApiSubscriptionSecret: z.union([z.string(), z.null()]).optional(), trackingGoogleProjectId: z.union([z.string(), z.null()]).optional(), trackingGoogleServiceAccountEmail: z.union([z.string(), z.null()]).optional(), trackingGoogleServiceAccountPrivateKey: z.union([z.string().min(1), z.null()]).optional(), trackingZoomApiAccountId: z.union([z.string(), z.null()]).optional(), trackingZoomApiAppSecret: z.union([z.string().min(1), z.null()]).optional(), intappTermsApiKey: z.union([z.string(), z.null()]).optional(), intappTermsApiSecret: z.union([z.string().min(1), z.null()]).optional(), intappTermsRestrictedWordEnforcementLevel: z.union([z.enum(['block', 'acknowledge', 'warn', 'off']), z.null()]).optional(), trackingZoomApiClientId: z.union([z.string(), z.null()]).optional(), trackingZoomApiEventSecretToken: z.union([z.string().min(1), z.null()]).optional(), trackingZoomApiVariant: z.union([z.enum(['Zoom', 'ZoomGov']), z.null()]).optional(), enableOutlookFolderSearch: z.union([z.boolean(), z.null()]).optional(), outlookServerType: z.union([z.enum(['O365', 'OnPremise']), z.null()]).optional(), outlookServerUrl: z.union([z.string(), z.null()]).optional(), outlookFolderSearchAdminUsername: z.union([z.string(), z.null()]).optional(), outlookFolderSearchAdminPassword: z.union([z.string().min(1), z.null()]).optional(), outlookFolderSearchAdminDomain: z.union([z.string(), z.null()]).optional(), outlookFolderSearchAzureAppSecret: z.union([z.string().min(1), z.null()]).optional(), outlookFolderSearchAzureAppSecretExpiration: z.union([LuxonDateTimeSchema, z.null()]).optional(), outlookFolderSearchAzureAppClientId: z.union([z.string(), z.null()]).optional(), outlookFolderSearchAzureTenantId: z.union([z.string(), z.null()]).optional(), microsoftApiType: z.union([z.enum(['Ews', 'Graph']), z.null()]).optional(), laurelConnectSftpUserRoleName: z.union([z.string(), z.null()]).optional(), laurelConnectSftpUserSshPrivateKey: z.union([z.string().min(1), z.null()]).optional(), webappDisplayClientCallSignForInitiatives: z.union([z.boolean(), z.null()]).optional(), versionUserId: z.union([ObjectIdSchema, z.null()]).optional(), defaultDateTimeLocale: z.union([z.string(), z.null()]).optional(), switchInitiativeDisplayLabel: z.union([z.boolean(), z.null()]).optional(), delegateMapping: z.union([DelegateMappingConfigurationSchema, z.null()]).optional(), timesheetInitiativeCategorizationScoreThreshold: z.union([z.number(), z.null()]).optional(), userInitiativesEnabled: z.union([z.boolean(), z.null()]).optional(), allowUserVersionOverride: z.union([z.boolean(), z.null()]).optional(), autoAddUsers: z.union([z.boolean(), z.null()]).optional(), disableMobileApp: z.union([z.boolean(), z.null()]).optional(), onboardingResource: z.union([OnboardingResourceSchema, z.null()]).optional() });
667
690
 
668
691
  export interface CustomerConfigUpdateDto {
669
692
  agentAccessibilityCheckDurationInMinutes?: (number | null);
@@ -691,7 +714,7 @@ export interface CustomerConfigUpdateDto {
691
714
  agentOutlookCaptureAdditionalMetaData?: (boolean | null);
692
715
  billingSystem?: (string | null);
693
716
  code?: (string | null);
694
- customerEncryptionKey?: (CustomerEncryptionKey | null);
717
+ customerEncryptionKey?: ((AwsCustomerEncryptionKey | AzureCustomerEncryptionKey | CustomerEncryptionKey) | null);
695
718
  defaultBillingIncrementSeconds?: (number | null);
696
719
  deletedAt?: (LuxonDateTimeSchemaOutput | null);
697
720
  egressExportIntervalSeconds?: (number | null);
@@ -774,7 +797,7 @@ export interface CustomerConfigUpdateDto {
774
797
  onboardingResource?: (OnboardingResource | null);
775
798
  customerId: string;
776
799
  }
777
- export const CustomerConfigUpdateDtoSchema = z.object({ agentAccessibilityCheckDurationInMinutes: z.union([z.number(), z.null()]).optional(), agentEntryMinimumDuration: z.union([z.number(), z.null()]).optional(), agentExcludedWebsiteEntries: z.array(AgentWebsiteEntrySchema).optional(), agentIdleTime: z.union([z.number(), z.null()]).optional(), agentLaunchDarklyPollingIntervalDuration: z.union([z.number(), z.null()]).optional(), agentLoggingEndpoint: z.union([z.string(), z.null()]).optional(), agentLoggingSecureEndpoint: z.union([z.string(), z.null()]).optional(), agentLoggingToken: z.union([z.string(), z.null()]).optional(), agentMacApplicationEntries: z.array(AgentApplicationEntrySchema).optional(), agentMetricsEndpoint: z.union([z.string(), z.null()]).optional(), agentNonActivityServiceThresholdInSeconds: z.union([z.number(), z.null()]).optional(), agentSqlDbFlushTime: z.union([z.number(), z.null()]).optional(), agentTracingEndpoint: z.union([z.string(), z.null()]).optional(), agentWebsiteEntries: z.array(AgentWebsiteEntrySchema).optional(), agentWindowsApplicationEntries: z.array(AgentApplicationEntrySchema).optional(), agentMinimumWindowsClientVersionSupported: z.union([z.string(), z.null()]).optional(), agentMinimumWindowsClientVersionSupportedMessage: z.union([z.string(), z.null()]).optional(), agentMinimumMacClientVersionSupported: z.union([z.string(), z.null()]).optional(), agentMinimumMacClientVersionSupportedMessage: z.union([z.string(), z.null()]).optional(), agentDelayAfterOutlookStartSeconds: z.union([z.number(), z.null()]).optional(), agentOutlookDelayAfterLaurelStartSeconds: z.union([z.number(), z.null()]).optional(), agentOutlookCaptureBody: z.union([z.boolean(), z.null()]).optional(), agentOutlookCaptureAdditionalMetaData: z.union([z.boolean(), z.null()]).optional(), billingSystem: z.union([z.string(), z.null()]).optional(), code: z.union([z.string(), z.null()]).optional(), customerEncryptionKey: z.union([CustomerEncryptionKeySchema, z.null()]).optional(), defaultBillingIncrementSeconds: z.union([z.number(), z.null()]).optional(), deletedAt: z.union([LuxonDateTimeSchema, z.null()]).optional(), egressExportIntervalSeconds: z.union([z.number(), z.null()]).optional(), egressFFFields: z.union([z.string(), z.null()]).optional(), egressFFHeaders: z.union([z.string(), z.null()]).optional(), enabledWebappTimekeepingFeatures: z.union([EnabledWebappTimekeepingFeaturesSchema, z.null()]).optional(), dataRetention: z.union([DataRetentionConfigurationSchema, z.null()]).optional(), privacy: z.union([CustomerPrivacyConfigurationSchema, z.null()]).optional(), enabledWebappAdministrativeFeatures: z.union([EnabledWebappAdministrativeFeaturesSchema, z.null()]).optional(), webexTracking: z.union([WebexTrackingSchema, z.null()]).optional(), webexContacts: z.union([WebexContactsSchema, z.null()]).optional(), ringCentralTracking: z.union([RingCentralTrackingSchema, z.null()]).optional(), enablePostReleaseEditing: z.union([z.boolean(), z.null()]).optional(), narrativeGuidelinesMode: z.union([z.enum(['customer_only', 'inferred_only', 'customer_then_inferred', 'disabled']), z.null()]).optional(), summaryCharacterLimitCount: z.union([z.number(), z.null()]).optional(), enableLaurelConnect: z.union([z.boolean(), z.null()]).optional(), enableTracking: z.union([z.boolean(), z.null()]).optional(), enableTrackingMicrosoftTeams: z.union([z.boolean(), z.null()]).optional(), enableTrackingGoogle: z.union([z.boolean(), z.null()]).optional(), enableTrackingZoom: z.union([z.boolean(), z.null()]).optional(), enableCloudAssistantCdr: z.union([z.boolean(), z.null()]).optional(), feedbackUrl: z.union([z.string(), z.null()]).optional(), fiscalYearStartDate: z.union([LuxonDateTimeSchema, z.null()]).optional(), fiscalQ2StartDate: z.union([LuxonDateSchema, z.null()]).optional(), fiscalQ3StartDate: z.union([LuxonDateSchema, z.null()]).optional(), fiscalQ4StartDate: z.union([LuxonDateSchema, z.null()]).optional(), i18Language: z.union([z.string(), z.null()]).optional(), launchDarklyCustomerKey: z.union([z.string(), z.null()]).optional(), launchDarklyEnvironmentKey: z.union([z.string(), z.null()]).optional(), launchDarklyRelay: z.union([z.string(), z.null()]).optional(), laurelConnectType: z.union([z.enum(['ADERANT', 'CSV']), z.null()]).optional(), laurelConnectCsvBucketArn: z.union([z.string(), z.null()]).optional(), laurelConnectSnsSubscriptionArn: z.union([z.string(), z.null()]).optional(), logLevel: z.union([z.enum(['DEBUG', 'INFO', 'ERROR', 'WARN']), z.null()]).optional(), name: z.union([z.string(), z.null()]).optional(), salesforceId: z.union([z.string(), z.null()]).optional(), supportUrl: z.union([z.string(), z.null()]).optional(), laurelUrl: z.union([z.string(), z.null()]).optional(), timeServiceUrl: z.union([z.string(), z.null()]).optional(), trackingMicrosoftGraphApiAppId: z.union([z.string(), z.null()]).optional(), trackingMicrosoftGraphApiTenantId: z.union([z.string(), z.null()]).optional(), trackingMicrosoftTeamsGraphApiSecretId: z.union([z.string().min(1), z.null()]).optional(), trackingMicrosoftTeamsGraphApiSecret: z.union([z.string().min(1), z.null()]).optional(), trackingMicrosoftTeamsGraphApiSecretExpiration: z.union([LuxonDateTimeSchema, z.null()]).optional(), trackingMicrosoftTeamsGraphApiSubscriptionSecret: z.union([z.string(), z.null()]).optional(), trackingGoogleProjectId: z.union([z.string(), z.null()]).optional(), trackingGoogleServiceAccountEmail: z.union([z.string(), z.null()]).optional(), trackingGoogleServiceAccountPrivateKey: z.union([z.string().min(1), z.null()]).optional(), trackingZoomApiAccountId: z.union([z.string(), z.null()]).optional(), trackingZoomApiAppSecret: z.union([z.string().min(1), z.null()]).optional(), intappTermsApiKey: z.union([z.string(), z.null()]).optional(), intappTermsApiSecret: z.union([z.string().min(1), z.null()]).optional(), intappTermsRestrictedWordEnforcementLevel: z.union([z.enum(['block', 'acknowledge', 'warn', 'off']), z.null()]).optional(), trackingZoomApiClientId: z.union([z.string(), z.null()]).optional(), trackingZoomApiEventSecretToken: z.union([z.string().min(1), z.null()]).optional(), trackingZoomApiVariant: z.union([z.enum(['Zoom', 'ZoomGov']), z.null()]).optional(), enableOutlookFolderSearch: z.union([z.boolean(), z.null()]).optional(), outlookServerType: z.union([z.enum(['O365', 'OnPremise']), z.null()]).optional(), outlookServerUrl: z.union([z.string(), z.null()]).optional(), outlookFolderSearchAdminUsername: z.union([z.string(), z.null()]).optional(), outlookFolderSearchAdminPassword: z.union([z.string().min(1), z.null()]).optional(), outlookFolderSearchAdminDomain: z.union([z.string(), z.null()]).optional(), outlookFolderSearchAzureAppSecret: z.union([z.string().min(1), z.null()]).optional(), outlookFolderSearchAzureAppSecretExpiration: z.union([LuxonDateTimeSchema, z.null()]).optional(), outlookFolderSearchAzureAppClientId: z.union([z.string(), z.null()]).optional(), outlookFolderSearchAzureTenantId: z.union([z.string(), z.null()]).optional(), microsoftApiType: z.union([z.enum(['Ews', 'Graph']), z.null()]).optional(), laurelConnectSftpUserRoleName: z.union([z.string(), z.null()]).optional(), laurelConnectSftpUserSshPrivateKey: z.union([z.string().min(1), z.null()]).optional(), webappDisplayClientCallSignForInitiatives: z.union([z.boolean(), z.null()]).optional(), versionUserId: z.union([ObjectIdSchema, z.null()]).optional(), defaultDateTimeLocale: z.union([z.string(), z.null()]).optional(), switchInitiativeDisplayLabel: z.union([z.boolean(), z.null()]).optional(), delegateMapping: z.union([DelegateMappingConfigurationSchema, z.null()]).optional(), timesheetInitiativeCategorizationScoreThreshold: z.union([z.number(), z.null()]).optional(), userInitiativesEnabled: z.union([z.boolean(), z.null()]).optional(), allowUserVersionOverride: z.union([z.boolean(), z.null()]).optional(), autoAddUsers: z.union([z.boolean(), z.null()]).optional(), disableMobileApp: z.union([z.boolean(), z.null()]).optional(), onboardingResource: z.union([OnboardingResourceSchema, z.null()]).optional(), customerId: z.string() });
800
+ export const CustomerConfigUpdateDtoSchema = z.object({ agentAccessibilityCheckDurationInMinutes: z.union([z.number(), z.null()]).optional(), agentEntryMinimumDuration: z.union([z.number(), z.null()]).optional(), agentExcludedWebsiteEntries: z.array(AgentWebsiteEntrySchema).optional(), agentIdleTime: z.union([z.number(), z.null()]).optional(), agentLaunchDarklyPollingIntervalDuration: z.union([z.number(), z.null()]).optional(), agentLoggingEndpoint: z.union([z.string(), z.null()]).optional(), agentLoggingSecureEndpoint: z.union([z.string(), z.null()]).optional(), agentLoggingToken: z.union([z.string(), z.null()]).optional(), agentMacApplicationEntries: z.array(AgentApplicationEntrySchema).optional(), agentMetricsEndpoint: z.union([z.string(), z.null()]).optional(), agentNonActivityServiceThresholdInSeconds: z.union([z.number(), z.null()]).optional(), agentSqlDbFlushTime: z.union([z.number(), z.null()]).optional(), agentTracingEndpoint: z.union([z.string(), z.null()]).optional(), agentWebsiteEntries: z.array(AgentWebsiteEntrySchema).optional(), agentWindowsApplicationEntries: z.array(AgentApplicationEntrySchema).optional(), agentMinimumWindowsClientVersionSupported: z.union([z.string(), z.null()]).optional(), agentMinimumWindowsClientVersionSupportedMessage: z.union([z.string(), z.null()]).optional(), agentMinimumMacClientVersionSupported: z.union([z.string(), z.null()]).optional(), agentMinimumMacClientVersionSupportedMessage: z.union([z.string(), z.null()]).optional(), agentDelayAfterOutlookStartSeconds: z.union([z.number(), z.null()]).optional(), agentOutlookDelayAfterLaurelStartSeconds: z.union([z.number(), z.null()]).optional(), agentOutlookCaptureBody: z.union([z.boolean(), z.null()]).optional(), agentOutlookCaptureAdditionalMetaData: z.union([z.boolean(), z.null()]).optional(), billingSystem: z.union([z.string(), z.null()]).optional(), code: z.union([z.string(), z.null()]).optional(), customerEncryptionKey: z.union([z.union([AwsCustomerEncryptionKeySchema, AzureCustomerEncryptionKeySchema, CustomerEncryptionKeySchema]), z.null()]).optional(), defaultBillingIncrementSeconds: z.union([z.number(), z.null()]).optional(), deletedAt: z.union([LuxonDateTimeSchema, z.null()]).optional(), egressExportIntervalSeconds: z.union([z.number(), z.null()]).optional(), egressFFFields: z.union([z.string(), z.null()]).optional(), egressFFHeaders: z.union([z.string(), z.null()]).optional(), enabledWebappTimekeepingFeatures: z.union([EnabledWebappTimekeepingFeaturesSchema, z.null()]).optional(), dataRetention: z.union([DataRetentionConfigurationSchema, z.null()]).optional(), privacy: z.union([CustomerPrivacyConfigurationSchema, z.null()]).optional(), enabledWebappAdministrativeFeatures: z.union([EnabledWebappAdministrativeFeaturesSchema, z.null()]).optional(), webexTracking: z.union([WebexTrackingSchema, z.null()]).optional(), webexContacts: z.union([WebexContactsSchema, z.null()]).optional(), ringCentralTracking: z.union([RingCentralTrackingSchema, z.null()]).optional(), enablePostReleaseEditing: z.union([z.boolean(), z.null()]).optional(), narrativeGuidelinesMode: z.union([z.enum(['customer_only', 'inferred_only', 'customer_then_inferred', 'disabled']), z.null()]).optional(), summaryCharacterLimitCount: z.union([z.number(), z.null()]).optional(), enableLaurelConnect: z.union([z.boolean(), z.null()]).optional(), enableTracking: z.union([z.boolean(), z.null()]).optional(), enableTrackingMicrosoftTeams: z.union([z.boolean(), z.null()]).optional(), enableTrackingGoogle: z.union([z.boolean(), z.null()]).optional(), enableTrackingZoom: z.union([z.boolean(), z.null()]).optional(), enableCloudAssistantCdr: z.union([z.boolean(), z.null()]).optional(), feedbackUrl: z.union([z.string(), z.null()]).optional(), fiscalYearStartDate: z.union([LuxonDateTimeSchema, z.null()]).optional(), fiscalQ2StartDate: z.union([LuxonDateSchema, z.null()]).optional(), fiscalQ3StartDate: z.union([LuxonDateSchema, z.null()]).optional(), fiscalQ4StartDate: z.union([LuxonDateSchema, z.null()]).optional(), i18Language: z.union([z.string(), z.null()]).optional(), launchDarklyCustomerKey: z.union([z.string(), z.null()]).optional(), launchDarklyEnvironmentKey: z.union([z.string(), z.null()]).optional(), launchDarklyRelay: z.union([z.string(), z.null()]).optional(), laurelConnectType: z.union([z.enum(['ADERANT', 'CSV']), z.null()]).optional(), laurelConnectCsvBucketArn: z.union([z.string(), z.null()]).optional(), laurelConnectSnsSubscriptionArn: z.union([z.string(), z.null()]).optional(), logLevel: z.union([z.enum(['DEBUG', 'INFO', 'ERROR', 'WARN']), z.null()]).optional(), name: z.union([z.string(), z.null()]).optional(), salesforceId: z.union([z.string(), z.null()]).optional(), supportUrl: z.union([z.string(), z.null()]).optional(), laurelUrl: z.union([z.string(), z.null()]).optional(), timeServiceUrl: z.union([z.string(), z.null()]).optional(), trackingMicrosoftGraphApiAppId: z.union([z.string(), z.null()]).optional(), trackingMicrosoftGraphApiTenantId: z.union([z.string(), z.null()]).optional(), trackingMicrosoftTeamsGraphApiSecretId: z.union([z.string().min(1), z.null()]).optional(), trackingMicrosoftTeamsGraphApiSecret: z.union([z.string().min(1), z.null()]).optional(), trackingMicrosoftTeamsGraphApiSecretExpiration: z.union([LuxonDateTimeSchema, z.null()]).optional(), trackingMicrosoftTeamsGraphApiSubscriptionSecret: z.union([z.string(), z.null()]).optional(), trackingGoogleProjectId: z.union([z.string(), z.null()]).optional(), trackingGoogleServiceAccountEmail: z.union([z.string(), z.null()]).optional(), trackingGoogleServiceAccountPrivateKey: z.union([z.string().min(1), z.null()]).optional(), trackingZoomApiAccountId: z.union([z.string(), z.null()]).optional(), trackingZoomApiAppSecret: z.union([z.string().min(1), z.null()]).optional(), intappTermsApiKey: z.union([z.string(), z.null()]).optional(), intappTermsApiSecret: z.union([z.string().min(1), z.null()]).optional(), intappTermsRestrictedWordEnforcementLevel: z.union([z.enum(['block', 'acknowledge', 'warn', 'off']), z.null()]).optional(), trackingZoomApiClientId: z.union([z.string(), z.null()]).optional(), trackingZoomApiEventSecretToken: z.union([z.string().min(1), z.null()]).optional(), trackingZoomApiVariant: z.union([z.enum(['Zoom', 'ZoomGov']), z.null()]).optional(), enableOutlookFolderSearch: z.union([z.boolean(), z.null()]).optional(), outlookServerType: z.union([z.enum(['O365', 'OnPremise']), z.null()]).optional(), outlookServerUrl: z.union([z.string(), z.null()]).optional(), outlookFolderSearchAdminUsername: z.union([z.string(), z.null()]).optional(), outlookFolderSearchAdminPassword: z.union([z.string().min(1), z.null()]).optional(), outlookFolderSearchAdminDomain: z.union([z.string(), z.null()]).optional(), outlookFolderSearchAzureAppSecret: z.union([z.string().min(1), z.null()]).optional(), outlookFolderSearchAzureAppSecretExpiration: z.union([LuxonDateTimeSchema, z.null()]).optional(), outlookFolderSearchAzureAppClientId: z.union([z.string(), z.null()]).optional(), outlookFolderSearchAzureTenantId: z.union([z.string(), z.null()]).optional(), microsoftApiType: z.union([z.enum(['Ews', 'Graph']), z.null()]).optional(), laurelConnectSftpUserRoleName: z.union([z.string(), z.null()]).optional(), laurelConnectSftpUserSshPrivateKey: z.union([z.string().min(1), z.null()]).optional(), webappDisplayClientCallSignForInitiatives: z.union([z.boolean(), z.null()]).optional(), versionUserId: z.union([ObjectIdSchema, z.null()]).optional(), defaultDateTimeLocale: z.union([z.string(), z.null()]).optional(), switchInitiativeDisplayLabel: z.union([z.boolean(), z.null()]).optional(), delegateMapping: z.union([DelegateMappingConfigurationSchema, z.null()]).optional(), timesheetInitiativeCategorizationScoreThreshold: z.union([z.number(), z.null()]).optional(), userInitiativesEnabled: z.union([z.boolean(), z.null()]).optional(), allowUserVersionOverride: z.union([z.boolean(), z.null()]).optional(), autoAddUsers: z.union([z.boolean(), z.null()]).optional(), disableMobileApp: z.union([z.boolean(), z.null()]).optional(), onboardingResource: z.union([OnboardingResourceSchema, z.null()]).optional(), customerId: z.string() });
778
801
 
779
802
  export interface InsightsConfig {
780
803
  org: (OrgInsightsConfig | null);
@@ -821,7 +844,7 @@ export interface CustomerConfig {
821
844
  agentOutlookCaptureAdditionalMetaData?: (boolean | null);
822
845
  billingSystem?: (string | null);
823
846
  code?: (string | null);
824
- customerEncryptionKey?: (CustomerEncryptionKey | null);
847
+ customerEncryptionKey?: ((AwsCustomerEncryptionKey | AzureCustomerEncryptionKey | CustomerEncryptionKey) | null);
825
848
  defaultBillingIncrementSeconds?: (number | null);
826
849
  deletedAt?: (LuxonDateTimeSchemaOutput | null);
827
850
  egressExportIntervalSeconds?: (number | null);
@@ -908,7 +931,7 @@ export interface CustomerConfig {
908
931
  schemaVersion?: (string | null);
909
932
  signal?: (SignalCustomerConfig | null);
910
933
  }
911
- export const CustomerConfigSchema = z.object({ agentAccessibilityCheckDurationInMinutes: z.union([z.number(), z.null()]).optional(), agentEntryMinimumDuration: z.union([z.number(), z.null()]).optional(), agentExcludedWebsiteEntries: z.array(AgentWebsiteEntrySchema), agentIdleTime: z.union([z.number(), z.null()]).optional(), agentLaunchDarklyPollingIntervalDuration: z.union([z.number(), z.null()]).optional(), agentLoggingEndpoint: z.union([z.string(), z.null()]).optional(), agentLoggingSecureEndpoint: z.union([z.string(), z.null()]).optional(), agentLoggingToken: z.union([z.string(), z.null()]).optional(), agentMacApplicationEntries: z.array(AgentApplicationEntrySchema), agentMetricsEndpoint: z.union([z.string(), z.null()]).optional(), agentNonActivityServiceThresholdInSeconds: z.union([z.number(), z.null()]).optional(), agentSqlDbFlushTime: z.union([z.number(), z.null()]).optional(), agentTracingEndpoint: z.union([z.string(), z.null()]).optional(), agentWebsiteEntries: z.array(AgentWebsiteEntrySchema), agentWindowsApplicationEntries: z.array(AgentApplicationEntrySchema), agentMinimumWindowsClientVersionSupported: z.union([z.string(), z.null()]).optional(), agentMinimumWindowsClientVersionSupportedMessage: z.union([z.string(), z.null()]).optional(), agentMinimumMacClientVersionSupported: z.union([z.string(), z.null()]).optional(), agentMinimumMacClientVersionSupportedMessage: z.union([z.string(), z.null()]).optional(), agentDelayAfterOutlookStartSeconds: z.union([z.number(), z.null()]).optional(), agentOutlookDelayAfterLaurelStartSeconds: z.union([z.number(), z.null()]).optional(), agentOutlookCaptureBody: z.union([z.boolean(), z.null()]).optional(), agentOutlookCaptureAdditionalMetaData: z.union([z.boolean(), z.null()]).optional(), billingSystem: z.union([z.string(), z.null()]).optional(), code: z.union([z.string(), z.null()]).optional(), customerEncryptionKey: z.union([CustomerEncryptionKeySchema, z.null()]).optional(), defaultBillingIncrementSeconds: z.union([z.number(), z.null()]).optional(), deletedAt: z.union([LuxonDateTimeSchema, z.null()]).optional(), egressExportIntervalSeconds: z.union([z.number(), z.null()]).optional(), egressFFFields: z.union([z.string(), z.null()]).optional(), egressFFHeaders: z.union([z.string(), z.null()]).optional(), enabledWebappTimekeepingFeatures: z.union([EnabledWebappTimekeepingFeaturesSchema, z.null()]).optional(), dataRetention: z.union([DataRetentionConfigurationSchema, z.null()]).optional(), privacy: z.union([CustomerPrivacyConfigurationSchema, z.null()]).optional(), enabledWebappAdministrativeFeatures: z.union([EnabledWebappAdministrativeFeaturesSchema, z.null()]).optional(), webexTracking: z.union([WebexTrackingSchema, z.null()]).optional(), webexContacts: z.union([WebexContactsSchema, z.null()]).optional(), ringCentralTracking: z.union([RingCentralTrackingSchema, z.null()]).optional(), enablePostReleaseEditing: z.union([z.boolean(), z.null()]).optional(), narrativeGuidelinesMode: z.union([z.enum(['customer_only', 'inferred_only', 'customer_then_inferred', 'disabled']), z.null()]).optional(), summaryCharacterLimitCount: z.union([z.number(), z.null()]).optional(), enableLaurelConnect: z.union([z.boolean(), z.null()]).optional(), enableTracking: z.union([z.boolean(), z.null()]).optional(), enableTrackingMicrosoftTeams: z.union([z.boolean(), z.null()]).optional(), enableTrackingGoogle: z.union([z.boolean(), z.null()]).optional(), enableTrackingZoom: z.union([z.boolean(), z.null()]).optional(), enableCloudAssistantCdr: z.union([z.boolean(), z.null()]).optional(), feedbackUrl: z.union([z.string(), z.null()]).optional(), fiscalYearStartDate: z.union([LuxonDateTimeSchema, z.null()]).optional(), fiscalQ2StartDate: z.union([LuxonDateSchema, z.null()]).optional(), fiscalQ3StartDate: z.union([LuxonDateSchema, z.null()]).optional(), fiscalQ4StartDate: z.union([LuxonDateSchema, z.null()]).optional(), i18Language: z.union([z.string(), z.null()]).optional(), launchDarklyCustomerKey: z.union([z.string(), z.null()]).optional(), launchDarklyEnvironmentKey: z.union([z.string(), z.null()]).optional(), launchDarklyRelay: z.union([z.string(), z.null()]).optional(), laurelConnectType: z.union([z.enum(['ADERANT', 'CSV']), z.null()]).optional(), laurelConnectCsvBucketArn: z.union([z.string(), z.null()]).optional(), laurelConnectSnsSubscriptionArn: z.union([z.string(), z.null()]).optional(), logLevel: z.union([z.enum(['DEBUG', 'INFO', 'ERROR', 'WARN']), z.null()]).optional(), name: z.union([z.string(), z.null()]).optional(), salesforceId: z.union([z.string(), z.null()]).optional(), supportUrl: z.union([z.string(), z.null()]).optional(), laurelUrl: z.union([z.string(), z.null()]).optional(), timeServiceUrl: z.union([z.string(), z.null()]).optional(), trackingMicrosoftGraphApiAppId: z.union([z.string(), z.null()]).optional(), trackingMicrosoftGraphApiTenantId: z.union([z.string(), z.null()]).optional(), trackingMicrosoftTeamsGraphApiSecretId: z.union([z.string().min(1), z.null()]).optional(), trackingMicrosoftTeamsGraphApiSecret: z.union([z.string().min(1), z.null()]).optional(), trackingMicrosoftTeamsGraphApiSecretExpiration: z.union([LuxonDateTimeSchema, z.null()]).optional(), trackingMicrosoftTeamsGraphApiSubscriptionSecret: z.union([z.string(), z.null()]).optional(), trackingGoogleProjectId: z.union([z.string(), z.null()]).optional(), trackingGoogleServiceAccountEmail: z.union([z.string(), z.null()]).optional(), trackingGoogleServiceAccountPrivateKey: z.union([z.string().min(1), z.null()]).optional(), trackingZoomApiAccountId: z.union([z.string(), z.null()]).optional(), trackingZoomApiAppSecret: z.union([z.string().min(1), z.null()]).optional(), intappTermsApiKey: z.union([z.string(), z.null()]).optional(), intappTermsApiSecret: z.union([z.string().min(1), z.null()]).optional(), intappTermsRestrictedWordEnforcementLevel: z.union([z.enum(['block', 'acknowledge', 'warn', 'off']), z.null()]).optional(), trackingZoomApiClientId: z.union([z.string(), z.null()]).optional(), trackingZoomApiEventSecretToken: z.union([z.string().min(1), z.null()]).optional(), trackingZoomApiVariant: z.union([z.enum(['Zoom', 'ZoomGov']), z.null()]).optional(), enableOutlookFolderSearch: z.union([z.boolean(), z.null()]).optional(), outlookServerType: z.union([z.enum(['O365', 'OnPremise']), z.null()]).optional(), outlookServerUrl: z.union([z.string(), z.null()]).optional(), outlookFolderSearchAdminUsername: z.union([z.string(), z.null()]).optional(), outlookFolderSearchAdminPassword: z.union([z.string().min(1), z.null()]).optional(), outlookFolderSearchAdminDomain: z.union([z.string(), z.null()]).optional(), outlookFolderSearchAzureAppSecret: z.union([z.string().min(1), z.null()]).optional(), outlookFolderSearchAzureAppSecretExpiration: z.union([LuxonDateTimeSchema, z.null()]).optional(), outlookFolderSearchAzureAppClientId: z.union([z.string(), z.null()]).optional(), outlookFolderSearchAzureTenantId: z.union([z.string(), z.null()]).optional(), microsoftApiType: z.union([z.enum(['Ews', 'Graph']), z.null()]).optional(), laurelConnectSftpUserRoleName: z.union([z.string(), z.null()]).optional(), laurelConnectSftpUserSshPrivateKey: z.union([z.string().min(1), z.null()]).optional(), webappDisplayClientCallSignForInitiatives: z.union([z.boolean(), z.null()]).optional(), version: LuxonDateTimeSchema, versionUserId: z.union([ObjectIdSchema, z.null()]).optional(), defaultDateTimeLocale: z.union([z.string(), z.null()]).optional(), switchInitiativeDisplayLabel: z.union([z.boolean(), z.null()]).optional(), delegateMapping: z.union([DelegateMappingConfigurationSchema, z.null()]).optional(), timesheetInitiativeCategorizationScoreThreshold: z.union([z.number(), z.null()]).optional(), userInitiativesEnabled: z.union([z.boolean(), z.null()]).optional(), allowUserVersionOverride: z.union([z.boolean(), z.null()]).optional(), autoAddUsers: z.union([z.boolean(), z.null()]).optional(), disableMobileApp: z.union([z.boolean(), z.null()]).optional(), onboardingResource: z.union([OnboardingResourceSchema, z.null()]).optional(), _id: ObjectIdSchema, customerId: ObjectIdSchema, schemaVersion: z.union([z.string(), z.null()]).optional(), signal: z.union([SignalCustomerConfigSchema, z.null()]).optional() });
934
+ export const CustomerConfigSchema = z.object({ agentAccessibilityCheckDurationInMinutes: z.union([z.number(), z.null()]).optional(), agentEntryMinimumDuration: z.union([z.number(), z.null()]).optional(), agentExcludedWebsiteEntries: z.array(AgentWebsiteEntrySchema), agentIdleTime: z.union([z.number(), z.null()]).optional(), agentLaunchDarklyPollingIntervalDuration: z.union([z.number(), z.null()]).optional(), agentLoggingEndpoint: z.union([z.string(), z.null()]).optional(), agentLoggingSecureEndpoint: z.union([z.string(), z.null()]).optional(), agentLoggingToken: z.union([z.string(), z.null()]).optional(), agentMacApplicationEntries: z.array(AgentApplicationEntrySchema), agentMetricsEndpoint: z.union([z.string(), z.null()]).optional(), agentNonActivityServiceThresholdInSeconds: z.union([z.number(), z.null()]).optional(), agentSqlDbFlushTime: z.union([z.number(), z.null()]).optional(), agentTracingEndpoint: z.union([z.string(), z.null()]).optional(), agentWebsiteEntries: z.array(AgentWebsiteEntrySchema), agentWindowsApplicationEntries: z.array(AgentApplicationEntrySchema), agentMinimumWindowsClientVersionSupported: z.union([z.string(), z.null()]).optional(), agentMinimumWindowsClientVersionSupportedMessage: z.union([z.string(), z.null()]).optional(), agentMinimumMacClientVersionSupported: z.union([z.string(), z.null()]).optional(), agentMinimumMacClientVersionSupportedMessage: z.union([z.string(), z.null()]).optional(), agentDelayAfterOutlookStartSeconds: z.union([z.number(), z.null()]).optional(), agentOutlookDelayAfterLaurelStartSeconds: z.union([z.number(), z.null()]).optional(), agentOutlookCaptureBody: z.union([z.boolean(), z.null()]).optional(), agentOutlookCaptureAdditionalMetaData: z.union([z.boolean(), z.null()]).optional(), billingSystem: z.union([z.string(), z.null()]).optional(), code: z.union([z.string(), z.null()]).optional(), customerEncryptionKey: z.union([z.union([AwsCustomerEncryptionKeySchema, AzureCustomerEncryptionKeySchema, CustomerEncryptionKeySchema]), z.null()]).optional(), defaultBillingIncrementSeconds: z.union([z.number(), z.null()]).optional(), deletedAt: z.union([LuxonDateTimeSchema, z.null()]).optional(), egressExportIntervalSeconds: z.union([z.number(), z.null()]).optional(), egressFFFields: z.union([z.string(), z.null()]).optional(), egressFFHeaders: z.union([z.string(), z.null()]).optional(), enabledWebappTimekeepingFeatures: z.union([EnabledWebappTimekeepingFeaturesSchema, z.null()]).optional(), dataRetention: z.union([DataRetentionConfigurationSchema, z.null()]).optional(), privacy: z.union([CustomerPrivacyConfigurationSchema, z.null()]).optional(), enabledWebappAdministrativeFeatures: z.union([EnabledWebappAdministrativeFeaturesSchema, z.null()]).optional(), webexTracking: z.union([WebexTrackingSchema, z.null()]).optional(), webexContacts: z.union([WebexContactsSchema, z.null()]).optional(), ringCentralTracking: z.union([RingCentralTrackingSchema, z.null()]).optional(), enablePostReleaseEditing: z.union([z.boolean(), z.null()]).optional(), narrativeGuidelinesMode: z.union([z.enum(['customer_only', 'inferred_only', 'customer_then_inferred', 'disabled']), z.null()]).optional(), summaryCharacterLimitCount: z.union([z.number(), z.null()]).optional(), enableLaurelConnect: z.union([z.boolean(), z.null()]).optional(), enableTracking: z.union([z.boolean(), z.null()]).optional(), enableTrackingMicrosoftTeams: z.union([z.boolean(), z.null()]).optional(), enableTrackingGoogle: z.union([z.boolean(), z.null()]).optional(), enableTrackingZoom: z.union([z.boolean(), z.null()]).optional(), enableCloudAssistantCdr: z.union([z.boolean(), z.null()]).optional(), feedbackUrl: z.union([z.string(), z.null()]).optional(), fiscalYearStartDate: z.union([LuxonDateTimeSchema, z.null()]).optional(), fiscalQ2StartDate: z.union([LuxonDateSchema, z.null()]).optional(), fiscalQ3StartDate: z.union([LuxonDateSchema, z.null()]).optional(), fiscalQ4StartDate: z.union([LuxonDateSchema, z.null()]).optional(), i18Language: z.union([z.string(), z.null()]).optional(), launchDarklyCustomerKey: z.union([z.string(), z.null()]).optional(), launchDarklyEnvironmentKey: z.union([z.string(), z.null()]).optional(), launchDarklyRelay: z.union([z.string(), z.null()]).optional(), laurelConnectType: z.union([z.enum(['ADERANT', 'CSV']), z.null()]).optional(), laurelConnectCsvBucketArn: z.union([z.string(), z.null()]).optional(), laurelConnectSnsSubscriptionArn: z.union([z.string(), z.null()]).optional(), logLevel: z.union([z.enum(['DEBUG', 'INFO', 'ERROR', 'WARN']), z.null()]).optional(), name: z.union([z.string(), z.null()]).optional(), salesforceId: z.union([z.string(), z.null()]).optional(), supportUrl: z.union([z.string(), z.null()]).optional(), laurelUrl: z.union([z.string(), z.null()]).optional(), timeServiceUrl: z.union([z.string(), z.null()]).optional(), trackingMicrosoftGraphApiAppId: z.union([z.string(), z.null()]).optional(), trackingMicrosoftGraphApiTenantId: z.union([z.string(), z.null()]).optional(), trackingMicrosoftTeamsGraphApiSecretId: z.union([z.string().min(1), z.null()]).optional(), trackingMicrosoftTeamsGraphApiSecret: z.union([z.string().min(1), z.null()]).optional(), trackingMicrosoftTeamsGraphApiSecretExpiration: z.union([LuxonDateTimeSchema, z.null()]).optional(), trackingMicrosoftTeamsGraphApiSubscriptionSecret: z.union([z.string(), z.null()]).optional(), trackingGoogleProjectId: z.union([z.string(), z.null()]).optional(), trackingGoogleServiceAccountEmail: z.union([z.string(), z.null()]).optional(), trackingGoogleServiceAccountPrivateKey: z.union([z.string().min(1), z.null()]).optional(), trackingZoomApiAccountId: z.union([z.string(), z.null()]).optional(), trackingZoomApiAppSecret: z.union([z.string().min(1), z.null()]).optional(), intappTermsApiKey: z.union([z.string(), z.null()]).optional(), intappTermsApiSecret: z.union([z.string().min(1), z.null()]).optional(), intappTermsRestrictedWordEnforcementLevel: z.union([z.enum(['block', 'acknowledge', 'warn', 'off']), z.null()]).optional(), trackingZoomApiClientId: z.union([z.string(), z.null()]).optional(), trackingZoomApiEventSecretToken: z.union([z.string().min(1), z.null()]).optional(), trackingZoomApiVariant: z.union([z.enum(['Zoom', 'ZoomGov']), z.null()]).optional(), enableOutlookFolderSearch: z.union([z.boolean(), z.null()]).optional(), outlookServerType: z.union([z.enum(['O365', 'OnPremise']), z.null()]).optional(), outlookServerUrl: z.union([z.string(), z.null()]).optional(), outlookFolderSearchAdminUsername: z.union([z.string(), z.null()]).optional(), outlookFolderSearchAdminPassword: z.union([z.string().min(1), z.null()]).optional(), outlookFolderSearchAdminDomain: z.union([z.string(), z.null()]).optional(), outlookFolderSearchAzureAppSecret: z.union([z.string().min(1), z.null()]).optional(), outlookFolderSearchAzureAppSecretExpiration: z.union([LuxonDateTimeSchema, z.null()]).optional(), outlookFolderSearchAzureAppClientId: z.union([z.string(), z.null()]).optional(), outlookFolderSearchAzureTenantId: z.union([z.string(), z.null()]).optional(), microsoftApiType: z.union([z.enum(['Ews', 'Graph']), z.null()]).optional(), laurelConnectSftpUserRoleName: z.union([z.string(), z.null()]).optional(), laurelConnectSftpUserSshPrivateKey: z.union([z.string().min(1), z.null()]).optional(), webappDisplayClientCallSignForInitiatives: z.union([z.boolean(), z.null()]).optional(), version: LuxonDateTimeSchema, versionUserId: z.union([ObjectIdSchema, z.null()]).optional(), defaultDateTimeLocale: z.union([z.string(), z.null()]).optional(), switchInitiativeDisplayLabel: z.union([z.boolean(), z.null()]).optional(), delegateMapping: z.union([DelegateMappingConfigurationSchema, z.null()]).optional(), timesheetInitiativeCategorizationScoreThreshold: z.union([z.number(), z.null()]).optional(), userInitiativesEnabled: z.union([z.boolean(), z.null()]).optional(), allowUserVersionOverride: z.union([z.boolean(), z.null()]).optional(), autoAddUsers: z.union([z.boolean(), z.null()]).optional(), disableMobileApp: z.union([z.boolean(), z.null()]).optional(), onboardingResource: z.union([OnboardingResourceSchema, z.null()]).optional(), _id: ObjectIdSchema, customerId: ObjectIdSchema, schemaVersion: z.union([z.string(), z.null()]).optional(), signal: z.union([SignalCustomerConfigSchema, z.null()]).optional() });
912
935
 
913
936
  // Compile-time type assertions - ensure interfaces match schemas
914
937
  type _AssertGlobalConfigCreateDto = _AssertEqual<GlobalConfigCreateDto, z.infer<typeof GlobalConfigCreateDtoSchema>>;
@@ -926,7 +949,6 @@ type _AssertTimerCarryoverFields = _AssertEqual<TimerCarryoverFields, z.infer<ty
926
949
  type _AssertUserPrivacyConfiguration = _AssertEqual<UserPrivacyConfiguration, z.infer<typeof UserPrivacyConfigurationSchema>>;
927
950
  type _AssertWebappWorkActivityCustomFilter = _AssertEqual<WebappWorkActivityCustomFilter, z.infer<typeof WebappWorkActivityCustomFilterSchema>>;
928
951
  type _AssertTimeZoneEntity = _AssertEqual<TimeZoneEntity, z.infer<typeof TimeZoneEntitySchema>>;
929
- type _AssertCustomerEncryptionKey = _AssertEqual<CustomerEncryptionKey, z.infer<typeof CustomerEncryptionKeySchema>>;
930
952
  type _AssertEnabledWebappTimekeepingFeatures = _AssertEqual<EnabledWebappTimekeepingFeatures, z.infer<typeof EnabledWebappTimekeepingFeaturesSchema>>;
931
953
  type _AssertDataRetentionConfiguration = _AssertEqual<DataRetentionConfiguration, z.infer<typeof DataRetentionConfigurationSchema>>;
932
954
  type _AssertCustomerPrivacyConfiguration = _AssertEqual<CustomerPrivacyConfiguration, z.infer<typeof CustomerPrivacyConfigurationSchema>>;
@@ -936,6 +958,9 @@ type _AssertDelegateMappingConfiguration = _AssertEqual<DelegateMappingConfigura
936
958
  type _AssertOnboardingVideo = _AssertEqual<OnboardingVideo, z.infer<typeof OnboardingVideoSchema>>;
937
959
  type _AssertWelcomeQuote = _AssertEqual<WelcomeQuote, z.infer<typeof WelcomeQuoteSchema>>;
938
960
  type _AssertTimeVelocityConfig = _AssertEqual<TimeVelocityConfig, z.infer<typeof TimeVelocityConfigSchema>>;
961
+ type _AssertCustomerEncryptionKey = _AssertEqual<CustomerEncryptionKey, z.infer<typeof CustomerEncryptionKeySchema>>;
962
+ type _AssertAwsCustomerEncryptionKey = _AssertEqual<AwsCustomerEncryptionKey, z.infer<typeof AwsCustomerEncryptionKeySchema>>;
963
+ type _AssertAzureCustomerEncryptionKey = _AssertEqual<AzureCustomerEncryptionKey, z.infer<typeof AzureCustomerEncryptionKeySchema>>;
939
964
  type _AssertAgentWebsiteEntryInput = _AssertEqual<AgentWebsiteEntryInput, z.infer<typeof AgentWebsiteEntryInputSchema>>;
940
965
  type _AssertBulkOperationError = _AssertEqual<BulkOperationError, z.infer<typeof BulkOperationErrorSchema>>;
941
966
  type _AssertPrivacyDocumentCreateDto = _AssertEqual<PrivacyDocumentCreateDto, z.infer<typeof PrivacyDocumentCreateDtoSchema>>;