import * as core from "@terrascript/core"; export interface LevelThreeArgs extends core.SchemaArgs { arn: string | core.StringOut; id: string | core.StringOut; name: string | core.StringOut; } export class LevelThree extends core.Schema { @core.attr(String, { computed: true }) public arn!: string | core.StringOut; @core.attr(String, { computed: true }) public id!: string | core.StringOut; @core.attr(String) public name!: string | core.StringOut; } export interface LevelFourArgs extends core.SchemaArgs { arn: string | core.StringOut; id: string | core.StringOut; name: string | core.StringOut; } export class LevelFour extends core.Schema { @core.attr(String, { computed: true }) public arn!: string | core.StringOut; @core.attr(String, { computed: true }) public id!: string | core.StringOut; @core.attr(String) public name!: string | core.StringOut; } export interface LevelFiveArgs extends core.SchemaArgs { arn: string | core.StringOut; id: string | core.StringOut; name: string | core.StringOut; } export class LevelFive extends core.Schema { @core.attr(String, { computed: true }) public arn!: string | core.StringOut; @core.attr(String, { computed: true }) public id!: string | core.StringOut; @core.attr(String) public name!: string | core.StringOut; } export interface LevelOneArgs extends core.SchemaArgs { arn: string | core.StringOut; id: string | core.StringOut; name: string | core.StringOut; } export class LevelOne extends core.Schema { @core.attr(String, { computed: true }) public arn!: string | core.StringOut; @core.attr(String, { computed: true }) public id!: string | core.StringOut; @core.attr(String) public name!: string | core.StringOut; } export interface LevelTwoArgs extends core.SchemaArgs { arn: string | core.StringOut; id: string | core.StringOut; name: string | core.StringOut; } export class LevelTwo extends core.Schema { @core.attr(String, { computed: true }) public arn!: string | core.StringOut; @core.attr(String, { computed: true }) public id!: string | core.StringOut; @core.attr(String) public name!: string | core.StringOut; } export interface HierarchyStructureArgs extends core.SchemaArgs { levelFive?: LevelFive; levelFour?: LevelFour; levelOne?: LevelOne; levelThree?: LevelThree; levelTwo?: LevelTwo; } export class HierarchyStructure extends core.Schema { @core.attr(LevelFive, { computed: true }) public levelFive?: LevelFive; @core.attr(LevelFour, { computed: true }) public levelFour?: LevelFour; @core.attr(LevelOne, { computed: true }) public levelOne?: LevelOne; @core.attr(LevelThree, { computed: true }) public levelThree?: LevelThree; @core.attr(LevelTwo, { computed: true }) public levelTwo?: LevelTwo; } export interface UserHierarchyStructureArgs extends core.ResourceArgs { /** * (Required) A block that defines the hierarchy structure's levels. The `hierarchy_structure` block is * documented below. */ hierarchyStructure: HierarchyStructure; /** * (Required) Specifies the identifier of the hosting Amazon Connect Instance. */ instanceId: string | core.StringOut; } export class UserHierarchyStructure extends core.Resource { /** * (Required) A block that defines the hierarchy structure's levels. The `hierarchy_structure` block is * documented below. */ @core.attr(HierarchyStructure) public hierarchyStructure!: HierarchyStructure; /** * The identifier of the hosting Amazon Connect Instance. */ @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; constructor(name: string, args?: UserHierarchyStructureArgs) { super(name, "aws_connect_user_hierarchy_structure", args); } public override getNamespace(): string { return "aws_connect"; } }