import * as core from "@terrascript/core"; export interface OutboundCallerConfigArgs extends core.SchemaArgs { outboundCallerIdName?: string | core.StringOut; outboundCallerIdNumberId?: string | core.StringOut; outboundFlowId?: string | core.StringOut; } export class OutboundCallerConfig extends core.Schema { @core.attr(String) public outboundCallerIdName?: string | core.StringOut; @core.attr(String) public outboundCallerIdNumberId?: string | core.StringOut; @core.attr(String) public outboundFlowId?: string | core.StringOut; } export interface QueueArgs extends core.ResourceArgs { /** * (Optional) Specifies the description of the Queue. */ description?: string | core.StringOut; /** * (Required) Specifies the identifier of the Hours of Operation. */ hoursOfOperationId: string | core.StringOut; /** * (Required) Specifies the identifier of the hosting Amazon Connect Instance. */ instanceId: string | core.StringOut; /** * (Optional) Specifies the maximum number of contacts that can be in the queue before it is considered * full. Minimum value of 0. */ maxContacts?: number | core.NumberOut; /** * (Required) Specifies the name of the Queue. */ name: string | core.StringOut; /** * (Required) A block that defines the outbound caller ID name, number, and outbound whisper flow. The * Outbound Caller Config block is documented below. */ outboundCallerConfig?: OutboundCallerConfig; /** * (Optional) Specifies a list of quick connects ids that determine the quick connects available to age * nts who are working the queue. */ quickConnectIds?: core.Array | core.ArrayOut; /** * (Optional) Specifies the description of the Queue. Valid values are `ENABLED`, `DISABLED`. */ status?: string | core.StringOut; /** * (Optional) Tags to apply to the Queue. If configured with a provider [`default_tags` configuration b * lock](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#default_tags-configuration-b * lock) present, tags with matching keys will overwrite those defined at the provider-level. */ tags?: core.Map | core.MapOut; /** * A map of tags assigned to the resource, including those inherited from the provider [`default_tags` * configuration block](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#default_tags- * configuration-block). */ tagsAll?: core.Map | core.MapOut; } export class Queue extends core.Resource { /** * The Amazon Resource Name (ARN) of the Queue. */ @core.attr(String, { computed: true }) public arn!: string | core.StringOut; /** * (Optional) Specifies the description of the Queue. */ @core.attr(String) public description?: string | core.StringOut; /** * (Required) Specifies the identifier of the Hours of Operation. */ @core.attr(String) public hoursOfOperationId!: string | core.StringOut; /** * The identifier of the hosting Amazon Connect Instance and identifier of the Queue separated by a col * on (`:`). */ @core.attr(String, { computed: true }) public id!: string | core.StringOut; /** * (Required) Specifies the identifier of the hosting Amazon Connect Instance. */ @core.attr(String) public instanceId!: string | core.StringOut; /** * (Optional) Specifies the maximum number of contacts that can be in the queue before it is considered * full. Minimum value of 0. */ @core.attr(Number) public maxContacts?: number | core.NumberOut; /** * (Required) Specifies the name of the Queue. */ @core.attr(String) public name!: string | core.StringOut; /** * (Required) A block that defines the outbound caller ID name, number, and outbound whisper flow. The * Outbound Caller Config block is documented below. */ @core.attr(OutboundCallerConfig) public outboundCallerConfig?: OutboundCallerConfig; /** * The identifier for the Queue. */ @core.attr(String, { computed: true }) public queueId!: string | core.StringOut; /** * (Optional) Specifies a list of quick connects ids that determine the quick connects available to age * nts who are working the queue. */ @core.attr(String, { kind: "array" }) public quickConnectIds?: core.Array | core.ArrayOut; @core.attr(String, { computed: true, kind: "array" }) public quickConnectIdsAssociated!: | core.Array | core.ArrayOut; /** * (Optional) Specifies the description of the Queue. Valid values are `ENABLED`, `DISABLED`. */ @core.attr(String, { computed: true }) public status?: string | core.StringOut; /** * (Optional) Tags to apply to the Queue. If configured with a provider [`default_tags` configuration b * lock](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#default_tags-configuration-b * lock) present, tags with matching keys will overwrite those defined at the provider-level. */ @core.attr(String, { kind: "map" }) public tags?: core.Map | core.MapOut; /** * A map of tags assigned to the resource, including those inherited from the provider [`default_tags` * configuration block](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#default_tags- * configuration-block). */ @core.attr(String, { computed: true, kind: "map" }) public tagsAll?: core.Map | core.MapOut; constructor(name: string, args?: QueueArgs) { super(name, "aws_connect_queue", args); } public override getNamespace(): string { return "aws_connect"; } }