All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.pulumi.gitlab.kotlin.ApplicationSettingsArgs.kt Maven / Gradle / Ivy

Go to download

Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.

There is a newer version: 8.4.2.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.gitlab.kotlin

import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.gitlab.ApplicationSettingsArgs.builder
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import kotlin.Boolean
import kotlin.Deprecated
import kotlin.Double
import kotlin.Int
import kotlin.Pair
import kotlin.String
import kotlin.Suppress
import kotlin.collections.List
import kotlin.collections.Map
import kotlin.jvm.JvmName

/**
 * ## Example Usage
 * @property abuseNotificationEmail If set, abuse reports are sent to this address. Abuse reports are always available in the Admin Area.
 * @property adminMode Require administrators to enable Admin Mode by re-authenticating for administrative tasks.
 * @property afterSignOutPath Where to redirect users after logout.
 * @property afterSignUpText Text shown to the user after signing up.
 * @property akismetApiKey API key for Akismet spam protection.
 * @property akismetEnabled (If enabled, requires: akismet*api*key) Enable or disable Akismet spam protection.
 * @property allowGroupOwnersToManageLdap Set to true to allow group owners to manage LDAP.
 * @property allowLocalRequestsFromSystemHooks Allow requests to the local network from system hooks.
 * @property allowLocalRequestsFromWebHooksAndServices Allow requests to the local network from web hooks and services.
 * @property archiveBuildsInHumanReadable Set the duration for which the jobs are considered as old and expired. After that time passes, the jobs are archived and no longer able to be retried. Make it empty to never expire jobs. It has to be no less than 1 day, for example: 15 days, 1 month, 2 years.
 * @property assetProxyAllowlists Assets that match these domains are not proxied. Wildcards allowed. Your GitLab installation URL is automatically allowlisted. GitLab restart is required to apply changes.
 * @property assetProxyEnabled (If enabled, requires: asset*proxy*url) Enable proxying of assets. GitLab restart is required to apply changes.
 * @property assetProxySecretKey Shared secret with the asset proxy server. GitLab restart is required to apply changes.
 * @property assetProxyUrl URL of the asset proxy server. GitLab restart is required to apply changes.
 * @property authorizedKeysEnabled By default, we write to the authorized_keys file to support Git over SSH without additional configuration. GitLab can be optimized to authenticate SSH keys via the database file. Only disable this if you have configured your OpenSSH server to use the AuthorizedKeysCommand.
 * @property autoDevopsDomain Specify a domain to use by default for every project’s Auto Review Apps and Auto Deploy stages.
 * @property autoDevopsEnabled Enable Auto DevOps for projects by default. It automatically builds, tests, and deploys applications based on a predefined CI/CD configuration.
 * @property automaticPurchasedStorageAllocation Enabling this permits automatic allocation of purchased storage in a namespace.
 * @property canCreateGroup Indicates whether users can create top-level groups. Introduced in GitLab 15.5.
 * @property checkNamespacePlan Enabling this makes only licensed EE features available to projects if the project namespace’s plan includes the feature or if the project is public.
 * @property commitEmailHostname Custom hostname (for private commit emails).
 * @property containerExpirationPoliciesEnableHistoricEntries Enable cleanup policies for all projects.
 * @property containerRegistryCleanupTagsServiceMaxListSize The maximum number of tags that can be deleted in a single execution of cleanup policies.
 * @property containerRegistryDeleteTagsServiceTimeout The maximum time, in seconds, that the cleanup process can take to delete a batch of tags for cleanup policies.
 * @property containerRegistryExpirationPoliciesCaching Caching during the execution of cleanup policies.
 * @property containerRegistryExpirationPoliciesWorkerCapacity Number of workers for cleanup policies.
 * @property containerRegistryTokenExpireDelay Container Registry token duration in minutes.
 * @property deactivateDormantUsers Enable automatic deactivation of dormant users.
 * @property defaultArtifactsExpireIn Set the default expiration time for each job’s artifacts.
 * @property defaultBranchName Instance-level custom initial branch name (introduced in GitLab 13.2).
 * @property defaultBranchProtection Determine if developers can push to the default branch. Can take: 0 (not protected, both users with the Developer role or Maintainer role can push new commits and force push), 1 (partially protected, users with the Developer role or Maintainer role can push new commits, but cannot force push) or 2 (fully protected, users with the Developer or Maintainer role cannot push new commits, but users with the Developer or Maintainer role can; no one can force push) as a parameter. Default is 2.
 * @property defaultCiConfigPath Default CI/CD configuration file and path for new projects (.gitlab-ci.yml if not set).
 * @property defaultGroupVisibility What visibility level new groups receive. Can take private, internal and public as a parameter.
 * @property defaultProjectCreation Default project creation protection. Can take: 0 (No one), 1 (Maintainers) or 2 (Developers + Maintainers).
 * @property defaultProjectVisibility What visibility level new projects receive. Can take private, internal and public as a parameter.
 * @property defaultProjectsLimit Project limit per user.
 * @property defaultSnippetVisibility What visibility level new snippets receive. Can take private, internal and public as a parameter.
 * @property deleteInactiveProjects Enable inactive project deletion feature. Introduced in GitLab 14.10. Became operational in GitLab 15.0 (with feature flag inactive*projects*deletion).
 * @property deletionAdjournedPeriod The number of days to wait before deleting a project or group that is marked for deletion. Value must be between 1 and 90.
 * @property diffMaxFiles Maximum files in a diff.
 * @property diffMaxLines Maximum lines in a diff.
 * @property diffMaxPatchBytes Maximum diff patch size, in bytes.
 * @property disableFeedToken Disable display of RSS/Atom and calendar feed tokens (introduced in GitLab 13.7).
 * @property disabledOauthSignInSources Disabled OAuth sign-in sources.
 * @property dnsRebindingProtectionEnabled Enforce DNS rebinding attack protection.
 * @property domainAllowlists Force people to use only corporate emails for sign-up. Null means there is no restriction.
 * @property domainDenylistEnabled (If enabled, requires: domain_denylist) Allows blocking sign-ups from emails from specific domains.
 * @property domainDenylists Users with email addresses that match these domains cannot sign up. Wildcards allowed. Use separate lines for multiple entries. Ex: domain.com, *.domain.com.
 * @property dsaKeyRestriction The minimum allowed bit length of an uploaded DSA key. 0 means no restriction. -1 disables DSA keys.
 * @property ecdsaKeyRestriction The minimum allowed curve size (in bits) of an uploaded ECDSA key. 0 means no restriction. -1 disables ECDSA keys.
 * @property ecdsaSkKeyRestriction The minimum allowed curve size (in bits) of an uploaded ECDSA*SK key. 0 means no restriction. -1 disables ECDSA*SK keys.
 * @property ed25519KeyRestriction The minimum allowed curve size (in bits) of an uploaded ED25519 key. 0 means no restriction. -1 disables ED25519 keys.
 * @property ed25519SkKeyRestriction The minimum allowed curve size (in bits) of an uploaded ED25519*SK key. 0 means no restriction. -1 disables ED25519*SK keys.
 * @property eksAccessKeyId AWS IAM access key ID.
 * @property eksAccountId Amazon account ID.
 * @property eksIntegrationEnabled Enable integration with Amazon EKS.
 * @property eksSecretAccessKey AWS IAM secret access key.
 * @property elasticsearchAws Enable the use of AWS hosted Elasticsearch.
 * @property elasticsearchAwsAccessKey AWS IAM access key.
 * @property elasticsearchAwsRegion The AWS region the Elasticsearch domain is configured.
 * @property elasticsearchAwsSecretAccessKey AWS IAM secret access key.
 * @property elasticsearchIndexedFieldLengthLimit Maximum size of text fields to index by Elasticsearch. 0 value means no limit. This does not apply to repository and wiki indexing.
 * @property elasticsearchIndexedFileSizeLimitKb Maximum size of repository and wiki files that are indexed by Elasticsearch.
 * @property elasticsearchIndexing Enable Elasticsearch indexing.
 * @property elasticsearchLimitIndexing Limit Elasticsearch to index certain namespaces and projects.
 * @property elasticsearchMaxBulkConcurrency Maximum concurrency of Elasticsearch bulk requests per indexing operation. This only applies to repository indexing operations.
 * @property elasticsearchMaxBulkSizeMb Maximum size of Elasticsearch bulk indexing requests in MB. This only applies to repository indexing operations.
 * @property elasticsearchNamespaceIds The namespaces to index via Elasticsearch if elasticsearch*limit*indexing is enabled.
 * @property elasticsearchPassword The password of your Elasticsearch instance.
 * @property elasticsearchProjectIds The projects to index via Elasticsearch if elasticsearch*limit*indexing is enabled.
 * @property elasticsearchSearch Enable Elasticsearch search.
 * @property elasticsearchUrls The URL to use for connecting to Elasticsearch. Use a comma-separated list to support cluster (for example, http://localhost:9200, http://localhost:9201).
 * @property elasticsearchUsername The username of your Elasticsearch instance.
 * @property emailAdditionalText Additional text added to the bottom of every email for legal/auditing/compliance reasons.
 * @property emailAuthorInBody Some email servers do not support overriding the email sender name. Enable this option to include the name of the author of the issue, merge request or comment in the email body instead.
 * @property enabledGitAccessProtocol Enabled protocols for Git access. Allowed values are: ssh, http, and nil to allow both protocols.
 * @property enforceNamespaceStorageLimit Enabling this permits enforcement of namespace storage limits.
 * @property enforceTerms (If enabled, requires: terms) Enforce application ToS to all users.
 * @property externalAuthClientCert (If enabled, requires: external*auth*client_key) The certificate to use to authenticate with the external authorization service.
 * @property externalAuthClientKey Private key for the certificate when authentication is required for the external authorization service, this is encrypted when stored.
 * @property externalAuthClientKeyPass Passphrase to use for the private key when authenticating with the external service this is encrypted when stored.
 * @property externalAuthorizationServiceDefaultLabel The default classification label to use when requesting authorization and no classification label has been specified on the project.
 * @property externalAuthorizationServiceEnabled (If enabled, requires: external*authorization*service*default*label, external*authorization*service*timeout and external*authorization*service*url) Enable using an external authorization service for accessing projects.
 * @property externalAuthorizationServiceTimeout The timeout after which an authorization request is aborted, in seconds. When a request times out, access is denied to the user. (min: 0.001, max: 10, step: 0.001).
 * @property externalAuthorizationServiceUrl URL to which authorization requests are directed.
 * @property externalPipelineValidationServiceTimeout How long to wait for a response from the pipeline validation service. Assumes OK if it times out.
 * @property externalPipelineValidationServiceToken Optional. Token to include as the X-Gitlab-Token header in requests to the URL in external*pipeline*validation*service*url.
 * @property externalPipelineValidationServiceUrl URL to use for pipeline validation requests.
 * @property fileTemplateProjectId The ID of a project to load custom file templates from.
 * @property firstDayOfWeek Start day of the week for calendar views and date pickers. Valid values are 0 for Sunday, 1 for Monday, and 6 for Saturday.
 * @property geoNodeAllowedIps Comma-separated list of IPs and CIDRs of allowed secondary nodes. For example, 1.1.1.1, 2.2.2.0/24.
 * @property geoStatusTimeout The amount of seconds after which a request to get a secondary node status times out.
 * @property gitRateLimitUsersAllowlists List of usernames excluded from Git anti-abuse rate limits. Maximum: 100 usernames. Introduced in GitLab 15.2.
 * @property gitTwoFactorSessionExpiry Maximum duration (in minutes) of a session for Git operations when 2FA is enabled.
 * @property gitalyTimeoutDefault Default Gitaly timeout, in seconds. This timeout is not enforced for Git fetch/push operations or Sidekiq jobs. Set to 0 to disable timeouts.
 * @property gitalyTimeoutFast Gitaly fast operation timeout, in seconds. Some Gitaly operations are expected to be fast. If they exceed this threshold, there may be a problem with a storage shard and ‘failing fast’ can help maintain the stability of the GitLab instance. Set to 0 to disable timeouts.
 * @property gitalyTimeoutMedium Medium Gitaly timeout, in seconds. This should be a value between the Fast and the Default timeout. Set to 0 to disable timeouts.
 * @property grafanaEnabled Enable Grafana.
 * @property grafanaUrl Grafana URL.
 * @property gravatarEnabled Enable Gravatar.
 * @property groupOwnersCanManageDefaultBranchProtection Prevent overrides of default branch protection.
 * @property hashedStorageEnabled Create new projects using hashed storage paths: Enable immutable, hash-based paths and repository names to store repositories on disk. This prevents repositories from having to be moved or renamed when the Project URL changes and may improve disk I/O performance. (Always enabled in GitLab versions 13.0 and later, configuration is scheduled for removal in 14.0).
 * @property helpPageHideCommercialContent Hide marketing-related entries from help.
 * @property helpPageSupportUrl Alternate support URL for help page and help dropdown.
 * @property helpPageText Custom text displayed on the help page.
 * @property helpText GitLab server administrator information.
 * @property hideThirdPartyOffers Do not display offers from third parties in GitLab.
 * @property homePageUrl Redirect to this URL when not logged in.
 * @property housekeepingEnabled Enable or disable Git housekeeping.
 * 			If enabled, requires either housekeeping*optimize*repository*period OR housekeeping*bitmaps*enabled, housekeeping*full*repack*period, housekeeping*gc*period, and housekeeping*incremental*repack*period.
 * 			Options housekeeping*bitmaps*enabled, housekeeping*full*repack*period, housekeeping*gc*period, and housekeeping*incremental*repack*period are deprecated. Use housekeeping*optimize*repository*period instead.
 * @property housekeepingFullRepackPeriod Number of Git pushes after which an incremental git repack is run.
 * @property housekeepingGcPeriod Number of Git pushes after which git gc is run.
 * @property housekeepingIncrementalRepackPeriod Number of Git pushes after which an incremental git repack is run.
 * @property housekeepingOptimizeRepositoryPeriod Number of Git pushes after which an incremental git repack is run.
 * @property htmlEmailsEnabled Enable HTML emails.
 * @property importSources Sources to allow project import from. Valid values are: `github`, `bitbucket`, `bitbucket_server`, `fogbugz`, `git`, `gitlab.Project`, `gitea`, `manifest`
 * @property inProductMarketingEmailsEnabled Enable in-product marketing emails.
 * @property inactiveProjectsDeleteAfterMonths If delete*inactive*projects is true, the time (in months) to wait before deleting inactive projects. Introduced in GitLab 14.10. Became operational in GitLab 15.0.
 * @property inactiveProjectsMinSizeMb If delete*inactive*projects is true, the minimum repository size for projects to be checked for inactivity. Introduced in GitLab 14.10. Became operational in GitLab 15.0.
 * @property inactiveProjectsSendWarningEmailAfterMonths If delete*inactive*projects is true, sets the time (in months) to wait before emailing maintainers that the project is scheduled be deleted because it is inactive. Introduced in GitLab 14.10. Became operational in GitLab 15.0.
 * @property invisibleCaptchaEnabled Enable Invisible CAPTCHA spam detection during sign-up.
 * @property issuesCreateLimit Max number of issue creation requests per minute per user.
 * @property keepLatestArtifact Prevent the deletion of the artifacts from the most recent successful jobs, regardless of the expiry time.
 * @property localMarkdownVersion Increase this value when any cached Markdown should be invalidated.
 * @property mailgunEventsEnabled Enable Mailgun event receiver.
 * @property mailgunSigningKey The Mailgun HTTP webhook signing key for receiving events from webhook.
 * @property maintenanceMode When instance is in maintenance mode, non-administrative users can sign in with read-only access and make read-only API requests.
 * @property maintenanceModeMessage Message displayed when instance is in maintenance mode.
 * @property maxArtifactsSize Maximum artifacts size in MB.
 * @property maxAttachmentSize Limit attachment size in MB.
 * @property maxExportSize Maximum export size in MB. 0 for unlimited.
 * @property maxImportSize Maximum import size in MB. 0 for unlimited.
 * @property maxNumberOfRepositoryDownloads Maximum number of unique repositories a user can download in the specified time period before they are banned. Maximum: 10,000 repositories. Introduced in GitLab 15.1.
 * @property maxNumberOfRepositoryDownloadsWithinTimePeriod Reporting time period (in seconds). Maximum: 864000 seconds (10 days). Introduced in GitLab 15.1.
 * @property maxPagesSize Maximum size of pages repositories in MB.
 * @property maxPersonalAccessTokenLifetime Maximum allowable lifetime for access tokens in days.
 * @property maxSshKeyLifetime Maximum allowable lifetime for SSH keys in days. Introduced in GitLab 14.6.
 * @property metricsMethodCallThreshold A method call is only tracked when it takes longer than the given amount of milliseconds.
 * @property minimumPasswordLength Indicates whether passwords require a minimum length. Introduced in GitLab 15.1. Premium and Ultimate only.
 * @property mirrorAvailable Allow repository mirroring to configured by project Maintainers. If disabled, only Administrators can configure repository mirroring.
 * @property mirrorCapacityThreshold Minimum capacity to be available before scheduling more mirrors preemptively.
 * @property mirrorMaxCapacity Maximum number of mirrors that can be synchronizing at the same time.
 * @property mirrorMaxDelay Maximum time (in minutes) between updates that a mirror can have when scheduled to synchronize.
 * @property npmPackageRequestsForwarding Use npmjs.org as a default remote repository when the package is not found in the GitLab Package Registry for npm.
 * @property outboundLocalRequestsWhitelists Define a list of trusted domains or IP addresses to which local requests are allowed when local requests for hooks and services are disabled.
 * @property packageRegistryCleanupPoliciesWorkerCapacity Number of workers assigned to the packages cleanup policies.
 * @property pagesDomainVerificationEnabled Require users to prove ownership of custom domains. Domain verification is an essential security measure for public GitLab sites. Users are required to demonstrate they control a domain before it is enabled.
 * @property passwordAuthenticationEnabledForGit Enable authentication for Git over HTTP(S) via a GitLab account password.
 * @property passwordAuthenticationEnabledForWeb Enable authentication for the web interface via a GitLab account password.
 * @property passwordLowercaseRequired Indicates whether passwords require at least one lowercase letter. Introduced in GitLab 15.1.
 * @property passwordNumberRequired Indicates whether passwords require at least one number. Introduced in GitLab 15.1.
 * @property passwordSymbolRequired Indicates whether passwords require at least one symbol character. Introduced in GitLab 15.1.
 * @property passwordUppercaseRequired Indicates whether passwords require at least one uppercase letter. Introduced in GitLab 15.1.
 * @property performanceBarAllowedGroupPath Path of the group that is allowed to toggle the performance bar.
 * @property personalAccessTokenPrefix Prefix for all generated personal access tokens.
 * @property pipelineLimitPerProjectUserSha Maximum number of pipeline creation requests per minute per user and commit.
 * @property plantumlEnabled (If enabled, requires: plantuml_url) Enable PlantUML integration.
 * @property plantumlUrl The PlantUML instance URL for integration.
 * @property pollingIntervalMultiplier Interval multiplier used by endpoints that perform polling. Set to 0 to disable polling.
 * @property projectExportEnabled Enable project export.
 * @property prometheusMetricsEnabled Enable Prometheus metrics.
 * @property protectedCiVariables CI/CD variables are protected by default.
 * @property pushEventActivitiesLimit Number of changes (branches or tags) in a single push to determine whether individual push events or bulk push events are created. Bulk push events are created if it surpasses that value.
 * @property pushEventHooksLimit Number of changes (branches or tags) in a single push to determine whether webhooks and services fire or not. Webhooks and services aren’t submitted if it surpasses that value.
 * @property pypiPackageRequestsForwarding Use pypi.org as a default remote repository when the package is not found in the GitLab Package Registry for PyPI.
 * @property rateLimitingResponseText When rate limiting is enabled via the throttle_* settings, send this plain text response when a rate limit is exceeded. ‘Retry later’ is sent if this is blank.
 * @property rawBlobRequestLimit Max number of requests per minute for each raw path. To disable throttling set to 0.
 * @property recaptchaEnabled (If enabled, requires: recaptcha*private*key and recaptcha*site*key) Enable reCAPTCHA.
 * @property recaptchaPrivateKey Private key for reCAPTCHA.
 * @property recaptchaSiteKey Site key for reCAPTCHA.
 * @property receiveMaxInputSize Maximum push size (MB).
 * @property repositoryChecksEnabled GitLab periodically runs git fsck in all project and wiki repositories to look for silent disk corruption issues.
 * @property repositorySizeLimit Size limit per repository (MB).
 * @property repositoryStorages (GitLab 13.0 and earlier) List of names of enabled storage paths, taken from gitlab.yml. New projects are created in one of these stores, chosen at random.
 * @property repositoryStoragesWeighted (GitLab 13.1 and later) Hash of names of taken from gitlab.yml to weights. New projects are created in one of these stores, chosen by a weighted random selection.
 * @property requireAdminApprovalAfterUserSignup When enabled, any user that signs up for an account using the registration form is placed under a Pending approval state and has to be explicitly approved by an administrator.
 * @property requireTwoFactorAuthentication (If enabled, requires: two*factor*grace_period) Require all users to set up Two-factor authentication.
 * @property restrictedVisibilityLevels Selected levels cannot be used by non-Administrator users for groups, projects or snippets. Can take private, internal and public as a parameter. Null means there is no restriction.
 * @property rsaKeyRestriction The minimum allowed bit length of an uploaded RSA key. 0 means no restriction. -1 disables RSA keys.
 * @property searchRateLimit Max number of requests per minute for performing a search while authenticated. To disable throttling set to 0.
 * @property searchRateLimitUnauthenticated Max number of requests per minute for performing a search while unauthenticated. To disable throttling set to 0.
 * @property sendUserConfirmationEmail Send confirmation email on sign-up.
 * @property sessionExpireDelay Session duration in minutes. GitLab restart is required to apply changes.
 * @property sharedRunnersEnabled (If enabled, requires: shared*runners*text and shared*runners*minutes) Enable shared runners for new projects.
 * @property sharedRunnersMinutes Set the maximum number of CI/CD minutes that a group can use on shared runners per month.
 * @property sharedRunnersText Shared runners text.
 * @property sidekiqJobLimiterCompressionThresholdBytes The threshold in bytes at which Sidekiq jobs are compressed before being stored in Redis.
 * @property sidekiqJobLimiterLimitBytes The threshold in bytes at which Sidekiq jobs are rejected. 0 means do not reject any job.
 * @property sidekiqJobLimiterMode track or compress. Sets the behavior for Sidekiq job size limits.
 * @property signInText Text on the login page.
 * @property signupEnabled Enable registration.
 * @property slackAppEnabled (If enabled, requires: slack*app*id, slack*app*secret and slack*app*secret) Enable Slack app.
 * @property slackAppId The app ID of the Slack-app.
 * @property slackAppSecret The app secret of the Slack-app.
 * @property slackAppSigningSecret The signing secret of the Slack-app.
 * @property slackAppVerificationToken The verification token of the Slack-app.
 * @property snippetSizeLimit Max snippet content size in bytes.
 * @property snowplowAppId The Snowplow site name / application ID. (for example, gitlab)
 * @property snowplowCollectorHostname The Snowplow collector hostname. (for example, snowplow.trx.gitlab.net)
 * @property snowplowCookieDomain The Snowplow cookie domain. (for example, .gitlab.com)
 * @property snowplowEnabled Enable snowplow tracking.
 * @property sourcegraphEnabled Enables Sourcegraph integration. If enabled, requires sourcegraph_url.
 * @property sourcegraphPublicOnly Blocks Sourcegraph from being loaded on private and internal projects.
 * @property sourcegraphUrl The Sourcegraph instance URL for integration.
 * @property spamCheckApiKey API key used by GitLab for accessing the Spam Check service endpoint.
 * @property spamCheckEndpointEnabled Enables spam checking using external Spam Check API endpoint.
 * @property spamCheckEndpointUrl URL of the external Spamcheck service endpoint. Valid URI schemes are grpc or tls. Specifying tls forces communication to be encrypted.
 * @property suggestPipelineEnabled Enable pipeline suggestion banner.
 * @property terminalMaxSessionTime Maximum time for web terminal websocket connection (in seconds). Set to 0 for unlimited time.
 * @property terms (Required by: enforce_terms) Markdown content for the ToS.
 * @property throttleAuthenticatedApiEnabled (If enabled, requires: throttle*authenticated*api*period*in*seconds and throttle*authenticated*api*requests*per*period) Enable authenticated API request rate limit. Helps reduce request volume (for example, from crawlers or abusive bots).
 * @property throttleAuthenticatedApiPeriodInSeconds Rate limit period (in seconds).
 * @property throttleAuthenticatedApiRequestsPerPeriod Maximum requests per period per user.
 * @property throttleAuthenticatedPackagesApiEnabled (If enabled, requires: throttle*authenticated*packages*api*period*in*seconds and throttle*authenticated*packages*api*requests*per*period) Enable authenticated API request rate limit. Helps reduce request volume (for example, from crawlers or abusive bots). View Package Registry rate limits for more details.
 * @property throttleAuthenticatedPackagesApiPeriodInSeconds Rate limit period (in seconds). View Package Registry rate limits for more details.
 * @property throttleAuthenticatedPackagesApiRequestsPerPeriod Maximum requests per period per user. View Package Registry rate limits for more details.
 * @property throttleAuthenticatedWebEnabled (If enabled, requires: throttle*authenticated*web*period*in*seconds and throttle*authenticated*web*requests*per*period) Enable authenticated web request rate limit. Helps reduce request volume (for example, from crawlers or abusive bots).
 * @property throttleAuthenticatedWebPeriodInSeconds Rate limit period (in seconds).
 * @property throttleAuthenticatedWebRequestsPerPeriod Maximum requests per period per user.
 * @property throttleUnauthenticatedApiEnabled (If enabled, requires: throttle*unauthenticated*api*period*in*seconds and throttle*unauthenticated*api*requests*per*period) Enable unauthenticated API request rate limit. Helps reduce request volume (for example, from crawlers or abusive bots).
 * @property throttleUnauthenticatedApiPeriodInSeconds Rate limit period in seconds.
 * @property throttleUnauthenticatedApiRequestsPerPeriod Max requests per period per IP.
 * @property throttleUnauthenticatedPackagesApiEnabled (If enabled, requires: throttle*unauthenticated*packages*api*period*in*seconds and throttle*unauthenticated*packages*api*requests*per*period) Enable authenticated API request rate limit. Helps reduce request volume (for example, from crawlers or abusive bots). View Package Registry rate limits for more details.
 * @property throttleUnauthenticatedPackagesApiPeriodInSeconds Rate limit period (in seconds). View Package Registry rate limits for more details.
 * @property throttleUnauthenticatedPackagesApiRequestsPerPeriod Maximum requests per period per user. View Package Registry rate limits for more details.
 * @property throttleUnauthenticatedWebEnabled (If enabled, requires: throttle*unauthenticated*web*period*in*seconds and throttle*unauthenticated*web*requests*per*period) Enable unauthenticated web request rate limit. Helps reduce request volume (for example, from crawlers or abusive bots).
 * @property throttleUnauthenticatedWebPeriodInSeconds Rate limit period in seconds.
 * @property throttleUnauthenticatedWebRequestsPerPeriod Max requests per period per IP.
 * @property timeTrackingLimitToHours Limit display of time tracking units to hours.
 * @property twoFactorGracePeriod Amount of time (in hours) that users are allowed to skip forced configuration of two-factor authentication.
 * @property uniqueIpsLimitEnabled (If enabled, requires: unique*ips*limit*per*user and unique*ips*limit*time*window) Limit sign in from multiple IPs.
 * @property uniqueIpsLimitPerUser Maximum number of IPs per user.
 * @property uniqueIpsLimitTimeWindow How many seconds an IP is counted towards the limit.
 * @property usagePingEnabled Every week GitLab reports license usage back to GitLab, Inc.
 * @property userDeactivationEmailsEnabled Send an email to users upon account deactivation.
 * @property userDefaultExternal Newly registered users are external by default.
 * @property userDefaultInternalRegex Specify an email address regex pattern to identify default internal users.
 * @property userOauthApplications Allow users to register any application to use GitLab as an OAuth provider.
 * @property userShowAddSshKeyMessage When set to false disable the You won't be able to pull or push project code via SSH warning shown to users with no uploaded SSH key.
 * @property versionCheckEnabled Let GitLab inform you when an update is available.
 * @property webIdeClientsidePreviewEnabled Live Preview (allow live previews of JavaScript projects in the Web IDE using CodeSandbox Live Preview).
 * @property whatsNewVariant What’s new variant, possible values: all*tiers, current*tier, and disabled.
 * @property wikiPageMaxContentBytes Maximum wiki page content size in bytes. The minimum value is 1024 bytes.
 */
public data class ApplicationSettingsArgs(
    public val abuseNotificationEmail: Output? = null,
    public val adminMode: Output? = null,
    public val afterSignOutPath: Output? = null,
    public val afterSignUpText: Output? = null,
    public val akismetApiKey: Output? = null,
    public val akismetEnabled: Output? = null,
    public val allowGroupOwnersToManageLdap: Output? = null,
    public val allowLocalRequestsFromSystemHooks: Output? = null,
    public val allowLocalRequestsFromWebHooksAndServices: Output? = null,
    public val archiveBuildsInHumanReadable: Output? = null,
    public val assetProxyAllowlists: Output>? = null,
    public val assetProxyEnabled: Output? = null,
    public val assetProxySecretKey: Output? = null,
    public val assetProxyUrl: Output? = null,
    public val authorizedKeysEnabled: Output? = null,
    public val autoDevopsDomain: Output? = null,
    public val autoDevopsEnabled: Output? = null,
    public val automaticPurchasedStorageAllocation: Output? = null,
    public val canCreateGroup: Output? = null,
    public val checkNamespacePlan: Output? = null,
    public val commitEmailHostname: Output? = null,
    public val containerExpirationPoliciesEnableHistoricEntries: Output? = null,
    public val containerRegistryCleanupTagsServiceMaxListSize: Output? = null,
    public val containerRegistryDeleteTagsServiceTimeout: Output? = null,
    public val containerRegistryExpirationPoliciesCaching: Output? = null,
    public val containerRegistryExpirationPoliciesWorkerCapacity: Output? = null,
    public val containerRegistryTokenExpireDelay: Output? = null,
    public val deactivateDormantUsers: Output? = null,
    public val defaultArtifactsExpireIn: Output? = null,
    public val defaultBranchName: Output? = null,
    public val defaultBranchProtection: Output? = null,
    public val defaultCiConfigPath: Output? = null,
    public val defaultGroupVisibility: Output? = null,
    public val defaultProjectCreation: Output? = null,
    public val defaultProjectVisibility: Output? = null,
    public val defaultProjectsLimit: Output? = null,
    public val defaultSnippetVisibility: Output? = null,
    public val deleteInactiveProjects: Output? = null,
    public val deletionAdjournedPeriod: Output? = null,
    public val diffMaxFiles: Output? = null,
    public val diffMaxLines: Output? = null,
    public val diffMaxPatchBytes: Output? = null,
    public val disableFeedToken: Output? = null,
    public val disabledOauthSignInSources: Output>? = null,
    public val dnsRebindingProtectionEnabled: Output? = null,
    public val domainAllowlists: Output>? = null,
    public val domainDenylistEnabled: Output? = null,
    public val domainDenylists: Output>? = null,
    public val dsaKeyRestriction: Output? = null,
    public val ecdsaKeyRestriction: Output? = null,
    public val ecdsaSkKeyRestriction: Output? = null,
    public val ed25519KeyRestriction: Output? = null,
    public val ed25519SkKeyRestriction: Output? = null,
    public val eksAccessKeyId: Output? = null,
    public val eksAccountId: Output? = null,
    public val eksIntegrationEnabled: Output? = null,
    public val eksSecretAccessKey: Output? = null,
    public val elasticsearchAws: Output? = null,
    public val elasticsearchAwsAccessKey: Output? = null,
    public val elasticsearchAwsRegion: Output? = null,
    public val elasticsearchAwsSecretAccessKey: Output? = null,
    public val elasticsearchIndexedFieldLengthLimit: Output? = null,
    public val elasticsearchIndexedFileSizeLimitKb: Output? = null,
    public val elasticsearchIndexing: Output? = null,
    public val elasticsearchLimitIndexing: Output? = null,
    public val elasticsearchMaxBulkConcurrency: Output? = null,
    public val elasticsearchMaxBulkSizeMb: Output? = null,
    public val elasticsearchNamespaceIds: Output>? = null,
    public val elasticsearchPassword: Output? = null,
    public val elasticsearchProjectIds: Output>? = null,
    public val elasticsearchSearch: Output? = null,
    public val elasticsearchUrls: Output>? = null,
    public val elasticsearchUsername: Output? = null,
    public val emailAdditionalText: Output? = null,
    public val emailAuthorInBody: Output? = null,
    public val enabledGitAccessProtocol: Output? = null,
    public val enforceNamespaceStorageLimit: Output? = null,
    public val enforceTerms: Output? = null,
    public val externalAuthClientCert: Output? = null,
    public val externalAuthClientKey: Output? = null,
    public val externalAuthClientKeyPass: Output? = null,
    public val externalAuthorizationServiceDefaultLabel: Output? = null,
    public val externalAuthorizationServiceEnabled: Output? = null,
    public val externalAuthorizationServiceTimeout: Output? = null,
    public val externalAuthorizationServiceUrl: Output? = null,
    public val externalPipelineValidationServiceTimeout: Output? = null,
    public val externalPipelineValidationServiceToken: Output? = null,
    public val externalPipelineValidationServiceUrl: Output? = null,
    public val fileTemplateProjectId: Output? = null,
    public val firstDayOfWeek: Output? = null,
    public val geoNodeAllowedIps: Output? = null,
    public val geoStatusTimeout: Output? = null,
    public val gitRateLimitUsersAllowlists: Output>? = null,
    public val gitTwoFactorSessionExpiry: Output? = null,
    public val gitalyTimeoutDefault: Output? = null,
    public val gitalyTimeoutFast: Output? = null,
    public val gitalyTimeoutMedium: Output? = null,
    public val grafanaEnabled: Output? = null,
    public val grafanaUrl: Output? = null,
    public val gravatarEnabled: Output? = null,
    public val groupOwnersCanManageDefaultBranchProtection: Output? = null,
    public val hashedStorageEnabled: Output? = null,
    public val helpPageHideCommercialContent: Output? = null,
    public val helpPageSupportUrl: Output? = null,
    public val helpPageText: Output? = null,
    public val helpText: Output? = null,
    public val hideThirdPartyOffers: Output? = null,
    public val homePageUrl: Output? = null,
    public val housekeepingEnabled: Output? = null,
    @Deprecated(
        message = """
  housekeeping_full_repack_period is deprecated. Use housekeeping_optimize_repository_period
      instead.
  """,
    )
    public val housekeepingFullRepackPeriod: Output? = null,
    @Deprecated(
        message = """
  housekeeping_gc_period is deprecated. Use housekeeping_optimize_repository_period instead.
  """,
    )
    public val housekeepingGcPeriod: Output? = null,
    @Deprecated(
        message = """
  housekeeping_incremental_repack_period is deprecated. Use housekeeping_optimize_repository_period
      instead.
  """,
    )
    public val housekeepingIncrementalRepackPeriod: Output? = null,
    public val housekeepingOptimizeRepositoryPeriod: Output? = null,
    public val htmlEmailsEnabled: Output? = null,
    public val importSources: Output>? = null,
    public val inProductMarketingEmailsEnabled: Output? = null,
    public val inactiveProjectsDeleteAfterMonths: Output? = null,
    public val inactiveProjectsMinSizeMb: Output? = null,
    public val inactiveProjectsSendWarningEmailAfterMonths: Output? = null,
    public val invisibleCaptchaEnabled: Output? = null,
    public val issuesCreateLimit: Output? = null,
    public val keepLatestArtifact: Output? = null,
    public val localMarkdownVersion: Output? = null,
    public val mailgunEventsEnabled: Output? = null,
    public val mailgunSigningKey: Output? = null,
    public val maintenanceMode: Output? = null,
    public val maintenanceModeMessage: Output? = null,
    public val maxArtifactsSize: Output? = null,
    public val maxAttachmentSize: Output? = null,
    public val maxExportSize: Output? = null,
    public val maxImportSize: Output? = null,
    public val maxNumberOfRepositoryDownloads: Output? = null,
    public val maxNumberOfRepositoryDownloadsWithinTimePeriod: Output? = null,
    public val maxPagesSize: Output? = null,
    public val maxPersonalAccessTokenLifetime: Output? = null,
    public val maxSshKeyLifetime: Output? = null,
    public val metricsMethodCallThreshold: Output? = null,
    public val minimumPasswordLength: Output? = null,
    public val mirrorAvailable: Output? = null,
    public val mirrorCapacityThreshold: Output? = null,
    public val mirrorMaxCapacity: Output? = null,
    public val mirrorMaxDelay: Output? = null,
    public val npmPackageRequestsForwarding: Output? = null,
    public val outboundLocalRequestsWhitelists: Output>? = null,
    public val packageRegistryCleanupPoliciesWorkerCapacity: Output? = null,
    public val pagesDomainVerificationEnabled: Output? = null,
    public val passwordAuthenticationEnabledForGit: Output? = null,
    public val passwordAuthenticationEnabledForWeb: Output? = null,
    public val passwordLowercaseRequired: Output? = null,
    public val passwordNumberRequired: Output? = null,
    public val passwordSymbolRequired: Output? = null,
    public val passwordUppercaseRequired: Output? = null,
    public val performanceBarAllowedGroupPath: Output? = null,
    public val personalAccessTokenPrefix: Output? = null,
    public val pipelineLimitPerProjectUserSha: Output? = null,
    public val plantumlEnabled: Output? = null,
    public val plantumlUrl: Output? = null,
    public val pollingIntervalMultiplier: Output? = null,
    public val projectExportEnabled: Output? = null,
    public val prometheusMetricsEnabled: Output? = null,
    public val protectedCiVariables: Output? = null,
    public val pushEventActivitiesLimit: Output? = null,
    public val pushEventHooksLimit: Output? = null,
    public val pypiPackageRequestsForwarding: Output? = null,
    public val rateLimitingResponseText: Output? = null,
    public val rawBlobRequestLimit: Output? = null,
    public val recaptchaEnabled: Output? = null,
    public val recaptchaPrivateKey: Output? = null,
    public val recaptchaSiteKey: Output? = null,
    public val receiveMaxInputSize: Output? = null,
    public val repositoryChecksEnabled: Output? = null,
    public val repositorySizeLimit: Output? = null,
    public val repositoryStorages: Output>? = null,
    public val repositoryStoragesWeighted: Output>? = null,
    public val requireAdminApprovalAfterUserSignup: Output? = null,
    public val requireTwoFactorAuthentication: Output? = null,
    public val restrictedVisibilityLevels: Output>? = null,
    public val rsaKeyRestriction: Output? = null,
    public val searchRateLimit: Output? = null,
    public val searchRateLimitUnauthenticated: Output? = null,
    public val sendUserConfirmationEmail: Output? = null,
    public val sessionExpireDelay: Output? = null,
    public val sharedRunnersEnabled: Output? = null,
    public val sharedRunnersMinutes: Output? = null,
    public val sharedRunnersText: Output? = null,
    public val sidekiqJobLimiterCompressionThresholdBytes: Output? = null,
    public val sidekiqJobLimiterLimitBytes: Output? = null,
    public val sidekiqJobLimiterMode: Output? = null,
    public val signInText: Output? = null,
    public val signupEnabled: Output? = null,
    public val slackAppEnabled: Output? = null,
    public val slackAppId: Output? = null,
    public val slackAppSecret: Output? = null,
    public val slackAppSigningSecret: Output? = null,
    public val slackAppVerificationToken: Output? = null,
    public val snippetSizeLimit: Output? = null,
    public val snowplowAppId: Output? = null,
    public val snowplowCollectorHostname: Output? = null,
    public val snowplowCookieDomain: Output? = null,
    public val snowplowEnabled: Output? = null,
    public val sourcegraphEnabled: Output? = null,
    public val sourcegraphPublicOnly: Output? = null,
    public val sourcegraphUrl: Output? = null,
    public val spamCheckApiKey: Output? = null,
    public val spamCheckEndpointEnabled: Output? = null,
    public val spamCheckEndpointUrl: Output? = null,
    public val suggestPipelineEnabled: Output? = null,
    public val terminalMaxSessionTime: Output? = null,
    public val terms: Output? = null,
    public val throttleAuthenticatedApiEnabled: Output? = null,
    public val throttleAuthenticatedApiPeriodInSeconds: Output? = null,
    public val throttleAuthenticatedApiRequestsPerPeriod: Output? = null,
    public val throttleAuthenticatedPackagesApiEnabled: Output? = null,
    public val throttleAuthenticatedPackagesApiPeriodInSeconds: Output? = null,
    public val throttleAuthenticatedPackagesApiRequestsPerPeriod: Output? = null,
    public val throttleAuthenticatedWebEnabled: Output? = null,
    public val throttleAuthenticatedWebPeriodInSeconds: Output? = null,
    public val throttleAuthenticatedWebRequestsPerPeriod: Output? = null,
    public val throttleUnauthenticatedApiEnabled: Output? = null,
    public val throttleUnauthenticatedApiPeriodInSeconds: Output? = null,
    public val throttleUnauthenticatedApiRequestsPerPeriod: Output? = null,
    public val throttleUnauthenticatedPackagesApiEnabled: Output? = null,
    public val throttleUnauthenticatedPackagesApiPeriodInSeconds: Output? = null,
    public val throttleUnauthenticatedPackagesApiRequestsPerPeriod: Output? = null,
    public val throttleUnauthenticatedWebEnabled: Output? = null,
    public val throttleUnauthenticatedWebPeriodInSeconds: Output? = null,
    public val throttleUnauthenticatedWebRequestsPerPeriod: Output? = null,
    public val timeTrackingLimitToHours: Output? = null,
    public val twoFactorGracePeriod: Output? = null,
    public val uniqueIpsLimitEnabled: Output? = null,
    public val uniqueIpsLimitPerUser: Output? = null,
    public val uniqueIpsLimitTimeWindow: Output? = null,
    public val usagePingEnabled: Output? = null,
    public val userDeactivationEmailsEnabled: Output? = null,
    public val userDefaultExternal: Output? = null,
    public val userDefaultInternalRegex: Output? = null,
    public val userOauthApplications: Output? = null,
    public val userShowAddSshKeyMessage: Output? = null,
    public val versionCheckEnabled: Output? = null,
    public val webIdeClientsidePreviewEnabled: Output? = null,
    public val whatsNewVariant: Output? = null,
    public val wikiPageMaxContentBytes: Output? = null,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.gitlab.ApplicationSettingsArgs =
        com.pulumi.gitlab.ApplicationSettingsArgs.builder()
            .abuseNotificationEmail(abuseNotificationEmail?.applyValue({ args0 -> args0 }))
            .adminMode(adminMode?.applyValue({ args0 -> args0 }))
            .afterSignOutPath(afterSignOutPath?.applyValue({ args0 -> args0 }))
            .afterSignUpText(afterSignUpText?.applyValue({ args0 -> args0 }))
            .akismetApiKey(akismetApiKey?.applyValue({ args0 -> args0 }))
            .akismetEnabled(akismetEnabled?.applyValue({ args0 -> args0 }))
            .allowGroupOwnersToManageLdap(allowGroupOwnersToManageLdap?.applyValue({ args0 -> args0 }))
            .allowLocalRequestsFromSystemHooks(
                allowLocalRequestsFromSystemHooks?.applyValue({ args0 ->
                    args0
                }),
            )
            .allowLocalRequestsFromWebHooksAndServices(
                allowLocalRequestsFromWebHooksAndServices?.applyValue({ args0 ->
                    args0
                }),
            )
            .archiveBuildsInHumanReadable(archiveBuildsInHumanReadable?.applyValue({ args0 -> args0 }))
            .assetProxyAllowlists(assetProxyAllowlists?.applyValue({ args0 -> args0.map({ args0 -> args0 }) }))
            .assetProxyEnabled(assetProxyEnabled?.applyValue({ args0 -> args0 }))
            .assetProxySecretKey(assetProxySecretKey?.applyValue({ args0 -> args0 }))
            .assetProxyUrl(assetProxyUrl?.applyValue({ args0 -> args0 }))
            .authorizedKeysEnabled(authorizedKeysEnabled?.applyValue({ args0 -> args0 }))
            .autoDevopsDomain(autoDevopsDomain?.applyValue({ args0 -> args0 }))
            .autoDevopsEnabled(autoDevopsEnabled?.applyValue({ args0 -> args0 }))
            .automaticPurchasedStorageAllocation(
                automaticPurchasedStorageAllocation?.applyValue({ args0 ->
                    args0
                }),
            )
            .canCreateGroup(canCreateGroup?.applyValue({ args0 -> args0 }))
            .checkNamespacePlan(checkNamespacePlan?.applyValue({ args0 -> args0 }))
            .commitEmailHostname(commitEmailHostname?.applyValue({ args0 -> args0 }))
            .containerExpirationPoliciesEnableHistoricEntries(
                containerExpirationPoliciesEnableHistoricEntries?.applyValue({ args0 ->
                    args0
                }),
            )
            .containerRegistryCleanupTagsServiceMaxListSize(
                containerRegistryCleanupTagsServiceMaxListSize?.applyValue({ args0 ->
                    args0
                }),
            )
            .containerRegistryDeleteTagsServiceTimeout(
                containerRegistryDeleteTagsServiceTimeout?.applyValue({ args0 ->
                    args0
                }),
            )
            .containerRegistryExpirationPoliciesCaching(
                containerRegistryExpirationPoliciesCaching?.applyValue({ args0 ->
                    args0
                }),
            )
            .containerRegistryExpirationPoliciesWorkerCapacity(
                containerRegistryExpirationPoliciesWorkerCapacity?.applyValue({ args0 ->
                    args0
                }),
            )
            .containerRegistryTokenExpireDelay(
                containerRegistryTokenExpireDelay?.applyValue({ args0 ->
                    args0
                }),
            )
            .deactivateDormantUsers(deactivateDormantUsers?.applyValue({ args0 -> args0 }))
            .defaultArtifactsExpireIn(defaultArtifactsExpireIn?.applyValue({ args0 -> args0 }))
            .defaultBranchName(defaultBranchName?.applyValue({ args0 -> args0 }))
            .defaultBranchProtection(defaultBranchProtection?.applyValue({ args0 -> args0 }))
            .defaultCiConfigPath(defaultCiConfigPath?.applyValue({ args0 -> args0 }))
            .defaultGroupVisibility(defaultGroupVisibility?.applyValue({ args0 -> args0 }))
            .defaultProjectCreation(defaultProjectCreation?.applyValue({ args0 -> args0 }))
            .defaultProjectVisibility(defaultProjectVisibility?.applyValue({ args0 -> args0 }))
            .defaultProjectsLimit(defaultProjectsLimit?.applyValue({ args0 -> args0 }))
            .defaultSnippetVisibility(defaultSnippetVisibility?.applyValue({ args0 -> args0 }))
            .deleteInactiveProjects(deleteInactiveProjects?.applyValue({ args0 -> args0 }))
            .deletionAdjournedPeriod(deletionAdjournedPeriod?.applyValue({ args0 -> args0 }))
            .diffMaxFiles(diffMaxFiles?.applyValue({ args0 -> args0 }))
            .diffMaxLines(diffMaxLines?.applyValue({ args0 -> args0 }))
            .diffMaxPatchBytes(diffMaxPatchBytes?.applyValue({ args0 -> args0 }))
            .disableFeedToken(disableFeedToken?.applyValue({ args0 -> args0 }))
            .disabledOauthSignInSources(
                disabledOauthSignInSources?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0
                    })
                }),
            )
            .dnsRebindingProtectionEnabled(dnsRebindingProtectionEnabled?.applyValue({ args0 -> args0 }))
            .domainAllowlists(domainAllowlists?.applyValue({ args0 -> args0.map({ args0 -> args0 }) }))
            .domainDenylistEnabled(domainDenylistEnabled?.applyValue({ args0 -> args0 }))
            .domainDenylists(domainDenylists?.applyValue({ args0 -> args0.map({ args0 -> args0 }) }))
            .dsaKeyRestriction(dsaKeyRestriction?.applyValue({ args0 -> args0 }))
            .ecdsaKeyRestriction(ecdsaKeyRestriction?.applyValue({ args0 -> args0 }))
            .ecdsaSkKeyRestriction(ecdsaSkKeyRestriction?.applyValue({ args0 -> args0 }))
            .ed25519KeyRestriction(ed25519KeyRestriction?.applyValue({ args0 -> args0 }))
            .ed25519SkKeyRestriction(ed25519SkKeyRestriction?.applyValue({ args0 -> args0 }))
            .eksAccessKeyId(eksAccessKeyId?.applyValue({ args0 -> args0 }))
            .eksAccountId(eksAccountId?.applyValue({ args0 -> args0 }))
            .eksIntegrationEnabled(eksIntegrationEnabled?.applyValue({ args0 -> args0 }))
            .eksSecretAccessKey(eksSecretAccessKey?.applyValue({ args0 -> args0 }))
            .elasticsearchAws(elasticsearchAws?.applyValue({ args0 -> args0 }))
            .elasticsearchAwsAccessKey(elasticsearchAwsAccessKey?.applyValue({ args0 -> args0 }))
            .elasticsearchAwsRegion(elasticsearchAwsRegion?.applyValue({ args0 -> args0 }))
            .elasticsearchAwsSecretAccessKey(elasticsearchAwsSecretAccessKey?.applyValue({ args0 -> args0 }))
            .elasticsearchIndexedFieldLengthLimit(
                elasticsearchIndexedFieldLengthLimit?.applyValue({ args0 ->
                    args0
                }),
            )
            .elasticsearchIndexedFileSizeLimitKb(
                elasticsearchIndexedFileSizeLimitKb?.applyValue({ args0 ->
                    args0
                }),
            )
            .elasticsearchIndexing(elasticsearchIndexing?.applyValue({ args0 -> args0 }))
            .elasticsearchLimitIndexing(elasticsearchLimitIndexing?.applyValue({ args0 -> args0 }))
            .elasticsearchMaxBulkConcurrency(elasticsearchMaxBulkConcurrency?.applyValue({ args0 -> args0 }))
            .elasticsearchMaxBulkSizeMb(elasticsearchMaxBulkSizeMb?.applyValue({ args0 -> args0 }))
            .elasticsearchNamespaceIds(
                elasticsearchNamespaceIds?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0
                    })
                }),
            )
            .elasticsearchPassword(elasticsearchPassword?.applyValue({ args0 -> args0 }))
            .elasticsearchProjectIds(
                elasticsearchProjectIds?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0
                    })
                }),
            )
            .elasticsearchSearch(elasticsearchSearch?.applyValue({ args0 -> args0 }))
            .elasticsearchUrls(elasticsearchUrls?.applyValue({ args0 -> args0.map({ args0 -> args0 }) }))
            .elasticsearchUsername(elasticsearchUsername?.applyValue({ args0 -> args0 }))
            .emailAdditionalText(emailAdditionalText?.applyValue({ args0 -> args0 }))
            .emailAuthorInBody(emailAuthorInBody?.applyValue({ args0 -> args0 }))
            .enabledGitAccessProtocol(enabledGitAccessProtocol?.applyValue({ args0 -> args0 }))
            .enforceNamespaceStorageLimit(enforceNamespaceStorageLimit?.applyValue({ args0 -> args0 }))
            .enforceTerms(enforceTerms?.applyValue({ args0 -> args0 }))
            .externalAuthClientCert(externalAuthClientCert?.applyValue({ args0 -> args0 }))
            .externalAuthClientKey(externalAuthClientKey?.applyValue({ args0 -> args0 }))
            .externalAuthClientKeyPass(externalAuthClientKeyPass?.applyValue({ args0 -> args0 }))
            .externalAuthorizationServiceDefaultLabel(
                externalAuthorizationServiceDefaultLabel?.applyValue({ args0 ->
                    args0
                }),
            )
            .externalAuthorizationServiceEnabled(
                externalAuthorizationServiceEnabled?.applyValue({ args0 ->
                    args0
                }),
            )
            .externalAuthorizationServiceTimeout(
                externalAuthorizationServiceTimeout?.applyValue({ args0 ->
                    args0
                }),
            )
            .externalAuthorizationServiceUrl(externalAuthorizationServiceUrl?.applyValue({ args0 -> args0 }))
            .externalPipelineValidationServiceTimeout(
                externalPipelineValidationServiceTimeout?.applyValue({ args0 ->
                    args0
                }),
            )
            .externalPipelineValidationServiceToken(
                externalPipelineValidationServiceToken?.applyValue({ args0 ->
                    args0
                }),
            )
            .externalPipelineValidationServiceUrl(
                externalPipelineValidationServiceUrl?.applyValue({ args0 ->
                    args0
                }),
            )
            .fileTemplateProjectId(fileTemplateProjectId?.applyValue({ args0 -> args0 }))
            .firstDayOfWeek(firstDayOfWeek?.applyValue({ args0 -> args0 }))
            .geoNodeAllowedIps(geoNodeAllowedIps?.applyValue({ args0 -> args0 }))
            .geoStatusTimeout(geoStatusTimeout?.applyValue({ args0 -> args0 }))
            .gitRateLimitUsersAllowlists(
                gitRateLimitUsersAllowlists?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0
                    })
                }),
            )
            .gitTwoFactorSessionExpiry(gitTwoFactorSessionExpiry?.applyValue({ args0 -> args0 }))
            .gitalyTimeoutDefault(gitalyTimeoutDefault?.applyValue({ args0 -> args0 }))
            .gitalyTimeoutFast(gitalyTimeoutFast?.applyValue({ args0 -> args0 }))
            .gitalyTimeoutMedium(gitalyTimeoutMedium?.applyValue({ args0 -> args0 }))
            .grafanaEnabled(grafanaEnabled?.applyValue({ args0 -> args0 }))
            .grafanaUrl(grafanaUrl?.applyValue({ args0 -> args0 }))
            .gravatarEnabled(gravatarEnabled?.applyValue({ args0 -> args0 }))
            .groupOwnersCanManageDefaultBranchProtection(
                groupOwnersCanManageDefaultBranchProtection?.applyValue({ args0 ->
                    args0
                }),
            )
            .hashedStorageEnabled(hashedStorageEnabled?.applyValue({ args0 -> args0 }))
            .helpPageHideCommercialContent(helpPageHideCommercialContent?.applyValue({ args0 -> args0 }))
            .helpPageSupportUrl(helpPageSupportUrl?.applyValue({ args0 -> args0 }))
            .helpPageText(helpPageText?.applyValue({ args0 -> args0 }))
            .helpText(helpText?.applyValue({ args0 -> args0 }))
            .hideThirdPartyOffers(hideThirdPartyOffers?.applyValue({ args0 -> args0 }))
            .homePageUrl(homePageUrl?.applyValue({ args0 -> args0 }))
            .housekeepingEnabled(housekeepingEnabled?.applyValue({ args0 -> args0 }))
            .housekeepingFullRepackPeriod(housekeepingFullRepackPeriod?.applyValue({ args0 -> args0 }))
            .housekeepingGcPeriod(housekeepingGcPeriod?.applyValue({ args0 -> args0 }))
            .housekeepingIncrementalRepackPeriod(
                housekeepingIncrementalRepackPeriod?.applyValue({ args0 ->
                    args0
                }),
            )
            .housekeepingOptimizeRepositoryPeriod(
                housekeepingOptimizeRepositoryPeriod?.applyValue({ args0 ->
                    args0
                }),
            )
            .htmlEmailsEnabled(htmlEmailsEnabled?.applyValue({ args0 -> args0 }))
            .importSources(importSources?.applyValue({ args0 -> args0.map({ args0 -> args0 }) }))
            .inProductMarketingEmailsEnabled(inProductMarketingEmailsEnabled?.applyValue({ args0 -> args0 }))
            .inactiveProjectsDeleteAfterMonths(
                inactiveProjectsDeleteAfterMonths?.applyValue({ args0 ->
                    args0
                }),
            )
            .inactiveProjectsMinSizeMb(inactiveProjectsMinSizeMb?.applyValue({ args0 -> args0 }))
            .inactiveProjectsSendWarningEmailAfterMonths(
                inactiveProjectsSendWarningEmailAfterMonths?.applyValue({ args0 ->
                    args0
                }),
            )
            .invisibleCaptchaEnabled(invisibleCaptchaEnabled?.applyValue({ args0 -> args0 }))
            .issuesCreateLimit(issuesCreateLimit?.applyValue({ args0 -> args0 }))
            .keepLatestArtifact(keepLatestArtifact?.applyValue({ args0 -> args0 }))
            .localMarkdownVersion(localMarkdownVersion?.applyValue({ args0 -> args0 }))
            .mailgunEventsEnabled(mailgunEventsEnabled?.applyValue({ args0 -> args0 }))
            .mailgunSigningKey(mailgunSigningKey?.applyValue({ args0 -> args0 }))
            .maintenanceMode(maintenanceMode?.applyValue({ args0 -> args0 }))
            .maintenanceModeMessage(maintenanceModeMessage?.applyValue({ args0 -> args0 }))
            .maxArtifactsSize(maxArtifactsSize?.applyValue({ args0 -> args0 }))
            .maxAttachmentSize(maxAttachmentSize?.applyValue({ args0 -> args0 }))
            .maxExportSize(maxExportSize?.applyValue({ args0 -> args0 }))
            .maxImportSize(maxImportSize?.applyValue({ args0 -> args0 }))
            .maxNumberOfRepositoryDownloads(maxNumberOfRepositoryDownloads?.applyValue({ args0 -> args0 }))
            .maxNumberOfRepositoryDownloadsWithinTimePeriod(
                maxNumberOfRepositoryDownloadsWithinTimePeriod?.applyValue({ args0 ->
                    args0
                }),
            )
            .maxPagesSize(maxPagesSize?.applyValue({ args0 -> args0 }))
            .maxPersonalAccessTokenLifetime(maxPersonalAccessTokenLifetime?.applyValue({ args0 -> args0 }))
            .maxSshKeyLifetime(maxSshKeyLifetime?.applyValue({ args0 -> args0 }))
            .metricsMethodCallThreshold(metricsMethodCallThreshold?.applyValue({ args0 -> args0 }))
            .minimumPasswordLength(minimumPasswordLength?.applyValue({ args0 -> args0 }))
            .mirrorAvailable(mirrorAvailable?.applyValue({ args0 -> args0 }))
            .mirrorCapacityThreshold(mirrorCapacityThreshold?.applyValue({ args0 -> args0 }))
            .mirrorMaxCapacity(mirrorMaxCapacity?.applyValue({ args0 -> args0 }))
            .mirrorMaxDelay(mirrorMaxDelay?.applyValue({ args0 -> args0 }))
            .npmPackageRequestsForwarding(npmPackageRequestsForwarding?.applyValue({ args0 -> args0 }))
            .outboundLocalRequestsWhitelists(
                outboundLocalRequestsWhitelists?.applyValue({ args0 ->
                    args0.map({ args0 -> args0 })
                }),
            )
            .packageRegistryCleanupPoliciesWorkerCapacity(
                packageRegistryCleanupPoliciesWorkerCapacity?.applyValue({ args0 ->
                    args0
                }),
            )
            .pagesDomainVerificationEnabled(pagesDomainVerificationEnabled?.applyValue({ args0 -> args0 }))
            .passwordAuthenticationEnabledForGit(
                passwordAuthenticationEnabledForGit?.applyValue({ args0 ->
                    args0
                }),
            )
            .passwordAuthenticationEnabledForWeb(
                passwordAuthenticationEnabledForWeb?.applyValue({ args0 ->
                    args0
                }),
            )
            .passwordLowercaseRequired(passwordLowercaseRequired?.applyValue({ args0 -> args0 }))
            .passwordNumberRequired(passwordNumberRequired?.applyValue({ args0 -> args0 }))
            .passwordSymbolRequired(passwordSymbolRequired?.applyValue({ args0 -> args0 }))
            .passwordUppercaseRequired(passwordUppercaseRequired?.applyValue({ args0 -> args0 }))
            .performanceBarAllowedGroupPath(performanceBarAllowedGroupPath?.applyValue({ args0 -> args0 }))
            .personalAccessTokenPrefix(personalAccessTokenPrefix?.applyValue({ args0 -> args0 }))
            .pipelineLimitPerProjectUserSha(pipelineLimitPerProjectUserSha?.applyValue({ args0 -> args0 }))
            .plantumlEnabled(plantumlEnabled?.applyValue({ args0 -> args0 }))
            .plantumlUrl(plantumlUrl?.applyValue({ args0 -> args0 }))
            .pollingIntervalMultiplier(pollingIntervalMultiplier?.applyValue({ args0 -> args0 }))
            .projectExportEnabled(projectExportEnabled?.applyValue({ args0 -> args0 }))
            .prometheusMetricsEnabled(prometheusMetricsEnabled?.applyValue({ args0 -> args0 }))
            .protectedCiVariables(protectedCiVariables?.applyValue({ args0 -> args0 }))
            .pushEventActivitiesLimit(pushEventActivitiesLimit?.applyValue({ args0 -> args0 }))
            .pushEventHooksLimit(pushEventHooksLimit?.applyValue({ args0 -> args0 }))
            .pypiPackageRequestsForwarding(pypiPackageRequestsForwarding?.applyValue({ args0 -> args0 }))
            .rateLimitingResponseText(rateLimitingResponseText?.applyValue({ args0 -> args0 }))
            .rawBlobRequestLimit(rawBlobRequestLimit?.applyValue({ args0 -> args0 }))
            .recaptchaEnabled(recaptchaEnabled?.applyValue({ args0 -> args0 }))
            .recaptchaPrivateKey(recaptchaPrivateKey?.applyValue({ args0 -> args0 }))
            .recaptchaSiteKey(recaptchaSiteKey?.applyValue({ args0 -> args0 }))
            .receiveMaxInputSize(receiveMaxInputSize?.applyValue({ args0 -> args0 }))
            .repositoryChecksEnabled(repositoryChecksEnabled?.applyValue({ args0 -> args0 }))
            .repositorySizeLimit(repositorySizeLimit?.applyValue({ args0 -> args0 }))
            .repositoryStorages(repositoryStorages?.applyValue({ args0 -> args0.map({ args0 -> args0 }) }))
            .repositoryStoragesWeighted(
                repositoryStoragesWeighted?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.key.to(args0.value)
                    }).toMap()
                }),
            )
            .requireAdminApprovalAfterUserSignup(
                requireAdminApprovalAfterUserSignup?.applyValue({ args0 ->
                    args0
                }),
            )
            .requireTwoFactorAuthentication(requireTwoFactorAuthentication?.applyValue({ args0 -> args0 }))
            .restrictedVisibilityLevels(
                restrictedVisibilityLevels?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0
                    })
                }),
            )
            .rsaKeyRestriction(rsaKeyRestriction?.applyValue({ args0 -> args0 }))
            .searchRateLimit(searchRateLimit?.applyValue({ args0 -> args0 }))
            .searchRateLimitUnauthenticated(searchRateLimitUnauthenticated?.applyValue({ args0 -> args0 }))
            .sendUserConfirmationEmail(sendUserConfirmationEmail?.applyValue({ args0 -> args0 }))
            .sessionExpireDelay(sessionExpireDelay?.applyValue({ args0 -> args0 }))
            .sharedRunnersEnabled(sharedRunnersEnabled?.applyValue({ args0 -> args0 }))
            .sharedRunnersMinutes(sharedRunnersMinutes?.applyValue({ args0 -> args0 }))
            .sharedRunnersText(sharedRunnersText?.applyValue({ args0 -> args0 }))
            .sidekiqJobLimiterCompressionThresholdBytes(
                sidekiqJobLimiterCompressionThresholdBytes?.applyValue({ args0 ->
                    args0
                }),
            )
            .sidekiqJobLimiterLimitBytes(sidekiqJobLimiterLimitBytes?.applyValue({ args0 -> args0 }))
            .sidekiqJobLimiterMode(sidekiqJobLimiterMode?.applyValue({ args0 -> args0 }))
            .signInText(signInText?.applyValue({ args0 -> args0 }))
            .signupEnabled(signupEnabled?.applyValue({ args0 -> args0 }))
            .slackAppEnabled(slackAppEnabled?.applyValue({ args0 -> args0 }))
            .slackAppId(slackAppId?.applyValue({ args0 -> args0 }))
            .slackAppSecret(slackAppSecret?.applyValue({ args0 -> args0 }))
            .slackAppSigningSecret(slackAppSigningSecret?.applyValue({ args0 -> args0 }))
            .slackAppVerificationToken(slackAppVerificationToken?.applyValue({ args0 -> args0 }))
            .snippetSizeLimit(snippetSizeLimit?.applyValue({ args0 -> args0 }))
            .snowplowAppId(snowplowAppId?.applyValue({ args0 -> args0 }))
            .snowplowCollectorHostname(snowplowCollectorHostname?.applyValue({ args0 -> args0 }))
            .snowplowCookieDomain(snowplowCookieDomain?.applyValue({ args0 -> args0 }))
            .snowplowEnabled(snowplowEnabled?.applyValue({ args0 -> args0 }))
            .sourcegraphEnabled(sourcegraphEnabled?.applyValue({ args0 -> args0 }))
            .sourcegraphPublicOnly(sourcegraphPublicOnly?.applyValue({ args0 -> args0 }))
            .sourcegraphUrl(sourcegraphUrl?.applyValue({ args0 -> args0 }))
            .spamCheckApiKey(spamCheckApiKey?.applyValue({ args0 -> args0 }))
            .spamCheckEndpointEnabled(spamCheckEndpointEnabled?.applyValue({ args0 -> args0 }))
            .spamCheckEndpointUrl(spamCheckEndpointUrl?.applyValue({ args0 -> args0 }))
            .suggestPipelineEnabled(suggestPipelineEnabled?.applyValue({ args0 -> args0 }))
            .terminalMaxSessionTime(terminalMaxSessionTime?.applyValue({ args0 -> args0 }))
            .terms(terms?.applyValue({ args0 -> args0 }))
            .throttleAuthenticatedApiEnabled(throttleAuthenticatedApiEnabled?.applyValue({ args0 -> args0 }))
            .throttleAuthenticatedApiPeriodInSeconds(
                throttleAuthenticatedApiPeriodInSeconds?.applyValue({ args0 ->
                    args0
                }),
            )
            .throttleAuthenticatedApiRequestsPerPeriod(
                throttleAuthenticatedApiRequestsPerPeriod?.applyValue({ args0 ->
                    args0
                }),
            )
            .throttleAuthenticatedPackagesApiEnabled(
                throttleAuthenticatedPackagesApiEnabled?.applyValue({ args0 ->
                    args0
                }),
            )
            .throttleAuthenticatedPackagesApiPeriodInSeconds(
                throttleAuthenticatedPackagesApiPeriodInSeconds?.applyValue({ args0 ->
                    args0
                }),
            )
            .throttleAuthenticatedPackagesApiRequestsPerPeriod(
                throttleAuthenticatedPackagesApiRequestsPerPeriod?.applyValue({ args0 ->
                    args0
                }),
            )
            .throttleAuthenticatedWebEnabled(throttleAuthenticatedWebEnabled?.applyValue({ args0 -> args0 }))
            .throttleAuthenticatedWebPeriodInSeconds(
                throttleAuthenticatedWebPeriodInSeconds?.applyValue({ args0 ->
                    args0
                }),
            )
            .throttleAuthenticatedWebRequestsPerPeriod(
                throttleAuthenticatedWebRequestsPerPeriod?.applyValue({ args0 ->
                    args0
                }),
            )
            .throttleUnauthenticatedApiEnabled(
                throttleUnauthenticatedApiEnabled?.applyValue({ args0 ->
                    args0
                }),
            )
            .throttleUnauthenticatedApiPeriodInSeconds(
                throttleUnauthenticatedApiPeriodInSeconds?.applyValue({ args0 ->
                    args0
                }),
            )
            .throttleUnauthenticatedApiRequestsPerPeriod(
                throttleUnauthenticatedApiRequestsPerPeriod?.applyValue({ args0 ->
                    args0
                }),
            )
            .throttleUnauthenticatedPackagesApiEnabled(
                throttleUnauthenticatedPackagesApiEnabled?.applyValue({ args0 ->
                    args0
                }),
            )
            .throttleUnauthenticatedPackagesApiPeriodInSeconds(
                throttleUnauthenticatedPackagesApiPeriodInSeconds?.applyValue({ args0 ->
                    args0
                }),
            )
            .throttleUnauthenticatedPackagesApiRequestsPerPeriod(
                throttleUnauthenticatedPackagesApiRequestsPerPeriod?.applyValue({ args0 ->
                    args0
                }),
            )
            .throttleUnauthenticatedWebEnabled(
                throttleUnauthenticatedWebEnabled?.applyValue({ args0 ->
                    args0
                }),
            )
            .throttleUnauthenticatedWebPeriodInSeconds(
                throttleUnauthenticatedWebPeriodInSeconds?.applyValue({ args0 ->
                    args0
                }),
            )
            .throttleUnauthenticatedWebRequestsPerPeriod(
                throttleUnauthenticatedWebRequestsPerPeriod?.applyValue({ args0 ->
                    args0
                }),
            )
            .timeTrackingLimitToHours(timeTrackingLimitToHours?.applyValue({ args0 -> args0 }))
            .twoFactorGracePeriod(twoFactorGracePeriod?.applyValue({ args0 -> args0 }))
            .uniqueIpsLimitEnabled(uniqueIpsLimitEnabled?.applyValue({ args0 -> args0 }))
            .uniqueIpsLimitPerUser(uniqueIpsLimitPerUser?.applyValue({ args0 -> args0 }))
            .uniqueIpsLimitTimeWindow(uniqueIpsLimitTimeWindow?.applyValue({ args0 -> args0 }))
            .usagePingEnabled(usagePingEnabled?.applyValue({ args0 -> args0 }))
            .userDeactivationEmailsEnabled(userDeactivationEmailsEnabled?.applyValue({ args0 -> args0 }))
            .userDefaultExternal(userDefaultExternal?.applyValue({ args0 -> args0 }))
            .userDefaultInternalRegex(userDefaultInternalRegex?.applyValue({ args0 -> args0 }))
            .userOauthApplications(userOauthApplications?.applyValue({ args0 -> args0 }))
            .userShowAddSshKeyMessage(userShowAddSshKeyMessage?.applyValue({ args0 -> args0 }))
            .versionCheckEnabled(versionCheckEnabled?.applyValue({ args0 -> args0 }))
            .webIdeClientsidePreviewEnabled(webIdeClientsidePreviewEnabled?.applyValue({ args0 -> args0 }))
            .whatsNewVariant(whatsNewVariant?.applyValue({ args0 -> args0 }))
            .wikiPageMaxContentBytes(wikiPageMaxContentBytes?.applyValue({ args0 -> args0 })).build()
}

