import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface OutboundContactListConfig extends cdktf.TerraformMetaArguments { /** * Attempt Limit for this ContactList. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_contact_list#attempt_limit_id OutboundContactList#attempt_limit_id} */ readonly attemptLimitId?: string; /** * Indicates if automatic time zone mapping is to be used for this ContactList. Changing the automatic_time_zone_mappings attribute will cause the outboundcontact_list object to be dropped and recreated with a new ID * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_contact_list#automatic_time_zone_mapping OutboundContactList#automatic_time_zone_mapping} */ readonly automaticTimeZoneMapping?: boolean | cdktf.IResolvable; /** * The names of the contact data columns. Changing the column_names attribute will cause the outbound_contact_list object to be dropped and recreated with a new ID * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_contact_list#column_names OutboundContactList#column_names} */ readonly columnNames: string[]; /** * The path to a CSV file containing contacts to import into the contact list. When updated, existing contacts will be removed and replaced with contacts from the new file. If not specified, an empty contact list will be created. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_contact_list#contacts_filepath OutboundContactList#contacts_filepath} */ readonly contactsFilepath?: string; /** * The name of the column in the CSV file that contains the contact's unique contact id. If updated, the contact list is dropped and recreated with a new ID * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_contact_list#contacts_id_name OutboundContactList#contacts_id_name} */ readonly contactsIdName?: string; /** * The division this entity belongs to. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_contact_list#division_id OutboundContactList#division_id} */ readonly divisionId?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_contact_list#id OutboundContactList#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; /** * The name for the contact list. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_contact_list#name OutboundContactList#name} */ readonly name: string; /** * The values in the previewModeColumnName column that indicate a contact should always be dialed in preview mode. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_contact_list#preview_mode_accepted_values OutboundContactList#preview_mode_accepted_values} */ readonly previewModeAcceptedValues?: string[]; /** * A column to check if a contact should always be dialed in preview mode. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_contact_list#preview_mode_column_name OutboundContactList#preview_mode_column_name} */ readonly previewModeColumnName?: string; /** * Indicates if leading and trailing whitespace will be trimmed when importing a contactlist CSV file * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_contact_list#trim_whitespace OutboundContactList#trim_whitespace} */ readonly trimWhitespace?: boolean | cdktf.IResolvable; /** * The name of contact list column containing the zip code for use with automatic time zone mapping. Only allowed if 'automaticTimeZoneMapping' is set to true. Changing the zip_code_column_name attribute will cause the outboundcontact_list object to be dropped and recreated with a new ID * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_contact_list#zip_code_column_name OutboundContactList#zip_code_column_name} */ readonly zipCodeColumnName?: string; /** * column_data_type_specifications block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_contact_list#column_data_type_specifications OutboundContactList#column_data_type_specifications} */ readonly columnDataTypeSpecifications?: OutboundContactListColumnDataTypeSpecifications[] | cdktf.IResolvable; /** * email_columns block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_contact_list#email_columns OutboundContactList#email_columns} */ readonly emailColumns?: OutboundContactListEmailColumns[] | cdktf.IResolvable; /** * phone_columns block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_contact_list#phone_columns OutboundContactList#phone_columns} */ readonly phoneColumns?: OutboundContactListPhoneColumns[] | cdktf.IResolvable; } export interface OutboundContactListColumnDataTypeSpecifications { /** * The data type of the column selected for dynamic queueing (TEXT, NUMERIC or TIMESTAMP) * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_contact_list#column_data_type OutboundContactList#column_data_type} */ readonly columnDataType?: string; /** * The column name of a column selected for dynamic queueing. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_contact_list#column_name OutboundContactList#column_name} */ readonly columnName: string; /** * The maximum length of the numeric column selected for dynamic queueing. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_contact_list#max OutboundContactList#max} */ readonly max?: number; /** * The maximum length of the text column selected for dynamic queueing. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_contact_list#max_length OutboundContactList#max_length} */ readonly maxLength?: number; /** * The minimum length of the numeric column selected for dynamic queueing. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_contact_list#min OutboundContactList#min} */ readonly min?: number; } export declare function outboundContactListColumnDataTypeSpecificationsToTerraform(struct?: OutboundContactListColumnDataTypeSpecifications | cdktf.IResolvable): any; export declare function outboundContactListColumnDataTypeSpecificationsToHclTerraform(struct?: OutboundContactListColumnDataTypeSpecifications | cdktf.IResolvable): any; export declare class OutboundContactListColumnDataTypeSpecificationsOutputReference 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(): OutboundContactListColumnDataTypeSpecifications | cdktf.IResolvable | undefined; set internalValue(value: OutboundContactListColumnDataTypeSpecifications | cdktf.IResolvable | undefined); private _columnDataType?; get columnDataType(): string; set columnDataType(value: string); resetColumnDataType(): void; get columnDataTypeInput(): string; private _columnName?; get columnName(): string; set columnName(value: string); get columnNameInput(): string; private _max?; get max(): number; set max(value: number); resetMax(): void; get maxInput(): number; private _maxLength?; get maxLength(): number; set maxLength(value: number); resetMaxLength(): void; get maxLengthInput(): number; private _min?; get min(): number; set min(value: number); resetMin(): void; get minInput(): number; } export declare class OutboundContactListColumnDataTypeSpecificationsList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: OutboundContactListColumnDataTypeSpecifications[] | 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): OutboundContactListColumnDataTypeSpecificationsOutputReference; } export interface OutboundContactListEmailColumns { /** * The name of the email column. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_contact_list#column_name OutboundContactList#column_name} */ readonly columnName: string; /** * A column that indicates the timezone to use for a given contact when checking contactable times. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_contact_list#contactable_time_column OutboundContactList#contactable_time_column} */ readonly contactableTimeColumn?: string; /** * Indicates the type of the email column. For example, 'work' or 'personal'. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_contact_list#type OutboundContactList#type} */ readonly type: string; } export declare function outboundContactListEmailColumnsToTerraform(struct?: OutboundContactListEmailColumns | cdktf.IResolvable): any; export declare function outboundContactListEmailColumnsToHclTerraform(struct?: OutboundContactListEmailColumns | cdktf.IResolvable): any; export declare class OutboundContactListEmailColumnsOutputReference 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(): OutboundContactListEmailColumns | cdktf.IResolvable | undefined; set internalValue(value: OutboundContactListEmailColumns | cdktf.IResolvable | undefined); private _columnName?; get columnName(): string; set columnName(value: string); get columnNameInput(): string; private _contactableTimeColumn?; get contactableTimeColumn(): string; set contactableTimeColumn(value: string); resetContactableTimeColumn(): void; get contactableTimeColumnInput(): string; private _type?; get type(): string; set type(value: string); get typeInput(): string; } export declare class OutboundContactListEmailColumnsList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: OutboundContactListEmailColumns[] | 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): OutboundContactListEmailColumnsOutputReference; } export interface OutboundContactListPhoneColumns { /** * A column that indicates the timezone to use for a given contact when checking callable times. Not allowed if 'automaticTimeZoneMapping' is set to true. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_contact_list#callable_time_column OutboundContactList#callable_time_column} */ readonly callableTimeColumn?: string; /** * The name of the phone column. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_contact_list#column_name OutboundContactList#column_name} */ readonly columnName: string; /** * Indicates the type of the phone column. For example, 'cell' or 'home'. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_contact_list#type OutboundContactList#type} */ readonly type: string; } export declare function outboundContactListPhoneColumnsToTerraform(struct?: OutboundContactListPhoneColumns | cdktf.IResolvable): any; export declare function outboundContactListPhoneColumnsToHclTerraform(struct?: OutboundContactListPhoneColumns | cdktf.IResolvable): any; export declare class OutboundContactListPhoneColumnsOutputReference 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(): OutboundContactListPhoneColumns | cdktf.IResolvable | undefined; set internalValue(value: OutboundContactListPhoneColumns | cdktf.IResolvable | undefined); private _callableTimeColumn?; get callableTimeColumn(): string; set callableTimeColumn(value: string); resetCallableTimeColumn(): void; get callableTimeColumnInput(): string; private _columnName?; get columnName(): string; set columnName(value: string); get columnNameInput(): string; private _type?; get type(): string; set type(value: string); get typeInput(): string; } export declare class OutboundContactListPhoneColumnsList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: OutboundContactListPhoneColumns[] | 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): OutboundContactListPhoneColumnsOutputReference; } /** * Represents a {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_contact_list genesyscloud_outbound_contact_list} */ export declare class OutboundContactList extends cdktf.TerraformResource { static readonly tfResourceType = "genesyscloud_outbound_contact_list"; /** * Generates CDKTF code for importing a OutboundContactList resource upon running "cdktf plan " * @param scope The scope in which to define this construct * @param importToId The construct id used in the generated config for the OutboundContactList to import * @param importFromId The id of the existing OutboundContactList that should be imported. Refer to the {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_contact_list#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the OutboundContactList to import is found */ static generateConfigForImport(scope: Construct, importToId: string, importFromId: string, provider?: cdktf.TerraformProvider): any; /** * Create a new {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_contact_list genesyscloud_outbound_contact_list} 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 OutboundContactListConfig */ constructor(scope: Construct, id: string, config: OutboundContactListConfig); private _attemptLimitId?; get attemptLimitId(): string; set attemptLimitId(value: string); resetAttemptLimitId(): void; get attemptLimitIdInput(): string; private _automaticTimeZoneMapping?; get automaticTimeZoneMapping(): boolean | cdktf.IResolvable; set automaticTimeZoneMapping(value: boolean | cdktf.IResolvable); resetAutomaticTimeZoneMapping(): void; get automaticTimeZoneMappingInput(): any; private _columnNames?; get columnNames(): string[]; set columnNames(value: string[]); get columnNamesInput(): string[]; get contactsFileContentHash(): any; private _contactsFilepath?; get contactsFilepath(): string; set contactsFilepath(value: string); resetContactsFilepath(): void; get contactsFilepathInput(): string; private _contactsIdName?; get contactsIdName(): string; set contactsIdName(value: string); resetContactsIdName(): void; get contactsIdNameInput(): string; get contactsRecordCount(): any; private _divisionId?; get divisionId(): string; set divisionId(value: string); resetDivisionId(): void; get divisionIdInput(): string; private _id?; get id(): string; set id(value: string); resetId(): void; get idInput(): string; private _name?; get name(): string; set name(value: string); get nameInput(): string; private _previewModeAcceptedValues?; get previewModeAcceptedValues(): string[]; set previewModeAcceptedValues(value: string[]); resetPreviewModeAcceptedValues(): void; get previewModeAcceptedValuesInput(): string[]; private _previewModeColumnName?; get previewModeColumnName(): string; set previewModeColumnName(value: string); resetPreviewModeColumnName(): void; get previewModeColumnNameInput(): string; private _trimWhitespace?; get trimWhitespace(): boolean | cdktf.IResolvable; set trimWhitespace(value: boolean | cdktf.IResolvable); resetTrimWhitespace(): void; get trimWhitespaceInput(): any; private _zipCodeColumnName?; get zipCodeColumnName(): string; set zipCodeColumnName(value: string); resetZipCodeColumnName(): void; get zipCodeColumnNameInput(): string; private _columnDataTypeSpecifications; get columnDataTypeSpecifications(): OutboundContactListColumnDataTypeSpecificationsList; putColumnDataTypeSpecifications(value: OutboundContactListColumnDataTypeSpecifications[] | cdktf.IResolvable): void; resetColumnDataTypeSpecifications(): void; get columnDataTypeSpecificationsInput(): any; private _emailColumns; get emailColumns(): OutboundContactListEmailColumnsList; putEmailColumns(value: OutboundContactListEmailColumns[] | cdktf.IResolvable): void; resetEmailColumns(): void; get emailColumnsInput(): any; private _phoneColumns; get phoneColumns(): OutboundContactListPhoneColumnsList; putPhoneColumns(value: OutboundContactListPhoneColumns[] | cdktf.IResolvable): void; resetPhoneColumns(): void; get phoneColumnsInput(): any; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }