/**
 * Copyright (c) HashiCorp, Inc.
 * SPDX-License-Identifier: MPL-2.0
 */
import { Construct } from 'constructs';
import * as cdktf from 'cdktf';
export interface DialogflowCxTestCaseConfig extends cdktf.TerraformMetaArguments {
    /**
    * The human-readable name of the test case, unique within the agent. Limit of 200 characters.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.0/docs/resources/dialogflow_cx_test_case#display_name DialogflowCxTestCase#display_name}
    */
    readonly displayName: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.0/docs/resources/dialogflow_cx_test_case#id DialogflowCxTestCase#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;
    /**
    * Additional freeform notes about the test case. Limit of 400 characters.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.0/docs/resources/dialogflow_cx_test_case#notes DialogflowCxTestCase#notes}
    */
    readonly notes?: string;
    /**
    * The agent to create the test case for.
    * Format: projects/<Project ID>/locations/<Location ID>/agents/<Agent ID>.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.0/docs/resources/dialogflow_cx_test_case#parent DialogflowCxTestCase#parent}
    */
    readonly parent?: string;
    /**
    * Tags are short descriptions that users may apply to test cases for organizational and filtering purposes.
    * Each tag should start with "#" and has a limit of 30 characters
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.0/docs/resources/dialogflow_cx_test_case#tags DialogflowCxTestCase#tags}
    */
    readonly tags?: string[];
    /**
    * test_case_conversation_turns block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.0/docs/resources/dialogflow_cx_test_case#test_case_conversation_turns DialogflowCxTestCase#test_case_conversation_turns}
    */
    readonly testCaseConversationTurns?: DialogflowCxTestCaseTestCaseConversationTurns[] | cdktf.IResolvable;
    /**
    * test_config block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.0/docs/resources/dialogflow_cx_test_case#test_config DialogflowCxTestCase#test_config}
    */
    readonly testConfig?: DialogflowCxTestCaseTestConfig;
    /**
    * timeouts block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.0/docs/resources/dialogflow_cx_test_case#timeouts DialogflowCxTestCase#timeouts}
    */
    readonly timeouts?: DialogflowCxTestCaseTimeouts;
}
export interface DialogflowCxTestCaseLastTestResultConversationTurnsUserInputInputDtmf {
}
export declare function dialogflowCxTestCaseLastTestResultConversationTurnsUserInputInputDtmfToTerraform(struct?: DialogflowCxTestCaseLastTestResultConversationTurnsUserInputInputDtmf): any;
export declare function dialogflowCxTestCaseLastTestResultConversationTurnsUserInputInputDtmfToHclTerraform(struct?: DialogflowCxTestCaseLastTestResultConversationTurnsUserInputInputDtmf): any;
export declare class DialogflowCxTestCaseLastTestResultConversationTurnsUserInputInputDtmfOutputReference 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(): DialogflowCxTestCaseLastTestResultConversationTurnsUserInputInputDtmf | undefined;
    set internalValue(value: DialogflowCxTestCaseLastTestResultConversationTurnsUserInputInputDtmf | undefined);
    get digits(): string;
    get finishDigit(): string;
}
export declare class DialogflowCxTestCaseLastTestResultConversationTurnsUserInputInputDtmfList 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): DialogflowCxTestCaseLastTestResultConversationTurnsUserInputInputDtmfOutputReference;
}
export interface DialogflowCxTestCaseLastTestResultConversationTurnsUserInputInputEvent {
}
export declare function dialogflowCxTestCaseLastTestResultConversationTurnsUserInputInputEventToTerraform(struct?: DialogflowCxTestCaseLastTestResultConversationTurnsUserInputInputEvent): any;
export declare function dialogflowCxTestCaseLastTestResultConversationTurnsUserInputInputEventToHclTerraform(struct?: DialogflowCxTestCaseLastTestResultConversationTurnsUserInputInputEvent): any;
export declare class DialogflowCxTestCaseLastTestResultConversationTurnsUserInputInputEventOutputReference 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(): DialogflowCxTestCaseLastTestResultConversationTurnsUserInputInputEvent | undefined;
    set internalValue(value: DialogflowCxTestCaseLastTestResultConversationTurnsUserInputInputEvent | undefined);
    get event(): string;
}
export declare class DialogflowCxTestCaseLastTestResultConversationTurnsUserInputInputEventList 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): DialogflowCxTestCaseLastTestResultConversationTurnsUserInputInputEventOutputReference;
}
export interface DialogflowCxTestCaseLastTestResultConversationTurnsUserInputInputText {
}
export declare function dialogflowCxTestCaseLastTestResultConversationTurnsUserInputInputTextToTerraform(struct?: DialogflowCxTestCaseLastTestResultConversationTurnsUserInputInputText): any;
export declare function dialogflowCxTestCaseLastTestResultConversationTurnsUserInputInputTextToHclTerraform(struct?: DialogflowCxTestCaseLastTestResultConversationTurnsUserInputInputText): any;
export declare class DialogflowCxTestCaseLastTestResultConversationTurnsUserInputInputTextOutputReference 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(): DialogflowCxTestCaseLastTestResultConversationTurnsUserInputInputText | undefined;
    set internalValue(value: DialogflowCxTestCaseLastTestResultConversationTurnsUserInputInputText | undefined);
    get text(): string;
}
export declare class DialogflowCxTestCaseLastTestResultConversationTurnsUserInputInputTextList 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): DialogflowCxTestCaseLastTestResultConversationTurnsUserInputInputTextOutputReference;
}
export interface DialogflowCxTestCaseLastTestResultConversationTurnsUserInputInput {
}
export declare function dialogflowCxTestCaseLastTestResultConversationTurnsUserInputInputToTerraform(struct?: DialogflowCxTestCaseLastTestResultConversationTurnsUserInputInput): any;
export declare function dialogflowCxTestCaseLastTestResultConversationTurnsUserInputInputToHclTerraform(struct?: DialogflowCxTestCaseLastTestResultConversationTurnsUserInputInput): any;
export declare class DialogflowCxTestCaseLastTestResultConversationTurnsUserInputInputOutputReference 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(): DialogflowCxTestCaseLastTestResultConversationTurnsUserInputInput | undefined;
    set internalValue(value: DialogflowCxTestCaseLastTestResultConversationTurnsUserInputInput | undefined);
    private _dtmf;
    get dtmf(): DialogflowCxTestCaseLastTestResultConversationTurnsUserInputInputDtmfList;
    private _event;
    get event(): DialogflowCxTestCaseLastTestResultConversationTurnsUserInputInputEventList;
    get languageCode(): string;
    private _text;
    get text(): DialogflowCxTestCaseLastTestResultConversationTurnsUserInputInputTextList;
}
export declare class DialogflowCxTestCaseLastTestResultConversationTurnsUserInputInputList 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): DialogflowCxTestCaseLastTestResultConversationTurnsUserInputInputOutputReference;
}
export interface DialogflowCxTestCaseLastTestResultConversationTurnsUserInput {
}
export declare function dialogflowCxTestCaseLastTestResultConversationTurnsUserInputToTerraform(struct?: DialogflowCxTestCaseLastTestResultConversationTurnsUserInput): any;
export declare function dialogflowCxTestCaseLastTestResultConversationTurnsUserInputToHclTerraform(struct?: DialogflowCxTestCaseLastTestResultConversationTurnsUserInput): any;
export declare class DialogflowCxTestCaseLastTestResultConversationTurnsUserInputOutputReference 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(): DialogflowCxTestCaseLastTestResultConversationTurnsUserInput | undefined;
    set internalValue(value: DialogflowCxTestCaseLastTestResultConversationTurnsUserInput | undefined);
    get enableSentimentAnalysis(): cdktf.IResolvable;
    get injectedParameters(): string;
    private _input;
    get input(): DialogflowCxTestCaseLastTestResultConversationTurnsUserInputInputList;
    get isWebhookEnabled(): cdktf.IResolvable;
}
export declare class DialogflowCxTestCaseLastTestResultConversationTurnsUserInputList 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): DialogflowCxTestCaseLastTestResultConversationTurnsUserInputOutputReference;
}
export interface DialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputCurrentPage {
}
export declare function dialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputCurrentPageToTerraform(struct?: DialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputCurrentPage): any;
export declare function dialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputCurrentPageToHclTerraform(struct?: DialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputCurrentPage): any;
export declare class DialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputCurrentPageOutputReference 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(): DialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputCurrentPage | undefined;
    set internalValue(value: DialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputCurrentPage | undefined);
    get displayName(): string;
    get name(): string;
}
export declare class DialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputCurrentPageList 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): DialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputCurrentPageOutputReference;
}
export interface DialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputDifferences {
}
export declare function dialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputDifferencesToTerraform(struct?: DialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputDifferences): any;
export declare function dialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputDifferencesToHclTerraform(struct?: DialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputDifferences): any;
export declare class DialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputDifferencesOutputReference 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(): DialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputDifferences | undefined;
    set internalValue(value: DialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputDifferences | undefined);
    get description(): string;
    get type(): string;
}
export declare class DialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputDifferencesList 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): DialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputDifferencesOutputReference;
}
export interface DialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputStatus {
}
export declare function dialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputStatusToTerraform(struct?: DialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputStatus): any;
export declare function dialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputStatusToHclTerraform(struct?: DialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputStatus): any;
export declare class DialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputStatusOutputReference 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(): DialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputStatus | undefined;
    set internalValue(value: DialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputStatus | undefined);
    get code(): number;
    get details(): string;
    get message(): string;
}
export declare class DialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputStatusList 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): DialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputStatusOutputReference;
}
export interface DialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputTextResponses {
}
export declare function dialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputTextResponsesToTerraform(struct?: DialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputTextResponses): any;
export declare function dialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputTextResponsesToHclTerraform(struct?: DialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputTextResponses): any;
export declare class DialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputTextResponsesOutputReference 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(): DialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputTextResponses | undefined;
    set internalValue(value: DialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputTextResponses | undefined);
    get text(): string[];
}
export declare class DialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputTextResponsesList 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): DialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputTextResponsesOutputReference;
}
export interface DialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputTriggeredIntent {
}
export declare function dialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputTriggeredIntentToTerraform(struct?: DialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputTriggeredIntent): any;
export declare function dialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputTriggeredIntentToHclTerraform(struct?: DialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputTriggeredIntent): any;
export declare class DialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputTriggeredIntentOutputReference 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(): DialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputTriggeredIntent | undefined;
    set internalValue(value: DialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputTriggeredIntent | undefined);
    get displayName(): string;
    get name(): string;
}
export declare class DialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputTriggeredIntentList 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): DialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputTriggeredIntentOutputReference;
}
export interface DialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutput {
}
export declare function dialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputToTerraform(struct?: DialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutput): any;
export declare function dialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputToHclTerraform(struct?: DialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutput): any;
export declare class DialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputOutputReference 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(): DialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutput | undefined;
    set internalValue(value: DialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutput | undefined);
    private _currentPage;
    get currentPage(): DialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputCurrentPageList;
    private _differences;
    get differences(): DialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputDifferencesList;
    get sessionParameters(): string;
    private _status;
    get status(): DialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputStatusList;
    private _textResponses;
    get textResponses(): DialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputTextResponsesList;
    private _triggeredIntent;
    get triggeredIntent(): DialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputTriggeredIntentList;
}
export declare class DialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputList 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): DialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputOutputReference;
}
export interface DialogflowCxTestCaseLastTestResultConversationTurns {
}
export declare function dialogflowCxTestCaseLastTestResultConversationTurnsToTerraform(struct?: DialogflowCxTestCaseLastTestResultConversationTurns): any;
export declare function dialogflowCxTestCaseLastTestResultConversationTurnsToHclTerraform(struct?: DialogflowCxTestCaseLastTestResultConversationTurns): any;
export declare class DialogflowCxTestCaseLastTestResultConversationTurnsOutputReference 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(): DialogflowCxTestCaseLastTestResultConversationTurns | undefined;
    set internalValue(value: DialogflowCxTestCaseLastTestResultConversationTurns | undefined);
    private _userInput;
    get userInput(): DialogflowCxTestCaseLastTestResultConversationTurnsUserInputList;
    private _virtualAgentOutput;
    get virtualAgentOutput(): DialogflowCxTestCaseLastTestResultConversationTurnsVirtualAgentOutputList;
}
export declare class DialogflowCxTestCaseLastTestResultConversationTurnsList 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): DialogflowCxTestCaseLastTestResultConversationTurnsOutputReference;
}
export interface DialogflowCxTestCaseLastTestResult {
}
export declare function dialogflowCxTestCaseLastTestResultToTerraform(struct?: DialogflowCxTestCaseLastTestResult): any;
export declare function dialogflowCxTestCaseLastTestResultToHclTerraform(struct?: DialogflowCxTestCaseLastTestResult): any;
export declare class DialogflowCxTestCaseLastTestResultOutputReference 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(): DialogflowCxTestCaseLastTestResult | undefined;
    set internalValue(value: DialogflowCxTestCaseLastTestResult | undefined);
    private _conversationTurns;
    get conversationTurns(): DialogflowCxTestCaseLastTestResultConversationTurnsList;
    get environment(): string;
    get name(): string;
    get testResult(): string;
    get testTime(): string;
}
export declare class DialogflowCxTestCaseLastTestResultList 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): DialogflowCxTestCaseLastTestResultOutputReference;
}
export interface DialogflowCxTestCaseTestCaseConversationTurnsUserInputInputDtmf {
    /**
    * The dtmf digits.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.0/docs/resources/dialogflow_cx_test_case#digits DialogflowCxTestCase#digits}
    */
    readonly digits?: string;
    /**
    * The finish digit (if any).
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.0/docs/resources/dialogflow_cx_test_case#finish_digit DialogflowCxTestCase#finish_digit}
    */
    readonly finishDigit?: string;
}
export declare function dialogflowCxTestCaseTestCaseConversationTurnsUserInputInputDtmfToTerraform(struct?: DialogflowCxTestCaseTestCaseConversationTurnsUserInputInputDtmfOutputReference | DialogflowCxTestCaseTestCaseConversationTurnsUserInputInputDtmf): any;
export declare function dialogflowCxTestCaseTestCaseConversationTurnsUserInputInputDtmfToHclTerraform(struct?: DialogflowCxTestCaseTestCaseConversationTurnsUserInputInputDtmfOutputReference | DialogflowCxTestCaseTestCaseConversationTurnsUserInputInputDtmf): any;
export declare class DialogflowCxTestCaseTestCaseConversationTurnsUserInputInputDtmfOutputReference 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(): DialogflowCxTestCaseTestCaseConversationTurnsUserInputInputDtmf | undefined;
    set internalValue(value: DialogflowCxTestCaseTestCaseConversationTurnsUserInputInputDtmf | undefined);
    private _digits?;
    get digits(): string;
    set digits(value: string);
    resetDigits(): void;
    get digitsInput(): string | undefined;
    private _finishDigit?;
    get finishDigit(): string;
    set finishDigit(value: string);
    resetFinishDigit(): void;
    get finishDigitInput(): string | undefined;
}
export interface DialogflowCxTestCaseTestCaseConversationTurnsUserInputInputEvent {
    /**
    * Name of the event.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.0/docs/resources/dialogflow_cx_test_case#event DialogflowCxTestCase#event}
    */
    readonly event: string;
}
export declare function dialogflowCxTestCaseTestCaseConversationTurnsUserInputInputEventToTerraform(struct?: DialogflowCxTestCaseTestCaseConversationTurnsUserInputInputEventOutputReference | DialogflowCxTestCaseTestCaseConversationTurnsUserInputInputEvent): any;
export declare function dialogflowCxTestCaseTestCaseConversationTurnsUserInputInputEventToHclTerraform(struct?: DialogflowCxTestCaseTestCaseConversationTurnsUserInputInputEventOutputReference | DialogflowCxTestCaseTestCaseConversationTurnsUserInputInputEvent): any;
export declare class DialogflowCxTestCaseTestCaseConversationTurnsUserInputInputEventOutputReference 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(): DialogflowCxTestCaseTestCaseConversationTurnsUserInputInputEvent | undefined;
    set internalValue(value: DialogflowCxTestCaseTestCaseConversationTurnsUserInputInputEvent | undefined);
    private _event?;
    get event(): string;
    set event(value: string);
    get eventInput(): string | undefined;
}
export interface DialogflowCxTestCaseTestCaseConversationTurnsUserInputInputText {
    /**
    * The natural language text to be processed. Text length must not exceed 256 characters.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.0/docs/resources/dialogflow_cx_test_case#text DialogflowCxTestCase#text}
    */
    readonly text: string;
}
export declare function dialogflowCxTestCaseTestCaseConversationTurnsUserInputInputTextToTerraform(struct?: DialogflowCxTestCaseTestCaseConversationTurnsUserInputInputTextOutputReference | DialogflowCxTestCaseTestCaseConversationTurnsUserInputInputText): any;
export declare function dialogflowCxTestCaseTestCaseConversationTurnsUserInputInputTextToHclTerraform(struct?: DialogflowCxTestCaseTestCaseConversationTurnsUserInputInputTextOutputReference | DialogflowCxTestCaseTestCaseConversationTurnsUserInputInputText): any;
export declare class DialogflowCxTestCaseTestCaseConversationTurnsUserInputInputTextOutputReference 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(): DialogflowCxTestCaseTestCaseConversationTurnsUserInputInputText | undefined;
    set internalValue(value: DialogflowCxTestCaseTestCaseConversationTurnsUserInputInputText | undefined);
    private _text?;
    get text(): string;
    set text(value: string);
    get textInput(): string | undefined;
}
export interface DialogflowCxTestCaseTestCaseConversationTurnsUserInputInput {
    /**
    * The language of the input. See [Language Support](https://cloud.google.com/dialogflow/cx/docs/reference/language) for a list of the currently supported language codes.
    * Note that queries in the same session do not necessarily need to specify the same language.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.0/docs/resources/dialogflow_cx_test_case#language_code DialogflowCxTestCase#language_code}
    */
    readonly languageCode?: string;
    /**
    * dtmf block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.0/docs/resources/dialogflow_cx_test_case#dtmf DialogflowCxTestCase#dtmf}
    */
    readonly dtmf?: DialogflowCxTestCaseTestCaseConversationTurnsUserInputInputDtmf;
    /**
    * event block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.0/docs/resources/dialogflow_cx_test_case#event DialogflowCxTestCase#event}
    */
    readonly event?: DialogflowCxTestCaseTestCaseConversationTurnsUserInputInputEvent;
    /**
    * text block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.0/docs/resources/dialogflow_cx_test_case#text DialogflowCxTestCase#text}
    */
    readonly text?: DialogflowCxTestCaseTestCaseConversationTurnsUserInputInputText;
}
export declare function dialogflowCxTestCaseTestCaseConversationTurnsUserInputInputToTerraform(struct?: DialogflowCxTestCaseTestCaseConversationTurnsUserInputInputOutputReference | DialogflowCxTestCaseTestCaseConversationTurnsUserInputInput): any;
export declare function dialogflowCxTestCaseTestCaseConversationTurnsUserInputInputToHclTerraform(struct?: DialogflowCxTestCaseTestCaseConversationTurnsUserInputInputOutputReference | DialogflowCxTestCaseTestCaseConversationTurnsUserInputInput): any;
export declare class DialogflowCxTestCaseTestCaseConversationTurnsUserInputInputOutputReference 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(): DialogflowCxTestCaseTestCaseConversationTurnsUserInputInput | undefined;
    set internalValue(value: DialogflowCxTestCaseTestCaseConversationTurnsUserInputInput | undefined);
    private _languageCode?;
    get languageCode(): string;
    set languageCode(value: string);
    resetLanguageCode(): void;
    get languageCodeInput(): string | undefined;
    private _dtmf;
    get dtmf(): DialogflowCxTestCaseTestCaseConversationTurnsUserInputInputDtmfOutputReference;
    putDtmf(value: DialogflowCxTestCaseTestCaseConversationTurnsUserInputInputDtmf): void;
    resetDtmf(): void;
    get dtmfInput(): DialogflowCxTestCaseTestCaseConversationTurnsUserInputInputDtmf | undefined;
    private _event;
    get event(): DialogflowCxTestCaseTestCaseConversationTurnsUserInputInputEventOutputReference;
    putEvent(value: DialogflowCxTestCaseTestCaseConversationTurnsUserInputInputEvent): void;
    resetEvent(): void;
    get eventInput(): DialogflowCxTestCaseTestCaseConversationTurnsUserInputInputEvent | undefined;
    private _text;
    get text(): DialogflowCxTestCaseTestCaseConversationTurnsUserInputInputTextOutputReference;
    putText(value: DialogflowCxTestCaseTestCaseConversationTurnsUserInputInputText): void;
    resetText(): void;
    get textInput(): DialogflowCxTestCaseTestCaseConversationTurnsUserInputInputText | undefined;
}
export interface DialogflowCxTestCaseTestCaseConversationTurnsUserInput {
    /**
    * Whether sentiment analysis is enabled.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.0/docs/resources/dialogflow_cx_test_case#enable_sentiment_analysis DialogflowCxTestCase#enable_sentiment_analysis}
    */
    readonly enableSentimentAnalysis?: boolean | cdktf.IResolvable;
    /**
    * Parameters that need to be injected into the conversation during intent detection.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.0/docs/resources/dialogflow_cx_test_case#injected_parameters DialogflowCxTestCase#injected_parameters}
    */
    readonly injectedParameters?: string;
    /**
    * If webhooks should be allowed to trigger in response to the user utterance. Often if parameters are injected, webhooks should not be enabled.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.0/docs/resources/dialogflow_cx_test_case#is_webhook_enabled DialogflowCxTestCase#is_webhook_enabled}
    */
    readonly isWebhookEnabled?: boolean | cdktf.IResolvable;
    /**
    * input block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.0/docs/resources/dialogflow_cx_test_case#input DialogflowCxTestCase#input}
    */
    readonly input?: DialogflowCxTestCaseTestCaseConversationTurnsUserInputInput;
}
export declare function dialogflowCxTestCaseTestCaseConversationTurnsUserInputToTerraform(struct?: DialogflowCxTestCaseTestCaseConversationTurnsUserInputOutputReference | DialogflowCxTestCaseTestCaseConversationTurnsUserInput): any;
export declare function dialogflowCxTestCaseTestCaseConversationTurnsUserInputToHclTerraform(struct?: DialogflowCxTestCaseTestCaseConversationTurnsUserInputOutputReference | DialogflowCxTestCaseTestCaseConversationTurnsUserInput): any;
export declare class DialogflowCxTestCaseTestCaseConversationTurnsUserInputOutputReference 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(): DialogflowCxTestCaseTestCaseConversationTurnsUserInput | undefined;
    set internalValue(value: DialogflowCxTestCaseTestCaseConversationTurnsUserInput | undefined);
    private _enableSentimentAnalysis?;
    get enableSentimentAnalysis(): boolean | cdktf.IResolvable;
    set enableSentimentAnalysis(value: boolean | cdktf.IResolvable);
    resetEnableSentimentAnalysis(): void;
    get enableSentimentAnalysisInput(): boolean | cdktf.IResolvable | undefined;
    private _injectedParameters?;
    get injectedParameters(): string;
    set injectedParameters(value: string);
    resetInjectedParameters(): void;
    get injectedParametersInput(): string | undefined;
    private _isWebhookEnabled?;
    get isWebhookEnabled(): boolean | cdktf.IResolvable;
    set isWebhookEnabled(value: boolean | cdktf.IResolvable);
    resetIsWebhookEnabled(): void;
    get isWebhookEnabledInput(): boolean | cdktf.IResolvable | undefined;
    private _input;
    get input(): DialogflowCxTestCaseTestCaseConversationTurnsUserInputInputOutputReference;
    putInput(value: DialogflowCxTestCaseTestCaseConversationTurnsUserInputInput): void;
    resetInput(): void;
    get inputInput(): DialogflowCxTestCaseTestCaseConversationTurnsUserInputInput | undefined;
}
export interface DialogflowCxTestCaseTestCaseConversationTurnsVirtualAgentOutputCurrentPage {
    /**
    * The unique identifier of the page.
    * Format: projects/<Project ID>/locations/<Location ID>/agents/<Agent ID>/flows/<Flow ID>/pages/<Page ID>.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.0/docs/resources/dialogflow_cx_test_case#name DialogflowCxTestCase#name}
    */
    readonly name?: string;
}
export declare function dialogflowCxTestCaseTestCaseConversationTurnsVirtualAgentOutputCurrentPageToTerraform(struct?: DialogflowCxTestCaseTestCaseConversationTurnsVirtualAgentOutputCurrentPageOutputReference | DialogflowCxTestCaseTestCaseConversationTurnsVirtualAgentOutputCurrentPage): any;
export declare function dialogflowCxTestCaseTestCaseConversationTurnsVirtualAgentOutputCurrentPageToHclTerraform(struct?: DialogflowCxTestCaseTestCaseConversationTurnsVirtualAgentOutputCurrentPageOutputReference | DialogflowCxTestCaseTestCaseConversationTurnsVirtualAgentOutputCurrentPage): any;
export declare class DialogflowCxTestCaseTestCaseConversationTurnsVirtualAgentOutputCurrentPageOutputReference 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(): DialogflowCxTestCaseTestCaseConversationTurnsVirtualAgentOutputCurrentPage | undefined;
    set internalValue(value: DialogflowCxTestCaseTestCaseConversationTurnsVirtualAgentOutputCurrentPage | undefined);
    get displayName(): string;
    private _name?;
    get name(): string;
    set name(value: string);
    resetName(): void;
    get nameInput(): string | undefined;
}
export interface DialogflowCxTestCaseTestCaseConversationTurnsVirtualAgentOutputTextResponses {
    /**
    * A collection of text responses.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.0/docs/resources/dialogflow_cx_test_case#text DialogflowCxTestCase#text}
    */
    readonly text?: string[];
}
export declare function dialogflowCxTestCaseTestCaseConversationTurnsVirtualAgentOutputTextResponsesToTerraform(struct?: DialogflowCxTestCaseTestCaseConversationTurnsVirtualAgentOutputTextResponses | cdktf.IResolvable): any;
export declare function dialogflowCxTestCaseTestCaseConversationTurnsVirtualAgentOutputTextResponsesToHclTerraform(struct?: DialogflowCxTestCaseTestCaseConversationTurnsVirtualAgentOutputTextResponses | cdktf.IResolvable): any;
export declare class DialogflowCxTestCaseTestCaseConversationTurnsVirtualAgentOutputTextResponsesOutputReference 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(): DialogflowCxTestCaseTestCaseConversationTurnsVirtualAgentOutputTextResponses | cdktf.IResolvable | undefined;
    set internalValue(value: DialogflowCxTestCaseTestCaseConversationTurnsVirtualAgentOutputTextResponses | cdktf.IResolvable | undefined);
    private _text?;
    get text(): string[];
    set text(value: string[]);
    resetText(): void;
    get textInput(): string[] | undefined;
}
export declare class DialogflowCxTestCaseTestCaseConversationTurnsVirtualAgentOutputTextResponsesList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    internalValue?: DialogflowCxTestCaseTestCaseConversationTurnsVirtualAgentOutputTextResponses[] | 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): DialogflowCxTestCaseTestCaseConversationTurnsVirtualAgentOutputTextResponsesOutputReference;
}
export interface DialogflowCxTestCaseTestCaseConversationTurnsVirtualAgentOutputTriggeredIntent {
    /**
    * The unique identifier of the intent.
    * Format: projects/<Project ID>/locations/<Location ID>/agents/<Agent ID>/intents/<Intent ID>.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.0/docs/resources/dialogflow_cx_test_case#name DialogflowCxTestCase#name}
    */
    readonly name?: string;
}
export declare function dialogflowCxTestCaseTestCaseConversationTurnsVirtualAgentOutputTriggeredIntentToTerraform(struct?: DialogflowCxTestCaseTestCaseConversationTurnsVirtualAgentOutputTriggeredIntentOutputReference | DialogflowCxTestCaseTestCaseConversationTurnsVirtualAgentOutputTriggeredIntent): any;
export declare function dialogflowCxTestCaseTestCaseConversationTurnsVirtualAgentOutputTriggeredIntentToHclTerraform(struct?: DialogflowCxTestCaseTestCaseConversationTurnsVirtualAgentOutputTriggeredIntentOutputReference | DialogflowCxTestCaseTestCaseConversationTurnsVirtualAgentOutputTriggeredIntent): any;
export declare class DialogflowCxTestCaseTestCaseConversationTurnsVirtualAgentOutputTriggeredIntentOutputReference 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(): DialogflowCxTestCaseTestCaseConversationTurnsVirtualAgentOutputTriggeredIntent | undefined;
    set internalValue(value: DialogflowCxTestCaseTestCaseConversationTurnsVirtualAgentOutputTriggeredIntent | undefined);
    get displayName(): string;
    private _name?;
    get name(): string;
    set name(value: string);
    resetName(): void;
    get nameInput(): string | undefined;
}
export interface DialogflowCxTestCaseTestCaseConversationTurnsVirtualAgentOutput {
    /**
    * The session parameters available to the bot at this point.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.0/docs/resources/dialogflow_cx_test_case#session_parameters DialogflowCxTestCase#session_parameters}
    */
    readonly sessionParameters?: string;
    /**
    * current_page block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.0/docs/resources/dialogflow_cx_test_case#current_page DialogflowCxTestCase#current_page}
    */
    readonly currentPage?: DialogflowCxTestCaseTestCaseConversationTurnsVirtualAgentOutputCurrentPage;
    /**
    * text_responses block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.0/docs/resources/dialogflow_cx_test_case#text_responses DialogflowCxTestCase#text_responses}
    */
    readonly textResponses?: DialogflowCxTestCaseTestCaseConversationTurnsVirtualAgentOutputTextResponses[] | cdktf.IResolvable;
    /**
    * triggered_intent block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.0/docs/resources/dialogflow_cx_test_case#triggered_intent DialogflowCxTestCase#triggered_intent}
    */
    readonly triggeredIntent?: DialogflowCxTestCaseTestCaseConversationTurnsVirtualAgentOutputTriggeredIntent;
}
export declare function dialogflowCxTestCaseTestCaseConversationTurnsVirtualAgentOutputToTerraform(struct?: DialogflowCxTestCaseTestCaseConversationTurnsVirtualAgentOutputOutputReference | DialogflowCxTestCaseTestCaseConversationTurnsVirtualAgentOutput): any;
export declare function dialogflowCxTestCaseTestCaseConversationTurnsVirtualAgentOutputToHclTerraform(struct?: DialogflowCxTestCaseTestCaseConversationTurnsVirtualAgentOutputOutputReference | DialogflowCxTestCaseTestCaseConversationTurnsVirtualAgentOutput): any;
export declare class DialogflowCxTestCaseTestCaseConversationTurnsVirtualAgentOutputOutputReference 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(): DialogflowCxTestCaseTestCaseConversationTurnsVirtualAgentOutput | undefined;
    set internalValue(value: DialogflowCxTestCaseTestCaseConversationTurnsVirtualAgentOutput | undefined);
    private _sessionParameters?;
    get sessionParameters(): string;
    set sessionParameters(value: string);
    resetSessionParameters(): void;
    get sessionParametersInput(): string | undefined;
    private _currentPage;
    get currentPage(): DialogflowCxTestCaseTestCaseConversationTurnsVirtualAgentOutputCurrentPageOutputReference;
    putCurrentPage(value: DialogflowCxTestCaseTestCaseConversationTurnsVirtualAgentOutputCurrentPage): void;
    resetCurrentPage(): void;
    get currentPageInput(): DialogflowCxTestCaseTestCaseConversationTurnsVirtualAgentOutputCurrentPage | undefined;
    private _textResponses;
    get textResponses(): DialogflowCxTestCaseTestCaseConversationTurnsVirtualAgentOutputTextResponsesList;
    putTextResponses(value: DialogflowCxTestCaseTestCaseConversationTurnsVirtualAgentOutputTextResponses[] | cdktf.IResolvable): void;
    resetTextResponses(): void;
    get textResponsesInput(): cdktf.IResolvable | DialogflowCxTestCaseTestCaseConversationTurnsVirtualAgentOutputTextResponses[] | undefined;
    private _triggeredIntent;
    get triggeredIntent(): DialogflowCxTestCaseTestCaseConversationTurnsVirtualAgentOutputTriggeredIntentOutputReference;
    putTriggeredIntent(value: DialogflowCxTestCaseTestCaseConversationTurnsVirtualAgentOutputTriggeredIntent): void;
    resetTriggeredIntent(): void;
    get triggeredIntentInput(): DialogflowCxTestCaseTestCaseConversationTurnsVirtualAgentOutputTriggeredIntent | undefined;
}
export interface DialogflowCxTestCaseTestCaseConversationTurns {
    /**
    * user_input block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.0/docs/resources/dialogflow_cx_test_case#user_input DialogflowCxTestCase#user_input}
    */
    readonly userInput?: DialogflowCxTestCaseTestCaseConversationTurnsUserInput;
    /**
    * virtual_agent_output block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.0/docs/resources/dialogflow_cx_test_case#virtual_agent_output DialogflowCxTestCase#virtual_agent_output}
    */
    readonly virtualAgentOutput?: DialogflowCxTestCaseTestCaseConversationTurnsVirtualAgentOutput;
}
export declare function dialogflowCxTestCaseTestCaseConversationTurnsToTerraform(struct?: DialogflowCxTestCaseTestCaseConversationTurns | cdktf.IResolvable): any;
export declare function dialogflowCxTestCaseTestCaseConversationTurnsToHclTerraform(struct?: DialogflowCxTestCaseTestCaseConversationTurns | cdktf.IResolvable): any;
export declare class DialogflowCxTestCaseTestCaseConversationTurnsOutputReference 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(): DialogflowCxTestCaseTestCaseConversationTurns | cdktf.IResolvable | undefined;
    set internalValue(value: DialogflowCxTestCaseTestCaseConversationTurns | cdktf.IResolvable | undefined);
    private _userInput;
    get userInput(): DialogflowCxTestCaseTestCaseConversationTurnsUserInputOutputReference;
    putUserInput(value: DialogflowCxTestCaseTestCaseConversationTurnsUserInput): void;
    resetUserInput(): void;
    get userInputInput(): DialogflowCxTestCaseTestCaseConversationTurnsUserInput | undefined;
    private _virtualAgentOutput;
    get virtualAgentOutput(): DialogflowCxTestCaseTestCaseConversationTurnsVirtualAgentOutputOutputReference;
    putVirtualAgentOutput(value: DialogflowCxTestCaseTestCaseConversationTurnsVirtualAgentOutput): void;
    resetVirtualAgentOutput(): void;
    get virtualAgentOutputInput(): DialogflowCxTestCaseTestCaseConversationTurnsVirtualAgentOutput | undefined;
}
export declare class DialogflowCxTestCaseTestCaseConversationTurnsList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    internalValue?: DialogflowCxTestCaseTestCaseConversationTurns[] | 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): DialogflowCxTestCaseTestCaseConversationTurnsOutputReference;
}
export interface DialogflowCxTestCaseTestConfig {
    /**
    * Flow name to start the test case with.
    * Format: projects/<Project ID>/locations/<Location ID>/agents/<Agent ID>/flows/<Flow ID>.
    * Only one of flow and page should be set to indicate the starting point of the test case. If neither is set, the test case will start with start page on the default start flow.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.0/docs/resources/dialogflow_cx_test_case#flow DialogflowCxTestCase#flow}
    */
    readonly flow?: string;
    /**
    * The page to start the test case with.
    * Format: projects/<Project ID>/locations/<Location ID>/agents/<Agent ID>/flows/<Flow ID>/pages/<Page ID>.
    * Only one of flow and page should be set to indicate the starting point of the test case. If neither is set, the test case will start with start page on the default start flow.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.0/docs/resources/dialogflow_cx_test_case#page DialogflowCxTestCase#page}
    */
    readonly page?: string;
    /**
    * Session parameters to be compared when calculating differences.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.0/docs/resources/dialogflow_cx_test_case#tracking_parameters DialogflowCxTestCase#tracking_parameters}
    */
    readonly trackingParameters?: string[];
}
export declare function dialogflowCxTestCaseTestConfigToTerraform(struct?: DialogflowCxTestCaseTestConfigOutputReference | DialogflowCxTestCaseTestConfig): any;
export declare function dialogflowCxTestCaseTestConfigToHclTerraform(struct?: DialogflowCxTestCaseTestConfigOutputReference | DialogflowCxTestCaseTestConfig): any;
export declare class DialogflowCxTestCaseTestConfigOutputReference 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(): DialogflowCxTestCaseTestConfig | undefined;
    set internalValue(value: DialogflowCxTestCaseTestConfig | undefined);
    private _flow?;
    get flow(): string;
    set flow(value: string);
    resetFlow(): void;
    get flowInput(): string | undefined;
    private _page?;
    get page(): string;
    set page(value: string);
    resetPage(): void;
    get pageInput(): string | undefined;
    private _trackingParameters?;
    get trackingParameters(): string[];
    set trackingParameters(value: string[]);
    resetTrackingParameters(): void;
    get trackingParametersInput(): string[] | undefined;
}
export interface DialogflowCxTestCaseTimeouts {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.0/docs/resources/dialogflow_cx_test_case#create DialogflowCxTestCase#create}
    */
    readonly create?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.0/docs/resources/dialogflow_cx_test_case#delete DialogflowCxTestCase#delete}
    */
    readonly delete?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.0/docs/resources/dialogflow_cx_test_case#update DialogflowCxTestCase#update}
    */
    readonly update?: string;
}
export declare function dialogflowCxTestCaseTimeoutsToTerraform(struct?: DialogflowCxTestCaseTimeouts | cdktf.IResolvable): any;
export declare function dialogflowCxTestCaseTimeoutsToHclTerraform(struct?: DialogflowCxTestCaseTimeouts | cdktf.IResolvable): any;
export declare class DialogflowCxTestCaseTimeoutsOutputReference 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(): DialogflowCxTestCaseTimeouts | cdktf.IResolvable | undefined;
    set internalValue(value: DialogflowCxTestCaseTimeouts | 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/5.43.0/docs/resources/dialogflow_cx_test_case google_dialogflow_cx_test_case}
*/
export declare class DialogflowCxTestCase extends cdktf.TerraformResource {
    static readonly tfResourceType = "google_dialogflow_cx_test_case";
    /**
    * Generates CDKTF code for importing a DialogflowCxTestCase 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 DialogflowCxTestCase to import
    * @param importFromId The id of the existing DialogflowCxTestCase that should be imported. Refer to the {@link https://registry.terraform.io/providers/hashicorp/google/5.43.0/docs/resources/dialogflow_cx_test_case#import import section} in the documentation of this resource for the id to use
    * @param provider? Optional instance of the provider where the DialogflowCxTestCase 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/5.43.0/docs/resources/dialogflow_cx_test_case google_dialogflow_cx_test_case} 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 DialogflowCxTestCaseConfig
    */
    constructor(scope: Construct, id: string, config: DialogflowCxTestCaseConfig);
    get creationTime(): string;
    private _displayName?;
    get displayName(): string;
    set displayName(value: string);
    get displayNameInput(): string | undefined;
    private _id?;
    get id(): string;
    set id(value: string);
    resetId(): void;
    get idInput(): string | undefined;
    private _lastTestResult;
    get lastTestResult(): DialogflowCxTestCaseLastTestResultList;
    get name(): string;
    private _notes?;
    get notes(): string;
    set notes(value: string);
    resetNotes(): void;
    get notesInput(): string | undefined;
    private _parent?;
    get parent(): string;
    set parent(value: string);
    resetParent(): void;
    get parentInput(): string | undefined;
    private _tags?;
    get tags(): string[];
    set tags(value: string[]);
    resetTags(): void;
    get tagsInput(): string[] | undefined;
    private _testCaseConversationTurns;
    get testCaseConversationTurns(): DialogflowCxTestCaseTestCaseConversationTurnsList;
    putTestCaseConversationTurns(value: DialogflowCxTestCaseTestCaseConversationTurns[] | cdktf.IResolvable): void;
    resetTestCaseConversationTurns(): void;
    get testCaseConversationTurnsInput(): cdktf.IResolvable | DialogflowCxTestCaseTestCaseConversationTurns[] | undefined;
    private _testConfig;
    get testConfig(): DialogflowCxTestCaseTestConfigOutputReference;
    putTestConfig(value: DialogflowCxTestCaseTestConfig): void;
    resetTestConfig(): void;
    get testConfigInput(): DialogflowCxTestCaseTestConfig | undefined;
    private _timeouts;
    get timeouts(): DialogflowCxTestCaseTimeoutsOutputReference;
    putTimeouts(value: DialogflowCxTestCaseTimeouts): void;
    resetTimeouts(): void;
    get timeoutsInput(): cdktf.IResolvable | DialogflowCxTestCaseTimeouts | undefined;
    protected synthesizeAttributes(): {
        [name: string]: any;
    };
    protected synthesizeHclAttributes(): {
        [name: string]: any;
    };
}