/**
 * Builder for [ApplicationSettingsArgs].
 */
@PulumiTagMarker
public class ApplicationSettingsArgsBuilder internal constructor() {
    private var abuseNotificationEmail: Output? = null

    private var adminMode: Output? = null

    private var afterSignOutPath: Output? = null

    private var afterSignUpText: Output? = null

    private var akismetApiKey: Output? = null

    private var akismetEnabled: Output? = null

    private var allowGroupOwnersToManageLdap: Output? = null

    private var allowLocalRequestsFromSystemHooks: Output? = null

    private var allowLocalRequestsFromWebHooksAndServices: Output? = null

    private var archiveBuildsInHumanReadable: Output? = null

    private var assetProxyAllowlists: Output>? = null

    private var assetProxyEnabled: Output? = null

    private var assetProxySecretKey: Output? = null

    private var assetProxyUrl: Output? = null

    private var authorizedKeysEnabled: Output? = null

    private var autoDevopsDomain: Output? = null

    private var autoDevopsEnabled: Output? = null

    private var automaticPurchasedStorageAllocation: Output? = null

    private var canCreateGroup: Output? = null

    private var checkNamespacePlan: Output? = null

    private var commitEmailHostname: Output? = null

    private var containerExpirationPoliciesEnableHistoricEntries: Output? = null

    private var containerRegistryCleanupTagsServiceMaxListSize: Output? = null

    private var containerRegistryDeleteTagsServiceTimeout: Output? = null

    private var containerRegistryExpirationPoliciesCaching: Output? = null

    private var containerRegistryExpirationPoliciesWorkerCapacity: Output? = null

    private var containerRegistryTokenExpireDelay: Output? = null

    private var deactivateDormantUsers: Output? = null

    private var defaultArtifactsExpireIn: Output? = null

    private var defaultBranchName: Output? = null

    private var defaultBranchProtection: Output? = null

    private var defaultCiConfigPath: Output? = null

    private var defaultGroupVisibility: Output? = null

    private var defaultProjectCreation: Output? = null

    private var defaultProjectVisibility: Output? = null

    private var defaultProjectsLimit: Output? = null

    private var defaultSnippetVisibility: Output? = null

    private var deleteInactiveProjects: Output? = null

    private var deletionAdjournedPeriod: Output? = null

    private var diffMaxFiles: Output? = null

    private var diffMaxLines: Output? = null

    private var diffMaxPatchBytes: Output? = null

    private var disableFeedToken: Output? = null

    private var disabledOauthSignInSources: Output>? = null

    private var dnsRebindingProtectionEnabled: Output? = null

    private var domainAllowlists: Output>? = null

    private var domainDenylistEnabled: Output? = null

    private var domainDenylists: Output>? = null

    private var dsaKeyRestriction: Output? = null

    private var ecdsaKeyRestriction: Output? = null

    private var ecdsaSkKeyRestriction: Output? = null

    private var ed25519KeyRestriction: Output? = null

    private var ed25519SkKeyRestriction: Output? = null

    private var eksAccessKeyId: Output? = null

    private var eksAccountId: Output? = null

    private var eksIntegrationEnabled: Output? = null

    private var eksSecretAccessKey: Output? = null

    private var elasticsearchAws: Output? = null

    private var elasticsearchAwsAccessKey: Output? = null

    private var elasticsearchAwsRegion: Output? = null

    private var elasticsearchAwsSecretAccessKey: Output? = null

    private var elasticsearchIndexedFieldLengthLimit: Output? = null

    private var elasticsearchIndexedFileSizeLimitKb: Output? = null

    private var elasticsearchIndexing: Output? = null

    private var elasticsearchLimitIndexing: Output? = null

    private var elasticsearchMaxBulkConcurrency: Output? = null

    private var elasticsearchMaxBulkSizeMb: Output? = null

    private var elasticsearchNamespaceIds: Output>? = null

    private var elasticsearchPassword: Output? = null

    private var elasticsearchProjectIds: Output>? = null

    private var elasticsearchSearch: Output? = null

    private var elasticsearchUrls: Output>? = null

    private var elasticsearchUsername: Output? = null

    private var emailAdditionalText: Output? = null

    private var emailAuthorInBody: Output? = null

    private var enabledGitAccessProtocol: Output? = null

    private var enforceNamespaceStorageLimit: Output? = null

    private var enforceTerms: Output? = null

    private var externalAuthClientCert: Output? = null

    private var externalAuthClientKey: Output? = null

    private var externalAuthClientKeyPass: Output? = null

    private var externalAuthorizationServiceDefaultLabel: Output? = null

    private var externalAuthorizationServiceEnabled: Output? = null

    private var externalAuthorizationServiceTimeout: Output? = null

    private var externalAuthorizationServiceUrl: Output? = null

    private var externalPipelineValidationServiceTimeout: Output? = null

    private var externalPipelineValidationServiceToken: Output? = null

    private var externalPipelineValidationServiceUrl: Output? = null

    private var fileTemplateProjectId: Output? = null

    private var firstDayOfWeek: Output? = null

    private var geoNodeAllowedIps: Output? = null

    private var geoStatusTimeout: Output? = null

    private var gitRateLimitUsersAllowlists: Output>? = null

    private var gitTwoFactorSessionExpiry: Output? = null

    private var gitalyTimeoutDefault: Output? = null

    private var gitalyTimeoutFast: Output? = null

    private var gitalyTimeoutMedium: Output? = null

    private var grafanaEnabled: Output? = null

    private var grafanaUrl: Output? = null

    private var gravatarEnabled: Output? = null

    private var groupOwnersCanManageDefaultBranchProtection: Output? = null

    private var hashedStorageEnabled: Output? = null

    private var helpPageHideCommercialContent: Output? = null

    private var helpPageSupportUrl: Output? = null

    private var helpPageText: Output? = null

    private var helpText: Output? = null

    private var hideThirdPartyOffers: Output? = null

    private var homePageUrl: Output? = null

    private var housekeepingEnabled: Output? = null

    private var housekeepingFullRepackPeriod: Output? = null

    private var housekeepingGcPeriod: Output? = null

    private var housekeepingIncrementalRepackPeriod: Output? = null

    private var housekeepingOptimizeRepositoryPeriod: Output? = null

    private var htmlEmailsEnabled: Output? = null

    private var importSources: Output>? = null

    private var inProductMarketingEmailsEnabled: Output? = null

    private var inactiveProjectsDeleteAfterMonths: Output? = null

    private var inactiveProjectsMinSizeMb: Output? = null

    private var inactiveProjectsSendWarningEmailAfterMonths: Output? = null

    private var invisibleCaptchaEnabled: Output? = null

    private var issuesCreateLimit: Output? = null

    private var keepLatestArtifact: Output? = null

    private var localMarkdownVersion: Output? = null

    private var mailgunEventsEnabled: Output? = null

    private var mailgunSigningKey: Output? = null

    private var maintenanceMode: Output? = null

    private var maintenanceModeMessage: Output? = null

    private var maxArtifactsSize: Output? = null

    private var maxAttachmentSize: Output? = null

    private var maxExportSize: Output? = null

    private var maxImportSize: Output? = null

    private var maxNumberOfRepositoryDownloads: Output? = null

    private var maxNumberOfRepositoryDownloadsWithinTimePeriod: Output? = null

    private var maxPagesSize: Output? = null

    private var maxPersonalAccessTokenLifetime: Output? = null

    private var maxSshKeyLifetime: Output? = null

    private var metricsMethodCallThreshold: Output? = null

    private var minimumPasswordLength: Output? = null

    private var mirrorAvailable: Output? = null

    private var mirrorCapacityThreshold: Output? = null

    private var mirrorMaxCapacity: Output? = null

    private var mirrorMaxDelay: Output? = null

    private var npmPackageRequestsForwarding: Output? = null

    private var outboundLocalRequestsWhitelists: Output>? = null

    private var packageRegistryCleanupPoliciesWorkerCapacity: Output? = null

    private var pagesDomainVerificationEnabled: Output? = null

    private var passwordAuthenticationEnabledForGit: Output? = null

    private var passwordAuthenticationEnabledForWeb: Output? = null

    private var passwordLowercaseRequired: Output? = null

    private var passwordNumberRequired: Output? = null

    private var passwordSymbolRequired: Output? = null

    private var passwordUppercaseRequired: Output? = null

    private var performanceBarAllowedGroupPath: Output? = null

    private var personalAccessTokenPrefix: Output? = null

    private var pipelineLimitPerProjectUserSha: Output? = null

    private var plantumlEnabled: Output? = null

    private var plantumlUrl: Output? = null

    private var pollingIntervalMultiplier: Output? = null

    private var projectExportEnabled: Output? = null

    private var prometheusMetricsEnabled: Output? = null

    private var protectedCiVariables: Output? = null

    private var pushEventActivitiesLimit: Output? = null

    private var pushEventHooksLimit: Output? = null

    private var pypiPackageRequestsForwarding: Output? = null

    private var rateLimitingResponseText: Output? = null

    private var rawBlobRequestLimit: Output? = null

    private var recaptchaEnabled: Output? = null

    private var recaptchaPrivateKey: Output? = null

    private var recaptchaSiteKey: Output? = null

    private var receiveMaxInputSize: Output? = null

    private var repositoryChecksEnabled: Output? = null

    private var repositorySizeLimit: Output? = null

    private var repositoryStorages: Output>? = null

    private var repositoryStoragesWeighted: Output>? = null

    private var requireAdminApprovalAfterUserSignup: Output? = null

    private var requireTwoFactorAuthentication: Output? = null

    private var restrictedVisibilityLevels: Output>? = null

    private var rsaKeyRestriction: Output? = null

    private var searchRateLimit: Output? = null

    private var searchRateLimitUnauthenticated: Output? = null

    private var sendUserConfirmationEmail: Output? = null

    private var sessionExpireDelay: Output? = null

    private var sharedRunnersEnabled: Output? = null

    private var sharedRunnersMinutes: Output? = null

    private var sharedRunnersText: Output? = null

    private var sidekiqJobLimiterCompressionThresholdBytes: Output? = null

    private var sidekiqJobLimiterLimitBytes: Output? = null

    private var sidekiqJobLimiterMode: Output? = null

    private var signInText: Output? = null

    private var signupEnabled: Output? = null

    private var slackAppEnabled: Output? = null

    private var slackAppId: Output? = null

    private var slackAppSecret: Output? = null

    private var slackAppSigningSecret: Output? = null

    private var slackAppVerificationToken: Output? = null

    private var snippetSizeLimit: Output? = null

    private var snowplowAppId: Output? = null

    private var snowplowCollectorHostname: Output? = null

    private var snowplowCookieDomain: Output? = null

    private var snowplowEnabled: Output? = null

    private var sourcegraphEnabled: Output? = null

    private var sourcegraphPublicOnly: Output? = null

    private var sourcegraphUrl: Output? = null

    private var spamCheckApiKey: Output? = null

    private var spamCheckEndpointEnabled: Output? = null

    private var spamCheckEndpointUrl: Output? = null

    private var suggestPipelineEnabled: Output? = null

    private var terminalMaxSessionTime: Output? = null

    private var terms: Output? = null

    private var throttleAuthenticatedApiEnabled: Output? = null

    private var throttleAuthenticatedApiPeriodInSeconds: Output? = null

    private var throttleAuthenticatedApiRequestsPerPeriod: Output? = null

    private var throttleAuthenticatedPackagesApiEnabled: Output? = null

    private var throttleAuthenticatedPackagesApiPeriodInSeconds: Output? = null

    private var throttleAuthenticatedPackagesApiRequestsPerPeriod: Output? = null

    private var throttleAuthenticatedWebEnabled: Output? = null

    private var throttleAuthenticatedWebPeriodInSeconds: Output? = null

    private var throttleAuthenticatedWebRequestsPerPeriod: Output? = null

    private var throttleUnauthenticatedApiEnabled: Output? = null

    private var throttleUnauthenticatedApiPeriodInSeconds: Output? = null

    private var throttleUnauthenticatedApiRequestsPerPeriod: Output? = null

    private var throttleUnauthenticatedPackagesApiEnabled: Output? = null

    private var throttleUnauthenticatedPackagesApiPeriodInSeconds: Output? = null

    private var throttleUnauthenticatedPackagesApiRequestsPerPeriod: Output? = null

    private var throttleUnauthenticatedWebEnabled: Output? = null

    private var throttleUnauthenticatedWebPeriodInSeconds: Output? = null

    private var throttleUnauthenticatedWebRequestsPerPeriod: Output? = null

    private var timeTrackingLimitToHours: Output? = null

    private var twoFactorGracePeriod: Output? = null

    private var uniqueIpsLimitEnabled: Output? = null

    private var uniqueIpsLimitPerUser: Output? = null

    private var uniqueIpsLimitTimeWindow: Output? = null

    private var usagePingEnabled: Output? = null

    private var userDeactivationEmailsEnabled: Output? = null

    private var userDefaultExternal: Output? = null

    private var userDefaultInternalRegex: Output? = null

    private var userOauthApplications: Output? = null

    private var userShowAddSshKeyMessage: Output? = null

    private var versionCheckEnabled: Output? = null

    private var webIdeClientsidePreviewEnabled: Output? = null

    private var whatsNewVariant: Output? = null

    private var wikiPageMaxContentBytes: Output? = null

    /**
     * @param value If set, abuse reports are sent to this address. Abuse reports are always available in the Admin Area.
     */
    @JvmName("pbydqahmoxnrpccp")
    public suspend fun abuseNotificationEmail(`value`: Output) {
        this.abuseNotificationEmail = value
    }

    /**
     * @param value Require administrators to enable Admin Mode by re-authenticating for administrative tasks.
     */
    @JvmName("xnsasifapotbepff")
    public suspend fun adminMode(`value`: Output) {
        this.adminMode = value
    }

    /**
     * @param value Where to redirect users after logout.
     */
    @JvmName("pgbfdxbijkixjwsf")
    public suspend fun afterSignOutPath(`value`: Output) {
        this.afterSignOutPath = value
    }

    /**
     * @param value Text shown to the user after signing up.
     */
    @JvmName("ipnbqmtunfgjcfax")
    public suspend fun afterSignUpText(`value`: Output) {
        this.afterSignUpText = value
    }

    /**
     * @param value API key for Akismet spam protection.
     */
    @JvmName("yqyjxvpetqbfaxcc")
    public suspend fun akismetApiKey(`value`: Output) {
        this.akismetApiKey = value
    }

    /**
     * @param value (If enabled, requires: akismet*api*key) Enable or disable Akismet spam protection.
     */
    @JvmName("yksoksrwibmnqdhv")
    public suspend fun akismetEnabled(`value`: Output) {
        this.akismetEnabled = value
    }

    /**
     * @param value Set to true to allow group owners to manage LDAP.
     */
    @JvmName("mqjtmenkhwfqnpps")
    public suspend fun allowGroupOwnersToManageLdap(`value`: Output) {
        this.allowGroupOwnersToManageLdap = value
    }

    /**
     * @param value Allow requests to the local network from system hooks.
     */
    @JvmName("wqndijxcfpukbrse")
    public suspend fun allowLocalRequestsFromSystemHooks(`value`: Output) {
        this.allowLocalRequestsFromSystemHooks = value
    }

    /**
     * @param value Allow requests to the local network from web hooks and services.
     */
    @JvmName("idrvyecrkybfsaua")
    public suspend fun allowLocalRequestsFromWebHooksAndServices(`value`: Output) {
        this.allowLocalRequestsFromWebHooksAndServices = value
    }

    /**
     * @param value Set the duration for which the jobs are considered as old and expired. After that time passes, the jobs are archived and no longer able to be retried. Make it empty to never expire jobs. It has to be no less than 1 day, for example: 15 days, 1 month, 2 years.
     */
    @JvmName("gnmpkocuuggxjjpw")
    public suspend fun archiveBuildsInHumanReadable(`value`: Output) {
        this.archiveBuildsInHumanReadable = value
    }

    /**
     * @param value Assets that match these domains are not proxied. Wildcards allowed. Your GitLab installation URL is automatically allowlisted. GitLab restart is required to apply changes.
     */
    @JvmName("bjsjriawroliidwy")
    public suspend fun assetProxyAllowlists(`value`: Output>) {
        this.assetProxyAllowlists = value
    }

    @JvmName("rcjhynokwmaniylb")
    public suspend fun assetProxyAllowlists(vararg values: Output) {
        this.assetProxyAllowlists = Output.all(values.asList())
    }

    /**
     * @param values Assets that match these domains are not proxied. Wildcards allowed. Your GitLab installation URL is automatically allowlisted. GitLab restart is required to apply changes.
     */
    @JvmName("pmgdtjasoundcsyn")
    public suspend fun assetProxyAllowlists(values: List>) {
        this.assetProxyAllowlists = Output.all(values)
    }

    /**
     * @param value (If enabled, requires: asset*proxy*url) Enable proxying of assets. GitLab restart is required to apply changes.
     */
    @JvmName("asadsaqurfxtbpaf")
    public suspend fun assetProxyEnabled(`value`: Output) {
        this.assetProxyEnabled = value
    }

    /**
     * @param value Shared secret with the asset proxy server. GitLab restart is required to apply changes.
     */
    @JvmName("tlupbqblsxsysapt")
    public suspend fun assetProxySecretKey(`value`: Output) {
        this.assetProxySecretKey = value
    }

    /**
     * @param value URL of the asset proxy server. GitLab restart is required to apply changes.
     */
    @JvmName("gbfukanbeswpbagf")
    public suspend fun assetProxyUrl(`value`: Output) {
        this.assetProxyUrl = value
    }

    /**
     * @param value By default, we write to the authorized_keys file to support Git over SSH without additional configuration. GitLab can be optimized to authenticate SSH keys via the database file. Only disable this if you have configured your OpenSSH server to use the AuthorizedKeysCommand.
     */
    @JvmName("brnxkdhupqyifeqj")
    public suspend fun authorizedKeysEnabled(`value`: Output) {
        this.authorizedKeysEnabled = value
    }

    /**
     * @param value Specify a domain to use by default for every project’s Auto Review Apps and Auto Deploy stages.
     */
    @JvmName("clflygrciguobcya")
    public suspend fun autoDevopsDomain(`value`: Output) {
        this.autoDevopsDomain = value
    }

    /**
     * @param value Enable Auto DevOps for projects by default. It automatically builds, tests, and deploys applications based on a predefined CI/CD configuration.
     */
    @JvmName("kipfarjkjqsdyffu")
    public suspend fun autoDevopsEnabled(`value`: Output) {
        this.autoDevopsEnabled = value
    }

    /**
     * @param value Enabling this permits automatic allocation of purchased storage in a namespace.
     */
    @JvmName("tibmqcbtsqgvipkk")
    public suspend fun automaticPurchasedStorageAllocation(`value`: Output) {
        this.automaticPurchasedStorageAllocation = value
    }

    /**
     * @param value Indicates whether users can create top-level groups. Introduced in GitLab 15.5.
     */
    @JvmName("ufegokwpygvutwpu")
    public suspend fun canCreateGroup(`value`: Output) {
        this.canCreateGroup = value
    }

    /**
     * @param value Enabling this makes only licensed EE features available to projects if the project namespace’s plan includes the feature or if the project is public.
     */
    @JvmName("ylfglhcvrtqukhij")
    public suspend fun checkNamespacePlan(`value`: Output) {
        this.checkNamespacePlan = value
    }

    /**
     * @param value Custom hostname (for private commit emails).
     */
    @JvmName("aitugwqmdqkwbqdp")
    public suspend fun commitEmailHostname(`value`: Output) {
        this.commitEmailHostname = value
    }

    /**
     * @param value Enable cleanup policies for all projects.
     */
    @JvmName("arafsiogbvlenqty")
    public suspend fun containerExpirationPoliciesEnableHistoricEntries(`value`: Output) {
        this.containerExpirationPoliciesEnableHistoricEntries = value
    }

