import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface OutboundAttemptLimitConfig extends cdktf.TerraformMetaArguments { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_attempt_limit#id OutboundAttemptLimit#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 times a contact can be called within the resetPeriod. Required if maxAttemptsPerNumber is not defined. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_attempt_limit#max_attempts_per_contact OutboundAttemptLimit#max_attempts_per_contact} */ readonly maxAttemptsPerContact?: number; /** * The maximum number of times a phone number can be called within the resetPeriod. Required if maxAttemptsPerContact is not defined. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_attempt_limit#max_attempts_per_number OutboundAttemptLimit#max_attempts_per_number} */ readonly maxAttemptsPerNumber?: number; /** * The name for the attempt limit. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_attempt_limit#name OutboundAttemptLimit#name} */ readonly name?: string; /** * After how long the number of attempts will be set back to 0. Defaults to `NEVER`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_attempt_limit#reset_period OutboundAttemptLimit#reset_period} */ readonly resetPeriod?: string; /** * If the resetPeriod is TODAY, this specifies the timezone in which TODAY occurs. Required if the resetPeriod is TODAY. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_attempt_limit#time_zone_id OutboundAttemptLimit#time_zone_id} */ readonly timeZoneId?: string; /** * recall_entries block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_attempt_limit#recall_entries OutboundAttemptLimit#recall_entries} */ readonly recallEntries?: OutboundAttemptLimitRecallEntries; } export interface OutboundAttemptLimitRecallEntriesAnsweringMachine { /** * Number of minutes between attempts. Must be greater than or equal to 5. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_attempt_limit#minutes_between_attempts OutboundAttemptLimit#minutes_between_attempts} */ readonly minutesBetweenAttempts: number; /** * Number of recall attempts. Must be less than max_attempts_per_contact. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_attempt_limit#nbr_attempts OutboundAttemptLimit#nbr_attempts} */ readonly nbrAttempts?: number; } export declare function outboundAttemptLimitRecallEntriesAnsweringMachineToTerraform(struct?: OutboundAttemptLimitRecallEntriesAnsweringMachineOutputReference | OutboundAttemptLimitRecallEntriesAnsweringMachine): any; export declare function outboundAttemptLimitRecallEntriesAnsweringMachineToHclTerraform(struct?: OutboundAttemptLimitRecallEntriesAnsweringMachineOutputReference | OutboundAttemptLimitRecallEntriesAnsweringMachine): any; export declare class OutboundAttemptLimitRecallEntriesAnsweringMachineOutputReference 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(): OutboundAttemptLimitRecallEntriesAnsweringMachine | undefined; set internalValue(value: OutboundAttemptLimitRecallEntriesAnsweringMachine | undefined); private _minutesBetweenAttempts?; get minutesBetweenAttempts(): number; set minutesBetweenAttempts(value: number); get minutesBetweenAttemptsInput(): number; private _nbrAttempts?; get nbrAttempts(): number; set nbrAttempts(value: number); resetNbrAttempts(): void; get nbrAttemptsInput(): number; } export interface OutboundAttemptLimitRecallEntriesBusy { /** * Number of minutes between attempts. Must be greater than or equal to 5. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_attempt_limit#minutes_between_attempts OutboundAttemptLimit#minutes_between_attempts} */ readonly minutesBetweenAttempts: number; /** * Number of recall attempts. Must be less than max_attempts_per_contact. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_attempt_limit#nbr_attempts OutboundAttemptLimit#nbr_attempts} */ readonly nbrAttempts?: number; } export declare function outboundAttemptLimitRecallEntriesBusyToTerraform(struct?: OutboundAttemptLimitRecallEntriesBusyOutputReference | OutboundAttemptLimitRecallEntriesBusy): any; export declare function outboundAttemptLimitRecallEntriesBusyToHclTerraform(struct?: OutboundAttemptLimitRecallEntriesBusyOutputReference | OutboundAttemptLimitRecallEntriesBusy): any; export declare class OutboundAttemptLimitRecallEntriesBusyOutputReference 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(): OutboundAttemptLimitRecallEntriesBusy | undefined; set internalValue(value: OutboundAttemptLimitRecallEntriesBusy | undefined); private _minutesBetweenAttempts?; get minutesBetweenAttempts(): number; set minutesBetweenAttempts(value: number); get minutesBetweenAttemptsInput(): number; private _nbrAttempts?; get nbrAttempts(): number; set nbrAttempts(value: number); resetNbrAttempts(): void; get nbrAttemptsInput(): number; } export interface OutboundAttemptLimitRecallEntriesFax { /** * Number of minutes between attempts. Must be greater than or equal to 5. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_attempt_limit#minutes_between_attempts OutboundAttemptLimit#minutes_between_attempts} */ readonly minutesBetweenAttempts: number; /** * Number of recall attempts. Must be less than max_attempts_per_contact. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_attempt_limit#nbr_attempts OutboundAttemptLimit#nbr_attempts} */ readonly nbrAttempts?: number; } export declare function outboundAttemptLimitRecallEntriesFaxToTerraform(struct?: OutboundAttemptLimitRecallEntriesFaxOutputReference | OutboundAttemptLimitRecallEntriesFax): any; export declare function outboundAttemptLimitRecallEntriesFaxToHclTerraform(struct?: OutboundAttemptLimitRecallEntriesFaxOutputReference | OutboundAttemptLimitRecallEntriesFax): any; export declare class OutboundAttemptLimitRecallEntriesFaxOutputReference 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(): OutboundAttemptLimitRecallEntriesFax | undefined; set internalValue(value: OutboundAttemptLimitRecallEntriesFax | undefined); private _minutesBetweenAttempts?; get minutesBetweenAttempts(): number; set minutesBetweenAttempts(value: number); get minutesBetweenAttemptsInput(): number; private _nbrAttempts?; get nbrAttempts(): number; set nbrAttempts(value: number); resetNbrAttempts(): void; get nbrAttemptsInput(): number; } export interface OutboundAttemptLimitRecallEntriesNoAnswer { /** * Number of minutes between attempts. Must be greater than or equal to 5. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_attempt_limit#minutes_between_attempts OutboundAttemptLimit#minutes_between_attempts} */ readonly minutesBetweenAttempts: number; /** * Number of recall attempts. Must be less than max_attempts_per_contact. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_attempt_limit#nbr_attempts OutboundAttemptLimit#nbr_attempts} */ readonly nbrAttempts?: number; } export declare function outboundAttemptLimitRecallEntriesNoAnswerToTerraform(struct?: OutboundAttemptLimitRecallEntriesNoAnswerOutputReference | OutboundAttemptLimitRecallEntriesNoAnswer): any; export declare function outboundAttemptLimitRecallEntriesNoAnswerToHclTerraform(struct?: OutboundAttemptLimitRecallEntriesNoAnswerOutputReference | OutboundAttemptLimitRecallEntriesNoAnswer): any; export declare class OutboundAttemptLimitRecallEntriesNoAnswerOutputReference 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(): OutboundAttemptLimitRecallEntriesNoAnswer | undefined; set internalValue(value: OutboundAttemptLimitRecallEntriesNoAnswer | undefined); private _minutesBetweenAttempts?; get minutesBetweenAttempts(): number; set minutesBetweenAttempts(value: number); get minutesBetweenAttemptsInput(): number; private _nbrAttempts?; get nbrAttempts(): number; set nbrAttempts(value: number); resetNbrAttempts(): void; get nbrAttemptsInput(): number; } export interface OutboundAttemptLimitRecallEntries { /** * answering_machine block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_attempt_limit#answering_machine OutboundAttemptLimit#answering_machine} */ readonly answeringMachine?: OutboundAttemptLimitRecallEntriesAnsweringMachine; /** * busy block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_attempt_limit#busy OutboundAttemptLimit#busy} */ readonly busy?: OutboundAttemptLimitRecallEntriesBusy; /** * fax block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_attempt_limit#fax OutboundAttemptLimit#fax} */ readonly fax?: OutboundAttemptLimitRecallEntriesFax; /** * no_answer block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_attempt_limit#no_answer OutboundAttemptLimit#no_answer} */ readonly noAnswer?: OutboundAttemptLimitRecallEntriesNoAnswer; } export declare function outboundAttemptLimitRecallEntriesToTerraform(struct?: OutboundAttemptLimitRecallEntriesOutputReference | OutboundAttemptLimitRecallEntries): any; export declare function outboundAttemptLimitRecallEntriesToHclTerraform(struct?: OutboundAttemptLimitRecallEntriesOutputReference | OutboundAttemptLimitRecallEntries): any; export declare class OutboundAttemptLimitRecallEntriesOutputReference 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(): OutboundAttemptLimitRecallEntries | undefined; set internalValue(value: OutboundAttemptLimitRecallEntries | undefined); private _answeringMachine; get answeringMachine(): OutboundAttemptLimitRecallEntriesAnsweringMachineOutputReference; putAnsweringMachine(value: OutboundAttemptLimitRecallEntriesAnsweringMachine): void; resetAnsweringMachine(): void; get answeringMachineInput(): OutboundAttemptLimitRecallEntriesAnsweringMachine; private _busy; get busy(): OutboundAttemptLimitRecallEntriesBusyOutputReference; putBusy(value: OutboundAttemptLimitRecallEntriesBusy): void; resetBusy(): void; get busyInput(): OutboundAttemptLimitRecallEntriesBusy; private _fax; get fax(): OutboundAttemptLimitRecallEntriesFaxOutputReference; putFax(value: OutboundAttemptLimitRecallEntriesFax): void; resetFax(): void; get faxInput(): OutboundAttemptLimitRecallEntriesFax; private _noAnswer; get noAnswer(): OutboundAttemptLimitRecallEntriesNoAnswerOutputReference; putNoAnswer(value: OutboundAttemptLimitRecallEntriesNoAnswer): void; resetNoAnswer(): void; get noAnswerInput(): OutboundAttemptLimitRecallEntriesNoAnswer; } /** * Represents a {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_attempt_limit genesyscloud_outbound_attempt_limit} */ export declare class OutboundAttemptLimit extends cdktf.TerraformResource { static readonly tfResourceType = "genesyscloud_outbound_attempt_limit"; /** * Generates CDKTF code for importing a OutboundAttemptLimit 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 OutboundAttemptLimit to import * @param importFromId The id of the existing OutboundAttemptLimit that should be imported. Refer to the {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/outbound_attempt_limit#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the OutboundAttemptLimit 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_attempt_limit genesyscloud_outbound_attempt_limit} 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 OutboundAttemptLimitConfig = {} */ constructor(scope: Construct, id: string, config?: OutboundAttemptLimitConfig); private _id?; get id(): string; set id(value: string); resetId(): void; get idInput(): string; private _maxAttemptsPerContact?; get maxAttemptsPerContact(): number; set maxAttemptsPerContact(value: number); resetMaxAttemptsPerContact(): void; get maxAttemptsPerContactInput(): number; private _maxAttemptsPerNumber?; get maxAttemptsPerNumber(): number; set maxAttemptsPerNumber(value: number); resetMaxAttemptsPerNumber(): void; get maxAttemptsPerNumberInput(): number; private _name?; get name(): string; set name(value: string); resetName(): void; get nameInput(): string; private _resetPeriod?; get resetPeriod(): string; set resetPeriod(value: string); resetResetPeriod(): void; get resetPeriodInput(): string; private _timeZoneId?; get timeZoneId(): string; set timeZoneId(value: string); resetTimeZoneId(): void; get timeZoneIdInput(): string; private _recallEntries; get recallEntries(): OutboundAttemptLimitRecallEntriesOutputReference; putRecallEntries(value: OutboundAttemptLimitRecallEntries): void; resetRecallEntries(): void; get recallEntriesInput(): OutboundAttemptLimitRecallEntries; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }