import { Construct } from 'constructs';
import * as cdktf from 'cdktf';
export interface DataLabelingServiceDatasetConfig extends cdktf.TerraformMetaArguments {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/data_labeling_service_dataset#annotation_format DataLabelingServiceDataset#annotation_format}
    */
    readonly annotationFormat: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/data_labeling_service_dataset#compartment_id DataLabelingServiceDataset#compartment_id}
    */
    readonly compartmentId: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/data_labeling_service_dataset#defined_tags DataLabelingServiceDataset#defined_tags}
    */
    readonly definedTags?: {
        [key: string]: string;
    };
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/data_labeling_service_dataset#description DataLabelingServiceDataset#description}
    */
    readonly description?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/data_labeling_service_dataset#display_name DataLabelingServiceDataset#display_name}
    */
    readonly displayName?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/data_labeling_service_dataset#freeform_tags DataLabelingServiceDataset#freeform_tags}
    */
    readonly freeformTags?: {
        [key: string]: string;
    };
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/data_labeling_service_dataset#id DataLabelingServiceDataset#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/resources/data_labeling_service_dataset#labeling_instructions DataLabelingServiceDataset#labeling_instructions}
    */
    readonly labelingInstructions?: string;
    /**
    * dataset_format_details block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/data_labeling_service_dataset#dataset_format_details DataLabelingServiceDataset#dataset_format_details}
    */
    readonly datasetFormatDetails: DataLabelingServiceDatasetDatasetFormatDetails;
    /**
    * dataset_source_details block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/data_labeling_service_dataset#dataset_source_details DataLabelingServiceDataset#dataset_source_details}
    */
    readonly datasetSourceDetails: DataLabelingServiceDatasetDatasetSourceDetails;
    /**
    * initial_import_dataset_configuration block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/data_labeling_service_dataset#initial_import_dataset_configuration DataLabelingServiceDataset#initial_import_dataset_configuration}
    */
    readonly initialImportDatasetConfiguration?: DataLabelingServiceDatasetInitialImportDatasetConfiguration;
    /**
    * initial_record_generation_configuration block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/data_labeling_service_dataset#initial_record_generation_configuration DataLabelingServiceDataset#initial_record_generation_configuration}
    */
    readonly initialRecordGenerationConfiguration?: DataLabelingServiceDatasetInitialRecordGenerationConfiguration;
    /**
    * label_set block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/data_labeling_service_dataset#label_set DataLabelingServiceDataset#label_set}
    */
    readonly labelSet: DataLabelingServiceDatasetLabelSet;
    /**
    * timeouts block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/data_labeling_service_dataset#timeouts DataLabelingServiceDataset#timeouts}
    */
    readonly timeouts?: DataLabelingServiceDatasetTimeouts;
}
export interface DataLabelingServiceDatasetDatasetFormatDetailsTextFileTypeMetadata {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/data_labeling_service_dataset#column_delimiter DataLabelingServiceDataset#column_delimiter}
    */
    readonly columnDelimiter?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/data_labeling_service_dataset#column_index DataLabelingServiceDataset#column_index}
    */
    readonly columnIndex: number;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/data_labeling_service_dataset#column_name DataLabelingServiceDataset#column_name}
    */
    readonly columnName?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/data_labeling_service_dataset#escape_character DataLabelingServiceDataset#escape_character}
    */
    readonly escapeCharacter?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/data_labeling_service_dataset#format_type DataLabelingServiceDataset#format_type}
    */
    readonly formatType: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/data_labeling_service_dataset#line_delimiter DataLabelingServiceDataset#line_delimiter}
    */
    readonly lineDelimiter?: string;
}
export declare function dataLabelingServiceDatasetDatasetFormatDetailsTextFileTypeMetadataToTerraform(struct?: DataLabelingServiceDatasetDatasetFormatDetailsTextFileTypeMetadataOutputReference | DataLabelingServiceDatasetDatasetFormatDetailsTextFileTypeMetadata): any;
export declare function dataLabelingServiceDatasetDatasetFormatDetailsTextFileTypeMetadataToHclTerraform(struct?: DataLabelingServiceDatasetDatasetFormatDetailsTextFileTypeMetadataOutputReference | DataLabelingServiceDatasetDatasetFormatDetailsTextFileTypeMetadata): any;
export declare class DataLabelingServiceDatasetDatasetFormatDetailsTextFileTypeMetadataOutputReference 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(): DataLabelingServiceDatasetDatasetFormatDetailsTextFileTypeMetadata | undefined;
    set internalValue(value: DataLabelingServiceDatasetDatasetFormatDetailsTextFileTypeMetadata | undefined);
    private _columnDelimiter?;
    get columnDelimiter(): string;
    set columnDelimiter(value: string);
    resetColumnDelimiter(): void;
    get columnDelimiterInput(): string | undefined;
    private _columnIndex?;
    get columnIndex(): number;
    set columnIndex(value: number);
    get columnIndexInput(): number | undefined;
    private _columnName?;
    get columnName(): string;
    set columnName(value: string);
    resetColumnName(): void;
    get columnNameInput(): string | undefined;
    private _escapeCharacter?;
    get escapeCharacter(): string;
    set escapeCharacter(value: string);
    resetEscapeCharacter(): void;
    get escapeCharacterInput(): string | undefined;
    private _formatType?;
    get formatType(): string;
    set formatType(value: string);
    get formatTypeInput(): string | undefined;
    private _lineDelimiter?;
    get lineDelimiter(): string;
    set lineDelimiter(value: string);
    resetLineDelimiter(): void;
    get lineDelimiterInput(): string | undefined;
}
export interface DataLabelingServiceDatasetDatasetFormatDetails {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/data_labeling_service_dataset#format_type DataLabelingServiceDataset#format_type}
    */
    readonly formatType: string;
    /**
    * text_file_type_metadata block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/data_labeling_service_dataset#text_file_type_metadata DataLabelingServiceDataset#text_file_type_metadata}
    */
    readonly textFileTypeMetadata?: DataLabelingServiceDatasetDatasetFormatDetailsTextFileTypeMetadata;
}
export declare function dataLabelingServiceDatasetDatasetFormatDetailsToTerraform(struct?: DataLabelingServiceDatasetDatasetFormatDetailsOutputReference | DataLabelingServiceDatasetDatasetFormatDetails): any;
export declare function dataLabelingServiceDatasetDatasetFormatDetailsToHclTerraform(struct?: DataLabelingServiceDatasetDatasetFormatDetailsOutputReference | DataLabelingServiceDatasetDatasetFormatDetails): any;
export declare class DataLabelingServiceDatasetDatasetFormatDetailsOutputReference 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(): DataLabelingServiceDatasetDatasetFormatDetails | undefined;
    set internalValue(value: DataLabelingServiceDatasetDatasetFormatDetails | undefined);
    private _formatType?;
    get formatType(): string;
    set formatType(value: string);
    get formatTypeInput(): string | undefined;
    private _textFileTypeMetadata;
    get textFileTypeMetadata(): DataLabelingServiceDatasetDatasetFormatDetailsTextFileTypeMetadataOutputReference;
    putTextFileTypeMetadata(value: DataLabelingServiceDatasetDatasetFormatDetailsTextFileTypeMetadata): void;
    resetTextFileTypeMetadata(): void;
    get textFileTypeMetadataInput(): DataLabelingServiceDatasetDatasetFormatDetailsTextFileTypeMetadata | undefined;
}
export interface DataLabelingServiceDatasetDatasetSourceDetails {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/data_labeling_service_dataset#bucket DataLabelingServiceDataset#bucket}
    */
    readonly bucket: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/data_labeling_service_dataset#namespace DataLabelingServiceDataset#namespace}
    */
    readonly namespace: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/data_labeling_service_dataset#prefix DataLabelingServiceDataset#prefix}
    */
    readonly prefix?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/data_labeling_service_dataset#source_type DataLabelingServiceDataset#source_type}
    */
    readonly sourceType: string;
}
export declare function dataLabelingServiceDatasetDatasetSourceDetailsToTerraform(struct?: DataLabelingServiceDatasetDatasetSourceDetailsOutputReference | DataLabelingServiceDatasetDatasetSourceDetails): any;
export declare function dataLabelingServiceDatasetDatasetSourceDetailsToHclTerraform(struct?: DataLabelingServiceDatasetDatasetSourceDetailsOutputReference | DataLabelingServiceDatasetDatasetSourceDetails): any;
export declare class DataLabelingServiceDatasetDatasetSourceDetailsOutputReference 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(): DataLabelingServiceDatasetDatasetSourceDetails | undefined;
    set internalValue(value: DataLabelingServiceDatasetDatasetSourceDetails | undefined);
    private _bucket?;
    get bucket(): string;
    set bucket(value: string);
    get bucketInput(): string | undefined;
    private _namespace?;
    get namespace(): string;
    set namespace(value: string);
    get namespaceInput(): string | undefined;
    private _prefix?;
    get prefix(): string;
    set prefix(value: string);
    resetPrefix(): void;
    get prefixInput(): string | undefined;
    private _sourceType?;
    get sourceType(): string;
    set sourceType(value: string);
    get sourceTypeInput(): string | undefined;
}
export interface DataLabelingServiceDatasetInitialImportDatasetConfigurationImportFormat {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/data_labeling_service_dataset#name DataLabelingServiceDataset#name}
    */
    readonly name: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/data_labeling_service_dataset#version DataLabelingServiceDataset#version}
    */
    readonly version?: string;
}
export declare function dataLabelingServiceDatasetInitialImportDatasetConfigurationImportFormatToTerraform(struct?: DataLabelingServiceDatasetInitialImportDatasetConfigurationImportFormatOutputReference | DataLabelingServiceDatasetInitialImportDatasetConfigurationImportFormat): any;
export declare function dataLabelingServiceDatasetInitialImportDatasetConfigurationImportFormatToHclTerraform(struct?: DataLabelingServiceDatasetInitialImportDatasetConfigurationImportFormatOutputReference | DataLabelingServiceDatasetInitialImportDatasetConfigurationImportFormat): any;
export declare class DataLabelingServiceDatasetInitialImportDatasetConfigurationImportFormatOutputReference 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(): DataLabelingServiceDatasetInitialImportDatasetConfigurationImportFormat | undefined;
    set internalValue(value: DataLabelingServiceDatasetInitialImportDatasetConfigurationImportFormat | undefined);
    private _name?;
    get name(): string;
    set name(value: string);
    get nameInput(): string | undefined;
    private _version?;
    get version(): string;
    set version(value: string);
    resetVersion(): void;
    get versionInput(): string | undefined;
}
export interface DataLabelingServiceDatasetInitialImportDatasetConfigurationImportMetadataPath {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/data_labeling_service_dataset#bucket DataLabelingServiceDataset#bucket}
    */
    readonly bucket: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/data_labeling_service_dataset#namespace DataLabelingServiceDataset#namespace}
    */
    readonly namespace: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/data_labeling_service_dataset#path DataLabelingServiceDataset#path}
    */
    readonly path: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/data_labeling_service_dataset#source_type DataLabelingServiceDataset#source_type}
    */
    readonly sourceType: string;
}
export declare function dataLabelingServiceDatasetInitialImportDatasetConfigurationImportMetadataPathToTerraform(struct?: DataLabelingServiceDatasetInitialImportDatasetConfigurationImportMetadataPathOutputReference | DataLabelingServiceDatasetInitialImportDatasetConfigurationImportMetadataPath): any;
export declare function dataLabelingServiceDatasetInitialImportDatasetConfigurationImportMetadataPathToHclTerraform(struct?: DataLabelingServiceDatasetInitialImportDatasetConfigurationImportMetadataPathOutputReference | DataLabelingServiceDatasetInitialImportDatasetConfigurationImportMetadataPath): any;
export declare class DataLabelingServiceDatasetInitialImportDatasetConfigurationImportMetadataPathOutputReference 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(): DataLabelingServiceDatasetInitialImportDatasetConfigurationImportMetadataPath | undefined;
    set internalValue(value: DataLabelingServiceDatasetInitialImportDatasetConfigurationImportMetadataPath | undefined);
    private _bucket?;
    get bucket(): string;
    set bucket(value: string);
    get bucketInput(): string | undefined;
    private _namespace?;
    get namespace(): string;
    set namespace(value: string);
    get namespaceInput(): string | undefined;
    private _path?;
    get path(): string;
    set path(value: string);
    get pathInput(): string | undefined;
    private _sourceType?;
    get sourceType(): string;
    set sourceType(value: string);
    get sourceTypeInput(): string | undefined;
}
export interface DataLabelingServiceDatasetInitialImportDatasetConfiguration {
    /**
    * import_format block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/data_labeling_service_dataset#import_format DataLabelingServiceDataset#import_format}
    */
    readonly importFormat: DataLabelingServiceDatasetInitialImportDatasetConfigurationImportFormat;
    /**
    * import_metadata_path block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/data_labeling_service_dataset#import_metadata_path DataLabelingServiceDataset#import_metadata_path}
    */
    readonly importMetadataPath: DataLabelingServiceDatasetInitialImportDatasetConfigurationImportMetadataPath;
}
export declare function dataLabelingServiceDatasetInitialImportDatasetConfigurationToTerraform(struct?: DataLabelingServiceDatasetInitialImportDatasetConfigurationOutputReference | DataLabelingServiceDatasetInitialImportDatasetConfiguration): any;
export declare function dataLabelingServiceDatasetInitialImportDatasetConfigurationToHclTerraform(struct?: DataLabelingServiceDatasetInitialImportDatasetConfigurationOutputReference | DataLabelingServiceDatasetInitialImportDatasetConfiguration): any;
export declare class DataLabelingServiceDatasetInitialImportDatasetConfigurationOutputReference 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(): DataLabelingServiceDatasetInitialImportDatasetConfiguration | undefined;
    set internalValue(value: DataLabelingServiceDatasetInitialImportDatasetConfiguration | undefined);
    private _importFormat;
    get importFormat(): DataLabelingServiceDatasetInitialImportDatasetConfigurationImportFormatOutputReference;
    putImportFormat(value: DataLabelingServiceDatasetInitialImportDatasetConfigurationImportFormat): void;
    get importFormatInput(): DataLabelingServiceDatasetInitialImportDatasetConfigurationImportFormat | undefined;
    private _importMetadataPath;
    get importMetadataPath(): DataLabelingServiceDatasetInitialImportDatasetConfigurationImportMetadataPathOutputReference;
    putImportMetadataPath(value: DataLabelingServiceDatasetInitialImportDatasetConfigurationImportMetadataPath): void;
    get importMetadataPathInput(): DataLabelingServiceDatasetInitialImportDatasetConfigurationImportMetadataPath | undefined;
}
export interface DataLabelingServiceDatasetInitialRecordGenerationConfiguration {
}
export declare function dataLabelingServiceDatasetInitialRecordGenerationConfigurationToTerraform(struct?: DataLabelingServiceDatasetInitialRecordGenerationConfigurationOutputReference | DataLabelingServiceDatasetInitialRecordGenerationConfiguration): any;
export declare function dataLabelingServiceDatasetInitialRecordGenerationConfigurationToHclTerraform(struct?: DataLabelingServiceDatasetInitialRecordGenerationConfigurationOutputReference | DataLabelingServiceDatasetInitialRecordGenerationConfiguration): any;
export declare class DataLabelingServiceDatasetInitialRecordGenerationConfigurationOutputReference 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(): DataLabelingServiceDatasetInitialRecordGenerationConfiguration | undefined;
    set internalValue(value: DataLabelingServiceDatasetInitialRecordGenerationConfiguration | undefined);
}
export interface DataLabelingServiceDatasetLabelSetItems {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/data_labeling_service_dataset#name DataLabelingServiceDataset#name}
    */
    readonly name: string;
}
export declare function dataLabelingServiceDatasetLabelSetItemsToTerraform(struct?: DataLabelingServiceDatasetLabelSetItems | cdktf.IResolvable): any;
export declare function dataLabelingServiceDatasetLabelSetItemsToHclTerraform(struct?: DataLabelingServiceDatasetLabelSetItems | cdktf.IResolvable): any;
export declare class DataLabelingServiceDatasetLabelSetItemsOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    private resolvableValue?;
    /**
    * @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(): DataLabelingServiceDatasetLabelSetItems | cdktf.IResolvable | undefined;
    set internalValue(value: DataLabelingServiceDatasetLabelSetItems | cdktf.IResolvable | undefined);
    private _name?;
    get name(): string;
    set name(value: string);
    get nameInput(): string | undefined;
}
export declare class DataLabelingServiceDatasetLabelSetItemsList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    internalValue?: DataLabelingServiceDatasetLabelSetItems[] | cdktf.IResolvable;
    /**
    * @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): DataLabelingServiceDatasetLabelSetItemsOutputReference;
}
export interface DataLabelingServiceDatasetLabelSet {
    /**
    * items block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/data_labeling_service_dataset#items DataLabelingServiceDataset#items}
    */
    readonly items: DataLabelingServiceDatasetLabelSetItems[] | cdktf.IResolvable;
}
export declare function dataLabelingServiceDatasetLabelSetToTerraform(struct?: DataLabelingServiceDatasetLabelSetOutputReference | DataLabelingServiceDatasetLabelSet): any;
export declare function dataLabelingServiceDatasetLabelSetToHclTerraform(struct?: DataLabelingServiceDatasetLabelSetOutputReference | DataLabelingServiceDatasetLabelSet): any;
export declare class DataLabelingServiceDatasetLabelSetOutputReference 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(): DataLabelingServiceDatasetLabelSet | undefined;
    set internalValue(value: DataLabelingServiceDatasetLabelSet | undefined);
    private _items;
    get items(): DataLabelingServiceDatasetLabelSetItemsList;
    putItems(value: DataLabelingServiceDatasetLabelSetItems[] | cdktf.IResolvable): void;
    get itemsInput(): cdktf.IResolvable | DataLabelingServiceDatasetLabelSetItems[] | undefined;
}
export interface DataLabelingServiceDatasetTimeouts {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/data_labeling_service_dataset#create DataLabelingServiceDataset#create}
    */
    readonly create?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/data_labeling_service_dataset#delete DataLabelingServiceDataset#delete}
    */
    readonly delete?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/data_labeling_service_dataset#update DataLabelingServiceDataset#update}
    */
    readonly update?: string;
}
export declare function dataLabelingServiceDatasetTimeoutsToTerraform(struct?: DataLabelingServiceDatasetTimeouts | cdktf.IResolvable): any;
export declare function dataLabelingServiceDatasetTimeoutsToHclTerraform(struct?: DataLabelingServiceDatasetTimeouts | cdktf.IResolvable): any;
export declare class DataLabelingServiceDatasetTimeoutsOutputReference 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(): DataLabelingServiceDatasetTimeouts | cdktf.IResolvable | undefined;
    set internalValue(value: DataLabelingServiceDatasetTimeouts | 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/oracle/oci/6.18.0/docs/resources/data_labeling_service_dataset oci_data_labeling_service_dataset}
*/
export declare class DataLabelingServiceDataset extends cdktf.TerraformResource {
    static readonly tfResourceType = "oci_data_labeling_service_dataset";
    /**
    * Generates CDKTF code for importing a DataLabelingServiceDataset 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 DataLabelingServiceDataset to import
    * @param importFromId The id of the existing DataLabelingServiceDataset that should be imported. Refer to the {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/data_labeling_service_dataset#import import section} in the documentation of this resource for the id to use
    * @param provider? Optional instance of the provider where the DataLabelingServiceDataset 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/resources/data_labeling_service_dataset oci_data_labeling_service_dataset} 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 DataLabelingServiceDatasetConfig
    */
    constructor(scope: Construct, id: string, config: DataLabelingServiceDatasetConfig);
    private _additionalProperties;
    get additionalProperties(): cdktf.StringMap;
    private _annotationFormat?;
    get annotationFormat(): string;
    set annotationFormat(value: string);
    get annotationFormatInput(): string | undefined;
    private _compartmentId?;
    get compartmentId(): string;
    set compartmentId(value: string);
    get compartmentIdInput(): string | undefined;
    private _definedTags?;
    get definedTags(): {
        [key: string]: string;
    };
    set definedTags(value: {
        [key: string]: string;
    });
    resetDefinedTags(): void;
    get definedTagsInput(): {
        [key: string]: string;
    } | undefined;
    private _description?;
    get description(): string;
    set description(value: string);
    resetDescription(): void;
    get descriptionInput(): string | undefined;
    private _displayName?;
    get displayName(): string;
    set displayName(value: string);
    resetDisplayName(): void;
    get displayNameInput(): string | undefined;
    private _freeformTags?;
    get freeformTags(): {
        [key: string]: string;
    };
    set freeformTags(value: {
        [key: string]: string;
    });
    resetFreeformTags(): void;
    get freeformTagsInput(): {
        [key: string]: string;
    } | undefined;
    private _id?;
    get id(): string;
    set id(value: string);
    resetId(): void;
    get idInput(): string | undefined;
    private _labelingInstructions?;
    get labelingInstructions(): string;
    set labelingInstructions(value: string);
    resetLabelingInstructions(): void;
    get labelingInstructionsInput(): string | undefined;
    get lifecycleDetails(): string;
    get lifecycleSubstate(): string;
    get state(): string;
    get timeCreated(): string;
    get timeUpdated(): string;
    private _datasetFormatDetails;
    get datasetFormatDetails(): DataLabelingServiceDatasetDatasetFormatDetailsOutputReference;
    putDatasetFormatDetails(value: DataLabelingServiceDatasetDatasetFormatDetails): void;
    get datasetFormatDetailsInput(): DataLabelingServiceDatasetDatasetFormatDetails | undefined;
    private _datasetSourceDetails;
    get datasetSourceDetails(): DataLabelingServiceDatasetDatasetSourceDetailsOutputReference;
    putDatasetSourceDetails(value: DataLabelingServiceDatasetDatasetSourceDetails): void;
    get datasetSourceDetailsInput(): DataLabelingServiceDatasetDatasetSourceDetails | undefined;
    private _initialImportDatasetConfiguration;
    get initialImportDatasetConfiguration(): DataLabelingServiceDatasetInitialImportDatasetConfigurationOutputReference;
    putInitialImportDatasetConfiguration(value: DataLabelingServiceDatasetInitialImportDatasetConfiguration): void;
    resetInitialImportDatasetConfiguration(): void;
    get initialImportDatasetConfigurationInput(): DataLabelingServiceDatasetInitialImportDatasetConfiguration | undefined;
    private _initialRecordGenerationConfiguration;
    get initialRecordGenerationConfiguration(): DataLabelingServiceDatasetInitialRecordGenerationConfigurationOutputReference;
    putInitialRecordGenerationConfiguration(value: DataLabelingServiceDatasetInitialRecordGenerationConfiguration): void;
    resetInitialRecordGenerationConfiguration(): void;
    get initialRecordGenerationConfigurationInput(): DataLabelingServiceDatasetInitialRecordGenerationConfiguration | undefined;
    private _labelSet;
    get labelSet(): DataLabelingServiceDatasetLabelSetOutputReference;
    putLabelSet(value: DataLabelingServiceDatasetLabelSet): void;
    get labelSetInput(): DataLabelingServiceDatasetLabelSet | undefined;
    private _timeouts;
    get timeouts(): DataLabelingServiceDatasetTimeoutsOutputReference;
    putTimeouts(value: DataLabelingServiceDatasetTimeouts): void;
    resetTimeouts(): void;
    get timeoutsInput(): cdktf.IResolvable | DataLabelingServiceDatasetTimeouts | undefined;
    protected synthesizeAttributes(): {
        [name: string]: any;
    };
    protected synthesizeHclAttributes(): {
        [name: string]: any;
    };
}
