import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface OutboundSettingsConfig extends cdktf.TerraformMetaArguments { /** * The number of seconds used to determine if a call is abandoned. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_settings#abandon_seconds OutboundSettings#abandon_seconds} */ readonly abandonSeconds?: number; /** * The denominator to be used in determining the compliance abandon rate.Valid values: ALL_CALLS, CALLS_THAT_REACHED_QUEUE. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_settings#compliance_abandon_rate_denominator OutboundSettings#compliance_abandon_rate_denominator} */ readonly complianceAbandonRateDenominator?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_settings#id OutboundSettings#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 maximum number of calls that can be placed per agent on any campaign. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_settings#max_calls_per_agent OutboundSettings#max_calls_per_agent} */ readonly maxCallsPerAgent?: number; /** * The maximum percentage of lines that should be used for Outbound, expressed as a decimal in the range [0.0, 1.0]. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_settings#max_line_utilization OutboundSettings#max_line_utilization} */ readonly maxLineUtilization?: number; /** * Whether or not to reschedule time-zone blocked contacts. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_settings#reschedule_time_zone_skipped_contacts OutboundSettings#reschedule_time_zone_skipped_contacts} */ readonly rescheduleTimeZoneSkippedContacts?: boolean | cdktf.IResolvable; /** * automatic_time_zone_mapping block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_settings#automatic_time_zone_mapping OutboundSettings#automatic_time_zone_mapping} */ readonly automaticTimeZoneMapping?: OutboundSettingsAutomaticTimeZoneMapping[] | cdktf.IResolvable; } export interface OutboundSettingsAutomaticTimeZoneMappingCallableWindowsMapped { /** * The earliest time to dial a contact. Valid format is HH:mm * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_settings#earliest_callable_time OutboundSettings#earliest_callable_time} */ readonly earliestCallableTime?: string; /** * The latest time to dial a contact. Valid format is HH:mm. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_settings#latest_callable_time OutboundSettings#latest_callable_time} */ readonly latestCallableTime?: string; } export declare function outboundSettingsAutomaticTimeZoneMappingCallableWindowsMappedToTerraform(struct?: OutboundSettingsAutomaticTimeZoneMappingCallableWindowsMappedOutputReference | OutboundSettingsAutomaticTimeZoneMappingCallableWindowsMapped): any; export declare function outboundSettingsAutomaticTimeZoneMappingCallableWindowsMappedToHclTerraform(struct?: OutboundSettingsAutomaticTimeZoneMappingCallableWindowsMappedOutputReference | OutboundSettingsAutomaticTimeZoneMappingCallableWindowsMapped): any; export declare class OutboundSettingsAutomaticTimeZoneMappingCallableWindowsMappedOutputReference 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(): OutboundSettingsAutomaticTimeZoneMappingCallableWindowsMapped | undefined; set internalValue(value: OutboundSettingsAutomaticTimeZoneMappingCallableWindowsMapped | undefined); private _earliestCallableTime?; get earliestCallableTime(): string; set earliestCallableTime(value: string); resetEarliestCallableTime(): void; get earliestCallableTimeInput(): string; private _latestCallableTime?; get latestCallableTime(): string; set latestCallableTime(value: string); resetLatestCallableTime(): void; get latestCallableTimeInput(): string; } export interface OutboundSettingsAutomaticTimeZoneMappingCallableWindowsUnmapped { /** * The earliest time to dial a contact. Valid format is HH:mm. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_settings#earliest_callable_time OutboundSettings#earliest_callable_time} */ readonly earliestCallableTime?: string; /** * The latest time to dial a contact. Valid format is HH:mm. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_settings#latest_callable_time OutboundSettings#latest_callable_time} */ readonly latestCallableTime?: string; /** * The time zone to use for contacts that cannot be mapped. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_settings#time_zone_id OutboundSettings#time_zone_id} */ readonly timeZoneId?: string; } export declare function outboundSettingsAutomaticTimeZoneMappingCallableWindowsUnmappedToTerraform(struct?: OutboundSettingsAutomaticTimeZoneMappingCallableWindowsUnmappedOutputReference | OutboundSettingsAutomaticTimeZoneMappingCallableWindowsUnmapped): any; export declare function outboundSettingsAutomaticTimeZoneMappingCallableWindowsUnmappedToHclTerraform(struct?: OutboundSettingsAutomaticTimeZoneMappingCallableWindowsUnmappedOutputReference | OutboundSettingsAutomaticTimeZoneMappingCallableWindowsUnmapped): any; export declare class OutboundSettingsAutomaticTimeZoneMappingCallableWindowsUnmappedOutputReference 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(): OutboundSettingsAutomaticTimeZoneMappingCallableWindowsUnmapped | undefined; set internalValue(value: OutboundSettingsAutomaticTimeZoneMappingCallableWindowsUnmapped | undefined); private _earliestCallableTime?; get earliestCallableTime(): string; set earliestCallableTime(value: string); resetEarliestCallableTime(): void; get earliestCallableTimeInput(): string; private _latestCallableTime?; get latestCallableTime(): string; set latestCallableTime(value: string); resetLatestCallableTime(): void; get latestCallableTimeInput(): string; private _timeZoneId?; get timeZoneId(): string; set timeZoneId(value: string); resetTimeZoneId(): void; get timeZoneIdInput(): string; } export interface OutboundSettingsAutomaticTimeZoneMappingCallableWindows { /** * mapped block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_settings#mapped OutboundSettings#mapped} */ readonly mapped?: OutboundSettingsAutomaticTimeZoneMappingCallableWindowsMapped; /** * unmapped block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_settings#unmapped OutboundSettings#unmapped} */ readonly unmapped?: OutboundSettingsAutomaticTimeZoneMappingCallableWindowsUnmapped; } export declare function outboundSettingsAutomaticTimeZoneMappingCallableWindowsToTerraform(struct?: OutboundSettingsAutomaticTimeZoneMappingCallableWindowsOutputReference | OutboundSettingsAutomaticTimeZoneMappingCallableWindows): any; export declare function outboundSettingsAutomaticTimeZoneMappingCallableWindowsToHclTerraform(struct?: OutboundSettingsAutomaticTimeZoneMappingCallableWindowsOutputReference | OutboundSettingsAutomaticTimeZoneMappingCallableWindows): any; export declare class OutboundSettingsAutomaticTimeZoneMappingCallableWindowsOutputReference 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(): OutboundSettingsAutomaticTimeZoneMappingCallableWindows | undefined; set internalValue(value: OutboundSettingsAutomaticTimeZoneMappingCallableWindows | undefined); private _mapped; get mapped(): OutboundSettingsAutomaticTimeZoneMappingCallableWindowsMappedOutputReference; putMapped(value: OutboundSettingsAutomaticTimeZoneMappingCallableWindowsMapped): void; resetMapped(): void; get mappedInput(): OutboundSettingsAutomaticTimeZoneMappingCallableWindowsMapped; private _unmapped; get unmapped(): OutboundSettingsAutomaticTimeZoneMappingCallableWindowsUnmappedOutputReference; putUnmapped(value: OutboundSettingsAutomaticTimeZoneMappingCallableWindowsUnmapped): void; resetUnmapped(): void; get unmappedInput(): OutboundSettingsAutomaticTimeZoneMappingCallableWindowsUnmapped; } export interface OutboundSettingsAutomaticTimeZoneMapping { /** * The countries that are supported for automatic time zone mapping. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_settings#supported_countries OutboundSettings#supported_countries} */ readonly supportedCountries?: string[]; /** * callable_windows block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_settings#callable_windows OutboundSettings#callable_windows} */ readonly callableWindows?: OutboundSettingsAutomaticTimeZoneMappingCallableWindows; } export declare function outboundSettingsAutomaticTimeZoneMappingToTerraform(struct?: OutboundSettingsAutomaticTimeZoneMapping | cdktf.IResolvable): any; export declare function outboundSettingsAutomaticTimeZoneMappingToHclTerraform(struct?: OutboundSettingsAutomaticTimeZoneMapping | cdktf.IResolvable): any; export declare class OutboundSettingsAutomaticTimeZoneMappingOutputReference 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(): OutboundSettingsAutomaticTimeZoneMapping | cdktf.IResolvable | undefined; set internalValue(value: OutboundSettingsAutomaticTimeZoneMapping | cdktf.IResolvable | undefined); private _supportedCountries?; get supportedCountries(): string[]; set supportedCountries(value: string[]); resetSupportedCountries(): void; get supportedCountriesInput(): string[]; private _callableWindows; get callableWindows(): OutboundSettingsAutomaticTimeZoneMappingCallableWindowsOutputReference; putCallableWindows(value: OutboundSettingsAutomaticTimeZoneMappingCallableWindows): void; resetCallableWindows(): void; get callableWindowsInput(): OutboundSettingsAutomaticTimeZoneMappingCallableWindows; } export declare class OutboundSettingsAutomaticTimeZoneMappingList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: OutboundSettingsAutomaticTimeZoneMapping[] | 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): OutboundSettingsAutomaticTimeZoneMappingOutputReference; } /** * Represents a {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_settings genesyscloud_outbound_settings} */ export declare class OutboundSettings extends cdktf.TerraformResource { static readonly tfResourceType = "genesyscloud_outbound_settings"; /** * Generates CDKTF code for importing a OutboundSettings 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 OutboundSettings to import * @param importFromId The id of the existing OutboundSettings that should be imported. Refer to the {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_settings#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the OutboundSettings 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_settings genesyscloud_outbound_settings} 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 OutboundSettingsConfig = {} */ constructor(scope: Construct, id: string, config?: OutboundSettingsConfig); private _abandonSeconds?; get abandonSeconds(): number; set abandonSeconds(value: number); resetAbandonSeconds(): void; get abandonSecondsInput(): number; private _complianceAbandonRateDenominator?; get complianceAbandonRateDenominator(): string; set complianceAbandonRateDenominator(value: string); resetComplianceAbandonRateDenominator(): void; get complianceAbandonRateDenominatorInput(): string; private _id?; get id(): string; set id(value: string); resetId(): void; get idInput(): string; private _maxCallsPerAgent?; get maxCallsPerAgent(): number; set maxCallsPerAgent(value: number); resetMaxCallsPerAgent(): void; get maxCallsPerAgentInput(): number; private _maxLineUtilization?; get maxLineUtilization(): number; set maxLineUtilization(value: number); resetMaxLineUtilization(): void; get maxLineUtilizationInput(): number; private _rescheduleTimeZoneSkippedContacts?; get rescheduleTimeZoneSkippedContacts(): boolean | cdktf.IResolvable; set rescheduleTimeZoneSkippedContacts(value: boolean | cdktf.IResolvable); resetRescheduleTimeZoneSkippedContacts(): void; get rescheduleTimeZoneSkippedContactsInput(): any; private _automaticTimeZoneMapping; get automaticTimeZoneMapping(): OutboundSettingsAutomaticTimeZoneMappingList; putAutomaticTimeZoneMapping(value: OutboundSettingsAutomaticTimeZoneMapping[] | cdktf.IResolvable): void; resetAutomaticTimeZoneMapping(): void; get automaticTimeZoneMappingInput(): any; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }