import { Construct } from 'constructs';
import * as cdktf from 'cdktf';
export interface DataOciIdentityDomainsSelfRegistrationProfilesConfig extends cdktf.TerraformMetaArguments {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/data-sources/identity_domains_self_registration_profiles#attribute_sets DataOciIdentityDomainsSelfRegistrationProfiles#attribute_sets}
    */
    readonly attributeSets?: string[];
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/data-sources/identity_domains_self_registration_profiles#attributes DataOciIdentityDomainsSelfRegistrationProfiles#attributes}
    */
    readonly attributes?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/data-sources/identity_domains_self_registration_profiles#authorization DataOciIdentityDomainsSelfRegistrationProfiles#authorization}
    */
    readonly authorization?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/data-sources/identity_domains_self_registration_profiles#compartment_id DataOciIdentityDomainsSelfRegistrationProfiles#compartment_id}
    */
    readonly compartmentId?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/data-sources/identity_domains_self_registration_profiles#id DataOciIdentityDomainsSelfRegistrationProfiles#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;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/data-sources/identity_domains_self_registration_profiles#idcs_endpoint DataOciIdentityDomainsSelfRegistrationProfiles#idcs_endpoint}
    */
    readonly idcsEndpoint: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/data-sources/identity_domains_self_registration_profiles#resource_type_schema_version DataOciIdentityDomainsSelfRegistrationProfiles#resource_type_schema_version}
    */
    readonly resourceTypeSchemaVersion?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/data-sources/identity_domains_self_registration_profiles#self_registration_profile_count DataOciIdentityDomainsSelfRegistrationProfiles#self_registration_profile_count}
    */
    readonly selfRegistrationProfileCount?: number;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/data-sources/identity_domains_self_registration_profiles#self_registration_profile_filter DataOciIdentityDomainsSelfRegistrationProfiles#self_registration_profile_filter}
    */
    readonly selfRegistrationProfileFilter?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/data-sources/identity_domains_self_registration_profiles#sort_by DataOciIdentityDomainsSelfRegistrationProfiles#sort_by}
    */
    readonly sortBy?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/data-sources/identity_domains_self_registration_profiles#sort_order DataOciIdentityDomainsSelfRegistrationProfiles#sort_order}
    */
    readonly sortOrder?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/data-sources/identity_domains_self_registration_profiles#start_index DataOciIdentityDomainsSelfRegistrationProfiles#start_index}
    */
    readonly startIndex?: number;
}
export interface DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesAfterSubmitText {
}
export declare function dataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesAfterSubmitTextToTerraform(struct?: DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesAfterSubmitText): any;
export declare function dataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesAfterSubmitTextToHclTerraform(struct?: DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesAfterSubmitText): any;
export declare class DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesAfterSubmitTextOutputReference 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(): DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesAfterSubmitText | undefined;
    set internalValue(value: DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesAfterSubmitText | undefined);
    get default(): cdktf.IResolvable;
    get locale(): string;
    get value(): string;
}
export declare class DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesAfterSubmitTextList 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): DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesAfterSubmitTextOutputReference;
}
export interface DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesConsentText {
}
export declare function dataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesConsentTextToTerraform(struct?: DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesConsentText): any;
export declare function dataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesConsentTextToHclTerraform(struct?: DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesConsentText): any;
export declare class DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesConsentTextOutputReference 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(): DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesConsentText | undefined;
    set internalValue(value: DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesConsentText | undefined);
    get default(): cdktf.IResolvable;
    get locale(): string;
    get value(): string;
}
export declare class DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesConsentTextList 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): DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesConsentTextOutputReference;
}
export interface DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesDefaultGroups {
}
export declare function dataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesDefaultGroupsToTerraform(struct?: DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesDefaultGroups): any;
export declare function dataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesDefaultGroupsToHclTerraform(struct?: DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesDefaultGroups): any;
export declare class DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesDefaultGroupsOutputReference 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(): DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesDefaultGroups | undefined;
    set internalValue(value: DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesDefaultGroups | undefined);
    get display(): string;
    get ref(): string;
    get value(): string;
}
export declare class DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesDefaultGroupsList 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): DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesDefaultGroupsOutputReference;
}
export interface DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesDisplayName {
}
export declare function dataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesDisplayNameToTerraform(struct?: DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesDisplayName): any;
export declare function dataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesDisplayNameToHclTerraform(struct?: DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesDisplayName): any;
export declare class DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesDisplayNameOutputReference 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(): DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesDisplayName | undefined;
    set internalValue(value: DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesDisplayName | undefined);
    get default(): cdktf.IResolvable;
    get locale(): string;
    get value(): string;
}
export declare class DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesDisplayNameList 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): DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesDisplayNameOutputReference;
}
export interface DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesEmailTemplate {
}
export declare function dataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesEmailTemplateToTerraform(struct?: DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesEmailTemplate): any;
export declare function dataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesEmailTemplateToHclTerraform(struct?: DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesEmailTemplate): any;
export declare class DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesEmailTemplateOutputReference 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(): DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesEmailTemplate | undefined;
    set internalValue(value: DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesEmailTemplate | undefined);
    get display(): string;
    get ref(): string;
    get value(): string;
}
export declare class DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesEmailTemplateList 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): DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesEmailTemplateOutputReference;
}
export interface DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesFooterText {
}
export declare function dataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesFooterTextToTerraform(struct?: DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesFooterText): any;
export declare function dataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesFooterTextToHclTerraform(struct?: DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesFooterText): any;
export declare class DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesFooterTextOutputReference 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(): DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesFooterText | undefined;
    set internalValue(value: DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesFooterText | undefined);
    get default(): cdktf.IResolvable;
    get locale(): string;
    get value(): string;
}
export declare class DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesFooterTextList 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): DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesFooterTextOutputReference;
}
export interface DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesHeaderText {
}
export declare function dataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesHeaderTextToTerraform(struct?: DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesHeaderText): any;
export declare function dataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesHeaderTextToHclTerraform(struct?: DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesHeaderText): any;
export declare class DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesHeaderTextOutputReference 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(): DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesHeaderText | undefined;
    set internalValue(value: DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesHeaderText | undefined);
    get default(): cdktf.IResolvable;
    get locale(): string;
    get value(): string;
}
export declare class DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesHeaderTextList 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): DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesHeaderTextOutputReference;
}
export interface DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesIdcsCreatedBy {
}
export declare function dataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesIdcsCreatedByToTerraform(struct?: DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesIdcsCreatedBy): any;
export declare function dataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesIdcsCreatedByToHclTerraform(struct?: DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesIdcsCreatedBy): any;
export declare class DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesIdcsCreatedByOutputReference 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(): DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesIdcsCreatedBy | undefined;
    set internalValue(value: DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesIdcsCreatedBy | undefined);
    get display(): string;
    get ocid(): string;
    get ref(): string;
    get type(): string;
    get value(): string;
}
export declare class DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesIdcsCreatedByList 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): DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesIdcsCreatedByOutputReference;
}
export interface DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesIdcsLastModifiedBy {
}
export declare function dataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesIdcsLastModifiedByToTerraform(struct?: DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesIdcsLastModifiedBy): any;
export declare function dataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesIdcsLastModifiedByToHclTerraform(struct?: DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesIdcsLastModifiedBy): any;
export declare class DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesIdcsLastModifiedByOutputReference 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(): DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesIdcsLastModifiedBy | undefined;
    set internalValue(value: DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesIdcsLastModifiedBy | undefined);
    get display(): string;
    get ocid(): string;
    get ref(): string;
    get type(): string;
    get value(): string;
}
export declare class DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesIdcsLastModifiedByList 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): DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesIdcsLastModifiedByOutputReference;
}
export interface DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesMeta {
}
export declare function dataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesMetaToTerraform(struct?: DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesMeta): any;
export declare function dataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesMetaToHclTerraform(struct?: DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesMeta): any;
export declare class DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesMetaOutputReference 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(): DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesMeta | undefined;
    set internalValue(value: DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesMeta | undefined);
    get created(): string;
    get lastModified(): string;
    get location(): string;
    get resourceType(): string;
    get version(): string;
}
export declare class DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesMetaList 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): DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesMetaOutputReference;
}
export interface DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesTags {
}
export declare function dataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesTagsToTerraform(struct?: DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesTags): any;
export declare function dataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesTagsToHclTerraform(struct?: DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesTags): any;
export declare class DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesTagsOutputReference 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(): DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesTags | undefined;
    set internalValue(value: DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesTags | undefined);
    get key(): string;
    get value(): string;
}
export declare class DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesTagsList 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): DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesTagsOutputReference;
}
export interface DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesUserAttributes {
}
export declare function dataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesUserAttributesToTerraform(struct?: DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesUserAttributes): any;
export declare function dataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesUserAttributesToHclTerraform(struct?: DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesUserAttributes): any;
export declare class DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesUserAttributesOutputReference 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(): DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesUserAttributes | undefined;
    set internalValue(value: DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesUserAttributes | undefined);
    get deletable(): cdktf.IResolvable;
    get fullyQualifiedAttributeName(): string;
    get metadata(): string;
    get seqNumber(): number;
    get value(): string;
}
export declare class DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesUserAttributesList 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): DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesUserAttributesOutputReference;
}
export interface DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfiles {
}
export declare function dataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesToTerraform(struct?: DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfiles): any;
export declare function dataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesToHclTerraform(struct?: DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfiles): any;
export declare class DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesOutputReference 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(): DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfiles | undefined;
    set internalValue(value: DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfiles | undefined);
    get activationEmailRequired(): cdktf.IResolvable;
    get active(): cdktf.IResolvable;
    private _afterSubmitText;
    get afterSubmitText(): DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesAfterSubmitTextList;
    get allowedEmailDomains(): string[];
    get attributeSets(): string[];
    get attributes(): string;
    get authorization(): string;
    get compartmentOcid(): string;
    private _consentText;
    get consentText(): DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesConsentTextList;
    get consentTextPresent(): cdktf.IResolvable;
    private _defaultGroups;
    get defaultGroups(): DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesDefaultGroupsList;
    get deleteInProgress(): cdktf.IResolvable;
    get disallowedEmailDomains(): string[];
    private _displayName;
    get displayName(): DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesDisplayNameList;
    get domainOcid(): string;
    private _emailTemplate;
    get emailTemplate(): DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesEmailTemplateList;
    get externalId(): string;
    get footerLogo(): string;
    private _footerText;
    get footerText(): DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesFooterTextList;
    get headerLogo(): string;
    private _headerText;
    get headerText(): DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesHeaderTextList;
    get id(): string;
    private _idcsCreatedBy;
    get idcsCreatedBy(): DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesIdcsCreatedByList;
    get idcsEndpoint(): string;
    private _idcsLastModifiedBy;
    get idcsLastModifiedBy(): DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesIdcsLastModifiedByList;
    get idcsLastUpgradedInRelease(): string;
    get idcsPreventedOperations(): string[];
    private _meta;
    get meta(): DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesMetaList;
    get name(): string;
    get numberOfDaysRedirectUrlIsValid(): number;
    get ocid(): string;
    get redirectUrl(): string;
    get resourceTypeSchemaVersion(): string;
    get schemas(): string[];
    get showOnLoginPage(): cdktf.IResolvable;
    private _tags;
    get tags(): DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesTagsList;
    get tenancyOcid(): string;
    private _userAttributes;
    get userAttributes(): DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesUserAttributesList;
}
export declare class DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesList 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): DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesOutputReference;
}
/**
* Represents a {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/data-sources/identity_domains_self_registration_profiles oci_identity_domains_self_registration_profiles}
*/
export declare class DataOciIdentityDomainsSelfRegistrationProfiles extends cdktf.TerraformDataSource {
    static readonly tfResourceType = "oci_identity_domains_self_registration_profiles";
    /**
    * Generates CDKTF code for importing a DataOciIdentityDomainsSelfRegistrationProfiles 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 DataOciIdentityDomainsSelfRegistrationProfiles to import
    * @param importFromId The id of the existing DataOciIdentityDomainsSelfRegistrationProfiles that should be imported. Refer to the {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/data-sources/identity_domains_self_registration_profiles#import import section} in the documentation of this resource for the id to use
    * @param provider? Optional instance of the provider where the DataOciIdentityDomainsSelfRegistrationProfiles 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/oracle/oci/6.18.0/docs/data-sources/identity_domains_self_registration_profiles oci_identity_domains_self_registration_profiles} Data Source
    *
    * @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 DataOciIdentityDomainsSelfRegistrationProfilesConfig
    */
    constructor(scope: Construct, id: string, config: DataOciIdentityDomainsSelfRegistrationProfilesConfig);
    private _attributeSets?;
    get attributeSets(): string[];
    set attributeSets(value: string[]);
    resetAttributeSets(): void;
    get attributeSetsInput(): string[] | undefined;
    private _attributes?;
    get attributes(): string;
    set attributes(value: string);
    resetAttributes(): void;
    get attributesInput(): string | undefined;
    private _authorization?;
    get authorization(): string;
    set authorization(value: string);
    resetAuthorization(): void;
    get authorizationInput(): string | undefined;
    private _compartmentId?;
    get compartmentId(): string;
    set compartmentId(value: string);
    resetCompartmentId(): void;
    get compartmentIdInput(): string | undefined;
    private _id?;
    get id(): string;
    set id(value: string);
    resetId(): void;
    get idInput(): string | undefined;
    private _idcsEndpoint?;
    get idcsEndpoint(): string;
    set idcsEndpoint(value: string);
    get idcsEndpointInput(): string | undefined;
    get itemsPerPage(): number;
    private _resourceTypeSchemaVersion?;
    get resourceTypeSchemaVersion(): string;
    set resourceTypeSchemaVersion(value: string);
    resetResourceTypeSchemaVersion(): void;
    get resourceTypeSchemaVersionInput(): string | undefined;
    get schemas(): string[];
    private _selfRegistrationProfileCount?;
    get selfRegistrationProfileCount(): number;
    set selfRegistrationProfileCount(value: number);
    resetSelfRegistrationProfileCount(): void;
    get selfRegistrationProfileCountInput(): number | undefined;
    private _selfRegistrationProfileFilter?;
    get selfRegistrationProfileFilter(): string;
    set selfRegistrationProfileFilter(value: string);
    resetSelfRegistrationProfileFilter(): void;
    get selfRegistrationProfileFilterInput(): string | undefined;
    private _selfRegistrationProfiles;
    get selfRegistrationProfiles(): DataOciIdentityDomainsSelfRegistrationProfilesSelfRegistrationProfilesList;
    private _sortBy?;
    get sortBy(): string;
    set sortBy(value: string);
    resetSortBy(): void;
    get sortByInput(): string | undefined;
    private _sortOrder?;
    get sortOrder(): string;
    set sortOrder(value: string);
    resetSortOrder(): void;
    get sortOrderInput(): string | undefined;
    private _startIndex?;
    get startIndex(): number;
    set startIndex(value: number);
    resetStartIndex(): void;
    get startIndexInput(): number | undefined;
    get totalResults(): number;
    protected synthesizeAttributes(): {
        [name: string]: any;
    };
    protected synthesizeHclAttributes(): {
        [name: string]: any;
    };
}
