/**
 * Copyright (c) HashiCorp, Inc.
 * SPDX-License-Identifier: MPL-2.0
 */
import { Construct } from 'constructs';
import * as cdktf from 'cdktf';
export interface DeveloperConnectConnectionConfig extends cdktf.TerraformMetaArguments {
    /**
    * Optional. Allows clients to store small amounts of arbitrary data.
    *
    * **Note**: This field is non-authoritative, and will only manage the annotations present in your configuration.
    * Please refer to the field 'effective_annotations' for all of the annotations present on the resource.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#annotations DeveloperConnectConnection#annotations}
    */
    readonly annotations?: {
        [key: string]: string;
    };
    /**
    * Required. Id of the requesting object
    * If auto-generating Id server-side, remove this field and
    * connection_id from the method_signature of Create RPC
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#connection_id DeveloperConnectConnection#connection_id}
    */
    readonly connectionId: string;
    /**
    * Optional. If disabled is set to true, functionality is disabled for this connection.
    * Repository based API methods and webhooks processing for repositories in
    * this connection will be disabled.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#disabled DeveloperConnectConnection#disabled}
    */
    readonly disabled?: boolean | cdktf.IResolvable;
    /**
    * Optional. This checksum is computed by the server based on the value of other
    * fields, and may be sent on update and delete requests to ensure the
    * client has an up-to-date value before proceeding.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#etag DeveloperConnectConnection#etag}
    */
    readonly etag?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#id DeveloperConnectConnection#id}
    *
    * Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2.
    * If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable.
    */
    readonly id?: string;
    /**
    * Optional. Labels as key value pairs
    *
    * **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
    * Please refer to the field 'effective_labels' for all of the labels present on the resource.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#labels DeveloperConnectConnection#labels}
    */
    readonly labels?: {
        [key: string]: string;
    };
    /**
    * Resource ID segment making up resource 'name'. It identifies the resource within its parent collection as described in https://google.aip.dev/122.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#location DeveloperConnectConnection#location}
    */
    readonly location: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#project DeveloperConnectConnection#project}
    */
    readonly project?: string;
    /**
    * bitbucket_cloud_config block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#bitbucket_cloud_config DeveloperConnectConnection#bitbucket_cloud_config}
    */
    readonly bitbucketCloudConfig?: DeveloperConnectConnectionBitbucketCloudConfig;
    /**
    * bitbucket_data_center_config block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#bitbucket_data_center_config DeveloperConnectConnection#bitbucket_data_center_config}
    */
    readonly bitbucketDataCenterConfig?: DeveloperConnectConnectionBitbucketDataCenterConfig;
    /**
    * crypto_key_config block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#crypto_key_config DeveloperConnectConnection#crypto_key_config}
    */
    readonly cryptoKeyConfig?: DeveloperConnectConnectionCryptoKeyConfig;
    /**
    * github_config block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#github_config DeveloperConnectConnection#github_config}
    */
    readonly githubConfig?: DeveloperConnectConnectionGithubConfig;
    /**
    * github_enterprise_config block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#github_enterprise_config DeveloperConnectConnection#github_enterprise_config}
    */
    readonly githubEnterpriseConfig?: DeveloperConnectConnectionGithubEnterpriseConfig;
    /**
    * gitlab_config block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#gitlab_config DeveloperConnectConnection#gitlab_config}
    */
    readonly gitlabConfig?: DeveloperConnectConnectionGitlabConfig;
    /**
    * gitlab_enterprise_config block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#gitlab_enterprise_config DeveloperConnectConnection#gitlab_enterprise_config}
    */
    readonly gitlabEnterpriseConfig?: DeveloperConnectConnectionGitlabEnterpriseConfig;
    /**
    * timeouts block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#timeouts DeveloperConnectConnection#timeouts}
    */
    readonly timeouts?: DeveloperConnectConnectionTimeouts;
}
export interface DeveloperConnectConnectionInstallationState {
}
export declare function developerConnectConnectionInstallationStateToTerraform(struct?: DeveloperConnectConnectionInstallationState): any;
export declare function developerConnectConnectionInstallationStateToHclTerraform(struct?: DeveloperConnectConnectionInstallationState): any;
export declare class DeveloperConnectConnectionInstallationStateOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    * @param complexObjectIndex the index of this item in the list
    * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean);
    get internalValue(): DeveloperConnectConnectionInstallationState | undefined;
    set internalValue(value: DeveloperConnectConnectionInstallationState | undefined);
    get actionUri(): string;
    get message(): string;
    get stage(): string;
}
export declare class DeveloperConnectConnectionInstallationStateList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean);
    /**
    * @param index the index of the item to return
    */
    get(index: number): DeveloperConnectConnectionInstallationStateOutputReference;
}
export interface DeveloperConnectConnectionBitbucketCloudConfigAuthorizerCredential {
    /**
    * Required. A SecretManager resource containing the user token that authorizes
    * the Developer Connect connection. Format:
    * 'projects/* /secrets/* /versions/*'.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#user_token_secret_version DeveloperConnectConnection#user_token_secret_version}
     *
    * Note: The above comment contained a comment block ending sequence (* followed by /). We have introduced a space between to prevent syntax errors. Please ignore the space.
    */
    readonly userTokenSecretVersion: string;
}
export declare function developerConnectConnectionBitbucketCloudConfigAuthorizerCredentialToTerraform(struct?: DeveloperConnectConnectionBitbucketCloudConfigAuthorizerCredentialOutputReference | DeveloperConnectConnectionBitbucketCloudConfigAuthorizerCredential): any;
export declare function developerConnectConnectionBitbucketCloudConfigAuthorizerCredentialToHclTerraform(struct?: DeveloperConnectConnectionBitbucketCloudConfigAuthorizerCredentialOutputReference | DeveloperConnectConnectionBitbucketCloudConfigAuthorizerCredential): any;
export declare class DeveloperConnectConnectionBitbucketCloudConfigAuthorizerCredentialOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
    get internalValue(): DeveloperConnectConnectionBitbucketCloudConfigAuthorizerCredential | undefined;
    set internalValue(value: DeveloperConnectConnectionBitbucketCloudConfigAuthorizerCredential | undefined);
    private _userTokenSecretVersion?;
    get userTokenSecretVersion(): string;
    set userTokenSecretVersion(value: string);
    get userTokenSecretVersionInput(): string | undefined;
    get username(): string;
}
export interface DeveloperConnectConnectionBitbucketCloudConfigReadAuthorizerCredential {
    /**
    * Required. A SecretManager resource containing the user token that authorizes
    * the Developer Connect connection. Format:
    * 'projects/* /secrets/* /versions/*'.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#user_token_secret_version DeveloperConnectConnection#user_token_secret_version}
     *
    * Note: The above comment contained a comment block ending sequence (* followed by /). We have introduced a space between to prevent syntax errors. Please ignore the space.
    */
    readonly userTokenSecretVersion: string;
}
export declare function developerConnectConnectionBitbucketCloudConfigReadAuthorizerCredentialToTerraform(struct?: DeveloperConnectConnectionBitbucketCloudConfigReadAuthorizerCredentialOutputReference | DeveloperConnectConnectionBitbucketCloudConfigReadAuthorizerCredential): any;
export declare function developerConnectConnectionBitbucketCloudConfigReadAuthorizerCredentialToHclTerraform(struct?: DeveloperConnectConnectionBitbucketCloudConfigReadAuthorizerCredentialOutputReference | DeveloperConnectConnectionBitbucketCloudConfigReadAuthorizerCredential): any;
export declare class DeveloperConnectConnectionBitbucketCloudConfigReadAuthorizerCredentialOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
    get internalValue(): DeveloperConnectConnectionBitbucketCloudConfigReadAuthorizerCredential | undefined;
    set internalValue(value: DeveloperConnectConnectionBitbucketCloudConfigReadAuthorizerCredential | undefined);
    private _userTokenSecretVersion?;
    get userTokenSecretVersion(): string;
    set userTokenSecretVersion(value: string);
    get userTokenSecretVersionInput(): string | undefined;
    get username(): string;
}
export interface DeveloperConnectConnectionBitbucketCloudConfig {
    /**
    * Required. Immutable. SecretManager resource containing the webhook secret used to verify webhook
    * events, formatted as 'projects/* /secrets/* /versions/*'. This is used to
    * validate and create webhooks.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#webhook_secret_secret_version DeveloperConnectConnection#webhook_secret_secret_version}
     *
    * Note: The above comment contained a comment block ending sequence (* followed by /). We have introduced a space between to prevent syntax errors. Please ignore the space.
    */
    readonly webhookSecretSecretVersion: string;
    /**
    * Required. The Bitbucket Cloud Workspace ID to be connected to Google Cloud Platform.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#workspace DeveloperConnectConnection#workspace}
    */
    readonly workspace: string;
    /**
    * authorizer_credential block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#authorizer_credential DeveloperConnectConnection#authorizer_credential}
    */
    readonly authorizerCredential: DeveloperConnectConnectionBitbucketCloudConfigAuthorizerCredential;
    /**
    * read_authorizer_credential block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#read_authorizer_credential DeveloperConnectConnection#read_authorizer_credential}
    */
    readonly readAuthorizerCredential: DeveloperConnectConnectionBitbucketCloudConfigReadAuthorizerCredential;
}
export declare function developerConnectConnectionBitbucketCloudConfigToTerraform(struct?: DeveloperConnectConnectionBitbucketCloudConfigOutputReference | DeveloperConnectConnectionBitbucketCloudConfig): any;
export declare function developerConnectConnectionBitbucketCloudConfigToHclTerraform(struct?: DeveloperConnectConnectionBitbucketCloudConfigOutputReference | DeveloperConnectConnectionBitbucketCloudConfig): any;
export declare class DeveloperConnectConnectionBitbucketCloudConfigOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
    get internalValue(): DeveloperConnectConnectionBitbucketCloudConfig | undefined;
    set internalValue(value: DeveloperConnectConnectionBitbucketCloudConfig | undefined);
    private _webhookSecretSecretVersion?;
    get webhookSecretSecretVersion(): string;
    set webhookSecretSecretVersion(value: string);
    get webhookSecretSecretVersionInput(): string | undefined;
    private _workspace?;
    get workspace(): string;
    set workspace(value: string);
    get workspaceInput(): string | undefined;
    private _authorizerCredential;
    get authorizerCredential(): DeveloperConnectConnectionBitbucketCloudConfigAuthorizerCredentialOutputReference;
    putAuthorizerCredential(value: DeveloperConnectConnectionBitbucketCloudConfigAuthorizerCredential): void;
    get authorizerCredentialInput(): DeveloperConnectConnectionBitbucketCloudConfigAuthorizerCredential | undefined;
    private _readAuthorizerCredential;
    get readAuthorizerCredential(): DeveloperConnectConnectionBitbucketCloudConfigReadAuthorizerCredentialOutputReference;
    putReadAuthorizerCredential(value: DeveloperConnectConnectionBitbucketCloudConfigReadAuthorizerCredential): void;
    get readAuthorizerCredentialInput(): DeveloperConnectConnectionBitbucketCloudConfigReadAuthorizerCredential | undefined;
}
export interface DeveloperConnectConnectionBitbucketDataCenterConfigAuthorizerCredential {
    /**
    * Required. A SecretManager resource containing the user token that authorizes
    * the Developer Connect connection. Format:
    * 'projects/* /secrets/* /versions/*'.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#user_token_secret_version DeveloperConnectConnection#user_token_secret_version}
     *
    * Note: The above comment contained a comment block ending sequence (* followed by /). We have introduced a space between to prevent syntax errors. Please ignore the space.
    */
    readonly userTokenSecretVersion: string;
}
export declare function developerConnectConnectionBitbucketDataCenterConfigAuthorizerCredentialToTerraform(struct?: DeveloperConnectConnectionBitbucketDataCenterConfigAuthorizerCredentialOutputReference | DeveloperConnectConnectionBitbucketDataCenterConfigAuthorizerCredential): any;
export declare function developerConnectConnectionBitbucketDataCenterConfigAuthorizerCredentialToHclTerraform(struct?: DeveloperConnectConnectionBitbucketDataCenterConfigAuthorizerCredentialOutputReference | DeveloperConnectConnectionBitbucketDataCenterConfigAuthorizerCredential): any;
export declare class DeveloperConnectConnectionBitbucketDataCenterConfigAuthorizerCredentialOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
    get internalValue(): DeveloperConnectConnectionBitbucketDataCenterConfigAuthorizerCredential | undefined;
    set internalValue(value: DeveloperConnectConnectionBitbucketDataCenterConfigAuthorizerCredential | undefined);
    private _userTokenSecretVersion?;
    get userTokenSecretVersion(): string;
    set userTokenSecretVersion(value: string);
    get userTokenSecretVersionInput(): string | undefined;
    get username(): string;
}
export interface DeveloperConnectConnectionBitbucketDataCenterConfigReadAuthorizerCredential {
    /**
    * Required. A SecretManager resource containing the user token that authorizes
    * the Developer Connect connection. Format:
    * 'projects/* /secrets/* /versions/*'.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#user_token_secret_version DeveloperConnectConnection#user_token_secret_version}
     *
    * Note: The above comment contained a comment block ending sequence (* followed by /). We have introduced a space between to prevent syntax errors. Please ignore the space.
    */
    readonly userTokenSecretVersion: string;
}
export declare function developerConnectConnectionBitbucketDataCenterConfigReadAuthorizerCredentialToTerraform(struct?: DeveloperConnectConnectionBitbucketDataCenterConfigReadAuthorizerCredentialOutputReference | DeveloperConnectConnectionBitbucketDataCenterConfigReadAuthorizerCredential): any;
export declare function developerConnectConnectionBitbucketDataCenterConfigReadAuthorizerCredentialToHclTerraform(struct?: DeveloperConnectConnectionBitbucketDataCenterConfigReadAuthorizerCredentialOutputReference | DeveloperConnectConnectionBitbucketDataCenterConfigReadAuthorizerCredential): any;
export declare class DeveloperConnectConnectionBitbucketDataCenterConfigReadAuthorizerCredentialOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
    get internalValue(): DeveloperConnectConnectionBitbucketDataCenterConfigReadAuthorizerCredential | undefined;
    set internalValue(value: DeveloperConnectConnectionBitbucketDataCenterConfigReadAuthorizerCredential | undefined);
    private _userTokenSecretVersion?;
    get userTokenSecretVersion(): string;
    set userTokenSecretVersion(value: string);
    get userTokenSecretVersionInput(): string | undefined;
    get username(): string;
}
export interface DeveloperConnectConnectionBitbucketDataCenterConfigServiceDirectoryConfig {
    /**
    * Required. The Service Directory service name.
    * Format:
    * projects/{project}/locations/{location}/namespaces/{namespace}/services/{service}.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#service DeveloperConnectConnection#service}
    */
    readonly service: string;
}
export declare function developerConnectConnectionBitbucketDataCenterConfigServiceDirectoryConfigToTerraform(struct?: DeveloperConnectConnectionBitbucketDataCenterConfigServiceDirectoryConfigOutputReference | DeveloperConnectConnectionBitbucketDataCenterConfigServiceDirectoryConfig): any;
export declare function developerConnectConnectionBitbucketDataCenterConfigServiceDirectoryConfigToHclTerraform(struct?: DeveloperConnectConnectionBitbucketDataCenterConfigServiceDirectoryConfigOutputReference | DeveloperConnectConnectionBitbucketDataCenterConfigServiceDirectoryConfig): any;
export declare class DeveloperConnectConnectionBitbucketDataCenterConfigServiceDirectoryConfigOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
    get internalValue(): DeveloperConnectConnectionBitbucketDataCenterConfigServiceDirectoryConfig | undefined;
    set internalValue(value: DeveloperConnectConnectionBitbucketDataCenterConfigServiceDirectoryConfig | undefined);
    private _service?;
    get service(): string;
    set service(value: string);
    get serviceInput(): string | undefined;
}
export interface DeveloperConnectConnectionBitbucketDataCenterConfig {
    /**
    * Required. The URI of the Bitbucket Data Center host this connection is for.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#host_uri DeveloperConnectConnection#host_uri}
    */
    readonly hostUri: string;
    /**
    * Optional. SSL certificate authority to trust when making requests to Bitbucket Data
    * Center.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#ssl_ca_certificate DeveloperConnectConnection#ssl_ca_certificate}
    */
    readonly sslCaCertificate?: string;
    /**
    * Required. Immutable. SecretManager resource containing the webhook secret used to verify webhook
    * events, formatted as 'projects/* /secrets/* /versions/*'. This is used to
    * validate webhooks.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#webhook_secret_secret_version DeveloperConnectConnection#webhook_secret_secret_version}
     *
    * Note: The above comment contained a comment block ending sequence (* followed by /). We have introduced a space between to prevent syntax errors. Please ignore the space.
    */
    readonly webhookSecretSecretVersion: string;
    /**
    * authorizer_credential block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#authorizer_credential DeveloperConnectConnection#authorizer_credential}
    */
    readonly authorizerCredential: DeveloperConnectConnectionBitbucketDataCenterConfigAuthorizerCredential;
    /**
    * read_authorizer_credential block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#read_authorizer_credential DeveloperConnectConnection#read_authorizer_credential}
    */
    readonly readAuthorizerCredential: DeveloperConnectConnectionBitbucketDataCenterConfigReadAuthorizerCredential;
    /**
    * service_directory_config block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#service_directory_config DeveloperConnectConnection#service_directory_config}
    */
    readonly serviceDirectoryConfig?: DeveloperConnectConnectionBitbucketDataCenterConfigServiceDirectoryConfig;
}
export declare function developerConnectConnectionBitbucketDataCenterConfigToTerraform(struct?: DeveloperConnectConnectionBitbucketDataCenterConfigOutputReference | DeveloperConnectConnectionBitbucketDataCenterConfig): any;
export declare function developerConnectConnectionBitbucketDataCenterConfigToHclTerraform(struct?: DeveloperConnectConnectionBitbucketDataCenterConfigOutputReference | DeveloperConnectConnectionBitbucketDataCenterConfig): any;
export declare class DeveloperConnectConnectionBitbucketDataCenterConfigOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
    get internalValue(): DeveloperConnectConnectionBitbucketDataCenterConfig | undefined;
    set internalValue(value: DeveloperConnectConnectionBitbucketDataCenterConfig | undefined);
    private _hostUri?;
    get hostUri(): string;
    set hostUri(value: string);
    get hostUriInput(): string | undefined;
    get serverVersion(): string;
    private _sslCaCertificate?;
    get sslCaCertificate(): string;
    set sslCaCertificate(value: string);
    resetSslCaCertificate(): void;
    get sslCaCertificateInput(): string | undefined;
    private _webhookSecretSecretVersion?;
    get webhookSecretSecretVersion(): string;
    set webhookSecretSecretVersion(value: string);
    get webhookSecretSecretVersionInput(): string | undefined;
    private _authorizerCredential;
    get authorizerCredential(): DeveloperConnectConnectionBitbucketDataCenterConfigAuthorizerCredentialOutputReference;
    putAuthorizerCredential(value: DeveloperConnectConnectionBitbucketDataCenterConfigAuthorizerCredential): void;
    get authorizerCredentialInput(): DeveloperConnectConnectionBitbucketDataCenterConfigAuthorizerCredential | undefined;
    private _readAuthorizerCredential;
    get readAuthorizerCredential(): DeveloperConnectConnectionBitbucketDataCenterConfigReadAuthorizerCredentialOutputReference;
    putReadAuthorizerCredential(value: DeveloperConnectConnectionBitbucketDataCenterConfigReadAuthorizerCredential): void;
    get readAuthorizerCredentialInput(): DeveloperConnectConnectionBitbucketDataCenterConfigReadAuthorizerCredential | undefined;
    private _serviceDirectoryConfig;
    get serviceDirectoryConfig(): DeveloperConnectConnectionBitbucketDataCenterConfigServiceDirectoryConfigOutputReference;
    putServiceDirectoryConfig(value: DeveloperConnectConnectionBitbucketDataCenterConfigServiceDirectoryConfig): void;
    resetServiceDirectoryConfig(): void;
    get serviceDirectoryConfigInput(): DeveloperConnectConnectionBitbucketDataCenterConfigServiceDirectoryConfig | undefined;
}
export interface DeveloperConnectConnectionCryptoKeyConfig {
    /**
    * Required. The name of the key which is used to encrypt/decrypt customer data. For key
    * in Cloud KMS, the key should be in the format of
    * 'projects/* /locations/* /keyRings/* /cryptoKeys/*'.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#key_reference DeveloperConnectConnection#key_reference}
     *
    * Note: The above comment contained a comment block ending sequence (* followed by /). We have introduced a space between to prevent syntax errors. Please ignore the space.
    */
    readonly keyReference: string;
}
export declare function developerConnectConnectionCryptoKeyConfigToTerraform(struct?: DeveloperConnectConnectionCryptoKeyConfigOutputReference | DeveloperConnectConnectionCryptoKeyConfig): any;
export declare function developerConnectConnectionCryptoKeyConfigToHclTerraform(struct?: DeveloperConnectConnectionCryptoKeyConfigOutputReference | DeveloperConnectConnectionCryptoKeyConfig): any;
export declare class DeveloperConnectConnectionCryptoKeyConfigOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
    get internalValue(): DeveloperConnectConnectionCryptoKeyConfig | undefined;
    set internalValue(value: DeveloperConnectConnectionCryptoKeyConfig | undefined);
    private _keyReference?;
    get keyReference(): string;
    set keyReference(value: string);
    get keyReferenceInput(): string | undefined;
}
export interface DeveloperConnectConnectionGithubConfigAuthorizerCredential {
    /**
    * Required. A SecretManager resource containing the OAuth token that authorizes
    * the connection. Format: 'projects/* /secrets/* /versions/*'.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#oauth_token_secret_version DeveloperConnectConnection#oauth_token_secret_version}
     *
    * Note: The above comment contained a comment block ending sequence (* followed by /). We have introduced a space between to prevent syntax errors. Please ignore the space.
    */
    readonly oauthTokenSecretVersion: string;
}
export declare function developerConnectConnectionGithubConfigAuthorizerCredentialToTerraform(struct?: DeveloperConnectConnectionGithubConfigAuthorizerCredentialOutputReference | DeveloperConnectConnectionGithubConfigAuthorizerCredential): any;
export declare function developerConnectConnectionGithubConfigAuthorizerCredentialToHclTerraform(struct?: DeveloperConnectConnectionGithubConfigAuthorizerCredentialOutputReference | DeveloperConnectConnectionGithubConfigAuthorizerCredential): any;
export declare class DeveloperConnectConnectionGithubConfigAuthorizerCredentialOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
    get internalValue(): DeveloperConnectConnectionGithubConfigAuthorizerCredential | undefined;
    set internalValue(value: DeveloperConnectConnectionGithubConfigAuthorizerCredential | undefined);
    private _oauthTokenSecretVersion?;
    get oauthTokenSecretVersion(): string;
    set oauthTokenSecretVersion(value: string);
    get oauthTokenSecretVersionInput(): string | undefined;
    get username(): string;
}
export interface DeveloperConnectConnectionGithubConfig {
    /**
    * Optional. GitHub App installation id.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#app_installation_id DeveloperConnectConnection#app_installation_id}
    */
    readonly appInstallationId?: string;
    /**
    * Required. Immutable. The GitHub Application that was installed to the GitHub user or
    * organization.
    * Possible values:
    * GIT_HUB_APP_UNSPECIFIED
    * DEVELOPER_CONNECT
    * FIREBASE
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#github_app DeveloperConnectConnection#github_app}
    */
    readonly githubApp: string;
    /**
    * authorizer_credential block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#authorizer_credential DeveloperConnectConnection#authorizer_credential}
    */
    readonly authorizerCredential?: DeveloperConnectConnectionGithubConfigAuthorizerCredential;
}
export declare function developerConnectConnectionGithubConfigToTerraform(struct?: DeveloperConnectConnectionGithubConfigOutputReference | DeveloperConnectConnectionGithubConfig): any;
export declare function developerConnectConnectionGithubConfigToHclTerraform(struct?: DeveloperConnectConnectionGithubConfigOutputReference | DeveloperConnectConnectionGithubConfig): any;
export declare class DeveloperConnectConnectionGithubConfigOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
    get internalValue(): DeveloperConnectConnectionGithubConfig | undefined;
    set internalValue(value: DeveloperConnectConnectionGithubConfig | undefined);
    private _appInstallationId?;
    get appInstallationId(): string;
    set appInstallationId(value: string);
    resetAppInstallationId(): void;
    get appInstallationIdInput(): string | undefined;
    private _githubApp?;
    get githubApp(): string;
    set githubApp(value: string);
    get githubAppInput(): string | undefined;
    get installationUri(): string;
    private _authorizerCredential;
    get authorizerCredential(): DeveloperConnectConnectionGithubConfigAuthorizerCredentialOutputReference;
    putAuthorizerCredential(value: DeveloperConnectConnectionGithubConfigAuthorizerCredential): void;
    resetAuthorizerCredential(): void;
    get authorizerCredentialInput(): DeveloperConnectConnectionGithubConfigAuthorizerCredential | undefined;
}
export interface DeveloperConnectConnectionGithubEnterpriseConfigServiceDirectoryConfig {
    /**
    * Required. The Service Directory service name.
    * Format:
    * projects/{project}/locations/{location}/namespaces/{namespace}/services/{service}.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#service DeveloperConnectConnection#service}
    */
    readonly service: string;
}
export declare function developerConnectConnectionGithubEnterpriseConfigServiceDirectoryConfigToTerraform(struct?: DeveloperConnectConnectionGithubEnterpriseConfigServiceDirectoryConfigOutputReference | DeveloperConnectConnectionGithubEnterpriseConfigServiceDirectoryConfig): any;
export declare function developerConnectConnectionGithubEnterpriseConfigServiceDirectoryConfigToHclTerraform(struct?: DeveloperConnectConnectionGithubEnterpriseConfigServiceDirectoryConfigOutputReference | DeveloperConnectConnectionGithubEnterpriseConfigServiceDirectoryConfig): any;
export declare class DeveloperConnectConnectionGithubEnterpriseConfigServiceDirectoryConfigOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
    get internalValue(): DeveloperConnectConnectionGithubEnterpriseConfigServiceDirectoryConfig | undefined;
    set internalValue(value: DeveloperConnectConnectionGithubEnterpriseConfigServiceDirectoryConfig | undefined);
    private _service?;
    get service(): string;
    set service(value: string);
    get serviceInput(): string | undefined;
}
export interface DeveloperConnectConnectionGithubEnterpriseConfig {
    /**
    * Optional. ID of the GitHub App created from the manifest.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#app_id DeveloperConnectConnection#app_id}
    */
    readonly appId?: string;
    /**
    * Optional. ID of the installation of the GitHub App.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#app_installation_id DeveloperConnectConnection#app_installation_id}
    */
    readonly appInstallationId?: string;
    /**
    * Required. The URI of the GitHub Enterprise host this connection is for.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#host_uri DeveloperConnectConnection#host_uri}
    */
    readonly hostUri: string;
    /**
    * Optional. SecretManager resource containing the private key of the GitHub App,
    * formatted as 'projects/* /secrets/* /versions/*'.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#private_key_secret_version DeveloperConnectConnection#private_key_secret_version}
     *
    * Note: The above comment contained a comment block ending sequence (* followed by /). We have introduced a space between to prevent syntax errors. Please ignore the space.
    */
    readonly privateKeySecretVersion?: string;
    /**
    * Optional. SSL certificate to use for requests to GitHub Enterprise.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#ssl_ca_certificate DeveloperConnectConnection#ssl_ca_certificate}
    */
    readonly sslCaCertificate?: string;
    /**
    * Optional. SecretManager resource containing the webhook secret of the GitHub App,
    * formatted as 'projects/* /secrets/* /versions/*'.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#webhook_secret_secret_version DeveloperConnectConnection#webhook_secret_secret_version}
     *
    * Note: The above comment contained a comment block ending sequence (* followed by /). We have introduced a space between to prevent syntax errors. Please ignore the space.
    */
    readonly webhookSecretSecretVersion?: string;
    /**
    * service_directory_config block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#service_directory_config DeveloperConnectConnection#service_directory_config}
    */
    readonly serviceDirectoryConfig?: DeveloperConnectConnectionGithubEnterpriseConfigServiceDirectoryConfig;
}
export declare function developerConnectConnectionGithubEnterpriseConfigToTerraform(struct?: DeveloperConnectConnectionGithubEnterpriseConfigOutputReference | DeveloperConnectConnectionGithubEnterpriseConfig): any;
export declare function developerConnectConnectionGithubEnterpriseConfigToHclTerraform(struct?: DeveloperConnectConnectionGithubEnterpriseConfigOutputReference | DeveloperConnectConnectionGithubEnterpriseConfig): any;
export declare class DeveloperConnectConnectionGithubEnterpriseConfigOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
    get internalValue(): DeveloperConnectConnectionGithubEnterpriseConfig | undefined;
    set internalValue(value: DeveloperConnectConnectionGithubEnterpriseConfig | undefined);
    private _appId?;
    get appId(): string;
    set appId(value: string);
    resetAppId(): void;
    get appIdInput(): string | undefined;
    private _appInstallationId?;
    get appInstallationId(): string;
    set appInstallationId(value: string);
    resetAppInstallationId(): void;
    get appInstallationIdInput(): string | undefined;
    get appSlug(): string;
    private _hostUri?;
    get hostUri(): string;
    set hostUri(value: string);
    get hostUriInput(): string | undefined;
    get installationUri(): string;
    private _privateKeySecretVersion?;
    get privateKeySecretVersion(): string;
    set privateKeySecretVersion(value: string);
    resetPrivateKeySecretVersion(): void;
    get privateKeySecretVersionInput(): string | undefined;
    get serverVersion(): string;
    private _sslCaCertificate?;
    get sslCaCertificate(): string;
    set sslCaCertificate(value: string);
    resetSslCaCertificate(): void;
    get sslCaCertificateInput(): string | undefined;
    private _webhookSecretSecretVersion?;
    get webhookSecretSecretVersion(): string;
    set webhookSecretSecretVersion(value: string);
    resetWebhookSecretSecretVersion(): void;
    get webhookSecretSecretVersionInput(): string | undefined;
    private _serviceDirectoryConfig;
    get serviceDirectoryConfig(): DeveloperConnectConnectionGithubEnterpriseConfigServiceDirectoryConfigOutputReference;
    putServiceDirectoryConfig(value: DeveloperConnectConnectionGithubEnterpriseConfigServiceDirectoryConfig): void;
    resetServiceDirectoryConfig(): void;
    get serviceDirectoryConfigInput(): DeveloperConnectConnectionGithubEnterpriseConfigServiceDirectoryConfig | undefined;
}
export interface DeveloperConnectConnectionGitlabConfigAuthorizerCredential {
    /**
    * Required. A SecretManager resource containing the user token that authorizes
    * the Developer Connect connection. Format:
    * 'projects/* /secrets/* /versions/*'.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#user_token_secret_version DeveloperConnectConnection#user_token_secret_version}
     *
    * Note: The above comment contained a comment block ending sequence (* followed by /). We have introduced a space between to prevent syntax errors. Please ignore the space.
    */
    readonly userTokenSecretVersion: string;
}
export declare function developerConnectConnectionGitlabConfigAuthorizerCredentialToTerraform(struct?: DeveloperConnectConnectionGitlabConfigAuthorizerCredentialOutputReference | DeveloperConnectConnectionGitlabConfigAuthorizerCredential): any;
export declare function developerConnectConnectionGitlabConfigAuthorizerCredentialToHclTerraform(struct?: DeveloperConnectConnectionGitlabConfigAuthorizerCredentialOutputReference | DeveloperConnectConnectionGitlabConfigAuthorizerCredential): any;
export declare class DeveloperConnectConnectionGitlabConfigAuthorizerCredentialOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
    get internalValue(): DeveloperConnectConnectionGitlabConfigAuthorizerCredential | undefined;
    set internalValue(value: DeveloperConnectConnectionGitlabConfigAuthorizerCredential | undefined);
    private _userTokenSecretVersion?;
    get userTokenSecretVersion(): string;
    set userTokenSecretVersion(value: string);
    get userTokenSecretVersionInput(): string | undefined;
    get username(): string;
}
export interface DeveloperConnectConnectionGitlabConfigReadAuthorizerCredential {
    /**
    * Required. A SecretManager resource containing the user token that authorizes
    * the Developer Connect connection. Format:
    * 'projects/* /secrets/* /versions/*'.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#user_token_secret_version DeveloperConnectConnection#user_token_secret_version}
     *
    * Note: The above comment contained a comment block ending sequence (* followed by /). We have introduced a space between to prevent syntax errors. Please ignore the space.
    */
    readonly userTokenSecretVersion: string;
}
export declare function developerConnectConnectionGitlabConfigReadAuthorizerCredentialToTerraform(struct?: DeveloperConnectConnectionGitlabConfigReadAuthorizerCredentialOutputReference | DeveloperConnectConnectionGitlabConfigReadAuthorizerCredential): any;
export declare function developerConnectConnectionGitlabConfigReadAuthorizerCredentialToHclTerraform(struct?: DeveloperConnectConnectionGitlabConfigReadAuthorizerCredentialOutputReference | DeveloperConnectConnectionGitlabConfigReadAuthorizerCredential): any;
export declare class DeveloperConnectConnectionGitlabConfigReadAuthorizerCredentialOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
    get internalValue(): DeveloperConnectConnectionGitlabConfigReadAuthorizerCredential | undefined;
    set internalValue(value: DeveloperConnectConnectionGitlabConfigReadAuthorizerCredential | undefined);
    private _userTokenSecretVersion?;
    get userTokenSecretVersion(): string;
    set userTokenSecretVersion(value: string);
    get userTokenSecretVersionInput(): string | undefined;
    get username(): string;
}
export interface DeveloperConnectConnectionGitlabConfig {
    /**
    * Required. Immutable. SecretManager resource containing the webhook secret of a GitLab project,
    * formatted as 'projects/* /secrets/* /versions/*'. This is used to validate
    * webhooks.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#webhook_secret_secret_version DeveloperConnectConnection#webhook_secret_secret_version}
     *
    * Note: The above comment contained a comment block ending sequence (* followed by /). We have introduced a space between to prevent syntax errors. Please ignore the space.
    */
    readonly webhookSecretSecretVersion: string;
    /**
    * authorizer_credential block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#authorizer_credential DeveloperConnectConnection#authorizer_credential}
    */
    readonly authorizerCredential: DeveloperConnectConnectionGitlabConfigAuthorizerCredential;
    /**
    * read_authorizer_credential block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#read_authorizer_credential DeveloperConnectConnection#read_authorizer_credential}
    */
    readonly readAuthorizerCredential: DeveloperConnectConnectionGitlabConfigReadAuthorizerCredential;
}
export declare function developerConnectConnectionGitlabConfigToTerraform(struct?: DeveloperConnectConnectionGitlabConfigOutputReference | DeveloperConnectConnectionGitlabConfig): any;
export declare function developerConnectConnectionGitlabConfigToHclTerraform(struct?: DeveloperConnectConnectionGitlabConfigOutputReference | DeveloperConnectConnectionGitlabConfig): any;
export declare class DeveloperConnectConnectionGitlabConfigOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
    get internalValue(): DeveloperConnectConnectionGitlabConfig | undefined;
    set internalValue(value: DeveloperConnectConnectionGitlabConfig | undefined);
    private _webhookSecretSecretVersion?;
    get webhookSecretSecretVersion(): string;
    set webhookSecretSecretVersion(value: string);
    get webhookSecretSecretVersionInput(): string | undefined;
    private _authorizerCredential;
    get authorizerCredential(): DeveloperConnectConnectionGitlabConfigAuthorizerCredentialOutputReference;
    putAuthorizerCredential(value: DeveloperConnectConnectionGitlabConfigAuthorizerCredential): void;
    get authorizerCredentialInput(): DeveloperConnectConnectionGitlabConfigAuthorizerCredential | undefined;
    private _readAuthorizerCredential;
    get readAuthorizerCredential(): DeveloperConnectConnectionGitlabConfigReadAuthorizerCredentialOutputReference;
    putReadAuthorizerCredential(value: DeveloperConnectConnectionGitlabConfigReadAuthorizerCredential): void;
    get readAuthorizerCredentialInput(): DeveloperConnectConnectionGitlabConfigReadAuthorizerCredential | undefined;
}
export interface DeveloperConnectConnectionGitlabEnterpriseConfigAuthorizerCredential {
    /**
    * Required. A SecretManager resource containing the user token that authorizes
    * the Developer Connect connection. Format:
    * 'projects/* /secrets/* /versions/*'.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#user_token_secret_version DeveloperConnectConnection#user_token_secret_version}
     *
    * Note: The above comment contained a comment block ending sequence (* followed by /). We have introduced a space between to prevent syntax errors. Please ignore the space.
    */
    readonly userTokenSecretVersion: string;
}
export declare function developerConnectConnectionGitlabEnterpriseConfigAuthorizerCredentialToTerraform(struct?: DeveloperConnectConnectionGitlabEnterpriseConfigAuthorizerCredentialOutputReference | DeveloperConnectConnectionGitlabEnterpriseConfigAuthorizerCredential): any;
export declare function developerConnectConnectionGitlabEnterpriseConfigAuthorizerCredentialToHclTerraform(struct?: DeveloperConnectConnectionGitlabEnterpriseConfigAuthorizerCredentialOutputReference | DeveloperConnectConnectionGitlabEnterpriseConfigAuthorizerCredential): any;
export declare class DeveloperConnectConnectionGitlabEnterpriseConfigAuthorizerCredentialOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
    get internalValue(): DeveloperConnectConnectionGitlabEnterpriseConfigAuthorizerCredential | undefined;
    set internalValue(value: DeveloperConnectConnectionGitlabEnterpriseConfigAuthorizerCredential | undefined);
    private _userTokenSecretVersion?;
    get userTokenSecretVersion(): string;
    set userTokenSecretVersion(value: string);
    get userTokenSecretVersionInput(): string | undefined;
    get username(): string;
}
export interface DeveloperConnectConnectionGitlabEnterpriseConfigReadAuthorizerCredential {
    /**
    * Required. A SecretManager resource containing the user token that authorizes
    * the Developer Connect connection. Format:
    * 'projects/* /secrets/* /versions/*'.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#user_token_secret_version DeveloperConnectConnection#user_token_secret_version}
     *
    * Note: The above comment contained a comment block ending sequence (* followed by /). We have introduced a space between to prevent syntax errors. Please ignore the space.
    */
    readonly userTokenSecretVersion: string;
}
export declare function developerConnectConnectionGitlabEnterpriseConfigReadAuthorizerCredentialToTerraform(struct?: DeveloperConnectConnectionGitlabEnterpriseConfigReadAuthorizerCredentialOutputReference | DeveloperConnectConnectionGitlabEnterpriseConfigReadAuthorizerCredential): any;
export declare function developerConnectConnectionGitlabEnterpriseConfigReadAuthorizerCredentialToHclTerraform(struct?: DeveloperConnectConnectionGitlabEnterpriseConfigReadAuthorizerCredentialOutputReference | DeveloperConnectConnectionGitlabEnterpriseConfigReadAuthorizerCredential): any;
export declare class DeveloperConnectConnectionGitlabEnterpriseConfigReadAuthorizerCredentialOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
    get internalValue(): DeveloperConnectConnectionGitlabEnterpriseConfigReadAuthorizerCredential | undefined;
    set internalValue(value: DeveloperConnectConnectionGitlabEnterpriseConfigReadAuthorizerCredential | undefined);
    private _userTokenSecretVersion?;
    get userTokenSecretVersion(): string;
    set userTokenSecretVersion(value: string);
    get userTokenSecretVersionInput(): string | undefined;
    get username(): string;
}
export interface DeveloperConnectConnectionGitlabEnterpriseConfigServiceDirectoryConfig {
    /**
    * Required. The Service Directory service name.
    * Format:
    * projects/{project}/locations/{location}/namespaces/{namespace}/services/{service}.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#service DeveloperConnectConnection#service}
    */
    readonly service: string;
}
export declare function developerConnectConnectionGitlabEnterpriseConfigServiceDirectoryConfigToTerraform(struct?: DeveloperConnectConnectionGitlabEnterpriseConfigServiceDirectoryConfigOutputReference | DeveloperConnectConnectionGitlabEnterpriseConfigServiceDirectoryConfig): any;
export declare function developerConnectConnectionGitlabEnterpriseConfigServiceDirectoryConfigToHclTerraform(struct?: DeveloperConnectConnectionGitlabEnterpriseConfigServiceDirectoryConfigOutputReference | DeveloperConnectConnectionGitlabEnterpriseConfigServiceDirectoryConfig): any;
export declare class DeveloperConnectConnectionGitlabEnterpriseConfigServiceDirectoryConfigOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
    get internalValue(): DeveloperConnectConnectionGitlabEnterpriseConfigServiceDirectoryConfig | undefined;
    set internalValue(value: DeveloperConnectConnectionGitlabEnterpriseConfigServiceDirectoryConfig | undefined);
    private _service?;
    get service(): string;
    set service(value: string);
    get serviceInput(): string | undefined;
}
export interface DeveloperConnectConnectionGitlabEnterpriseConfig {
    /**
    * Required. The URI of the GitLab Enterprise host this connection is for.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#host_uri DeveloperConnectConnection#host_uri}
    */
    readonly hostUri: string;
    /**
    * Optional. SSL Certificate Authority certificate to use for requests to GitLab
    * Enterprise instance.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#ssl_ca_certificate DeveloperConnectConnection#ssl_ca_certificate}
    */
    readonly sslCaCertificate?: string;
    /**
    * Required. Immutable. SecretManager resource containing the webhook secret of a GitLab project,
    * formatted as 'projects/* /secrets/* /versions/*'. This is used to validate
    * webhooks.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#webhook_secret_secret_version DeveloperConnectConnection#webhook_secret_secret_version}
     *
    * Note: The above comment contained a comment block ending sequence (* followed by /). We have introduced a space between to prevent syntax errors. Please ignore the space.
    */
    readonly webhookSecretSecretVersion: string;
    /**
    * authorizer_credential block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#authorizer_credential DeveloperConnectConnection#authorizer_credential}
    */
    readonly authorizerCredential: DeveloperConnectConnectionGitlabEnterpriseConfigAuthorizerCredential;
    /**
    * read_authorizer_credential block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#read_authorizer_credential DeveloperConnectConnection#read_authorizer_credential}
    */
    readonly readAuthorizerCredential: DeveloperConnectConnectionGitlabEnterpriseConfigReadAuthorizerCredential;
    /**
    * service_directory_config block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#service_directory_config DeveloperConnectConnection#service_directory_config}
    */
    readonly serviceDirectoryConfig?: DeveloperConnectConnectionGitlabEnterpriseConfigServiceDirectoryConfig;
}
export declare function developerConnectConnectionGitlabEnterpriseConfigToTerraform(struct?: DeveloperConnectConnectionGitlabEnterpriseConfigOutputReference | DeveloperConnectConnectionGitlabEnterpriseConfig): any;
export declare function developerConnectConnectionGitlabEnterpriseConfigToHclTerraform(struct?: DeveloperConnectConnectionGitlabEnterpriseConfigOutputReference | DeveloperConnectConnectionGitlabEnterpriseConfig): any;
export declare class DeveloperConnectConnectionGitlabEnterpriseConfigOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
    get internalValue(): DeveloperConnectConnectionGitlabEnterpriseConfig | undefined;
    set internalValue(value: DeveloperConnectConnectionGitlabEnterpriseConfig | undefined);
    private _hostUri?;
    get hostUri(): string;
    set hostUri(value: string);
    get hostUriInput(): string | undefined;
    get serverVersion(): string;
    private _sslCaCertificate?;
    get sslCaCertificate(): string;
    set sslCaCertificate(value: string);
    resetSslCaCertificate(): void;
    get sslCaCertificateInput(): string | undefined;
    private _webhookSecretSecretVersion?;
    get webhookSecretSecretVersion(): string;
    set webhookSecretSecretVersion(value: string);
    get webhookSecretSecretVersionInput(): string | undefined;
    private _authorizerCredential;
    get authorizerCredential(): DeveloperConnectConnectionGitlabEnterpriseConfigAuthorizerCredentialOutputReference;
    putAuthorizerCredential(value: DeveloperConnectConnectionGitlabEnterpriseConfigAuthorizerCredential): void;
    get authorizerCredentialInput(): DeveloperConnectConnectionGitlabEnterpriseConfigAuthorizerCredential | undefined;
    private _readAuthorizerCredential;
    get readAuthorizerCredential(): DeveloperConnectConnectionGitlabEnterpriseConfigReadAuthorizerCredentialOutputReference;
    putReadAuthorizerCredential(value: DeveloperConnectConnectionGitlabEnterpriseConfigReadAuthorizerCredential): void;
    get readAuthorizerCredentialInput(): DeveloperConnectConnectionGitlabEnterpriseConfigReadAuthorizerCredential | undefined;
    private _serviceDirectoryConfig;
    get serviceDirectoryConfig(): DeveloperConnectConnectionGitlabEnterpriseConfigServiceDirectoryConfigOutputReference;
    putServiceDirectoryConfig(value: DeveloperConnectConnectionGitlabEnterpriseConfigServiceDirectoryConfig): void;
    resetServiceDirectoryConfig(): void;
    get serviceDirectoryConfigInput(): DeveloperConnectConnectionGitlabEnterpriseConfigServiceDirectoryConfig | undefined;
}
export interface DeveloperConnectConnectionTimeouts {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#create DeveloperConnectConnection#create}
    */
    readonly create?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#delete DeveloperConnectConnection#delete}
    */
    readonly delete?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#update DeveloperConnectConnection#update}
    */
    readonly update?: string;
}
export declare function developerConnectConnectionTimeoutsToTerraform(struct?: DeveloperConnectConnectionTimeouts | cdktf.IResolvable): any;
export declare function developerConnectConnectionTimeoutsToHclTerraform(struct?: DeveloperConnectConnectionTimeouts | cdktf.IResolvable): any;
export declare class DeveloperConnectConnectionTimeoutsOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    private resolvableValue?;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
    get internalValue(): DeveloperConnectConnectionTimeouts | cdktf.IResolvable | undefined;
    set internalValue(value: DeveloperConnectConnectionTimeouts | cdktf.IResolvable | undefined);
    private _create?;
    get create(): string;
    set create(value: string);
    resetCreate(): void;
    get createInput(): string | undefined;
    private _delete?;
    get delete(): string;
    set delete(value: string);
    resetDelete(): void;
    get deleteInput(): string | undefined;
    private _update?;
    get update(): string;
    set update(value: string);
    resetUpdate(): void;
    get updateInput(): string | undefined;
}
/**
* Represents a {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection google_developer_connect_connection}
*/
export declare class DeveloperConnectConnection extends cdktf.TerraformResource {
    static readonly tfResourceType = "google_developer_connect_connection";
    /**
    * Generates CDKTF code for importing a DeveloperConnectConnection resource upon running "cdktf plan <stack-name>"
    * @param scope The scope in which to define this construct
    * @param importToId The construct id used in the generated config for the DeveloperConnectConnection to import
    * @param importFromId The id of the existing DeveloperConnectConnection that should be imported. Refer to the {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection#import import section} in the documentation of this resource for the id to use
    * @param provider? Optional instance of the provider where the DeveloperConnectConnection to import is found
    */
    static generateConfigForImport(scope: Construct, importToId: string, importFromId: string, provider?: cdktf.TerraformProvider): cdktf.ImportableResource;
    /**
    * Create a new {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/developer_connect_connection google_developer_connect_connection} Resource
    *
    * @param scope The scope in which to define this construct
    * @param id The scoped construct ID. Must be unique amongst siblings in the same scope
    * @param options DeveloperConnectConnectionConfig
    */
    constructor(scope: Construct, id: string, config: DeveloperConnectConnectionConfig);
    private _annotations?;
    get annotations(): {
        [key: string]: string;
    };
    set annotations(value: {
        [key: string]: string;
    });
    resetAnnotations(): void;
    get annotationsInput(): {
        [key: string]: string;
    } | undefined;
    private _connectionId?;
    get connectionId(): string;
    set connectionId(value: string);
    get connectionIdInput(): string | undefined;
    get createTime(): string;
    get deleteTime(): string;
    private _disabled?;
    get disabled(): boolean | cdktf.IResolvable;
    set disabled(value: boolean | cdktf.IResolvable);
    resetDisabled(): void;
    get disabledInput(): boolean | cdktf.IResolvable | undefined;
    private _effectiveAnnotations;
    get effectiveAnnotations(): cdktf.StringMap;
    private _effectiveLabels;
    get effectiveLabels(): cdktf.StringMap;
    private _etag?;
    get etag(): string;
    set etag(value: string);
    resetEtag(): void;
    get etagInput(): string | undefined;
    private _id?;
    get id(): string;
    set id(value: string);
    resetId(): void;
    get idInput(): string | undefined;
    private _installationState;
    get installationState(): DeveloperConnectConnectionInstallationStateList;
    private _labels?;
    get labels(): {
        [key: string]: string;
    };
    set labels(value: {
        [key: string]: string;
    });
    resetLabels(): void;
    get labelsInput(): {
        [key: string]: string;
    } | undefined;
    private _location?;
    get location(): string;
    set location(value: string);
    get locationInput(): string | undefined;
    get name(): string;
    private _project?;
    get project(): string;
    set project(value: string);
    resetProject(): void;
    get projectInput(): string | undefined;
    get reconciling(): cdktf.IResolvable;
    private _terraformLabels;
    get terraformLabels(): cdktf.StringMap;
    get uid(): string;
    get updateTime(): string;
    private _bitbucketCloudConfig;
    get bitbucketCloudConfig(): DeveloperConnectConnectionBitbucketCloudConfigOutputReference;
    putBitbucketCloudConfig(value: DeveloperConnectConnectionBitbucketCloudConfig): void;
    resetBitbucketCloudConfig(): void;
    get bitbucketCloudConfigInput(): DeveloperConnectConnectionBitbucketCloudConfig | undefined;
    private _bitbucketDataCenterConfig;
    get bitbucketDataCenterConfig(): DeveloperConnectConnectionBitbucketDataCenterConfigOutputReference;
    putBitbucketDataCenterConfig(value: DeveloperConnectConnectionBitbucketDataCenterConfig): void;
    resetBitbucketDataCenterConfig(): void;
    get bitbucketDataCenterConfigInput(): DeveloperConnectConnectionBitbucketDataCenterConfig | undefined;
    private _cryptoKeyConfig;
    get cryptoKeyConfig(): DeveloperConnectConnectionCryptoKeyConfigOutputReference;
    putCryptoKeyConfig(value: DeveloperConnectConnectionCryptoKeyConfig): void;
    resetCryptoKeyConfig(): void;
    get cryptoKeyConfigInput(): DeveloperConnectConnectionCryptoKeyConfig | undefined;
    private _githubConfig;
    get githubConfig(): DeveloperConnectConnectionGithubConfigOutputReference;
    putGithubConfig(value: DeveloperConnectConnectionGithubConfig): void;
    resetGithubConfig(): void;
    get githubConfigInput(): DeveloperConnectConnectionGithubConfig | undefined;
    private _githubEnterpriseConfig;
    get githubEnterpriseConfig(): DeveloperConnectConnectionGithubEnterpriseConfigOutputReference;
    putGithubEnterpriseConfig(value: DeveloperConnectConnectionGithubEnterpriseConfig): void;
    resetGithubEnterpriseConfig(): void;
    get githubEnterpriseConfigInput(): DeveloperConnectConnectionGithubEnterpriseConfig | undefined;
    private _gitlabConfig;
    get gitlabConfig(): DeveloperConnectConnectionGitlabConfigOutputReference;
    putGitlabConfig(value: DeveloperConnectConnectionGitlabConfig): void;
    resetGitlabConfig(): void;
    get gitlabConfigInput(): DeveloperConnectConnectionGitlabConfig | undefined;
    private _gitlabEnterpriseConfig;
    get gitlabEnterpriseConfig(): DeveloperConnectConnectionGitlabEnterpriseConfigOutputReference;
    putGitlabEnterpriseConfig(value: DeveloperConnectConnectionGitlabEnterpriseConfig): void;
    resetGitlabEnterpriseConfig(): void;
    get gitlabEnterpriseConfigInput(): DeveloperConnectConnectionGitlabEnterpriseConfig | undefined;
    private _timeouts;
    get timeouts(): DeveloperConnectConnectionTimeoutsOutputReference;
    putTimeouts(value: DeveloperConnectConnectionTimeouts): void;
    resetTimeouts(): void;
    get timeoutsInput(): cdktf.IResolvable | DeveloperConnectConnectionTimeouts | undefined;
    protected synthesizeAttributes(): {
        [name: string]: any;
    };
    protected synthesizeHclAttributes(): {
        [name: string]: any;
    };
}