    /**
     * @param value The maximum number of tags that can be deleted in a single execution of cleanup policies.
     */
    @JvmName("dnnmyqqunomuhfsf")
    public suspend fun containerRegistryCleanupTagsServiceMaxListSize(`value`: Output) {
        this.containerRegistryCleanupTagsServiceMaxListSize = value
    }

    /**
     * @param value The maximum time, in seconds, that the cleanup process can take to delete a batch of tags for cleanup policies.
     */
    @JvmName("ipjltkmnshcqkucd")
    public suspend fun containerRegistryDeleteTagsServiceTimeout(`value`: Output) {
        this.containerRegistryDeleteTagsServiceTimeout = value
    }

    /**
     * @param value Caching during the execution of cleanup policies.
     */
    @JvmName("kktdhwqgomkogmcs")
    public suspend fun containerRegistryExpirationPoliciesCaching(`value`: Output) {
        this.containerRegistryExpirationPoliciesCaching = value
    }

    /**
     * @param value Number of workers for cleanup policies.
     */
    @JvmName("jyqkhjexqqpsohwf")
    public suspend fun containerRegistryExpirationPoliciesWorkerCapacity(`value`: Output) {
        this.containerRegistryExpirationPoliciesWorkerCapacity = value
    }

    /**
     * @param value Container Registry token duration in minutes.
     */
    @JvmName("exisepdineustkwn")
    public suspend fun containerRegistryTokenExpireDelay(`value`: Output) {
        this.containerRegistryTokenExpireDelay = value
    }

    /**
     * @param value Enable automatic deactivation of dormant users.
     */
    @JvmName("hrohfermibuqnqgc")
    public suspend fun deactivateDormantUsers(`value`: Output) {
        this.deactivateDormantUsers = value
    }

    /**
     * @param value Set the default expiration time for each job’s artifacts.
     */
    @JvmName("nbpujfriicmmtkbd")
    public suspend fun defaultArtifactsExpireIn(`value`: Output) {
        this.defaultArtifactsExpireIn = value
    }

    /**
     * @param value Instance-level custom initial branch name (introduced in GitLab 13.2).
     */
    @JvmName("xtmbdrdsrwuhyraj")
    public suspend fun defaultBranchName(`value`: Output) {
        this.defaultBranchName = value
    }

    /**
     * @param value Determine if developers can push to the default branch. Can take: 0 (not protected, both users with the Developer role or Maintainer role can push new commits and force push), 1 (partially protected, users with the Developer role or Maintainer role can push new commits, but cannot force push) or 2 (fully protected, users with the Developer or Maintainer role cannot push new commits, but users with the Developer or Maintainer role can; no one can force push) as a parameter. Default is 2.
     */
    @JvmName("aaxccdiwuevyxfob")
    public suspend fun defaultBranchProtection(`value`: Output) {
        this.defaultBranchProtection = value
    }

    /**
     * @param value Default CI/CD configuration file and path for new projects (.gitlab-ci.yml if not set).
     */
    @JvmName("pobquyegkwlfqltj")
    public suspend fun defaultCiConfigPath(`value`: Output) {
        this.defaultCiConfigPath = value
    }

    /**
     * @param value What visibility level new groups receive. Can take private, internal and public as a parameter.
     */
    @JvmName("xfkywhvxcsqbckum")
    public suspend fun defaultGroupVisibility(`value`: Output) {
        this.defaultGroupVisibility = value
    }

    /**
     * @param value Default project creation protection. Can take: 0 (No one), 1 (Maintainers) or 2 (Developers + Maintainers).
     */
    @JvmName("gficwiskpwxyumog")
    public suspend fun defaultProjectCreation(`value`: Output) {
        this.defaultProjectCreation = value
    }

    /**
     * @param value What visibility level new projects receive. Can take private, internal and public as a parameter.
     */
    @JvmName("uxgfsgghiymbwfgr")
    public suspend fun defaultProjectVisibility(`value`: Output) {
        this.defaultProjectVisibility = value
    }

    /**
     * @param value Project limit per user.
     */
    @JvmName("gshuiyeahdrjuggw")
    public suspend fun defaultProjectsLimit(`value`: Output) {
        this.defaultProjectsLimit = value
    }

    /**
     * @param value What visibility level new snippets receive. Can take private, internal and public as a parameter.
     */
    @JvmName("xolrwoaefdoatcqv")
    public suspend fun defaultSnippetVisibility(`value`: Output) {
        this.defaultSnippetVisibility = value
    }

    /**
     * @param value Enable inactive project deletion feature. Introduced in GitLab 14.10. Became operational in GitLab 15.0 (with feature flag inactive*projects*deletion).
     */
    @JvmName("drdetevbftpiafgv")
    public suspend fun deleteInactiveProjects(`value`: Output) {
        this.deleteInactiveProjects = value
    }

    /**
     * @param value The number of days to wait before deleting a project or group that is marked for deletion. Value must be between 1 and 90.
     */
    @JvmName("jxnolwyshhoxulyc")
    public suspend fun deletionAdjournedPeriod(`value`: Output) {
        this.deletionAdjournedPeriod = value
    }

    /**
     * @param value Maximum files in a diff.
     */
    @JvmName("hdfqbptfxecgtrpw")
    public suspend fun diffMaxFiles(`value`: Output) {
        this.diffMaxFiles = value
    }

    /**
     * @param value Maximum lines in a diff.
     */
    @JvmName("gftkqojlnksximtx")
    public suspend fun diffMaxLines(`value`: Output) {
        this.diffMaxLines = value
    }

    /**
     * @param value Maximum diff patch size, in bytes.
     */
    @JvmName("pyjnrumidtcwjbns")
    public suspend fun diffMaxPatchBytes(`value`: Output) {
        this.diffMaxPatchBytes = value
    }

    /**
     * @param value Disable display of RSS/Atom and calendar feed tokens (introduced in GitLab 13.7).
     */
    @JvmName("lmveulagoalvifnl")
    public suspend fun disableFeedToken(`value`: Output) {
        this.disableFeedToken = value
    }

    /**
     * @param value Disabled OAuth sign-in sources.
     */
    @JvmName("qiwbfguhyajmjnrp")
    public suspend fun disabledOauthSignInSources(`value`: Output>) {
        this.disabledOauthSignInSources = value
    }

    @JvmName("ntfyfpyokgituytd")
    public suspend fun disabledOauthSignInSources(vararg values: Output) {
        this.disabledOauthSignInSources = Output.all(values.asList())
    }

    /**
     * @param values Disabled OAuth sign-in sources.
     */
    @JvmName("eoqrdkwswndoatcw")
    public suspend fun disabledOauthSignInSources(values: List>) {
        this.disabledOauthSignInSources = Output.all(values)
    }

    /**
     * @param value Enforce DNS rebinding attack protection.
     */
    @JvmName("dpmjfbeaadjfrsdr")
    public suspend fun dnsRebindingProtectionEnabled(`value`: Output) {
        this.dnsRebindingProtectionEnabled = value
    }

    /**
     * @param value Force people to use only corporate emails for sign-up. Null means there is no restriction.
     */
    @JvmName("vrekcjhaeneylnjc")
    public suspend fun domainAllowlists(`value`: Output>) {
        this.domainAllowlists = value
    }

    @JvmName("mjcrrwrrjdowgrnu")
    public suspend fun domainAllowlists(vararg values: Output) {
        this.domainAllowlists = Output.all(values.asList())
    }

    /**
     * @param values Force people to use only corporate emails for sign-up. Null means there is no restriction.
     */
    @JvmName("uruvgtyknflexkhx")
    public suspend fun domainAllowlists(values: List>) {
        this.domainAllowlists = Output.all(values)
    }

    /**
     * @param value (If enabled, requires: domain_denylist) Allows blocking sign-ups from emails from specific domains.
     */
    @JvmName("rrwlaerbnwikiacr")
    public suspend fun domainDenylistEnabled(`value`: Output) {
        this.domainDenylistEnabled = value
    }

    /**
     * @param value Users with email addresses that match these domains cannot sign up. Wildcards allowed. Use separate lines for multiple entries. Ex: domain.com, *.domain.com.
     */
    @JvmName("rumnwuamlundmaih")
    public suspend fun domainDenylists(`value`: Output>) {
        this.domainDenylists = value
    }

    @JvmName("lpcxicrsxnkisadt")
    public suspend fun domainDenylists(vararg values: Output) {
        this.domainDenylists = Output.all(values.asList())
    }

    /**
     * @param values Users with email addresses that match these domains cannot sign up. Wildcards allowed. Use separate lines for multiple entries. Ex: domain.com, *.domain.com.
     */
    @JvmName("oujbrvkxtgpqrluo")
    public suspend fun domainDenylists(values: List>) {
        this.domainDenylists = Output.all(values)
    }

    /**
     * @param value The minimum allowed bit length of an uploaded DSA key. 0 means no restriction. -1 disables DSA keys.
     */
    @JvmName("wlemyqfgvklcioew")
    public suspend fun dsaKeyRestriction(`value`: Output) {
        this.dsaKeyRestriction = value
    }

    /**
     * @param value The minimum allowed curve size (in bits) of an uploaded ECDSA key. 0 means no restriction. -1 disables ECDSA keys.
     */
    @JvmName("tdcoqggemritxvlu")
    public suspend fun ecdsaKeyRestriction(`value`: Output) {
        this.ecdsaKeyRestriction = value
    }

    /**
     * @param value The minimum allowed curve size (in bits) of an uploaded ECDSA*SK key. 0 means no restriction. -1 disables ECDSA*SK keys.
     */
    @JvmName("jbuciquaywnmfdbb")
    public suspend fun ecdsaSkKeyRestriction(`value`: Output) {
        this.ecdsaSkKeyRestriction = value
    }

    /**
     * @param value The minimum allowed curve size (in bits) of an uploaded ED25519 key. 0 means no restriction. -1 disables ED25519 keys.
     */
    @JvmName("pbkkbxhdynrrlsgt")
    public suspend fun ed25519KeyRestriction(`value`: Output) {
        this.ed25519KeyRestriction = value
    }

    /**
     * @param value The minimum allowed curve size (in bits) of an uploaded ED25519*SK key. 0 means no restriction. -1 disables ED25519*SK keys.
     */
    @JvmName("cyndxhxsvtoabgsb")
    public suspend fun ed25519SkKeyRestriction(`value`: Output) {
        this.ed25519SkKeyRestriction = value
    }

    /**
     * @param value AWS IAM access key ID.
     */
    @JvmName("qyopvegbclwueruj")
    public suspend fun eksAccessKeyId(`value`: Output) {
        this.eksAccessKeyId = value
    }

    /**
     * @param value Amazon account ID.
     */
    @JvmName("ilaagtnttxwsicox")
    public suspend fun eksAccountId(`value`: Output) {
        this.eksAccountId = value
    }

    /**
     * @param value Enable integration with Amazon EKS.
     */
    @JvmName("xedydaenptpnueaw")
    public suspend fun eksIntegrationEnabled(`value`: Output) {
        this.eksIntegrationEnabled = value
    }

    /**
     * @param value AWS IAM secret access key.
     */
    @JvmName("vipdmokfvhdycfdp")
    public suspend fun eksSecretAccessKey(`value`: Output) {
        this.eksSecretAccessKey = value
    }

    /**
     * @param value Enable the use of AWS hosted Elasticsearch.
     */
    @JvmName("kcgxyfbyljekdkcq")
    public suspend fun elasticsearchAws(`value`: Output) {
        this.elasticsearchAws = value
    }

    /**
     * @param value AWS IAM access key.
     */
    @JvmName("pbhvvexrilqsenhh")
    public suspend fun elasticsearchAwsAccessKey(`value`: Output) {
        this.elasticsearchAwsAccessKey = value
    }

    /**
     * @param value The AWS region the Elasticsearch domain is configured.
     */
    @JvmName("wjclwfijywhmcrjx")
    public suspend fun elasticsearchAwsRegion(`value`: Output) {
        this.elasticsearchAwsRegion = value
    }

    /**
     * @param value AWS IAM secret access key.
     */
    @JvmName("tvfjwoeewfmlimcj")
    public suspend fun elasticsearchAwsSecretAccessKey(`value`: Output) {
        this.elasticsearchAwsSecretAccessKey = value
    }

    /**
     * @param value Maximum size of text fields to index by Elasticsearch. 0 value means no limit. This does not apply to repository and wiki indexing.
     */
    @JvmName("fmsjhsnpejxkgiuq")
    public suspend fun elasticsearchIndexedFieldLengthLimit(`value`: Output) {
        this.elasticsearchIndexedFieldLengthLimit = value
    }

    /**
     * @param value Maximum size of repository and wiki files that are indexed by Elasticsearch.
     */
    @JvmName("fpurcnjvynbbspov")
    public suspend fun elasticsearchIndexedFileSizeLimitKb(`value`: Output) {
        this.elasticsearchIndexedFileSizeLimitKb = value
    }

    /**
     * @param value Enable Elasticsearch indexing.
     */
    @JvmName("cfhmncpniaadbffi")
    public suspend fun elasticsearchIndexing(`value`: Output) {
        this.elasticsearchIndexing = value
    }

    /**
     * @param value Limit Elasticsearch to index certain namespaces and projects.
     */
    @JvmName("xkhjcghhchksyfsf")
    public suspend fun elasticsearchLimitIndexing(`value`: Output) {
        this.elasticsearchLimitIndexing = value
    }

    /**
     * @param value Maximum concurrency of Elasticsearch bulk requests per indexing operation. This only applies to repository indexing operations.
     */
    @JvmName("gfigphusayinvehx")
    public suspend fun elasticsearchMaxBulkConcurrency(`value`: Output) {
        this.elasticsearchMaxBulkConcurrency = value
    }

    /**
     * @param value Maximum size of Elasticsearch bulk indexing requests in MB. This only applies to repository indexing operations.
     */
    @JvmName("xpadnqbpiwdomvhx")
    public suspend fun elasticsearchMaxBulkSizeMb(`value`: Output) {
        this.elasticsearchMaxBulkSizeMb = value
    }

    /**
     * @param value The namespaces to index via Elasticsearch if elasticsearch*limit*indexing is enabled.
     */
    @JvmName("rrmihvodaogobsdq")
    public suspend fun elasticsearchNamespaceIds(`value`: Output>) {
        this.elasticsearchNamespaceIds = value
    }

    @JvmName("loxncnkrndjidjbh")
    public suspend fun elasticsearchNamespaceIds(vararg values: Output) {
        this.elasticsearchNamespaceIds = Output.all(values.asList())
    }

    /**
     * @param values The namespaces to index via Elasticsearch if elasticsearch*limit*indexing is enabled.
     */
    @JvmName("mcjgyhpqxdsmbdab")
    public suspend fun elasticsearchNamespaceIds(values: List>) {
        this.elasticsearchNamespaceIds = Output.all(values)
    }

    /**
     * @param value The password of your Elasticsearch instance.
     */
    @JvmName("qwxxogeofadsokbm")
    public suspend fun elasticsearchPassword(`value`: Output) {
        this.elasticsearchPassword = value
    }

    /**
     * @param value The projects to index via Elasticsearch if elasticsearch*limit*indexing is enabled.
     */
    @JvmName("kbcoqgjdtgiruwbl")
    public suspend fun elasticsearchProjectIds(`value`: Output>) {
        this.elasticsearchProjectIds = value
    }

    @JvmName("fjjokaiqkqyetcqo")
    public suspend fun elasticsearchProjectIds(vararg values: Output) {
        this.elasticsearchProjectIds = Output.all(values.asList())
    }

    /**
     * @param values The projects to index via Elasticsearch if elasticsearch*limit*indexing is enabled.
     */
    @JvmName("qslogifqtieohafr")
    public suspend fun elasticsearchProjectIds(values: List>) {
        this.elasticsearchProjectIds = Output.all(values)
    }

    /**
     * @param value Enable Elasticsearch search.
     */
    @JvmName("anqytwsadsadqplu")
    public suspend fun elasticsearchSearch(`value`: Output) {
        this.elasticsearchSearch = value
    }

    /**
     * @param value The URL to use for connecting to Elasticsearch. Use a comma-separated list to support cluster (for example, http://localhost:9200, http://localhost:9201).
     */
    @JvmName("owjsrsehgvxdgxwh")
    public suspend fun elasticsearchUrls(`value`: Output>) {
        this.elasticsearchUrls = value
    }

    @JvmName("suahygpcvacaxlfc")
    public suspend fun elasticsearchUrls(vararg values: Output) {
        this.elasticsearchUrls = Output.all(values.asList())
    }

    /**
     * @param values The URL to use for connecting to Elasticsearch. Use a comma-separated list to support cluster (for example, http://localhost:9200, http://localhost:9201).
     */
    @JvmName("radnrptysqcnwwcd")
    public suspend fun elasticsearchUrls(values: List>) {
        this.elasticsearchUrls = Output.all(values)
    }

    /**
     * @param value The username of your Elasticsearch instance.
     */
    @JvmName("kchkbuvtvvelqfgh")
    public suspend fun elasticsearchUsername(`value`: Output) {
        this.elasticsearchUsername = value
    }

    /**
     * @param value Additional text added to the bottom of every email for legal/auditing/compliance reasons.
     */
    @JvmName("ytpnptvhtqgjruja")
    public suspend fun emailAdditionalText(`value`: Output) {
        this.emailAdditionalText = value
    }

    /**
     * @param value Some email servers do not support overriding the email sender name. Enable this option to include the name of the author of the issue, merge request or comment in the email body instead.
     */
    @JvmName("dkqrgojjgxanekda")
    public suspend fun emailAuthorInBody(`value`: Output) {
        this.emailAuthorInBody = value
    }

    /**
     * @param value Enabled protocols for Git access. Allowed values are: ssh, http, and nil to allow both protocols.
     */
    @JvmName("rufuudiordayfgyo")
    public suspend fun enabledGitAccessProtocol(`value`: Output) {
        this.enabledGitAccessProtocol = value
    }

    /**
     * @param value Enabling this permits enforcement of namespace storage limits.
     */
    @JvmName("xepnyqnysdgqsxhl")
    public suspend fun enforceNamespaceStorageLimit(`value`: Output) {
        this.enforceNamespaceStorageLimit = value
    }

    /**
     * @param value (If enabled, requires: terms) Enforce application ToS to all users.
     */
    @JvmName("jifhwrjnnnqilxms")
    public suspend fun enforceTerms(`value`: Output) {
        this.enforceTerms = value
    }

    /**
     * @param value (If enabled, requires: external*auth*client_key) The certificate to use to authenticate with the external authorization service.
     */
    @JvmName("ftrmgbghxpsjsqok")
    public suspend fun externalAuthClientCert(`value`: Output) {
        this.externalAuthClientCert = value
    }

    /**
     * @param value Private key for the certificate when authentication is required for the external authorization service, this is encrypted when stored.
     */
    @JvmName("ajdbtgyvewgtiuit")
    public suspend fun externalAuthClientKey(`value`: Output) {
        this.externalAuthClientKey = value
    }

    /**
     * @param value Passphrase to use for the private key when authenticating with the external service this is encrypted when stored.
     */
    @JvmName("pswbsvaorenrlxuy")
    public suspend fun externalAuthClientKeyPass(`value`: Output) {
        this.externalAuthClientKeyPass = value
    }

    /**
     * @param value The default classification label to use when requesting authorization and no classification label has been specified on the project.
     */
    @JvmName("lujcgcqxixtquyaq")
    public suspend fun externalAuthorizationServiceDefaultLabel(`value`: Output) {
        this.externalAuthorizationServiceDefaultLabel = value
    }

    /**
     * @param value (If enabled, requires: external*authorization*service*default*label, external*authorization*service*timeout and external*authorization*service*url) Enable using an external authorization service for accessing projects.
     */
    @JvmName("gweubccxkbwruxur")
    public suspend fun externalAuthorizationServiceEnabled(`value`: Output) {
        this.externalAuthorizationServiceEnabled = value
    }

    /**
     * @param value The timeout after which an authorization request is aborted, in seconds. When a request times out, access is denied to the user. (min: 0.001, max: 10, step: 0.001).
     */
    @JvmName("onulgmgjxqxfrylu")
    public suspend fun externalAuthorizationServiceTimeout(`value`: Output) {
        this.externalAuthorizationServiceTimeout = value
    }

    /**
     * @param value URL to which authorization requests are directed.
     */
    @JvmName("iwdnvlmrejlrdktj")
    public suspend fun externalAuthorizationServiceUrl(`value`: Output) {
        this.externalAuthorizationServiceUrl = value
    }

    /**
     * @param value How long to wait for a response from the pipeline validation service. Assumes OK if it times out.
     */
    @JvmName("mosvnfmkqpfpdnyo")
    public suspend fun externalPipelineValidationServiceTimeout(`value`: Output) {
        this.externalPipelineValidationServiceTimeout = value
    }

    /**
     * @param value Optional. Token to include as the X-Gitlab-Token header in requests to the URL in external*pipeline*validation*service*url.
     */
    @JvmName("gsmutfrravjdemlb")
    public suspend fun externalPipelineValidationServiceToken(`value`: Output) {
        this.externalPipelineValidationServiceToken = value
    }

    /**
     * @param value URL to use for pipeline validation requests.
     */
    @JvmName("vvhnjsdswwfxiefo")
    public suspend fun externalPipelineValidationServiceUrl(`value`: Output) {
        this.externalPipelineValidationServiceUrl = value
    }

    /**
     * @param value The ID of a project to load custom file templates from.
     */
    @JvmName("ilpvqrkadtfegjwf")
    public suspend fun fileTemplateProjectId(`value`: Output) {
        this.fileTemplateProjectId = value
    }

    /**
     * @param value Start day of the week for calendar views and date pickers. Valid values are 0 for Sunday, 1 for Monday, and 6 for Saturday.
     */
    @JvmName("vkvyywnbtgixbhin")
    public suspend fun firstDayOfWeek(`value`: Output) {
        this.firstDayOfWeek = value
    }

    /**
     * @param value Comma-separated list of IPs and CIDRs of allowed secondary nodes. For example, 1.1.1.1, 2.2.2.0/24.
     */
    @JvmName("hmdtdrgtcuvxhpdh")
    public suspend fun geoNodeAllowedIps(`value`: Output) {
        this.geoNodeAllowedIps = value
    }

    /**
     * @param value The amount of seconds after which a request to get a secondary node status times out.
     */
    @JvmName("koxjphuejhtohbbo")
    public suspend fun geoStatusTimeout(`value`: Output) {
        this.geoStatusTimeout = value
    }

    /**
     * @param value List of usernames excluded from Git anti-abuse rate limits. Maximum: 100 usernames. Introduced in GitLab 15.2.
     */
    @JvmName("rxayawdqoonywoxn")
    public suspend fun gitRateLimitUsersAllowlists(`value`: Output>) {
        this.gitRateLimitUsersAllowlists = value
    }

    @JvmName("bdjarynuuwrpprjo")
    public suspend fun gitRateLimitUsersAllowlists(vararg values: Output) {
        this.gitRateLimitUsersAllowlists = Output.all(values.asList())
    }

    /**
     * @param values List of usernames excluded from Git anti-abuse rate limits. Maximum: 100 usernames. Introduced in GitLab 15.2.
     */
    @JvmName("irjilumadtbaehso")
    public suspend fun gitRateLimitUsersAllowlists(values: List>) {
        this.gitRateLimitUsersAllowlists = Output.all(values)
    }

    /**
     * @param value Maximum duration (in minutes) of a session for Git operations when 2FA is enabled.
     */
    @JvmName("dpnvfbinxkicqymn")
    public suspend fun gitTwoFactorSessionExpiry(`value`: Output) {
        this.gitTwoFactorSessionExpiry = value
    }

    /**
     * @param value Default Gitaly timeout, in seconds. This timeout is not enforced for Git fetch/push operations or Sidekiq jobs. Set to 0 to disable timeouts.
     */
    @JvmName("ralnecojrwbprwbf")
    public suspend fun gitalyTimeoutDefault(`value`: Output) {
        this.gitalyTimeoutDefault = value
    }

    /**
     * @param value Gitaly fast operation timeout, in seconds. Some Gitaly operations are expected to be fast. If they exceed this threshold, there may be a problem with a storage shard and ‘failing fast’ can help maintain the stability of the GitLab instance. Set to 0 to disable timeouts.
     */
    @JvmName("vsujynvuoujimnxt")
    public suspend fun gitalyTimeoutFast(`value`: Output) {
        this.gitalyTimeoutFast = value
    }

    /**
     * @param value Medium Gitaly timeout, in seconds. This should be a value between the Fast and the Default timeout. Set to 0 to disable timeouts.
     */
    @JvmName("hidbemxkqtjgtgys")
    public suspend fun gitalyTimeoutMedium(`value`: Output) {
        this.gitalyTimeoutMedium = value
    }

    /**
     * @param value Enable Grafana.
     */
    @JvmName("ejjijouourubaldt")
    public suspend fun grafanaEnabled(`value`: Output) {
        this.grafanaEnabled = value
    }

    /**
     * @param value Grafana URL.
     */
    @JvmName("pqplogtdappcmucc")
    public suspend fun grafanaUrl(`value`: Output) {
        this.grafanaUrl = value
    }

    /**
     * @param value Enable Gravatar.
     */
    @JvmName("asmghmnorhvqyhlo")
    public suspend fun gravatarEnabled(`value`: Output) {
        this.gravatarEnabled = value
    }

    /**
     * @param value Prevent overrides of default branch protection.
     */
    @JvmName("wbsvmnmygsvctbkk")
    public suspend fun groupOwnersCanManageDefaultBranchProtection(`value`: Output) {
        this.groupOwnersCanManageDefaultBranchProtection = value
    }

    /**
     * @param value Create new projects using hashed storage paths: Enable immutable, hash-based paths and repository names to store repositories on disk. This prevents repositories from having to be moved or renamed when the Project URL changes and may improve disk I/O performance. (Always enabled in GitLab versions 13.0 and later, configuration is scheduled for removal in 14.0).
     */
    @JvmName("yxiqgnnlktekyjxx")
    public suspend fun hashedStorageEnabled(`value`: Output) {
        this.hashedStorageEnabled = value
    }

    /**
     * @param value Hide marketing-related entries from help.
     */
    @JvmName("fkijtuxjhiixxoor")
    public suspend fun helpPageHideCommercialContent(`value`: Output) {
        this.helpPageHideCommercialContent = value
    }

    /**
     * @param value Alternate support URL for help page and help dropdown.
     */
    @JvmName("rmofxxsexqxugnwy")
    public suspend fun helpPageSupportUrl(`value`: Output) {
        this.helpPageSupportUrl = value
    }

    /**
     * @param value Custom text displayed on the help page.
     */
    @JvmName("fyuhlurbacibmiyo")
    public suspend fun helpPageText(`value`: Output) {
        this.helpPageText = value
    }

    /**
     * @param value GitLab server administrator information.
     */
    @JvmName("pfpfqagcxsdqhdhn")
    public suspend fun helpText(`value`: Output) {
        this.helpText = value
    }

    /**
     * @param value Do not display offers from third parties in GitLab.
     */
    @JvmName("lkxjyxsxwuajxlsq")
    public suspend fun hideThirdPartyOffers(`value`: Output) {
        this.hideThirdPartyOffers = value
    }

    /**
     * @param value Redirect to this URL when not logged in.
     */
    @JvmName("fumiboyhraravpwv")
    public suspend fun homePageUrl(`value`: Output) {
        this.homePageUrl = value
    }

    /**
     * @param value Enable or disable Git housekeeping.
     * 			If enabled, requires either housekeeping*optimize*repository*period OR housekeeping*bitmaps*enabled, housekeeping*full*repack*period, housekeeping*gc*period, and housekeeping*incremental*repack*period.
     * 			Options housekeeping*bitmaps*enabled, housekeeping*full*repack*period, housekeeping*gc*period, and housekeeping*incremental*repack*period are deprecated. Use housekeeping*optimize*repository*period instead.
     */
    @JvmName("oyychvhbbqdduapy")
    public suspend fun housekeepingEnabled(`value`: Output) {
        this.housekeepingEnabled = value
    }

    /**
     * @param value Number of Git pushes after which an incremental git repack is run.
     */
    @Deprecated(
        message = """
  housekeeping_full_repack_period is deprecated. Use housekeeping_optimize_repository_period
      instead.
  """,
    )
    @JvmName("lrbrbaetddysdypn")
    public suspend fun housekeepingFullRepackPeriod(`value`: Output) {
        this.housekeepingFullRepackPeriod = value
    }

    /**
     * @param value Number of Git pushes after which git gc is run.
     */
    @Deprecated(
        message = """
  housekeeping_gc_period is deprecated. Use housekeeping_optimize_repository_period instead.
  """,
    )
    @JvmName("dsdnwgumvouajagb")
    public suspend fun housekeepingGcPeriod(`value`: Output) {
        this.housekeepingGcPeriod = value
    }

    /**
     * @param value Number of Git pushes after which an incremental git repack is run.
     */
    @Deprecated(
        message = """
  housekeeping_incremental_repack_period is deprecated. Use housekeeping_optimize_repository_period
      instead.
  """,
    )
    @JvmName("lxstwvdjgrtsnqrn")
    public suspend fun housekeepingIncrementalRepackPeriod(`value`: Output) {
        this.housekeepingIncrementalRepackPeriod = value
    }

    /**
     * @param value Number of Git pushes after which an incremental git repack is run.
     */
    @JvmName("frvdwuvbbudkchpw")
    public suspend fun housekeepingOptimizeRepositoryPeriod(`value`: Output) {
        this.housekeepingOptimizeRepositoryPeriod = value
    }

    /**
     * @param value Enable HTML emails.
     */
    @JvmName("jptuqrweyfvdtxwk")
    public suspend fun htmlEmailsEnabled(`value`: Output) {
        this.htmlEmailsEnabled = value
    }

    /**
     * @param value Sources to allow project import from. Valid values are: `github`, `bitbucket`, `bitbucket_server`, `fogbugz`, `git`, `gitlab.Project`, `gitea`, `manifest`
     */
    @JvmName("tgckmiybkrqltnrw")
    public suspend fun importSources(`value`: Output>) {
        this.importSources = value
    }

    @JvmName("ajnspduvrdtqhsts")
    public suspend fun importSources(vararg values: Output) {
        this.importSources = Output.all(values.asList())
    }

    /**
     * @param values Sources to allow project import from. Valid values are: `github`, `bitbucket`, `bitbucket_server`, `fogbugz`, `git`, `gitlab.Project`, `gitea`, `manifest`
     */
    @JvmName("wivusyjnfogexvre")
    public suspend fun importSources(values: List>) {
        this.importSources = Output.all(values)
    }

    /**
     * @param value Enable in-product marketing emails.
     */
    @JvmName("asntypfwxrvyljhf")
    public suspend fun inProductMarketingEmailsEnabled(`value`: Output) {
        this.inProductMarketingEmailsEnabled = value
    }

    /**
     * @param value If delete*inactive*projects is true, the time (in months) to wait before deleting inactive projects. Introduced in GitLab 14.10. Became operational in GitLab 15.0.
     */
    @JvmName("usdrtckpivmpqnue")
    public suspend fun inactiveProjectsDeleteAfterMonths(`value`: Output) {
        this.inactiveProjectsDeleteAfterMonths = value
    }

    /**
     * @param value If delete*inactive*projects is true, the minimum repository size for projects to be checked for inactivity. Introduced in GitLab 14.10. Became operational in GitLab 15.0.
     */
    @JvmName("vttuvjypxllwawfp")
    public suspend fun inactiveProjectsMinSizeMb(`value`: Output) {
        this.inactiveProjectsMinSizeMb = value
    }

    /**
     * @param value If delete*inactive*projects is true, sets the time (in months) to wait before emailing maintainers that the project is scheduled be deleted because it is inactive. Introduced in GitLab 14.10. Became operational in GitLab 15.0.
     */
    @JvmName("wgjuipfsnpywxdng")
    public suspend fun inactiveProjectsSendWarningEmailAfterMonths(`value`: Output) {
        this.inactiveProjectsSendWarningEmailAfterMonths = value
    }

    /**
     * @param value Enable Invisible CAPTCHA spam detection during sign-up.
     */
    @JvmName("chrlnaiggirladem")
    public suspend fun invisibleCaptchaEnabled(`value`: Output) {
        this.invisibleCaptchaEnabled = value
    }

    /**
     * @param value Max number of issue creation requests per minute per user.
     */
    @JvmName("jdhoiqpatcwdbtds")
    public suspend fun issuesCreateLimit(`value`: Output) {
        this.issuesCreateLimit = value
    }

    /**
     * @param value Prevent the deletion of the artifacts from the most recent successful jobs, regardless of the expiry time.
     */
    @JvmName("aiojbkhfqugsrdix")
    public suspend fun keepLatestArtifact(`value`: Output) {
        this.keepLatestArtifact = value
    }

    /**
     * @param value Increase this value when any cached Markdown should be invalidated.
     */
    @JvmName("ypqfuqwaegyhdtql")
    public suspend fun localMarkdownVersion(`value`: Output) {
        this.localMarkdownVersion = value
    }

    /**
     * @param value Enable Mailgun event receiver.
     */
    @JvmName("eauwbokuybvxgbiw")
    public suspend fun mailgunEventsEnabled(`value`: Output) {
        this.mailgunEventsEnabled = value
    }

    /**
     * @param value The Mailgun HTTP webhook signing key for receiving events from webhook.
     */
    @JvmName("xopsstwuvkjrcpna")
    public suspend fun mailgunSigningKey(`value`: Output) {
        this.mailgunSigningKey = value
    }

    /**
     * @param value When instance is in maintenance mode, non-administrative users can sign in with read-only access and make read-only API requests.
     */
    @JvmName("npoqmdysdningdwh")
    public suspend fun maintenanceMode(`value`: Output) {
        this.maintenanceMode = value
    }

    /**
     * @param value Message displayed when instance is in maintenance mode.
     */
    @JvmName("ysmnshynhqgkhfoi")
    public suspend fun maintenanceModeMessage(`value`: Output) {
        this.maintenanceModeMessage = value
    }

    /**
     * @param value Maximum artifacts size in MB.
     */
    @JvmName("fgltnbnmigwcrnud")
    public suspend fun maxArtifactsSize(`value`: Output) {
        this.maxArtifactsSize = value
    }

    /**
     * @param value Limit attachment size in MB.
     */
    @JvmName("jtigbatgqmlkxfpk")
    public suspend fun maxAttachmentSize(`value`: Output) {
        this.maxAttachmentSize = value
    }

    /**
     * @param value Maximum export size in MB. 0 for unlimited.
     */
    @JvmName("nvodtamgfemlufrb")
    public suspend fun maxExportSize(`value`: Output) {
        this.maxExportSize = value
    }

    /**
     * @param value Maximum import size in MB. 0 for unlimited.
     */
    @JvmName("omxemspoxigwocvm")
    public suspend fun maxImportSize(`value`: Output) {
        this.maxImportSize = value
    }

    /**
     * @param value Maximum number of unique repositories a user can download in the specified time period before they are banned. Maximum: 10,000 repositories. Introduced in GitLab 15.1.
     */
    @JvmName("oocepuawbhktqrti")
    public suspend fun maxNumberOfRepositoryDownloads(`value`: Output) {
        this.maxNumberOfRepositoryDownloads = value
    }

    /**
     * @param value Reporting time period (in seconds). Maximum: 864000 seconds (10 days). Introduced in GitLab 15.1.
     */
    @JvmName("bqjxiiamhltpkjtc")
    public suspend fun maxNumberOfRepositoryDownloadsWithinTimePeriod(`value`: Output) {
        this.maxNumberOfRepositoryDownloadsWithinTimePeriod = value
    }

    /**
     * @param value Maximum size of pages repositories in MB.
     */
    @JvmName("rpysmirrouelwvpv")
    public suspend fun maxPagesSize(`value`: Output) {
        this.maxPagesSize = value
    }

    /**
     * @param value Maximum allowable lifetime for access tokens in days.
     */
    @JvmName("kuhejsimkppkcftk")
    public suspend fun maxPersonalAccessTokenLifetime(`value`: Output) {
        this.maxPersonalAccessTokenLifetime = value
    }

    /**
     * @param value Maximum allowable lifetime for SSH keys in days. Introduced in GitLab 14.6.
     */
    @JvmName("vullvueopjxpyqnw")
    public suspend fun maxSshKeyLifetime(`value`: Output) {
        this.maxSshKeyLifetime = value
    }

    /**
     * @param value A method call is only tracked when it takes longer than the given amount of milliseconds.
     */
    @JvmName("dbrfnclrbhsqcmtm")
    public suspend fun metricsMethodCallThreshold(`value`: Output) {
        this.metricsMethodCallThreshold = value
    }

    /**
     * @param value Indicates whether passwords require a minimum length. Introduced in GitLab 15.1. Premium and Ultimate only.
     */
    @JvmName("affndigrpwgctqup")
    public suspend fun minimumPasswordLength(`value`: Output) {
        this.minimumPasswordLength = value
    }

    /**
     * @param value Allow repository mirroring to configured by project Maintainers. If disabled, only Administrators can configure repository mirroring.
     */
    @JvmName("fikqeflwnwtfdjel")
    public suspend fun mirrorAvailable(`value`: Output) {
        this.mirrorAvailable = value
    }

    /**
     * @param value Minimum capacity to be available before scheduling more mirrors preemptively.
     */
    @JvmName("xdcjemwxgvfgnqkj")
    public suspend fun mirrorCapacityThreshold(`value`: Output) {
        this.mirrorCapacityThreshold = value
    }

    /**
     * @param value Maximum number of mirrors that can be synchronizing at the same time.
     */
    @JvmName("snabfonutehlirsu")
    public suspend fun mirrorMaxCapacity(`value`: Output) {
        this.mirrorMaxCapacity = value
    }

    /**
     * @param value Maximum time (in minutes) between updates that a mirror can have when scheduled to synchronize.
     */
    @JvmName("ngpwmrhvpgxsyela")
    public suspend fun mirrorMaxDelay(`value`: Output) {
        this.mirrorMaxDelay = value
    }

    /**
     * @param value Use npmjs.org as a default remote repository when the package is not found in the GitLab Package Registry for npm.
     */
    @JvmName("lnolstpqofaqkfpo")
    public suspend fun npmPackageRequestsForwarding(`value`: Output) {
        this.npmPackageRequestsForwarding = value
    }

    /**
     * @param value Define a list of trusted domains or IP addresses to which local requests are allowed when local requests for hooks and services are disabled.
     */
    @JvmName("djpumhosrxtvhlma")
    public suspend fun outboundLocalRequestsWhitelists(`value`: Output>) {
        this.outboundLocalRequestsWhitelists = value
    }

    @JvmName("ytshptucyhveykkx")
    public suspend fun outboundLocalRequestsWhitelists(vararg values: Output) {
        this.outboundLocalRequestsWhitelists = Output.all(values.asList())
    }

    /**
     * @param values Define a list of trusted domains or IP addresses to which local requests are allowed when local requests for hooks and services are disabled.
     */
    @JvmName("khjkkdfkmxfwwnvg")
    public suspend fun outboundLocalRequestsWhitelists(values: List>) {
        this.outboundLocalRequestsWhitelists = Output.all(values)
    }

    /**
     * @param value Number of workers assigned to the packages cleanup policies.
     */
    @JvmName("prcicwumniguquxg")
    public suspend fun packageRegistryCleanupPoliciesWorkerCapacity(`value`: Output) {
        this.packageRegistryCleanupPoliciesWorkerCapacity = value
    }

    /**
     * @param value Require users to prove ownership of custom domains. Domain verification is an essential security measure for public GitLab sites. Users are required to demonstrate they control a domain before it is enabled.
     */
    @JvmName("rmeftrpcnbojnfhh")
    public suspend fun pagesDomainVerificationEnabled(`value`: Output) {
        this.pagesDomainVerificationEnabled = value
    }

    /**
     * @param value Enable authentication for Git over HTTP(S) via a GitLab account password.
     */
    @JvmName("dupkotpvhkdofnnm")
    public suspend fun passwordAuthenticationEnabledForGit(`value`: Output) {
        this.passwordAuthenticationEnabledForGit = value
    }

    /**
     * @param value Enable authentication for the web interface via a GitLab account password.
     */
    @JvmName("pkfubfaxoyoekyim")
    public suspend fun passwordAuthenticationEnabledForWeb(`value`: Output) {
        this.passwordAuthenticationEnabledForWeb = value
    }

    /**
     * @param value Indicates whether passwords require at least one lowercase letter. Introduced in GitLab 15.1.
     */
    @JvmName("qksrgnmgxdcvaale")
    public suspend fun passwordLowercaseRequired(`value`: Output) {
        this.passwordLowercaseRequired = value
    }

    /**
     * @param value Indicates whether passwords require at least one number. Introduced in GitLab 15.1.
     */
    @JvmName("kjtqbkvjjehnxwft")
    public suspend fun passwordNumberRequired(`value`: Output) {
        this.passwordNumberRequired = value
    }

    /**
     * @param value Indicates whether passwords require at least one symbol character. Introduced in GitLab 15.1.
     */
    @JvmName("yahxbuclwtyaqyji")
    public suspend fun passwordSymbolRequired(`value`: Output) {
        this.passwordSymbolRequired = value
    }

    /**
     * @param value Indicates whether passwords require at least one uppercase letter. Introduced in GitLab 15.1.
     */
    @JvmName("mbnqvposubsrrwqe")
    public suspend fun passwordUppercaseRequired(`value`: Output) {
        this.passwordUppercaseRequired = value
    }

    /**
     * @param value Path of the group that is allowed to toggle the performance bar.
     */
    @JvmName("ktyrdoltnrpwpcrx")
    public suspend fun performanceBarAllowedGroupPath(`value`: Output) {
        this.performanceBarAllowedGroupPath = value
    }

    /**
     * @param value Prefix for all generated personal access tokens.
     */
    @JvmName("ekagxurunnfdqrua")
    public suspend fun personalAccessTokenPrefix(`value`: Output) {
        this.personalAccessTokenPrefix = value
    }

    /**
     * @param value Maximum number of pipeline creation requests per minute per user and commit.
     */
    @JvmName("ujsgfbmhcdvooght")
    public suspend fun pipelineLimitPerProjectUserSha(`value`: Output) {
        this.pipelineLimitPerProjectUserSha = value
    }

    /**
     * @param value (If enabled, requires: plantuml_url) Enable PlantUML integration.
     */
    @JvmName("eoredbmfaeorxrjn")
    public suspend fun plantumlEnabled(`value`: Output) {
        this.plantumlEnabled = value
    }

    /**
     * @param value The PlantUML instance URL for integration.
     */
    @JvmName("wpblytnjcfqsmjvr")
    public suspend fun plantumlUrl(`value`: Output) {
        this.plantumlUrl = value
    }

    /**
     * @param value Interval multiplier used by endpoints that perform polling. Set to 0 to disable polling.
     */
    @JvmName("sejohrodqojjfbrj")
    public suspend fun pollingIntervalMultiplier(`value`: Output) {
        this.pollingIntervalMultiplier = value
    }

    /**
     * @param value Enable project export.
     */
    @JvmName("dcmulqoqlqpfyfgv")
    public suspend fun projectExportEnabled(`value`: Output) {
        this.projectExportEnabled = value
    }

    /**
     * @param value Enable Prometheus metrics.
     */
    @JvmName("ydosnscmiumtigiy")
    public suspend fun prometheusMetricsEnabled(`value`: Output) {
        this.prometheusMetricsEnabled = value
    }

    /**
     * @param value CI/CD variables are protected by default.
     */
    @JvmName("gaoscpvjkrcbcqkk")
    public suspend fun protectedCiVariables(`value`: Output) {
        this.protectedCiVariables = value
    }

    /**
     * @param value Number of changes (branches or tags) in a single push to determine whether individual push events or bulk push events are created. Bulk push events are created if it surpasses that value.
     */
    @JvmName("cpyeoodivewxgqls")
    public suspend fun pushEventActivitiesLimit(`value`: Output) {
        this.pushEventActivitiesLimit = value
    }

    /**
     * @param value Number of changes (branches or tags) in a single push to determine whether webhooks and services fire or not. Webhooks and services aren’t submitted if it surpasses that value.
     */
    @JvmName("lcgftqoywqqjaoae")
    public suspend fun pushEventHooksLimit(`value`: Output) {
        this.pushEventHooksLimit = value
    }

    /**
     * @param value Use pypi.org as a default remote repository when the package is not found in the GitLab Package Registry for PyPI.
     */
    @JvmName("uyfqrhihiqbxieuy")
    public suspend fun pypiPackageRequestsForwarding(`value`: Output) {
        this.pypiPackageRequestsForwarding = value
    }

    /**
     * @param value When rate limiting is enabled via the throttle_* settings, send this plain text response when a rate limit is exceeded. ‘Retry later’ is sent if this is blank.
     */
    @JvmName("coiexdjubdwrqsij")
    public suspend fun rateLimitingResponseText(`value`: Output) {
        this.rateLimitingResponseText = value
    }

    /**
     * @param value Max number of requests per minute for each raw path. To disable throttling set to 0.
     */
    @JvmName("ptyifdadyuldxird")
    public suspend fun rawBlobRequestLimit(`value`: Output) {
        this.rawBlobRequestLimit = value
    }

    /**
     * @param value (If enabled, requires: recaptcha*private*key and recaptcha*site*key) Enable reCAPTCHA.
     */
    @JvmName("msqcigsddakubjmm")
    public suspend fun recaptchaEnabled(`value`: Output) {
        this.recaptchaEnabled = value
    }

    /**
     * @param value Private key for reCAPTCHA.
     */
    @JvmName("gsoihefdlckbiqnu")
    public suspend fun recaptchaPrivateKey(`value`: Output) {
        this.recaptchaPrivateKey = value
    }

    /**
     * @param value Site key for reCAPTCHA.
     */
    @JvmName("msllbeijntpnksdy")
    public suspend fun recaptchaSiteKey(`value`: Output) {
        this.recaptchaSiteKey = value
    }

    /**
     * @param value Maximum push size (MB).
     */
    @JvmName("ecdlxjfmsdyqyxqi")
    public suspend fun receiveMaxInputSize(`value`: Output) {
        this.receiveMaxInputSize = value
    }

    /**
     * @param value GitLab periodically runs git fsck in all project and wiki repositories to look for silent disk corruption issues.
     */
    @JvmName("sjenhlfmutixyiuh")
    public suspend fun repositoryChecksEnabled(`value`: Output) {
        this.repositoryChecksEnabled = value
    }

    /**
     * @param value Size limit per repository (MB).
     */
    @JvmName("rdjhfvjpgadyvxwf")
    public suspend fun repositorySizeLimit(`value`: Output) {
        this.repositorySizeLimit = value
    }

    /**
     * @param value (GitLab 13.0 and earlier) List of names of enabled storage paths, taken from gitlab.yml. New projects are created in one of these stores, chosen at random.
     */
    @JvmName("drpdwfvnsobdfoqa")
    public suspend fun repositoryStorages(`value`: Output>) {
        this.repositoryStorages = value
    }

    @JvmName("usxklsmcjjhyvnrc")
    public suspend fun repositoryStorages(vararg values: Output) {
        this.repositoryStorages = Output.all(values.asList())
    }

    /**
     * @param values (GitLab 13.0 and earlier) List of names of enabled storage paths, taken from gitlab.yml. New projects are created in one of these stores, chosen at random.
     */
    @JvmName("pcoeqhxfgucbjqeq")
    public suspend fun repositoryStorages(values: List>) {
        this.repositoryStorages = Output.all(values)
    }

    /**
     * @param value (GitLab 13.1 and later) Hash of names of taken from gitlab.yml to weights. New projects are created in one of these stores, chosen by a weighted random selection.
     */
    @JvmName("yqpbodpryqenkglq")
    public suspend fun repositoryStoragesWeighted(`value`: Output>) {
        this.repositoryStoragesWeighted = value
    }

    /**
     * @param value When enabled, any user that signs up for an account using the registration form is placed under a Pending approval state and has to be explicitly approved by an administrator.
     */
    @JvmName("hbixuymmytdvpquc")
    public suspend fun requireAdminApprovalAfterUserSignup(`value`: Output) {
        this.requireAdminApprovalAfterUserSignup = value
    }

    /**
     * @param value (If enabled, requires: two*factor*grace_period) Require all users to set up Two-factor authentication.
     */
    @JvmName("fedjpymuhnwycqog")
    public suspend fun requireTwoFactorAuthentication(`value`: Output) {
        this.requireTwoFactorAuthentication = value
    }

    /**
     * @param value Selected levels cannot be used by non-Administrator users for groups, projects or snippets. Can take private, internal and public as a parameter. Null means there is no restriction.
     */
    @JvmName("gkjubmfbowymnued")
    public suspend fun restrictedVisibilityLevels(`value`: Output>) {
        this.restrictedVisibilityLevels = value
    }

    @JvmName("nhnlhnblgcbpnwot")
    public suspend fun restrictedVisibilityLevels(vararg values: Output) {
        this.restrictedVisibilityLevels = Output.all(values.asList())
    }

    /**
     * @param values Selected levels cannot be used by non-Administrator users for groups, projects or snippets. Can take private, internal and public as a parameter. Null means there is no restriction.
     */
    @JvmName("rtvvjpydeswuekof")
    public suspend fun restrictedVisibilityLevels(values: List>) {
        this.restrictedVisibilityLevels = Output.all(values)
    }

    /**
     * @param value The minimum allowed bit length of an uploaded RSA key. 0 means no restriction. -1 disables RSA keys.
     */
    @JvmName("olttbpxyrudyhndr")
    public suspend fun rsaKeyRestriction(`value`: Output) {
        this.rsaKeyRestriction = value
    }

    /**
     * @param value Max number of requests per minute for performing a search while authenticated. To disable throttling set to 0.
     */
    @JvmName("jjsfiucvscfajtqp")
    public suspend fun searchRateLimit(`value`: Output) {
        this.searchRateLimit = value
    }

    /**
     * @param value Max number of requests per minute for performing a search while unauthenticated. To disable throttling set to 0.
     */
    @JvmName("qryjsblwcivbcywj")
    public suspend fun searchRateLimitUnauthenticated(`value`: Output) {
        this.searchRateLimitUnauthenticated = value
    }

    /**
     * @param value Send confirmation email on sign-up.
     */
    @JvmName("paxqaomnntnhjkmb")
    public suspend fun sendUserConfirmationEmail(`value`: Output) {
        this.sendUserConfirmationEmail = value
    }

    /**
     * @param value Session duration in minutes. GitLab restart is required to apply changes.
     */
    @JvmName("iuwmnuxxheejsccu")
    public suspend fun sessionExpireDelay(`value`: Output) {
        this.sessionExpireDelay = value
    }

    /**
     * @param value (If enabled, requires: shared*runners*text and shared*runners*minutes) Enable shared runners for new projects.
     */
    @JvmName("oqlnlkdrvvncfrcm")
    public suspend fun sharedRunnersEnabled(`value`: Output) {
        this.sharedRunnersEnabled = value
    }

    /**
     * @param value Set the maximum number of CI/CD minutes that a group can use on shared runners per month.
     */
    @JvmName("ufbbtjqydhvagtqe")
    public suspend fun sharedRunnersMinutes(`value`: Output) {
        this.sharedRunnersMinutes = value
    }

    /**
     * @param value Shared runners text.
     */
    @JvmName("pqqdkggxhkkxvsxk")
    public suspend fun sharedRunnersText(`value`: Output) {
        this.sharedRunnersText = value
    }

    /**
     * @param value The threshold in bytes at which Sidekiq jobs are compressed before being stored in Redis.
     */
    @JvmName("rtjjbrohyawcktwg")
    public suspend fun sidekiqJobLimiterCompressionThresholdBytes(`value`: Output) {
        this.sidekiqJobLimiterCompressionThresholdBytes = value
    }

    /**
     * @param value The threshold in bytes at which Sidekiq jobs are rejected. 0 means do not reject any job.
     */
    @JvmName("rmajdhlpkrilcdnk")
    public suspend fun sidekiqJobLimiterLimitBytes(`value`: Output) {
        this.sidekiqJobLimiterLimitBytes = value
    }

    /**
     * @param value track or compress. Sets the behavior for Sidekiq job size limits.
     */
    @JvmName("aerelgjirgxiudhl")
    public suspend fun sidekiqJobLimiterMode(`value`: Output) {
        this.sidekiqJobLimiterMode = value
    }

    /**
     * @param value Text on the login page.
     */
    @JvmName("mpiyrcvnrrevdxbs")
    public suspend fun signInText(`value`: Output) {
        this.signInText = value
    }

    /**
     * @param value Enable registration.
     */
    @JvmName("vlvmldxsjmklbftw")
    public suspend fun signupEnabled(`value`: Output) {
        this.signupEnabled = value
    }

    /**
     * @param value (If enabled, requires: slack*app*id, slack*app*secret and slack*app*secret) Enable Slack app.
     */
    @JvmName("rnojorpwgwgtrbbo")
    public suspend fun slackAppEnabled(`value`: Output) {
        this.slackAppEnabled = value
    }

    /**
     * @param value The app ID of the Slack-app.
     */
    @JvmName("rpuhfmedumkjtodx")
    public suspend fun slackAppId(`value`: Output) {
        this.slackAppId = value
    }

    /**
     * @param value The app secret of the Slack-app.
     */
    @JvmName("snmxdkaoelmiirup")
    public suspend fun slackAppSecret(`value`: Output) {
        this.slackAppSecret = value
    }

    /**
     * @param value The signing secret of the Slack-app.
     */
    @JvmName("evucbcfwjpshbtye")
    public suspend fun slackAppSigningSecret(`value`: Output) {
        this.slackAppSigningSecret = value
    }

    /**
     * @param value The verification token of the Slack-app.
     */
    @JvmName("xkmwrigyytnbtjrv")
    public suspend fun slackAppVerificationToken(`value`: Output) {
        this.slackAppVerificationToken = value
    }

    /**
     * @param value Max snippet content size in bytes.
     */
    @JvmName("pakbtnrekekdbeyj")
    public suspend fun snippetSizeLimit(`value`: Output) {
        this.snippetSizeLimit = value
    }

    /**
     * @param value The Snowplow site name / application ID. (for example, gitlab)
     */
    @JvmName("xnhwhmhyjkhrmgvg")
    public suspend fun snowplowAppId(`value`: Output) {
        this.snowplowAppId = value
    }

    /**
     * @param value The Snowplow collector hostname. (for example, snowplow.trx.gitlab.net)
     */
    @JvmName("vlwsanpuatsvfujy")
    public suspend fun snowplowCollectorHostname(`value`: Output) {
        this.snowplowCollectorHostname = value
    }

    /**
     * @param value The Snowplow cookie domain. (for example, .gitlab.com)
     */
    @JvmName("hfftetnonnerhori")
    public suspend fun snowplowCookieDomain(`value`: Output) {
        this.snowplowCookieDomain = value
    }

    /**
     * @param value Enable snowplow tracking.
     */
    @JvmName("noxiotgtbrgipodn")
    public suspend fun snowplowEnabled(`value`: Output) {
        this.snowplowEnabled = value
    }

    /**
     * @param value Enables Sourcegraph integration. If enabled, requires sourcegraph_url.
     */
    @JvmName("kpxahsgbcuggdley")
    public suspend fun sourcegraphEnabled(`value`: Output) {
        this.sourcegraphEnabled = value
    }

    /**
     * @param value Blocks Sourcegraph from being loaded on private and internal projects.
     */
    @JvmName("vbkjpnkujhqxobxb")
    public suspend fun sourcegraphPublicOnly(`value`: Output) {
        this.sourcegraphPublicOnly = value
    }

    /**
     * @param value The Sourcegraph instance URL for integration.
     */
    @JvmName("fqkkqtnmefaejeno")
    public suspend fun sourcegraphUrl(`value`: Output) {
        this.sourcegraphUrl = value
    }

    /**
     * @param value API key used by GitLab for accessing the Spam Check service endpoint.
     */
    @JvmName("xcpnfkaqfcjbclky")
    public suspend fun spamCheckApiKey(`value`: Output) {
        this.spamCheckApiKey = value
    }

    /**
     * @param value Enables spam checking using external Spam Check API endpoint.
     */
    @JvmName("layyumfgrgoolxyg")
    public suspend fun spamCheckEndpointEnabled(`value`: Output) {
        this.spamCheckEndpointEnabled = value
    }

    /**
     * @param value URL of the external Spamcheck service endpoint. Valid URI schemes are grpc or tls. Specifying tls forces communication to be encrypted.
     */
    @JvmName("fmoehweuacvpuknm")
    public suspend fun spamCheckEndpointUrl(`value`: Output) {
        this.spamCheckEndpointUrl = value
    }

    /**
     * @param value Enable pipeline suggestion banner.
     */
    @JvmName("upifqtjxuiaxeace")
    public suspend fun suggestPipelineEnabled(`value`: Output) {
        this.suggestPipelineEnabled = value
    }

    /**
     * @param value Maximum time for web terminal websocket connection (in seconds). Set to 0 for unlimited time.
     */
    @JvmName("vocdwbrewclruhwu")
    public suspend fun terminalMaxSessionTime(`value`: Output) {
        this.terminalMaxSessionTime = value
    }

    /**
     * @param value (Required by: enforce_terms) Markdown content for the ToS.
     */
    @JvmName("oqcyfvisrdrydpjs")
    public suspend fun terms(`value`: Output) {
        this.terms = value
    }

    /**
     * @param value (If enabled, requires: throttle*authenticated*api*period*in*seconds and throttle*authenticated*api*requests*per*period) Enable authenticated API request rate limit. Helps reduce request volume (for example, from crawlers or abusive bots).
     */
    @JvmName("lgqiafemfysmvjls")
    public suspend fun throttleAuthenticatedApiEnabled(`value`: Output) {
        this.throttleAuthenticatedApiEnabled = value
    }

    /**
     * @param value Rate limit period (in seconds).
     */
    @JvmName("scvmtcwffegigunp")
    public suspend fun throttleAuthenticatedApiPeriodInSeconds(`value`: Output) {
        this.throttleAuthenticatedApiPeriodInSeconds = value
    }

    /**
     * @param value Maximum requests per period per user.
     */
    @JvmName("qftpdupposxmwjtg")
    public suspend fun throttleAuthenticatedApiRequestsPerPeriod(`value`: Output) {
        this.throttleAuthenticatedApiRequestsPerPeriod = value
    }

    /**
     * @param value (If enabled, requires: throttle*authenticated*packages*api*period*in*seconds and throttle*authenticated*packages*api*requests*per*period) Enable authenticated API request rate limit. Helps reduce request volume (for example, from crawlers or abusive bots). View Package Registry rate limits for more details.
     */
    @JvmName("fsqigcdnjymxvxvj")
    public suspend fun throttleAuthenticatedPackagesApiEnabled(`value`: Output) {
        this.throttleAuthenticatedPackagesApiEnabled = value
    }

    /**
     * @param value Rate limit period (in seconds). View Package Registry rate limits for more details.
     */
    @JvmName("rgkmtuaosbstbfbp")
    public suspend fun throttleAuthenticatedPackagesApiPeriodInSeconds(`value`: Output) {
        this.throttleAuthenticatedPackagesApiPeriodInSeconds = value
    }

    /**
     * @param value Maximum requests per period per user. View Package Registry rate limits for more details.
     */
    @JvmName("ncgqascxlpbnnsgy")
    public suspend fun throttleAuthenticatedPackagesApiRequestsPerPeriod(`value`: Output) {
        this.throttleAuthenticatedPackagesApiRequestsPerPeriod = value
    }

    /**
     * @param value (If enabled, requires: throttle*authenticated*web*period*in*seconds and throttle*authenticated*web*requests*per*period) Enable authenticated web request rate limit. Helps reduce request volume (for example, from crawlers or abusive bots).
     */
    @JvmName("syofwiulnugoidaq")
    public suspend fun throttleAuthenticatedWebEnabled(`value`: Output) {
        this.throttleAuthenticatedWebEnabled = value
    }

    /**
     * @param value Rate limit period (in seconds).
     */
    @JvmName("bupbmvpmrjwemrxv")
    public suspend fun throttleAuthenticatedWebPeriodInSeconds(`value`: Output) {
        this.throttleAuthenticatedWebPeriodInSeconds = value
    }

    /**
     * @param value Maximum requests per period per user.
     */
    @JvmName("amrlfgdrtevniorg")
    public suspend fun throttleAuthenticatedWebRequestsPerPeriod(`value`: Output) {
        this.throttleAuthenticatedWebRequestsPerPeriod = value
    }

    /**
     * @param value (If enabled, requires: throttle*unauthenticated*api*period*in*seconds and throttle*unauthenticated*api*requests*per*period) Enable unauthenticated API request rate limit. Helps reduce request volume (for example, from crawlers or abusive bots).
     */
    @JvmName("bhcxbvuqtrcvheku")
    public suspend fun throttleUnauthenticatedApiEnabled(`value`: Output) {
        this.throttleUnauthenticatedApiEnabled = value
    }

    /**
     * @param value Rate limit period in seconds.
     */
    @JvmName("helghxlvreurbdof")
    public suspend fun throttleUnauthenticatedApiPeriodInSeconds(`value`: Output) {
        this.throttleUnauthenticatedApiPeriodInSeconds = value
    }

    /**
     * @param value Max requests per period per IP.
     */
    @JvmName("sqjqmrxpdmtshiqe")
    public suspend fun throttleUnauthenticatedApiRequestsPerPeriod(`value`: Output) {
        this.throttleUnauthenticatedApiRequestsPerPeriod = value
    }

    /**
     * @param value (If enabled, requires: throttle*unauthenticated*packages*api*period*in*seconds and throttle*unauthenticated*packages*api*requests*per*period) Enable authenticated API request rate limit. Helps reduce request volume (for example, from crawlers or abusive bots). View Package Registry rate limits for more details.
     */
    @JvmName("rpstwmqjxfjyxnip")
    public suspend fun throttleUnauthenticatedPackagesApiEnabled(`value`: Output) {
        this.throttleUnauthenticatedPackagesApiEnabled = value
    }

    /**
     * @param value Rate limit period (in seconds). View Package Registry rate limits for more details.
     */
    @JvmName("urohovnotlwamdsy")
    public suspend fun throttleUnauthenticatedPackagesApiPeriodInSeconds(`value`: Output) {
        this.throttleUnauthenticatedPackagesApiPeriodInSeconds = value
    }

    /**
     * @param value Maximum requests per period per user. View Package Registry rate limits for more details.
     */
    @JvmName("oxlejessifqpilce")
    public suspend fun throttleUnauthenticatedPackagesApiRequestsPerPeriod(`value`: Output) {
        this.throttleUnauthenticatedPackagesApiRequestsPerPeriod = value
    }

    /**
     * @param value (If enabled, requires: throttle*unauthenticated*web*period*in*seconds and throttle*unauthenticated*web*requests*per*period) Enable unauthenticated web request rate limit. Helps reduce request volume (for example, from crawlers or abusive bots).
     */
    @JvmName("sjpcjuiprgugjoxs")
    public suspend fun throttleUnauthenticatedWebEnabled(`value`: Output) {
        this.throttleUnauthenticatedWebEnabled = value
    }

    /**
     * @param value Rate limit period in seconds.
     */
    @JvmName("yaomsmrbtdnbpqmk")
    public suspend fun throttleUnauthenticatedWebPeriodInSeconds(`value`: Output) {
        this.throttleUnauthenticatedWebPeriodInSeconds = value
    }

    /**
     * @param value Max requests per period per IP.
     */
    @JvmName("gjclqexrshxrqrck")
    public suspend fun throttleUnauthenticatedWebRequestsPerPeriod(`value`: Output) {
        this.throttleUnauthenticatedWebRequestsPerPeriod = value
    }

    /**
     * @param value Limit display of time tracking units to hours.
     */
    @JvmName("yuuwbiumrhttlfkn")
    public suspend fun timeTrackingLimitToHours(`value`: Output) {
        this.timeTrackingLimitToHours = value
    }

    /**
     * @param value Amount of time (in hours) that users are allowed to skip forced configuration of two-factor authentication.
     */
    @JvmName("asgqbciwugychhrf")
    public suspend fun twoFactorGracePeriod(`value`: Output) {
        this.twoFactorGracePeriod = value
    }

    /**
     * @param value (If enabled, requires: unique*ips*limit*per*user and unique*ips*limit*time*window) Limit sign in from multiple IPs.
     */
    @JvmName("vptnndtmilepwhvg")
    public suspend fun uniqueIpsLimitEnabled(`value`: Output) {
        this.uniqueIpsLimitEnabled = value
    }

    /**
     * @param value Maximum number of IPs per user.
     */
    @JvmName("jlkuvwfphrlrtcut")
    public suspend fun uniqueIpsLimitPerUser(`value`: Output) {
        this.uniqueIpsLimitPerUser = value
    }

    /**
     * @param value How many seconds an IP is counted towards the limit.
     */
    @JvmName("tbxsigsxfjxrigaj")
    public suspend fun uniqueIpsLimitTimeWindow(`value`: Output) {
        this.uniqueIpsLimitTimeWindow = value
    }

    /**
     * @param value Every week GitLab reports license usage back to GitLab, Inc.
     */
    @JvmName("sqsndgidofrtiych")
    public suspend fun usagePingEnabled(`value`: Output) {
        this.usagePingEnabled = value
    }

    /**
     * @param value Send an email to users upon account deactivation.
     */
    @JvmName("wkybwywywbxoeukf")
    public suspend fun userDeactivationEmailsEnabled(`value`: Output) {
        this.userDeactivationEmailsEnabled = value
    }

    /**
     * @param value Newly registered users are external by default.
     */
    @JvmName("mklwpfdpytjedqou")
    public suspend fun userDefaultExternal(`value`: Output) {
        this.userDefaultExternal = value
    }

    /**
     * @param value Specify an email address regex pattern to identify default internal users.
     */
    @JvmName("gbcwmxmebdhrkhfs")
    public suspend fun userDefaultInternalRegex(`value`: Output) {
        this.userDefaultInternalRegex = value
    }

    /**
     * @param value Allow users to register any application to use GitLab as an OAuth provider.
     */
    @JvmName("axfgttmpcldiuovc")
    public suspend fun userOauthApplications(`value`: Output) {
        this.userOauthApplications = value
    }

    /**
     * @param value When set to false disable the You won't be able to pull or push project code via SSH warning shown to users with no uploaded SSH key.
     */
    @JvmName("onpwowfdtosfwltg")
    public suspend fun userShowAddSshKeyMessage(`value`: Output) {
        this.userShowAddSshKeyMessage = value
    }

    /**
     * @param value Let GitLab inform you when an update is available.
     */
    @JvmName("xmdjmwxmtwrcvwkp")
    public suspend fun versionCheckEnabled(`value`: Output) {
        this.versionCheckEnabled = value
    }

    /**
     * @param value Live Preview (allow live previews of JavaScript projects in the Web IDE using CodeSandbox Live Preview).
     */
    @JvmName("iggnorfphjkkocau")
    public suspend fun webIdeClientsidePreviewEnabled(`value`: Output) {
        this.webIdeClientsidePreviewEnabled = value
    }

    /**
     * @param value What’s new variant, possible values: all*tiers, current*tier, and disabled.
     */
    @JvmName("wmatribwvhjjdieo")
    public suspend fun whatsNewVariant(`value`: Output) {
        this.whatsNewVariant = value
    }

    /**
     * @param value Maximum wiki page content size in bytes. The minimum value is 1024 bytes.
     */
    @JvmName("ilfvcdwcbwerhdhh")
    public suspend fun wikiPageMaxContentBytes(`value`: Output) {
        this.wikiPageMaxContentBytes = value
    }

    /**
     * @param value If set, abuse reports are sent to this address. Abuse reports are always available in the Admin Area.
     */
    @JvmName("fafmfdaynfydigjh")
    public suspend fun abuseNotificationEmail(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.abuseNotificationEmail = mapped
    }

    /**
     * @param value Require administrators to enable Admin Mode by re-authenticating for administrative tasks.
     */
    @JvmName("wxtjwwrgdugfubys")
    public suspend fun adminMode(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.adminMode = mapped
    }

    /**
     * @param value Where to redirect users after logout.
     */
    @JvmName("mlfeyqlgcslyhblf")
    public suspend fun afterSignOutPath(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.afterSignOutPath = mapped
    }

    /**
     * @param value Text shown to the user after signing up.
     */
    @JvmName("kmolomumqktrickw")
    public suspend fun afterSignUpText(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.afterSignUpText = mapped
    }

    /**
     * @param value API key for Akismet spam protection.
     */
    @JvmName("cnncealeeqfccqjh")
    public suspend fun akismetApiKey(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.akismetApiKey = mapped
    }

    /**
     * @param value (If enabled, requires: akismet*api*key) Enable or disable Akismet spam protection.
     */
    @JvmName("gweanknnqoqgqgmv")
    public suspend fun akismetEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.akismetEnabled = mapped
    }

    /**
     * @param value Set to true to allow group owners to manage LDAP.
     */
    @JvmName("yswnkmivwhnedqcy")
    public suspend fun allowGroupOwnersToManageLdap(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.allowGroupOwnersToManageLdap = mapped
    }

    /**
     * @param value Allow requests to the local network from system hooks.
     */
    @JvmName("jyupdvtjovwoqnie")
    public suspend fun allowLocalRequestsFromSystemHooks(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.allowLocalRequestsFromSystemHooks = mapped
    }

    /**
     * @param value Allow requests to the local network from web hooks and services.
     */
    @JvmName("pnhhavtmqnmgnxrr")
    public suspend fun allowLocalRequestsFromWebHooksAndServices(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.allowLocalRequestsFromWebHooksAndServices = mapped
    }

    /**
     * @param value Set the duration for which the jobs are considered as old and expired. After that time passes, the jobs are archived and no longer able to be retried. Make it empty to never expire jobs. It has to be no less than 1 day, for example: 15 days, 1 month, 2 years.
     */
    @JvmName("fjaxotsddojumoyj")
    public suspend fun archiveBuildsInHumanReadable(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.archiveBuildsInHumanReadable = mapped
    }

    /**
     * @param value Assets that match these domains are not proxied. Wildcards allowed. Your GitLab installation URL is automatically allowlisted. GitLab restart is required to apply changes.
     */
    @JvmName("tijknnkxqjdnuaeb")
    public suspend fun assetProxyAllowlists(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.assetProxyAllowlists = mapped
    }

    /**
     * @param values Assets that match these domains are not proxied. Wildcards allowed. Your GitLab installation URL is automatically allowlisted. GitLab restart is required to apply changes.
     */
    @JvmName("vlryeqqcydfbjeeb")
    public suspend fun assetProxyAllowlists(vararg values: String) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.assetProxyAllowlists = mapped
    }

    /**
     * @param value (If enabled, requires: asset*proxy*url) Enable proxying of assets. GitLab restart is required to apply changes.
     */
    @JvmName("rniicfauordpbibj")
    public suspend fun assetProxyEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.assetProxyEnabled = mapped
    }

    /**
     * @param value Shared secret with the asset proxy server. GitLab restart is required to apply changes.
     */
    @JvmName("enftkxtuysrssgku")
    public suspend fun assetProxySecretKey(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.assetProxySecretKey = mapped
    }

    /**
     * @param value URL of the asset proxy server. GitLab restart is required to apply changes.
     */
    @JvmName("lydbugybsheyxrfy")
    public suspend fun assetProxyUrl(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.assetProxyUrl = mapped
    }

    /**
     * @param value By default, we write to the authorized_keys file to support Git over SSH without additional configuration. GitLab can be optimized to authenticate SSH keys via the database file. Only disable this if you have configured your OpenSSH server to use the AuthorizedKeysCommand.
     */
    @JvmName("urrtvupfygwdtska")
    public suspend fun authorizedKeysEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.authorizedKeysEnabled = mapped
    }

    /**
     * @param value Specify a domain to use by default for every project’s Auto Review Apps and Auto Deploy stages.
     */
    @JvmName("oqyipflvpwftysln")
    public suspend fun autoDevopsDomain(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.autoDevopsDomain = mapped
    }

    /**
     * @param value Enable Auto DevOps for projects by default. It automatically builds, tests, and deploys applications based on a predefined CI/CD configuration.
     */
    @JvmName("yutcormkhpufhcnu")
    public suspend fun autoDevopsEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.autoDevopsEnabled = mapped
    }

    /**
     * @param value Enabling this permits automatic allocation of purchased storage in a namespace.
     */
    @JvmName("clydgsjolvpbyjgc")
    public suspend fun automaticPurchasedStorageAllocation(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.automaticPurchasedStorageAllocation = mapped
    }

    /**
     * @param value Indicates whether users can create top-level groups. Introduced in GitLab 15.5.
     */
    @JvmName("nfjiekmqotevltae")
    public suspend fun canCreateGroup(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.canCreateGroup = mapped
    }

    /**
     * @param value Enabling this makes only licensed EE features available to projects if the project namespace’s plan includes the feature or if the project is public.
     */
    @JvmName("lokslbhvnfurwcew")
    public suspend fun checkNamespacePlan(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.checkNamespacePlan = mapped
    }

    /**
     * @param value Custom hostname (for private commit emails).
     */
    @JvmName("wnfjytfhxlsvrfkn")
    public suspend fun commitEmailHostname(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.commitEmailHostname = mapped
    }

    /**
     * @param value Enable cleanup policies for all projects.
     */
    @JvmName("ggixpjruwrsqjlbb")
    public suspend fun containerExpirationPoliciesEnableHistoricEntries(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.containerExpirationPoliciesEnableHistoricEntries = mapped
    }

    /**
     * @param value The maximum number of tags that can be deleted in a single execution of cleanup policies.
     */
    @JvmName("vfknaukwqyamfpnw")
    public suspend fun containerRegistryCleanupTagsServiceMaxListSize(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.containerRegistryCleanupTagsServiceMaxListSize = mapped
    }

    /**
     * @param value The maximum time, in seconds, that the cleanup process can take to delete a batch of tags for cleanup policies.
     */
    @JvmName("ghdhqnvojxvxvkmk")
    public suspend fun containerRegistryDeleteTagsServiceTimeout(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.containerRegistryDeleteTagsServiceTimeout = mapped
    }

    /**
     * @param value Caching during the execution of cleanup policies.
     */
    @JvmName("cyovnlhgtauvsmjr")
    public suspend fun containerRegistryExpirationPoliciesCaching(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.containerRegistryExpirationPoliciesCaching = mapped
    }

    /**
     * @param value Number of workers for cleanup policies.
     */
    @JvmName("bajmofajmqfixcdk")
    public suspend fun containerRegistryExpirationPoliciesWorkerCapacity(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.containerRegistryExpirationPoliciesWorkerCapacity = mapped
    }

    /**
     * @param value Container Registry token duration in minutes.
     */
    @JvmName("xdkswrnjsmugauiw")
    public suspend fun containerRegistryTokenExpireDelay(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.containerRegistryTokenExpireDelay = mapped
    }

    /**
     * @param value Enable automatic deactivation of dormant users.
     */
    @JvmName("qlkevgjlaouglwer")
    public suspend fun deactivateDormantUsers(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.deactivateDormantUsers = mapped
    }

    /**
     * @param value Set the default expiration time for each job’s artifacts.
     */
    @JvmName("lgsdvadlhawduqqi")
    public suspend fun defaultArtifactsExpireIn(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.defaultArtifactsExpireIn = mapped
    }

    /**
     * @param value Instance-level custom initial branch name (introduced in GitLab 13.2).
     */
    @JvmName("cjpjfjgptajccjmj")
    public suspend fun defaultBranchName(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.defaultBranchName = mapped
    }

    /**
     * @param value Determine if developers can push to the default branch. Can take: 0 (not protected, both users with the Developer role or Maintainer role can push new commits and force push), 1 (partially protected, users with the Developer role or Maintainer role can push new commits, but cannot force push) or 2 (fully protected, users with the Developer or Maintainer role cannot push new commits, but users with the Developer or Maintainer role can; no one can force push) as a parameter. Default is 2.
     */
    @JvmName("mwgdecmwidfclqwf")
    public suspend fun defaultBranchProtection(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.defaultBranchProtection = mapped
    }

    /**
     * @param value Default CI/CD configuration file and path for new projects (.gitlab-ci.yml if not set).
     */
    @JvmName("nkyjukfxtawpnvob")
    public suspend fun defaultCiConfigPath(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.defaultCiConfigPath = mapped
    }

    /**
     * @param value What visibility level new groups receive. Can take private, internal and public as a parameter.
     */
    @JvmName("mvhvgddmveneklmi")
    public suspend fun defaultGroupVisibility(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.defaultGroupVisibility = mapped
    }

    /**
     * @param value Default project creation protection. Can take: 0 (No one), 1 (Maintainers) or 2 (Developers + Maintainers).
     */
    @JvmName("gkchfoxapdvwsnyc")
    public suspend fun defaultProjectCreation(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.defaultProjectCreation = mapped
    }

    /**
     * @param value What visibility level new projects receive. Can take private, internal and public as a parameter.
     */
    @JvmName("ixwkgskqwvrykubf")
    public suspend fun defaultProjectVisibility(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.defaultProjectVisibility = mapped
    }

    /**
     * @param value Project limit per user.
     */
    @JvmName("riscmpfkryasgbrd")
    public suspend fun defaultProjectsLimit(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.defaultProjectsLimit = mapped
    }

    /**
     * @param value What visibility level new snippets receive. Can take private, internal and public as a parameter.
     */
    @JvmName("bdxbaqndpohionxy")
    public suspend fun defaultSnippetVisibility(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.defaultSnippetVisibility = mapped
    }

    /**
     * @param value Enable inactive project deletion feature. Introduced in GitLab 14.10. Became operational in GitLab 15.0 (with feature flag inactive*projects*deletion).
     */
    @JvmName("ilasqbhaymrmmgsi")
    public suspend fun deleteInactiveProjects(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.deleteInactiveProjects = mapped
    }

    /**
     * @param value The number of days to wait before deleting a project or group that is marked for deletion. Value must be between 1 and 90.
     */
    @JvmName("ixfswbssxlhtjmax")
    public suspend fun deletionAdjournedPeriod(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.deletionAdjournedPeriod = mapped
    }

    /**
     * @param value Maximum files in a diff.
     */
    @JvmName("mtfdgkpvavmjwauf")
    public suspend fun diffMaxFiles(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.diffMaxFiles = mapped
    }

    /**
     * @param value Maximum lines in a diff.
     */
    @JvmName("tobjlmbrnejltxkr")
    public suspend fun diffMaxLines(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.diffMaxLines = mapped
    }

    /**
     * @param value Maximum diff patch size, in bytes.
     */
    @JvmName("bxffnsfevvhgiwjs")
    public suspend fun diffMaxPatchBytes(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.diffMaxPatchBytes = mapped
    }

    /**
     * @param value Disable display of RSS/Atom and calendar feed tokens (introduced in GitLab 13.7).
     */
    @JvmName("jjiwdksjmhynlkmb")
    public suspend fun disableFeedToken(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.disableFeedToken = mapped
    }

    /**
     * @param value Disabled OAuth sign-in sources.
     */
    @JvmName("velbnfpndlnsowuc")
    public suspend fun disabledOauthSignInSources(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.disabledOauthSignInSources = mapped
    }

    /**
     * @param values Disabled OAuth sign-in sources.
     */
    @JvmName("tvhvqigityslumfj")
    public suspend fun disabledOauthSignInSources(vararg values: String) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.disabledOauthSignInSources = mapped
    }

    /**
     * @param value Enforce DNS rebinding attack protection.
     */
    @JvmName("ecdlougjsdjdklvq")
    public suspend fun dnsRebindingProtectionEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.dnsRebindingProtectionEnabled = mapped
    }

    /**
     * @param value Force people to use only corporate emails for sign-up. Null means there is no restriction.
     */
    @JvmName("rgkvpkmosgbxpqdv")
    public suspend fun domainAllowlists(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.domainAllowlists = mapped
    }

    /**
     * @param values Force people to use only corporate emails for sign-up. Null means there is no restriction.
     */
    @JvmName("oqfxcmhgegfgrlse")
    public suspend fun domainAllowlists(vararg values: String) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.domainAllowlists = mapped
    }

    /**
     * @param value (If enabled, requires: domain_denylist) Allows blocking sign-ups from emails from specific domains.
     */
    @JvmName("ylmmcaxkjsxrxmjw")
    public suspend fun domainDenylistEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.domainDenylistEnabled = mapped
    }

    /**
     * @param value Users with email addresses that match these domains cannot sign up. Wildcards allowed. Use separate lines for multiple entries. Ex: domain.com, *.domain.com.
     */
    @JvmName("fiqicvuertypppjq")
    public suspend fun domainDenylists(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.domainDenylists = mapped
    }

    /**
     * @param values Users with email addresses that match these domains cannot sign up. Wildcards allowed. Use separate lines for multiple entries. Ex: domain.com, *.domain.com.
     */
    @JvmName("fbwablobqnvrjbfk")
    public suspend fun domainDenylists(vararg values: String) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.domainDenylists = mapped
    }

    /**
     * @param value The minimum allowed bit length of an uploaded DSA key. 0 means no restriction. -1 disables DSA keys.
     */
    @JvmName("ooxumnmoqhkxaobm")
    public suspend fun dsaKeyRestriction(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.dsaKeyRestriction = mapped
    }

    /**
     * @param value The minimum allowed curve size (in bits) of an uploaded ECDSA key. 0 means no restriction. -1 disables ECDSA keys.
     */
    @JvmName("getoligqsdqeyucv")
    public suspend fun ecdsaKeyRestriction(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.ecdsaKeyRestriction = mapped
    }

    /**
     * @param value The minimum allowed curve size (in bits) of an uploaded ECDSA*SK key. 0 means no restriction. -1 disables ECDSA*SK keys.
     */
    @JvmName("mfkgitcbeixpvmym")
    public suspend fun ecdsaSkKeyRestriction(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.ecdsaSkKeyRestriction = mapped
    }

    /**
     * @param value The minimum allowed curve size (in bits) of an uploaded ED25519 key. 0 means no restriction. -1 disables ED25519 keys.
     */
    @JvmName("ajfaxbotvcnkydfc")
    public suspend fun ed25519KeyRestriction(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.ed25519KeyRestriction = mapped
    }

    /**
     * @param value The minimum allowed curve size (in bits) of an uploaded ED25519*SK key. 0 means no restriction. -1 disables ED25519*SK keys.
     */
    @JvmName("rbfuwinnlrphiwgf")
    public suspend fun ed25519SkKeyRestriction(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.ed25519SkKeyRestriction = mapped
    }

    /**
     * @param value AWS IAM access key ID.
     */
    @JvmName("wcqrudetfhhjaukb")
    public suspend fun eksAccessKeyId(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.eksAccessKeyId = mapped
    }

    /**
     * @param value Amazon account ID.
     */
    @JvmName("soqkjnxgbdnosheu")
    public suspend fun eksAccountId(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.eksAccountId = mapped
    }

    /**
     * @param value Enable integration with Amazon EKS.
     */
    @JvmName("jqdmklonnjybvtdh")
    public suspend fun eksIntegrationEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.eksIntegrationEnabled = mapped
    }

    /**
     * @param value AWS IAM secret access key.
     */
    @JvmName("siqbdrqqwpotdcob")
    public suspend fun eksSecretAccessKey(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.eksSecretAccessKey = mapped
    }

    /**
     * @param value Enable the use of AWS hosted Elasticsearch.
     */
    @JvmName("bcapogbfoabylido")
    public suspend fun elasticsearchAws(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.elasticsearchAws = mapped
    }

    /**
     * @param value AWS IAM access key.
     */
    @JvmName("wtynbgrbndimhamh")
    public suspend fun elasticsearchAwsAccessKey(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.elasticsearchAwsAccessKey = mapped
    }

    /**
     * @param value The AWS region the Elasticsearch domain is configured.
     */
    @JvmName("uhxjdbfdsusyqaia")
    public suspend fun elasticsearchAwsRegion(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.elasticsearchAwsRegion = mapped
    }

    /**
     * @param value AWS IAM secret access key.
     */
    @JvmName("dvgvksyovrxcxhuf")
    public suspend fun elasticsearchAwsSecretAccessKey(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.elasticsearchAwsSecretAccessKey = mapped
    }

    /**
     * @param value Maximum size of text fields to index by Elasticsearch. 0 value means no limit. This does not apply to repository and wiki indexing.
     */
    @JvmName("intpngfqmugqpubk")
    public suspend fun elasticsearchIndexedFieldLengthLimit(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.elasticsearchIndexedFieldLengthLimit = mapped
    }

    /**
     * @param value Maximum size of repository and wiki files that are indexed by Elasticsearch.
     */
    @JvmName("wtdvduullkocdcmo")
    public suspend fun elasticsearchIndexedFileSizeLimitKb(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.elasticsearchIndexedFileSizeLimitKb = mapped
    }

    /**
     * @param value Enable Elasticsearch indexing.
     */
    @JvmName("dadpqgehwovqoaer")
    public suspend fun elasticsearchIndexing(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.elasticsearchIndexing = mapped
    }

    /**
     * @param value Limit Elasticsearch to index certain namespaces and projects.
     */
    @JvmName("xvufurciahvacfpv")
    public suspend fun elasticsearchLimitIndexing(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.elasticsearchLimitIndexing = mapped
    }

    /**
     * @param value Maximum concurrency of Elasticsearch bulk requests per indexing operation. This only applies to repository indexing operations.
     */
    @JvmName("ylwhlfouauwfypgm")
    public suspend fun elasticsearchMaxBulkConcurrency(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.elasticsearchMaxBulkConcurrency = mapped
    }

    /**
     * @param value Maximum size of Elasticsearch bulk indexing requests in MB. This only applies to repository indexing operations.
     */
    @JvmName("ibawcxtrojmbsgbw")
    public suspend fun elasticsearchMaxBulkSizeMb(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.elasticsearchMaxBulkSizeMb = mapped
    }

    /**
     * @param value The namespaces to index via Elasticsearch if elasticsearch*limit*indexing is enabled.
     */
    @JvmName("cprhdyvjtdbmojag")
    public suspend fun elasticsearchNamespaceIds(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.elasticsearchNamespaceIds = mapped
    }

    /**
     * @param values The namespaces to index via Elasticsearch if elasticsearch*limit*indexing is enabled.
     */
    @JvmName("eclofvwamudcxjdt")
    public suspend fun elasticsearchNamespaceIds(vararg values: Int) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.elasticsearchNamespaceIds = mapped
    }

    /**
     * @param value The password of your Elasticsearch instance.
     */
    @JvmName("aofyujpbubuvmsec")
    public suspend fun elasticsearchPassword(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.elasticsearchPassword = mapped
    }

    /**
     * @param value The projects to index via Elasticsearch if elasticsearch*limit*indexing is enabled.
     */
    @JvmName("enfafkduhggwgkvx")
    public suspend fun elasticsearchProjectIds(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.elasticsearchProjectIds = mapped
    }

    /**
     * @param values The projects to index via Elasticsearch if elasticsearch*limit*indexing is enabled.
     */
    @JvmName("wbimymwaolvfison")
    public suspend fun elasticsearchProjectIds(vararg values: Int) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.elasticsearchProjectIds = mapped
    }

    /**
     * @param value Enable Elasticsearch search.
     */
    @JvmName("utjhbdmlddhibtlj")
    public suspend fun elasticsearchSearch(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.elasticsearchSearch = mapped
    }

    /**
     * @param value The URL to use for connecting to Elasticsearch. Use a comma-separated list to support cluster (for example, http://localhost:9200, http://localhost:9201).
     */
    @JvmName("ekpnvqtllqabaepp")
    public suspend fun elasticsearchUrls(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.elasticsearchUrls = mapped
    }

    /**
     * @param values The URL to use for connecting to Elasticsearch. Use a comma-separated list to support cluster (for example, http://localhost:9200, http://localhost:9201).
     */
    @JvmName("fcewjruinndbrftr")
    public suspend fun elasticsearchUrls(vararg values: String) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.elasticsearchUrls = mapped
    }

    /**
     * @param value The username of your Elasticsearch instance.
     */
    @JvmName("xefevdutudmmmfju")
    public suspend fun elasticsearchUsername(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.elasticsearchUsername = mapped
    }

    /**
     * @param value Additional text added to the bottom of every email for legal/auditing/compliance reasons.
     */
    @JvmName("rcwfdhswhautskxa")
    public suspend fun emailAdditionalText(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.emailAdditionalText = mapped
    }

    /**
     * @param value Some email servers do not support overriding the email sender name. Enable this option to include the name of the author of the issue, merge request or comment in the email body instead.
     */
    @JvmName("iyaklsfhwuovioeo")
    public suspend fun emailAuthorInBody(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.emailAuthorInBody = mapped
    }

    /**
     * @param value Enabled protocols for Git access. Allowed values are: ssh, http, and nil to allow both protocols.
     */
    @JvmName("hdveyhaucmkbtloo")
    public suspend fun enabledGitAccessProtocol(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.enabledGitAccessProtocol = mapped
    }

    /**
     * @param value Enabling this permits enforcement of namespace storage limits.
     */
    @JvmName("byuuhddyoypvldta")
    public suspend fun enforceNamespaceStorageLimit(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.enforceNamespaceStorageLimit = mapped
    }

    /**
     * @param value (If enabled, requires: terms) Enforce application ToS to all users.
     */
    @JvmName("mbfoimaklxldufpt")
    public suspend fun enforceTerms(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.enforceTerms = mapped
    }

    /**
     * @param value (If enabled, requires: external*auth*client_key) The certificate to use to authenticate with the external authorization service.
     */
    @JvmName("uiaihxmfnecqfyfm")
    public suspend fun externalAuthClientCert(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.externalAuthClientCert = mapped
    }

    /**
     * @param value Private key for the certificate when authentication is required for the external authorization service, this is encrypted when stored.
     */
    @JvmName("eppnianjsqdyuxrh")
    public suspend fun externalAuthClientKey(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.externalAuthClientKey = mapped
    }

    /**
     * @param value Passphrase to use for the private key when authenticating with the external service this is encrypted when stored.
     */
    @JvmName("ujjcjgytithottpn")
    public suspend fun externalAuthClientKeyPass(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.externalAuthClientKeyPass = mapped
    }

    /**
     * @param value The default classification label to use when requesting authorization and no classification label has been specified on the project.
     */
    @JvmName("pyccscblgjapdnur")
    public suspend fun externalAuthorizationServiceDefaultLabel(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.externalAuthorizationServiceDefaultLabel = mapped
    }

    /**
     * @param value (If enabled, requires: external*authorization*service*default*label, external*authorization*service*timeout and external*authorization*service*url) Enable using an external authorization service for accessing projects.
     */
    @JvmName("hiuxuxurncxewpjf")
    public suspend fun externalAuthorizationServiceEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.externalAuthorizationServiceEnabled = mapped
    }

    /**
     * @param value The timeout after which an authorization request is aborted, in seconds. When a request times out, access is denied to the user. (min: 0.001, max: 10, step: 0.001).
     */
    @JvmName("txvllxtgifyjlldt")
    public suspend fun externalAuthorizationServiceTimeout(`value`: Double?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.externalAuthorizationServiceTimeout = mapped
    }

    /**
     * @param value URL to which authorization requests are directed.
     */
    @JvmName("imtlyhuuxsdwkqyh")
    public suspend fun externalAuthorizationServiceUrl(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.externalAuthorizationServiceUrl = mapped
    }

    /**
     * @param value How long to wait for a response from the pipeline validation service. Assumes OK if it times out.
     */
    @JvmName("yjvhyyjkqswsului")
    public suspend fun externalPipelineValidationServiceTimeout(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.externalPipelineValidationServiceTimeout = mapped
    }

    /**
     * @param value Optional. Token to include as the X-Gitlab-Token header in requests to the URL in external*pipeline*validation*service*url.
     */
    @JvmName("liwkllpxxtfbvnum")
    public suspend fun externalPipelineValidationServiceToken(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.externalPipelineValidationServiceToken = mapped
    }

    /**
     * @param value URL to use for pipeline validation requests.
     */
    @JvmName("nptluyrolyanytup")
    public suspend fun externalPipelineValidationServiceUrl(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.externalPipelineValidationServiceUrl = mapped
    }

    /**
     * @param value The ID of a project to load custom file templates from.
     */
    @JvmName("bpotcmvxysiprlrk")
    public suspend fun fileTemplateProjectId(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.fileTemplateProjectId = mapped
    }

    /**
     * @param value Start day of the week for calendar views and date pickers. Valid values are 0 for Sunday, 1 for Monday, and 6 for Saturday.
     */
    @JvmName("manqdjusehgdyefo")
    public suspend fun firstDayOfWeek(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.firstDayOfWeek = mapped
    }

    /**
     * @param value Comma-separated list of IPs and CIDRs of allowed secondary nodes. For example, 1.1.1.1, 2.2.2.0/24.
     */
    @JvmName("hwudwncurkcquiev")
    public suspend fun geoNodeAllowedIps(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.geoNodeAllowedIps = mapped
    }

    /**
     * @param value The amount of seconds after which a request to get a secondary node status times out.
     */
    @JvmName("dvduqcwstsobseor")
    public suspend fun geoStatusTimeout(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.geoStatusTimeout = mapped
    }

    /**
     * @param value List of usernames excluded from Git anti-abuse rate limits. Maximum: 100 usernames. Introduced in GitLab 15.2.
     */
    @JvmName("ryfouwkmneiwqffc")
    public suspend fun gitRateLimitUsersAllowlists(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.gitRateLimitUsersAllowlists = mapped
    }

    /**
     * @param values List of usernames excluded from Git anti-abuse rate limits. Maximum: 100 usernames. Introduced in GitLab 15.2.
     */
    @JvmName("nqqltcqsffbmcqdk")
    public suspend fun gitRateLimitUsersAllowlists(vararg values: String) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.gitRateLimitUsersAllowlists = mapped
    }

    /**
     * @param value Maximum duration (in minutes) of a session for Git operations when 2FA is enabled.
     */
    @JvmName("qthtcseycpvchjok")
    public suspend fun gitTwoFactorSessionExpiry(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.gitTwoFactorSessionExpiry = mapped
    }

    /**
     * @param value Default Gitaly timeout, in seconds. This timeout is not enforced for Git fetch/push operations or Sidekiq jobs. Set to 0 to disable timeouts.
     */
    @JvmName("wsedcdpecoulmevp")
    public suspend fun gitalyTimeoutDefault(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.gitalyTimeoutDefault = mapped
    }

    /**
     * @param value Gitaly fast operation timeout, in seconds. Some Gitaly operations are expected to be fast. If they exceed this threshold, there may be a problem with a storage shard and ‘failing fast’ can help maintain the stability of the GitLab instance. Set to 0 to disable timeouts.
     */
    @JvmName("lxkpmtofoumbkoop")
    public suspend fun gitalyTimeoutFast(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.gitalyTimeoutFast = mapped
    }

    /**
     * @param value Medium Gitaly timeout, in seconds. This should be a value between the Fast and the Default timeout. Set to 0 to disable timeouts.
     */
    @JvmName("igpbyucqpylcexij")
    public suspend fun gitalyTimeoutMedium(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.gitalyTimeoutMedium = mapped
    }

    /**
     * @param value Enable Grafana.
     */
    @JvmName("cogtxngjgdhtcpkq")
    public suspend fun grafanaEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.grafanaEnabled = mapped
    }

    /**
     * @param value Grafana URL.
     */
    @JvmName("xvbbymhspdjugyah")
    public suspend fun grafanaUrl(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.grafanaUrl = mapped
    }

    /**
     * @param value Enable Gravatar.
     */
    @JvmName("pmrvxxkmqbksrdld")
    public suspend fun gravatarEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.gravatarEnabled = mapped
    }

    /**
     * @param value Prevent overrides of default branch protection.
     */
    @JvmName("ncofrnwgurnivigl")
    public suspend fun groupOwnersCanManageDefaultBranchProtection(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.groupOwnersCanManageDefaultBranchProtection = mapped
    }

    /**
     * @param value Create new projects using hashed storage paths: Enable immutable, hash-based paths and repository names to store repositories on disk. This prevents repositories from having to be moved or renamed when the Project URL changes and may improve disk I/O performance. (Always enabled in GitLab versions 13.0 and later, configuration is scheduled for removal in 14.0).
     */
    @JvmName("twvjclfppaqysllj")
    public suspend fun hashedStorageEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.hashedStorageEnabled = mapped
    }

    /**
     * @param value Hide marketing-related entries from help.
     */
    @JvmName("jhjbgafscjlffvan")
    public suspend fun helpPageHideCommercialContent(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.helpPageHideCommercialContent = mapped
    }

    /**
     * @param value Alternate support URL for help page and help dropdown.
     */
    @JvmName("jmkflvdxxrydvpio")
    public suspend fun helpPageSupportUrl(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.helpPageSupportUrl = mapped
    }

    /**
     * @param value Custom text displayed on the help page.
     */
    @JvmName("gfnnklfnryurjsqk")
    public suspend fun helpPageText(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.helpPageText = mapped
    }

    /**
     * @param value GitLab server administrator information.
     */
    @JvmName("ulduqexcdduefxmf")
    public suspend fun helpText(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.helpText = mapped
    }

    /**
     * @param value Do not display offers from third parties in GitLab.
     */
    @JvmName("mthxkfnyefdvlolo")
    public suspend fun hideThirdPartyOffers(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.hideThirdPartyOffers = mapped
    }

    /**
     * @param value Redirect to this URL when not logged in.
     */
    @JvmName("fyufcflguwguvemo")
    public suspend fun homePageUrl(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.homePageUrl = mapped
    }

    /**
     * @param value Enable or disable Git housekeeping.
     * 			If enabled, requires either housekeeping*optimize*repository*period OR housekeeping*bitmaps*enabled, housekeeping*full*repack*period, housekeeping*gc*period, and housekeeping*incremental*repack*period.
     * 			Options housekeeping*bitmaps*enabled, housekeeping*full*repack*period, housekeeping*gc*period, and housekeeping*incremental*repack*period are deprecated. Use housekeeping*optimize*repository*period instead.
     */
    @JvmName("hvhdaxvoiyrtuxuf")
    public suspend fun housekeepingEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.housekeepingEnabled = mapped
    }

    /**
     * @param value Number of Git pushes after which an incremental git repack is run.
     */
    @Deprecated(
        message = """
  housekeeping_full_repack_period is deprecated. Use housekeeping_optimize_repository_period
      instead.
  """,
    )
    @JvmName("ooweqmgafokmiodq")
    public suspend fun housekeepingFullRepackPeriod(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.housekeepingFullRepackPeriod = mapped
    }

    /**
     * @param value Number of Git pushes after which git gc is run.
     */
    @Deprecated(
        message = """
  housekeeping_gc_period is deprecated. Use housekeeping_optimize_repository_period instead.
  """,
    )
    @JvmName("ttcxlsnholsilwkm")
    public suspend fun housekeepingGcPeriod(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.housekeepingGcPeriod = mapped
    }

    /**
     * @param value Number of Git pushes after which an incremental git repack is run.
     */
    @Deprecated(
        message = """
  housekeeping_incremental_repack_period is deprecated. Use housekeeping_optimize_repository_period
      instead.
  """,
    )
    @JvmName("xvduvlmjqrikiyac")
    public suspend fun housekeepingIncrementalRepackPeriod(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.housekeepingIncrementalRepackPeriod = mapped
    }

    /**
     * @param value Number of Git pushes after which an incremental git repack is run.
     */
    @JvmName("ocqadlgsmudjsbpq")
    public suspend fun housekeepingOptimizeRepositoryPeriod(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.housekeepingOptimizeRepositoryPeriod = mapped
    }

    /**
     * @param value Enable HTML emails.
     */
    @JvmName("weemruimxlsoijtq")
    public suspend fun htmlEmailsEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.htmlEmailsEnabled = mapped
    }

    /**
     * @param value Sources to allow project import from. Valid values are: `github`, `bitbucket`, `bitbucket_server`, `fogbugz`, `git`, `gitlab.Project`, `gitea`, `manifest`
     */
    @JvmName("ovtfyxxctdsmauwx")
    public suspend fun importSources(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.importSources = mapped
    }

    /**
     * @param values Sources to allow project import from. Valid values are: `github`, `bitbucket`, `bitbucket_server`, `fogbugz`, `git`, `gitlab.Project`, `gitea`, `manifest`
     */
    @JvmName("dswnfwgpncumgead")
    public suspend fun importSources(vararg values: String) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.importSources = mapped
    }

    /**
     * @param value Enable in-product marketing emails.
     */
    @JvmName("lfnsqatoamhexxld")
    public suspend fun inProductMarketingEmailsEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.inProductMarketingEmailsEnabled = mapped
    }

    /**
     * @param value If delete*inactive*projects is true, the time (in months) to wait before deleting inactive projects. Introduced in GitLab 14.10. Became operational in GitLab 15.0.
     */
    @JvmName("jsmfdyrthinyacsq")
    public suspend fun inactiveProjectsDeleteAfterMonths(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.inactiveProjectsDeleteAfterMonths = mapped
    }

    /**
     * @param value If delete*inactive*projects is true, the minimum repository size for projects to be checked for inactivity. Introduced in GitLab 14.10. Became operational in GitLab 15.0.
     */
    @JvmName("rabotpxgkmlgeibm")
    public suspend fun inactiveProjectsMinSizeMb(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.inactiveProjectsMinSizeMb = mapped
    }

    /**
     * @param value If delete*inactive*projects is true, sets the time (in months) to wait before emailing maintainers that the project is scheduled be deleted because it is inactive. Introduced in GitLab 14.10. Became operational in GitLab 15.0.
     */
    @JvmName("ppmctqrjdljywdej")
    public suspend fun inactiveProjectsSendWarningEmailAfterMonths(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.inactiveProjectsSendWarningEmailAfterMonths = mapped
    }

    /**
     * @param value Enable Invisible CAPTCHA spam detection during sign-up.
     */
    @JvmName("msibinbctiawghfy")
    public suspend fun invisibleCaptchaEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.invisibleCaptchaEnabled = mapped
    }

    /**
     * @param value Max number of issue creation requests per minute per user.
     */
    @JvmName("ehrxvsrepbyfyehy")
    public suspend fun issuesCreateLimit(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.issuesCreateLimit = mapped
    }

    /**
     * @param value Prevent the deletion of the artifacts from the most recent successful jobs, regardless of the expiry time.
     */
    @JvmName("iaytyervmgkdhvts")
    public suspend fun keepLatestArtifact(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.keepLatestArtifact = mapped
    }

    /**
     * @param value Increase this value when any cached Markdown should be invalidated.
     */
    @JvmName("kltykjmivnnydgbf")
    public suspend fun localMarkdownVersion(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.localMarkdownVersion = mapped
    }

    /**
     * @param value Enable Mailgun event receiver.
     */
    @JvmName("deahkiekysjejcjj")
    public suspend fun mailgunEventsEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.mailgunEventsEnabled = mapped
    }

    /**
     * @param value The Mailgun HTTP webhook signing key for receiving events from webhook.
     */
    @JvmName("fbxjprirrkhequly")
    public suspend fun mailgunSigningKey(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.mailgunSigningKey = mapped
    }

    /**
     * @param value When instance is in maintenance mode, non-administrative users can sign in with read-only access and make read-only API requests.
     */
    @JvmName("cjygrgnqtkgcpenm")
    public suspend fun maintenanceMode(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.maintenanceMode = mapped
    }

    /**
     * @param value Message displayed when instance is in maintenance mode.
     */
    @JvmName("babkfojwqfavyorw")
    public suspend fun maintenanceModeMessage(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.maintenanceModeMessage = mapped
    }

    /**
     * @param value Maximum artifacts size in MB.
     */
    @JvmName("byctwhhjvrvlvxna")
    public suspend fun maxArtifactsSize(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.maxArtifactsSize = mapped
    }

    /**
     * @param value Limit attachment size in MB.
     */
    @JvmName("hiwpcfdohehtjhjc")
    public suspend fun maxAttachmentSize(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.maxAttachmentSize = mapped
    }

    /**
     * @param value Maximum export size in MB. 0 for unlimited.
     */
    @JvmName("psdpkdaxgwllierw")
    public suspend fun maxExportSize(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.maxExportSize = mapped
    }

    /**
     * @param value Maximum import size in MB. 0 for unlimited.
     */
    @JvmName("etdxmtpywiqvgirk")
    public suspend fun maxImportSize(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.maxImportSize = mapped
    }

    /**
     * @param value Maximum number of unique repositories a user can download in the specified time period before they are banned. Maximum: 10,000 repositories. Introduced in GitLab 15.1.
     */
    @JvmName("uxdnbtjphwakeurv")
    public suspend fun maxNumberOfRepositoryDownloads(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.maxNumberOfRepositoryDownloads = mapped
    }

    /**
     * @param value Reporting time period (in seconds). Maximum: 864000 seconds (10 days). Introduced in GitLab 15.1.
     */
    @JvmName("gigiprgcbqpnhdlp")
    public suspend fun maxNumberOfRepositoryDownloadsWithinTimePeriod(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.maxNumberOfRepositoryDownloadsWithinTimePeriod = mapped
    }

    /**
     * @param value Maximum size of pages repositories in MB.
     */
    @JvmName("plpjnhksjgfrvfnu")
    public suspend fun maxPagesSize(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.maxPagesSize = mapped
    }

    /**
     * @param value Maximum allowable lifetime for access tokens in days.
     */
    @JvmName("gwqjaotmpmxrlnfn")
    public suspend fun maxPersonalAccessTokenLifetime(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.maxPersonalAccessTokenLifetime = mapped
    }

    /**
     * @param value Maximum allowable lifetime for SSH keys in days. Introduced in GitLab 14.6.
     */
    @JvmName("fegiwfbfvcowtyyv")
    public suspend fun maxSshKeyLifetime(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.maxSshKeyLifetime = mapped
    }

    /**
     * @param value A method call is only tracked when it takes longer than the given amount of milliseconds.
     */
    @JvmName("mnsgapyobtrlxoxr")
    public suspend fun metricsMethodCallThreshold(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.metricsMethodCallThreshold = mapped
    }

    /**
     * @param value Indicates whether passwords require a minimum length. Introduced in GitLab 15.1. Premium and Ultimate only.
     */
    @JvmName("csnwrpcyviqixahi")
    public suspend fun minimumPasswordLength(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.minimumPasswordLength = mapped
    }

    /**
     * @param value Allow repository mirroring to configured by project Maintainers. If disabled, only Administrators can configure repository mirroring.
     */
    @JvmName("oxirfpyvaqxdccfm")
    public suspend fun mirrorAvailable(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.mirrorAvailable = mapped
    }

    /**
     * @param value Minimum capacity to be available before scheduling more mirrors preemptively.
     */
    @JvmName("fdhxgevlgsrjwydm")
    public suspend fun mirrorCapacityThreshold(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.mirrorCapacityThreshold = mapped
    }

    /**
     * @param value Maximum number of mirrors that can be synchronizing at the same time.
     */
    @JvmName("dxcvfuosuuwlyuto")
    public suspend fun mirrorMaxCapacity(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.mirrorMaxCapacity = mapped
    }

    /**
     * @param value Maximum time (in minutes) between updates that a mirror can have when scheduled to synchronize.
     */
    @JvmName("qieswxhsjgpqptgc")
    public suspend fun mirrorMaxDelay(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.mirrorMaxDelay = mapped
    }

    /**
     * @param value Use npmjs.org as a default remote repository when the package is not found in the GitLab Package Registry for npm.
     */
    @JvmName("rggrbvivtynpqreg")
    public suspend fun npmPackageRequestsForwarding(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.npmPackageRequestsForwarding = mapped
    }

    /**
     * @param value Define a list of trusted domains or IP addresses to which local requests are allowed when local requests for hooks and services are disabled.
     */
    @JvmName("aemyfxdfxurwktnm")
    public suspend fun outboundLocalRequestsWhitelists(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.outboundLocalRequestsWhitelists = mapped
    }

    /**
     * @param values Define a list of trusted domains or IP addresses to which local requests are allowed when local requests for hooks and services are disabled.
     */
    @JvmName("ppcepdhvkheuwpuv")
    public suspend fun outboundLocalRequestsWhitelists(vararg values: String) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.outboundLocalRequestsWhitelists = mapped
    }

    /**
     * @param value Number of workers assigned to the packages cleanup policies.
     */
    @JvmName("dkbinjxmhddyjbxo")
    public suspend fun packageRegistryCleanupPoliciesWorkerCapacity(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.packageRegistryCleanupPoliciesWorkerCapacity = mapped
    }

    /**
     * @param value Require users to prove ownership of custom domains. Domain verification is an essential security measure for public GitLab sites. Users are required to demonstrate they control a domain before it is enabled.
     */
    @JvmName("tnhrbjnmgpsckhqb")
    public suspend fun pagesDomainVerificationEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.pagesDomainVerificationEnabled = mapped
    }

    /**
     * @param value Enable authentication for Git over HTTP(S) via a GitLab account password.
     */
    @JvmName("sontkpxmbhrwjopy")
    public suspend fun passwordAuthenticationEnabledForGit(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.passwordAuthenticationEnabledForGit = mapped
    }

    /**
     * @param value Enable authentication for the web interface via a GitLab account password.
     */
    @JvmName("qvgekkxhifgywglc")
    public suspend fun passwordAuthenticationEnabledForWeb(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.passwordAuthenticationEnabledForWeb = mapped
    }

    /**
     * @param value Indicates whether passwords require at least one lowercase letter. Introduced in GitLab 15.1.
     */
    @JvmName("ahfotgvppxntridt")
    public suspend fun passwordLowercaseRequired(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.passwordLowercaseRequired = mapped
    }

    /**
     * @param value Indicates whether passwords require at least one number. Introduced in GitLab 15.1.
     */
    @JvmName("mfswmgrrrlyaiaov")
    public suspend fun passwordNumberRequired(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.passwordNumberRequired = mapped
    }

    /**
     * @param value Indicates whether passwords require at least one symbol character. Introduced in GitLab 15.1.
     */
    @JvmName("lanbudvqabiulbla")
    public suspend fun passwordSymbolRequired(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.passwordSymbolRequired = mapped
    }

    /**
     * @param value Indicates whether passwords require at least one uppercase letter. Introduced in GitLab 15.1.
     */
    @JvmName("embhnphpcspxmtuy")
    public suspend fun passwordUppercaseRequired(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.passwordUppercaseRequired = mapped
    }

    /**
     * @param value Path of the group that is allowed to toggle the performance bar.
     */
    @JvmName("yjuxevslyebtxonj")
    public suspend fun performanceBarAllowedGroupPath(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.performanceBarAllowedGroupPath = mapped
    }

    /**
     * @param value Prefix for all generated personal access tokens.
     */
    @JvmName("ixisjrjrvbmwryte")
    public suspend fun personalAccessTokenPrefix(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.personalAccessTokenPrefix = mapped
    }

    /**
     * @param value Maximum number of pipeline creation requests per minute per user and commit.
     */
    @JvmName("pxfnxlexfopgvdxk")
    public suspend fun pipelineLimitPerProjectUserSha(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.pipelineLimitPerProjectUserSha = mapped
    }

    /**
     * @param value (If enabled, requires: plantuml_url) Enable PlantUML integration.
     */
    @JvmName("bgluyhtffcgpqesb")
    public suspend fun plantumlEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.plantumlEnabled = mapped
    }

    /**
     * @param value The PlantUML instance URL for integration.
     */
    @JvmName("qxbdsnmonysjsgnt")
    public suspend fun plantumlUrl(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.plantumlUrl = mapped
    }

    /**
     * @param value Interval multiplier used by endpoints that perform polling. Set to 0 to disable polling.
     */
    @JvmName("rerudgqqfdvwxvhd")
    public suspend fun pollingIntervalMultiplier(`value`: Double?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.pollingIntervalMultiplier = mapped
    }

    /**
     * @param value Enable project export.
     */
    @JvmName("qkaxfedhhgylctaf")
    public suspend fun projectExportEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.projectExportEnabled = mapped
    }

    /**
     * @param value Enable Prometheus metrics.
     */
    @JvmName("kqbvjqojaiorjggu")
    public suspend fun prometheusMetricsEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.prometheusMetricsEnabled = mapped
    }

    /**
     * @param value CI/CD variables are protected by default.
     */
    @JvmName("ttpxpqvnjiqxqadp")
    public suspend fun protectedCiVariables(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.protectedCiVariables = mapped
    }

    /**
     * @param value Number of changes (branches or tags) in a single push to determine whether individual push events or bulk push events are created. Bulk push events are created if it surpasses that value.
     */
    @JvmName("settdkhgghqhdlsn")
    public suspend fun pushEventActivitiesLimit(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.pushEventActivitiesLimit = mapped
    }

    /**
     * @param value Number of changes (branches or tags) in a single push to determine whether webhooks and services fire or not. Webhooks and services aren’t submitted if it surpasses that value.
     */
    @JvmName("fvtenxkvmmatkykm")
    public suspend fun pushEventHooksLimit(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.pushEventHooksLimit = mapped
    }

    /**
     * @param value Use pypi.org as a default remote repository when the package is not found in the GitLab Package Registry for PyPI.
     */
    @JvmName("bulcovghnrgvjdrj")
    public suspend fun pypiPackageRequestsForwarding(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.pypiPackageRequestsForwarding = mapped
    }

    /**
     * @param value When rate limiting is enabled via the throttle_* settings, send this plain text response when a rate limit is exceeded. ‘Retry later’ is sent if this is blank.
     */
    @JvmName("vvakbbjbmcshosnc")
    public suspend fun rateLimitingResponseText(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.rateLimitingResponseText = mapped
    }

    /**
     * @param value Max number of requests per minute for each raw path. To disable throttling set to 0.
     */
    @JvmName("rypsgrjtrbnfktoq")
    public suspend fun rawBlobRequestLimit(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.rawBlobRequestLimit = mapped
    }

    /**
     * @param value (If enabled, requires: recaptcha*private*key and recaptcha*site*key) Enable reCAPTCHA.
     */
    @JvmName("tuqjbxsimnvshmkw")
    public suspend fun recaptchaEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.recaptchaEnabled = mapped
    }

    /**
     * @param value Private key for reCAPTCHA.
     */
    @JvmName("mfrcmldtabrdiued")
    public suspend fun recaptchaPrivateKey(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.recaptchaPrivateKey = mapped
    }

    /**
     * @param value Site key for reCAPTCHA.
     */
    @JvmName("agpyhrrakfkonnsc")
    public suspend fun recaptchaSiteKey(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.recaptchaSiteKey = mapped
    }

    /**
     * @param value Maximum push size (MB).
     */
    @JvmName("uudypquqfyhdjjoh")
    public suspend fun receiveMaxInputSize(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.receiveMaxInputSize = mapped
    }

    /**
     * @param value GitLab periodically runs git fsck in all project and wiki repositories to look for silent disk corruption issues.
     */
    @JvmName("bdttkuwxubuaieyh")
    public suspend fun repositoryChecksEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.repositoryChecksEnabled = mapped
    }

    /**
     * @param value Size limit per repository (MB).
     */
    @JvmName("aynvpeukbxusesgi")
    public suspend fun repositorySizeLimit(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.repositorySizeLimit = mapped
    }

    /**
     * @param value (GitLab 13.0 and earlier) List of names of enabled storage paths, taken from gitlab.yml. New projects are created in one of these stores, chosen at random.
     */
    @JvmName("hvnxxpvcwxsxudgv")
    public suspend fun repositoryStorages(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.repositoryStorages = mapped
    }

    /**
     * @param values (GitLab 13.0 and earlier) List of names of enabled storage paths, taken from gitlab.yml. New projects are created in one of these stores, chosen at random.
     */
    @JvmName("hbhjregbkweovwjb")
    public suspend fun repositoryStorages(vararg values: String) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.repositoryStorages = mapped
    }

    /**
     * @param value (GitLab 13.1 and later) Hash of names of taken from gitlab.yml to weights. New projects are created in one of these stores, chosen by a weighted random selection.
     */
    @JvmName("obapgckujtssjegb")
    public suspend fun repositoryStoragesWeighted(`value`: Map?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.repositoryStoragesWeighted = mapped
    }

    /**
     * @param values (GitLab 13.1 and later) Hash of names of taken from gitlab.yml to weights. New projects are created in one of these stores, chosen by a weighted random selection.
     */
    @JvmName("bbjxiquedryaocxf")
    public fun repositoryStoragesWeighted(vararg values: Pair) {
        val toBeMapped = values.toMap()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.repositoryStoragesWeighted = mapped
    }

    /**
     * @param value When enabled, any user that signs up for an account using the registration form is placed under a Pending approval state and has to be explicitly approved by an administrator.
     */
    @JvmName("ebpitlrxtxwfhmed")
    public suspend fun requireAdminApprovalAfterUserSignup(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.requireAdminApprovalAfterUserSignup = mapped
    }

    /**
     * @param value (If enabled, requires: two*factor*grace_period) Require all users to set up Two-factor authentication.
     */
    @JvmName("tappjgfuetampqxh")
    public suspend fun requireTwoFactorAuthentication(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.requireTwoFactorAuthentication = mapped
    }

    /**
     * @param value Selected levels cannot be used by non-Administrator users for groups, projects or snippets. Can take private, internal and public as a parameter. Null means there is no restriction.
     */
    @JvmName("ioljehkhgxjhneol")
    public suspend fun restrictedVisibilityLevels(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.restrictedVisibilityLevels = mapped
    }

    /**
     * @param values Selected levels cannot be used by non-Administrator users for groups, projects or snippets. Can take private, internal and public as a parameter. Null means there is no restriction.
     */
    @JvmName("friunpvivlffaydh")
    public suspend fun restrictedVisibilityLevels(vararg values: String) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.restrictedVisibilityLevels = mapped
    }

    /**
     * @param value The minimum allowed bit length of an uploaded RSA key. 0 means no restriction. -1 disables RSA keys.
     */
    @JvmName("rafyfoxkhwdjsejp")
    public suspend fun rsaKeyRestriction(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.rsaKeyRestriction = mapped
    }

    /**
     * @param value Max number of requests per minute for performing a search while authenticated. To disable throttling set to 0.
     */
    @JvmName("bcuuqiatvwtmxnpb")
    public suspend fun searchRateLimit(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.searchRateLimit = mapped
    }

    /**
     * @param value Max number of requests per minute for performing a search while unauthenticated. To disable throttling set to 0.
     */
    @JvmName("vuajcqcxawbdifoc")
    public suspend fun searchRateLimitUnauthenticated(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.searchRateLimitUnauthenticated = mapped
    }

    /**
     * @param value Send confirmation email on sign-up.
     */
    @JvmName("qqhsupvknbnqlugr")
    public suspend fun sendUserConfirmationEmail(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.sendUserConfirmationEmail = mapped
    }

    /**
     * @param value Session duration in minutes. GitLab restart is required to apply changes.
     */
    @JvmName("bbbjgnvlslrbggei")
    public suspend fun sessionExpireDelay(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.sessionExpireDelay = mapped
    }

    /**
     * @param value (If enabled, requires: shared*runners*text and shared*runners*minutes) Enable shared runners for new projects.
     */
    @JvmName("fpfcxfohmsvqoavr")
    public suspend fun sharedRunnersEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.sharedRunnersEnabled = mapped
    }

    /**
     * @param value Set the maximum number of CI/CD minutes that a group can use on shared runners per month.
     */
    @JvmName("aeyglvtypjthtcfh")
    public suspend fun sharedRunnersMinutes(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.sharedRunnersMinutes = mapped
    }

    /**
     * @param value Shared runners text.
     */
    @JvmName("cdpntfqyqcnbnqmy")
    public suspend fun sharedRunnersText(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.sharedRunnersText = mapped
    }

    /**
     * @param value The threshold in bytes at which Sidekiq jobs are compressed before being stored in Redis.
     */
    @JvmName("ihftkchbdpbawswx")
    public suspend fun sidekiqJobLimiterCompressionThresholdBytes(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.sidekiqJobLimiterCompressionThresholdBytes = mapped
    }

    /**
     * @param value The threshold in bytes at which Sidekiq jobs are rejected. 0 means do not reject any job.
     */
    @JvmName("iqlmfbmlrexddpvu")
    public suspend fun sidekiqJobLimiterLimitBytes(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.sidekiqJobLimiterLimitBytes = mapped
    }

    /**
     * @param value track or compress. Sets the behavior for Sidekiq job size limits.
     */
    @JvmName("bxqvqwiisgmwqwau")
    public suspend fun sidekiqJobLimiterMode(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.sidekiqJobLimiterMode = mapped
    }

    /**
     * @param value Text on the login page.
     */
    @JvmName("blmevjxvtxigwmvj")
    public suspend fun signInText(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.signInText = mapped
    }

    /**
     * @param value Enable registration.
     */
    @JvmName("lvfyaiudnyuvgclo")
    public suspend fun signupEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.signupEnabled = mapped
    }

    /**
     * @param value (If enabled, requires: slack*app*id, slack*app*secret and slack*app*secret) Enable Slack app.
     */
    @JvmName("iajopxiabtoqtjdh")
    public suspend fun slackAppEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.slackAppEnabled = mapped
    }

    /**
     * @param value The app ID of the Slack-app.
     */
    @JvmName("rnhpkskfubwuvmuf")
    public suspend fun slackAppId(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.slackAppId = mapped
    }

    /**
     * @param value The app secret of the Slack-app.
     */
    @JvmName("gqxyefxrehcluwud")
    public suspend fun slackAppSecret(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.slackAppSecret = mapped
    }

    /**
     * @param value The signing secret of the Slack-app.
     */
    @JvmName("wayrijmrpggufjnr")
    public suspend fun slackAppSigningSecret(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.slackAppSigningSecret = mapped
    }

    /**
     * @param value The verification token of the Slack-app.
     */
    @JvmName("jjupkspqqoghaydm")
    public suspend fun slackAppVerificationToken(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.slackAppVerificationToken = mapped
    }

    /**
     * @param value Max snippet content size in bytes.
     */
    @JvmName("jqftfticptlpjcxc")
    public suspend fun snippetSizeLimit(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.snippetSizeLimit = mapped
    }

    /**
     * @param value The Snowplow site name / application ID. (for example, gitlab)
     */
    @JvmName("gyindssmsnquuyqc")
    public suspend fun snowplowAppId(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.snowplowAppId = mapped
    }

    /**
     * @param value The Snowplow collector hostname. (for example, snowplow.trx.gitlab.net)
     */
    @JvmName("clfjyodxjbogsrod")
    public suspend fun snowplowCollectorHostname(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.snowplowCollectorHostname = mapped
    }

    /**
     * @param value The Snowplow cookie domain. (for example, .gitlab.com)
     */
    @JvmName("rxjyvmtqiqxffbgy")
    public suspend fun snowplowCookieDomain(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.snowplowCookieDomain = mapped
    }

    /**
     * @param value Enable snowplow tracking.
     */
    @JvmName("udvfmyogqxvbievu")
    public suspend fun snowplowEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.snowplowEnabled = mapped
    }

    /**
     * @param value Enables Sourcegraph integration. If enabled, requires sourcegraph_url.
     */
    @JvmName("kxahmvqignqpdebx")
    public suspend fun sourcegraphEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.sourcegraphEnabled = mapped
    }

    /**
     * @param value Blocks Sourcegraph from being loaded on private and internal projects.
     */
    @JvmName("wddrhtbrgewmspnk")
    public suspend fun sourcegraphPublicOnly(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.sourcegraphPublicOnly = mapped
    }

    /**
     * @param value The Sourcegraph instance URL for integration.
     */
    @JvmName("bnxpqjlrphjarrnn")
    public suspend fun sourcegraphUrl(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.sourcegraphUrl = mapped
    }

    /**
     * @param value API key used by GitLab for accessing the Spam Check service endpoint.
     */
    @JvmName("jjxmuxhluqpgmhgo")
    public suspend fun spamCheckApiKey(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.spamCheckApiKey = mapped
    }

    /**
     * @param value Enables spam checking using external Spam Check API endpoint.
     */
    @JvmName("jpnmwmoujucidask")
    public suspend fun spamCheckEndpointEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.spamCheckEndpointEnabled = mapped
    }

    /**
     * @param value URL of the external Spamcheck service endpoint. Valid URI schemes are grpc or tls. Specifying tls forces communication to be encrypted.
     */
    @JvmName("ggktaiqhmsnyqtiv")
    public suspend fun spamCheckEndpointUrl(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.spamCheckEndpointUrl = mapped
    }

    /**
     * @param value Enable pipeline suggestion banner.
     */
    @JvmName("mbfwqqfkmkpfdehb")
    public suspend fun suggestPipelineEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.suggestPipelineEnabled = mapped
    }

    /**
     * @param value Maximum time for web terminal websocket connection (in seconds). Set to 0 for unlimited time.
     */
    @JvmName("dkjpadvxvwerjlen")
    public suspend fun terminalMaxSessionTime(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.terminalMaxSessionTime = mapped
    }

    /**
     * @param value (Required by: enforce_terms) Markdown content for the ToS.
     */
    @JvmName("wklhdtpxfdfxlwvq")
    public suspend fun terms(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.terms = mapped
    }

    /**
     * @param value (If enabled, requires: throttle*authenticated*api*period*in*seconds and throttle*authenticated*api*requests*per*period) Enable authenticated API request rate limit. Helps reduce request volume (for example, from crawlers or abusive bots).
     */
    @JvmName("ojcrpbrlegtkqhfk")
    public suspend fun throttleAuthenticatedApiEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.throttleAuthenticatedApiEnabled = mapped
    }

    /**
     * @param value Rate limit period (in seconds).
     */
    @JvmName("eqchqufllylvekcn")
    public suspend fun throttleAuthenticatedApiPeriodInSeconds(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.throttleAuthenticatedApiPeriodInSeconds = mapped
    }

    /**
     * @param value Maximum requests per period per user.
     */
    @JvmName("wysjjfhkytvcjfjt")
    public suspend fun throttleAuthenticatedApiRequestsPerPeriod(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.throttleAuthenticatedApiRequestsPerPeriod = mapped
    }

    /**
     * @param value (If enabled, requires: throttle*authenticated*packages*api*period*in*seconds and throttle*authenticated*packages*api*requests*per*period) Enable authenticated API request rate limit. Helps reduce request volume (for example, from crawlers or abusive bots). View Package Registry rate limits for more details.
     */
    @JvmName("olgnhtomnvmpwklf")
    public suspend fun throttleAuthenticatedPackagesApiEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.throttleAuthenticatedPackagesApiEnabled = mapped
    }

    /**
     * @param value Rate limit period (in seconds). View Package Registry rate limits for more details.
     */
    @JvmName("mwkvwxhcxnetxhoo")
    public suspend fun throttleAuthenticatedPackagesApiPeriodInSeconds(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.throttleAuthenticatedPackagesApiPeriodInSeconds = mapped
    }

    /**
     * @param value Maximum requests per period per user. View Package Registry rate limits for more details.
     */
    @JvmName("ryunylwwsmdtmdup")
    public suspend fun throttleAuthenticatedPackagesApiRequestsPerPeriod(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.throttleAuthenticatedPackagesApiRequestsPerPeriod = mapped
    }

    /**
     * @param value (If enabled, requires: throttle*authenticated*web*period*in*seconds and throttle*authenticated*web*requests*per*period) Enable authenticated web request rate limit. Helps reduce request volume (for example, from crawlers or abusive bots).
     */
    @JvmName("guvejkefensviqra")
    public suspend fun throttleAuthenticatedWebEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.throttleAuthenticatedWebEnabled = mapped
    }

    /**
     * @param value Rate limit period (in seconds).
     */
    @JvmName("pbmnlsqjhrdsxoeb")
    public suspend fun throttleAuthenticatedWebPeriodInSeconds(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.throttleAuthenticatedWebPeriodInSeconds = mapped
    }

    /**
     * @param value Maximum requests per period per user.
     */
    @JvmName("fheimnwlgdwctyqq")
    public suspend fun throttleAuthenticatedWebRequestsPerPeriod(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.throttleAuthenticatedWebRequestsPerPeriod = mapped
    }

    /**
     * @param value (If enabled, requires: throttle*unauthenticated*api*period*in*seconds and throttle*unauthenticated*api*requests*per*period) Enable unauthenticated API request rate limit. Helps reduce request volume (for example, from crawlers or abusive bots).
     */
    @JvmName("ojkrocjeukxofkeq")
    public suspend fun throttleUnauthenticatedApiEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.throttleUnauthenticatedApiEnabled = mapped
    }

    /**
     * @param value Rate limit period in seconds.
     */
    @JvmName("gtjhybiyuovjiyod")
    public suspend fun throttleUnauthenticatedApiPeriodInSeconds(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.throttleUnauthenticatedApiPeriodInSeconds = mapped
    }

    /**
     * @param value Max requests per period per IP.
     */
    @JvmName("vtqyhmqmafjpalel")
    public suspend fun throttleUnauthenticatedApiRequestsPerPeriod(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.throttleUnauthenticatedApiRequestsPerPeriod = mapped
    }

    /**
     * @param value (If enabled, requires: throttle*unauthenticated*packages*api*period*in*seconds and throttle*unauthenticated*packages*api*requests*per*period) Enable authenticated API request rate limit. Helps reduce request volume (for example, from crawlers or abusive bots). View Package Registry rate limits for more details.
     */
    @JvmName("npilxnsaxwifxtws")
    public suspend fun throttleUnauthenticatedPackagesApiEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.throttleUnauthenticatedPackagesApiEnabled = mapped
    }

    /**
     * @param value Rate limit period (in seconds). View Package Registry rate limits for more details.
     */
    @JvmName("psaldusmvtrhooqv")
    public suspend fun throttleUnauthenticatedPackagesApiPeriodInSeconds(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.throttleUnauthenticatedPackagesApiPeriodInSeconds = mapped
    }

    /**
     * @param value Maximum requests per period per user. View Package Registry rate limits for more details.
     */
    @JvmName("dnsjeyaioynkgayc")
    public suspend fun throttleUnauthenticatedPackagesApiRequestsPerPeriod(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.throttleUnauthenticatedPackagesApiRequestsPerPeriod = mapped
    }

    /**
     * @param value (If enabled, requires: throttle*unauthenticated*web*period*in*seconds and throttle*unauthenticated*web*requests*per*period) Enable unauthenticated web request rate limit. Helps reduce request volume (for example, from crawlers or abusive bots).
     */
    @JvmName("arcogudrifcgynkg")
    public suspend fun throttleUnauthenticatedWebEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.throttleUnauthenticatedWebEnabled = mapped
    }

    /**
     * @param value Rate limit period in seconds.
     */
    @JvmName("xgcyitihxaflobva")
    public suspend fun throttleUnauthenticatedWebPeriodInSeconds(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.throttleUnauthenticatedWebPeriodInSeconds = mapped
    }

    /**
     * @param value Max requests per period per IP.
     */
    @JvmName("dnnksnamtspojmut")
    public suspend fun throttleUnauthenticatedWebRequestsPerPeriod(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.throttleUnauthenticatedWebRequestsPerPeriod = mapped
    }

    /**
     * @param value Limit display of time tracking units to hours.
     */
    @JvmName("lhhvyeuexdudvpak")
    public suspend fun timeTrackingLimitToHours(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.timeTrackingLimitToHours = mapped
    }

    /**
     * @param value Amount of time (in hours) that users are allowed to skip forced configuration of two-factor authentication.
     */
    @JvmName("snnvgvkbjbvklqkk")
    public suspend fun twoFactorGracePeriod(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.twoFactorGracePeriod = mapped
    }

    /**
     * @param value (If enabled, requires: unique*ips*limit*per*user and unique*ips*limit*time*window) Limit sign in from multiple IPs.
     */
    @JvmName("ijfilayrfnmlshge")
    public suspend fun uniqueIpsLimitEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.uniqueIpsLimitEnabled = mapped
    }

    /**
     * @param value Maximum number of IPs per user.
     */
    @JvmName("ygljvgisjrvmumyb")
    public suspend fun uniqueIpsLimitPerUser(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.uniqueIpsLimitPerUser = mapped
    }

    /**
     * @param value How many seconds an IP is counted towards the limit.
     */
    @JvmName("qhbcewbdxfteytcd")
    public suspend fun uniqueIpsLimitTimeWindow(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.uniqueIpsLimitTimeWindow = mapped
    }

    /**
     * @param value Every week GitLab reports license usage back to GitLab, Inc.
     */
    @JvmName("tpjwvdahvhvwfseg")
    public suspend fun usagePingEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.usagePingEnabled = mapped
    }

    /**
     * @param value Send an email to users upon account deactivation.
     */
    @JvmName("bucabpurqcsshxio")
    public suspend fun userDeactivationEmailsEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.userDeactivationEmailsEnabled = mapped
    }

    /**
     * @param value Newly registered users are external by default.
     */
    @JvmName("cxvdfayqsaujswok")
    public suspend fun userDefaultExternal(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.userDefaultExternal = mapped
    }

    /**
     * @param value Specify an email address regex pattern to identify default internal users.
     */
    @JvmName("ejspqsltlvevypcn")
    public suspend fun userDefaultInternalRegex(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.userDefaultInternalRegex = mapped
    }

    /**
     * @param value Allow users to register any application to use GitLab as an OAuth provider.
     */
    @JvmName("ryqmysikuxgeigyh")
    public suspend fun userOauthApplications(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.userOauthApplications = mapped
    }

    /**
     * @param value When set to false disable the You won't be able to pull or push project code via SSH warning shown to users with no uploaded SSH key.
     */
    @JvmName("iiudrejkruqxiign")
    public suspend fun userShowAddSshKeyMessage(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.userShowAddSshKeyMessage = mapped
    }

    /**
     * @param value Let GitLab inform you when an update is available.
     */
    @JvmName("dptyroqymekmpprg")
    public suspend fun versionCheckEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.versionCheckEnabled = mapped
    }

    /**
     * @param value Live Preview (allow live previews of JavaScript projects in the Web IDE using CodeSandbox Live Preview).
     */
    @JvmName("lskpdgfaojmxggru")
    public suspend fun webIdeClientsidePreviewEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.webIdeClientsidePreviewEnabled = mapped
    }

    /**
     * @param value What’s new variant, possible values: all*tiers, current*tier, and disabled.
     */
    @JvmName("qxwsjhoutjdkwlbg")
    public suspend fun whatsNewVariant(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.whatsNewVariant = mapped
    }

    /**
     * @param value Maximum wiki page content size in bytes. The minimum value is 1024 bytes.
     */
    @JvmName("whqyiukrhnihnsui")
    public suspend fun wikiPageMaxContentBytes(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.wikiPageMaxContentBytes = mapped
    }

    internal fun build(): ApplicationSettingsArgs = ApplicationSettingsArgs(
        abuseNotificationEmail = abuseNotificationEmail,
        adminMode = adminMode,
        afterSignOutPath = afterSignOutPath,
        afterSignUpText = afterSignUpText,
        akismetApiKey = akismetApiKey,
        akismetEnabled = akismetEnabled,
        allowGroupOwnersToManageLdap = allowGroupOwnersToManageLdap,
        allowLocalRequestsFromSystemHooks = allowLocalRequestsFromSystemHooks,
        allowLocalRequestsFromWebHooksAndServices = allowLocalRequestsFromWebHooksAndServices,
        archiveBuildsInHumanReadable = archiveBuildsInHumanReadable,
        assetProxyAllowlists = assetProxyAllowlists,
        assetProxyEnabled = assetProxyEnabled,
        assetProxySecretKey = assetProxySecretKey,
        assetProxyUrl = assetProxyUrl,
        authorizedKeysEnabled = authorizedKeysEnabled,
        autoDevopsDomain = autoDevopsDomain,
        autoDevopsEnabled = autoDevopsEnabled,
        automaticPurchasedStorageAllocation = automaticPurchasedStorageAllocation,
        canCreateGroup = canCreateGroup,
        checkNamespacePlan = checkNamespacePlan,
        commitEmailHostname = commitEmailHostname,
        containerExpirationPoliciesEnableHistoricEntries = containerExpirationPoliciesEnableHistoricEntries,
        containerRegistryCleanupTagsServiceMaxListSize = containerRegistryCleanupTagsServiceMaxListSize,
        containerRegistryDeleteTagsServiceTimeout = containerRegistryDeleteTagsServiceTimeout,
        containerRegistryExpirationPoliciesCaching = containerRegistryExpirationPoliciesCaching,
        containerRegistryExpirationPoliciesWorkerCapacity = containerRegistryExpirationPoliciesWorkerCapacity,
        containerRegistryTokenExpireDelay = containerRegistryTokenExpireDelay,
        deactivateDormantUsers = deactivateDormantUsers,
        defaultArtifactsExpireIn = defaultArtifactsExpireIn,
        defaultBranchName = defaultBranchName,
        defaultBranchProtection = defaultBranchProtection,
        defaultCiConfigPath = defaultCiConfigPath,
        defaultGroupVisibility = defaultGroupVisibility,
        defaultProjectCreation = defaultProjectCreation,
        defaultProjectVisibility = defaultProjectVisibility,
        defaultProjectsLimit = defaultProjectsLimit,
        defaultSnippetVisibility = defaultSnippetVisibility,
        deleteInactiveProjects = deleteInactiveProjects,
        deletionAdjournedPeriod = deletionAdjournedPeriod,
        diffMaxFiles = diffMaxFiles,
        diffMaxLines = diffMaxLines,
        diffMaxPatchBytes = diffMaxPatchBytes,
        disableFeedToken = disableFeedToken,
        disabledOauthSignInSources = disabledOauthSignInSources,
        dnsRebindingProtectionEnabled = dnsRebindingProtectionEnabled,
        domainAllowlists = domainAllowlists,
        domainDenylistEnabled = domainDenylistEnabled,
        domainDenylists = domainDenylists,
        dsaKeyRestriction = dsaKeyRestriction,
        ecdsaKeyRestriction = ecdsaKeyRestriction,
        ecdsaSkKeyRestriction = ecdsaSkKeyRestriction,
        ed25519KeyRestriction = ed25519KeyRestriction,
        ed25519SkKeyRestriction = ed25519SkKeyRestriction,
        eksAccessKeyId = eksAccessKeyId,
        eksAccountId = eksAccountId,
        eksIntegrationEnabled = eksIntegrationEnabled,
        eksSecretAccessKey = eksSecretAccessKey,
        elasticsearchAws = elasticsearchAws,
        elasticsearchAwsAccessKey = elasticsearchAwsAccessKey,
        elasticsearchAwsRegion = elasticsearchAwsRegion,
        elasticsearchAwsSecretAccessKey = elasticsearchAwsSecretAccessKey,
        elasticsearchIndexedFieldLengthLimit = elasticsearchIndexedFieldLengthLimit,
        elasticsearchIndexedFileSizeLimitKb = elasticsearchIndexedFileSizeLimitKb,
        elasticsearchIndexing = elasticsearchIndexing,
        elasticsearchLimitIndexing = elasticsearchLimitIndexing,
        elasticsearchMaxBulkConcurrency = elasticsearchMaxBulkConcurrency,
        elasticsearchMaxBulkSizeMb = elasticsearchMaxBulkSizeMb,
        elasticsearchNamespaceIds = elasticsearchNamespaceIds,
        elasticsearchPassword = elasticsearchPassword,
        elasticsearchProjectIds = elasticsearchProjectIds,
        elasticsearchSearch = elasticsearchSearch,
        elasticsearchUrls = elasticsearchUrls,
        elasticsearchUsername = elasticsearchUsername,
        emailAdditionalText = emailAdditionalText,
        emailAuthorInBody = emailAuthorInBody,
        enabledGitAccessProtocol = enabledGitAccessProtocol,
        enforceNamespaceStorageLimit = enforceNamespaceStorageLimit,
        enforceTerms = enforceTerms,
        externalAuthClientCert = externalAuthClientCert,
        externalAuthClientKey = externalAuthClientKey,
        externalAuthClientKeyPass = externalAuthClientKeyPass,
        externalAuthorizationServiceDefaultLabel = externalAuthorizationServiceDefaultLabel,
        externalAuthorizationServiceEnabled = externalAuthorizationServiceEnabled,
        externalAuthorizationServiceTimeout = externalAuthorizationServiceTimeout,
        externalAuthorizationServiceUrl = externalAuthorizationServiceUrl,
        externalPipelineValidationServiceTimeout = externalPipelineValidationServiceTimeout,
        externalPipelineValidationServiceToken = externalPipelineValidationServiceToken,
        externalPipelineValidationServiceUrl = externalPipelineValidationServiceUrl,
        fileTemplateProjectId = fileTemplateProjectId,
        firstDayOfWeek = firstDayOfWeek,
        geoNodeAllowedIps = geoNodeAllowedIps,
        geoStatusTimeout = geoStatusTimeout,
        gitRateLimitUsersAllowlists = gitRateLimitUsersAllowlists,
        gitTwoFactorSessionExpiry = gitTwoFactorSessionExpiry,
        gitalyTimeoutDefault = gitalyTimeoutDefault,
        gitalyTimeoutFast = gitalyTimeoutFast,
        gitalyTimeoutMedium = gitalyTimeoutMedium,
        grafanaEnabled = grafanaEnabled,
        grafanaUrl = grafanaUrl,
        gravatarEnabled = gravatarEnabled,
        groupOwnersCanManageDefaultBranchProtection = groupOwnersCanManageDefaultBranchProtection,
        hashedStorageEnabled = hashedStorageEnabled,
        helpPageHideCommercialContent = helpPageHideCommercialContent,
        helpPageSupportUrl = helpPageSupportUrl,
        helpPageText = helpPageText,
        helpText = helpText,
        hideThirdPartyOffers = hideThirdPartyOffers,
        homePageUrl = homePageUrl,
        housekeepingEnabled = housekeepingEnabled,
        housekeepingFullRepackPeriod = housekeepingFullRepackPeriod,
        housekeepingGcPeriod = housekeepingGcPeriod,
        housekeepingIncrementalRepackPeriod = housekeepingIncrementalRepackPeriod,
        housekeepingOptimizeRepositoryPeriod = housekeepingOptimizeRepositoryPeriod,
        htmlEmailsEnabled = htmlEmailsEnabled,
        importSources = importSources,
        inProductMarketingEmailsEnabled = inProductMarketingEmailsEnabled,
        inactiveProjectsDeleteAfterMonths = inactiveProjectsDeleteAfterMonths,
        inactiveProjectsMinSizeMb = inactiveProjectsMinSizeMb,
        inactiveProjectsSendWarningEmailAfterMonths = inactiveProjectsSendWarningEmailAfterMonths,
        invisibleCaptchaEnabled = invisibleCaptchaEnabled,
        issuesCreateLimit = issuesCreateLimit,
        keepLatestArtifact = keepLatestArtifact,
        localMarkdownVersion = localMarkdownVersion,
        mailgunEventsEnabled = mailgunEventsEnabled,
        mailgunSigningKey = mailgunSigningKey,
        maintenanceMode = maintenanceMode,
        maintenanceModeMessage = maintenanceModeMessage,
        maxArtifactsSize = maxArtifactsSize,
        maxAttachmentSize = maxAttachmentSize,
        maxExportSize = maxExportSize,
        maxImportSize = maxImportSize,
        maxNumberOfRepositoryDownloads = maxNumberOfRepositoryDownloads,
        maxNumberOfRepositoryDownloadsWithinTimePeriod = maxNumberOfRepositoryDownloadsWithinTimePeriod,
        maxPagesSize = maxPagesSize,
        maxPersonalAccessTokenLifetime = maxPersonalAccessTokenLifetime,
        maxSshKeyLifetime = maxSshKeyLifetime,
        metricsMethodCallThreshold = metricsMethodCallThreshold,
        minimumPasswordLength = minimumPasswordLength,
        mirrorAvailable = mirrorAvailable,
        mirrorCapacityThreshold = mirrorCapacityThreshold,
        mirrorMaxCapacity = mirrorMaxCapacity,
        mirrorMaxDelay = mirrorMaxDelay,
        npmPackageRequestsForwarding = npmPackageRequestsForwarding,
        outboundLocalRequestsWhitelists = outboundLocalRequestsWhitelists,
        packageRegistryCleanupPoliciesWorkerCapacity = packageRegistryCleanupPoliciesWorkerCapacity,
        pagesDomainVerificationEnabled = pagesDomainVerificationEnabled,
        passwordAuthenticationEnabledForGit = passwordAuthenticationEnabledForGit,
        passwordAuthenticationEnabledForWeb = passwordAuthenticationEnabledForWeb,
        passwordLowercaseRequired = passwordLowercaseRequired,
        passwordNumberRequired = passwordNumberRequired,
        passwordSymbolRequired = passwordSymbolRequired,
        passwordUppercaseRequired = passwordUppercaseRequired,
        performanceBarAllowedGroupPath = performanceBarAllowedGroupPath,
        personalAccessTokenPrefix = personalAccessTokenPrefix,
        pipelineLimitPerProjectUserSha = pipelineLimitPerProjectUserSha,
        plantumlEnabled = plantumlEnabled,
        plantumlUrl = plantumlUrl,
        pollingIntervalMultiplier = pollingIntervalMultiplier,
        projectExportEnabled = projectExportEnabled,
        prometheusMetricsEnabled = prometheusMetricsEnabled,
        protectedCiVariables = protectedCiVariables,
        pushEventActivitiesLimit = pushEventActivitiesLimit,
        pushEventHooksLimit = pushEventHooksLimit,
        pypiPackageRequestsForwarding = pypiPackageRequestsForwarding,
        rateLimitingResponseText = rateLimitingResponseText,
        rawBlobRequestLimit = rawBlobRequestLimit,
        recaptchaEnabled = recaptchaEnabled,
        recaptchaPrivateKey = recaptchaPrivateKey,
        recaptchaSiteKey = recaptchaSiteKey,
        receiveMaxInputSize = receiveMaxInputSize,
        repositoryChecksEnabled = repositoryChecksEnabled,
        repositorySizeLimit = repositorySizeLimit,
        repositoryStorages = repositoryStorages,
        repositoryStoragesWeighted = repositoryStoragesWeighted,
        requireAdminApprovalAfterUserSignup = requireAdminApprovalAfterUserSignup,
        requireTwoFactorAuthentication = requireTwoFactorAuthentication,
        restrictedVisibilityLevels = restrictedVisibilityLevels,
        rsaKeyRestriction = rsaKeyRestriction,
        searchRateLimit = searchRateLimit,
        searchRateLimitUnauthenticated = searchRateLimitUnauthenticated,
        sendUserConfirmationEmail = sendUserConfirmationEmail,
        sessionExpireDelay = sessionExpireDelay,
        sharedRunnersEnabled = sharedRunnersEnabled,
        sharedRunnersMinutes = sharedRunnersMinutes,
        sharedRunnersText = sharedRunnersText,
        sidekiqJobLimiterCompressionThresholdBytes = sidekiqJobLimiterCompressionThresholdBytes,
        sidekiqJobLimiterLimitBytes = sidekiqJobLimiterLimitBytes,
        sidekiqJobLimiterMode = sidekiqJobLimiterMode,
        signInText = signInText,
        signupEnabled = signupEnabled,
        slackAppEnabled = slackAppEnabled,
        slackAppId = slackAppId,
        slackAppSecret = slackAppSecret,
        slackAppSigningSecret = slackAppSigningSecret,
        slackAppVerificationToken = slackAppVerificationToken,
        snippetSizeLimit = snippetSizeLimit,
        snowplowAppId = snowplowAppId,
        snowplowCollectorHostname = snowplowCollectorHostname,
        snowplowCookieDomain = snowplowCookieDomain,
        snowplowEnabled = snowplowEnabled,
        sourcegraphEnabled = sourcegraphEnabled,
        sourcegraphPublicOnly = sourcegraphPublicOnly,
        sourcegraphUrl = sourcegraphUrl,
        spamCheckApiKey = spamCheckApiKey,
        spamCheckEndpointEnabled = spamCheckEndpointEnabled,
        spamCheckEndpointUrl = spamCheckEndpointUrl,
        suggestPipelineEnabled = suggestPipelineEnabled,
        terminalMaxSessionTime = terminalMaxSessionTime,
        terms = terms,
        throttleAuthenticatedApiEnabled = throttleAuthenticatedApiEnabled,
        throttleAuthenticatedApiPeriodInSeconds = throttleAuthenticatedApiPeriodInSeconds,
        throttleAuthenticatedApiRequestsPerPeriod = throttleAuthenticatedApiRequestsPerPeriod,
        throttleAuthenticatedPackagesApiEnabled = throttleAuthenticatedPackagesApiEnabled,
        throttleAuthenticatedPackagesApiPeriodInSeconds = throttleAuthenticatedPackagesApiPeriodInSeconds,
        throttleAuthenticatedPackagesApiRequestsPerPeriod = throttleAuthenticatedPackagesApiRequestsPerPeriod,
        throttleAuthenticatedWebEnabled = throttleAuthenticatedWebEnabled,
        throttleAuthenticatedWebPeriodInSeconds = throttleAuthenticatedWebPeriodInSeconds,
        throttleAuthenticatedWebRequestsPerPeriod = throttleAuthenticatedWebRequestsPerPeriod,
        throttleUnauthenticatedApiEnabled = throttleUnauthenticatedApiEnabled,
        throttleUnauthenticatedApiPeriodInSeconds = throttleUnauthenticatedApiPeriodInSeconds,
        throttleUnauthenticatedApiRequestsPerPeriod = throttleUnauthenticatedApiRequestsPerPeriod,
        throttleUnauthenticatedPackagesApiEnabled = throttleUnauthenticatedPackagesApiEnabled,
        throttleUnauthenticatedPackagesApiPeriodInSeconds = throttleUnauthenticatedPackagesApiPeriodInSeconds,
        throttleUnauthenticatedPackagesApiRequestsPerPeriod = throttleUnauthenticatedPackagesApiRequestsPerPeriod,
        throttleUnauthenticatedWebEnabled = throttleUnauthenticatedWebEnabled,
        throttleUnauthenticatedWebPeriodInSeconds = throttleUnauthenticatedWebPeriodInSeconds,
        throttleUnauthenticatedWebRequestsPerPeriod = throttleUnauthenticatedWebRequestsPerPeriod,
        timeTrackingLimitToHours = timeTrackingLimitToHours,
        twoFactorGracePeriod = twoFactorGracePeriod,
        uniqueIpsLimitEnabled = uniqueIpsLimitEnabled,
        uniqueIpsLimitPerUser = uniqueIpsLimitPerUser,
        uniqueIpsLimitTimeWindow = uniqueIpsLimitTimeWindow,
        usagePingEnabled = usagePingEnabled,
        userDeactivationEmailsEnabled = userDeactivationEmailsEnabled,
        userDefaultExternal = userDefaultExternal,
        userDefaultInternalRegex = userDefaultInternalRegex,
        userOauthApplications = userOauthApplications,
        userShowAddSshKeyMessage = userShowAddSshKeyMessage,
        versionCheckEnabled = versionCheckEnabled,
        webIdeClientsidePreviewEnabled = webIdeClientsidePreviewEnabled,
        whatsNewVariant = whatsNewVariant,
        wikiPageMaxContentBytes = wikiPageMaxContentBytes,
    )
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy