// This file is auto-generated, don't edit it. Thanks.
using System;
using System.Collections.Generic;
using System.IO;
using Tea;
namespace Darabonba.Test.Models
{
public class ComplexRequest : TeaModel {
[NameInMap("accessKey")]
[Validation(Required=true)]
public string AccessKey { get; set; }
///
/// Body
///
/// Example:
/// Body
///
[NameInMap("Body")]
[Validation(Required=true)]
public Stream Body { get; set; }
///
/// Strs
///
/// Example:
/// Strs
///
[NameInMap("Strs")]
[Validation(Required=true)]
public List Strs { get; set; }
///
/// header
///
[NameInMap("header")]
[Validation(Required=true)]
public ComplexRequestHeader Header { get; set; }
public class ComplexRequestHeader : TeaModel {
///
/// The ID of the security group to which you want to assign the instance. Instances in the same security group can communicate with each other. The maximum number of instances that a security group can contain depends on the type of the security group. For more information, see the "Security group limits" section in Limits.
///
/// Notice: The network type of the new instance must be the same as that of the security group specified by the SecurityGroupId parameter. For example, if the specified security group is of the VPC type, the new instance is also of the VPC type and you must specify VSwitchId.
///
/// If you do not use LaunchTemplateId or LaunchTemplateName to specify a launch template, you must specify SecurityGroupId. Take note of the following items:
///
/// - You can set SecurityGroupId to specify a single security group or set SecurityGroupIds.N to specify one or more security groups. However, you cannot specify both SecurityGroupId and SecurityGroupIds.N.
/// - If NetworkInterface.N.InstanceType is set to Primary, you cannot specify SecurityGroupId or SecurityGroupIds.N but can specify NetworkInterface.N.SecurityGroupId or NetworkInterface.N.SecurityGroupIds.N.
///
///
/// Example:
/// The name of the region.
///
/// check if is blank:
/// true
///
/// if can be null:
/// true
///
/// if is sensitive:
/// true
///
[NameInMap("Content")]
[Validation(Required=true)]
public string Content { get; set; }
[NameInMap("listSub")]
[Validation(Required=true)]
public List ListSub { get; set; }
public class ComplexRequestHeaderListSub : TeaModel {
[NameInMap("listSubItemName")]
[Validation(Required=true)]
public string ListSubItem { get; set; }
[NameInMap("listSubItemSubName")]
[Validation(Required=true)]
public Config ListSubItemSub { get; set; }
}
[NameInMap("listStr")]
[Validation(Required=true)]
public List ListStr { get; set; }
[NameInMap("sourceClient")]
[Validation(Required=true)]
public Darabonba.import.Client SourceClient { get; set; }
[NameInMap("sourceConfig")]
[Validation(Required=true)]
public Darabonba.import.Models.Config SourceConfig { get; set; }
[NameInMap("subModel")]
[Validation(Required=true)]
public ComplexRequestHeaderSubModel SubModel { get; set; }
public class ComplexRequestHeaderSubModel : TeaModel {
[NameInMap("subModelStr")]
[Validation(Required=true)]
public string SubModelStr { get; set; }
}
[NameInMap("subArray")]
[Validation(Required=true)]
public List SubArray { get; set; }
[NameInMap("subMutiArray")]
[Validation(Required=true)]
public List> SubMutiArray { get; set; }
}
[NameInMap("num")]
[Validation(Required=true)]
public int? Num { get; set; }
[NameInMap("client")]
[Validation(Required=true)]
public Darabonba.import.Client Client { get; set; }
/// Obsolete
///
///
/// Part
///
[NameInMap("Part")]
[Validation(Required=false)]
[Obsolete]
public List Part { get; set; }
public class ComplexRequestPart : TeaModel {
///
/// PartNumber
///
[NameInMap("PartNumber")]
[Validation(Required=false)]
public string PartNumber { get; set; }
}
[NameInMap("configs")]
[Validation(Required=true)]
public ComplexRequestConfigs Configs { get; set; }
public class ComplexRequestConfigs : TeaModel {
[NameInMap("key")]
[Validation(Required=true)]
public string Key { get; set; }
[NameInMap("value")]
[Validation(Required=true)]
public List Value { get; set; }
[NameInMap("extra")]
[Validation(Required=true)]
public Dictionary Extra { get; set; }
}
[NameInMap("dict")]
[Validation(Required=true)]
public Dictionary Dict { get; set; }
[NameInMap("submodelMap")]
[Validation(Required=true)]
public Dictionary SubmodelMap { get; set; }
[NameInMap("array")]
[Validation(Required=false)]
public List> Array { get; set; }
public class ComplexRequestArray : TeaModel {
[NameInMap("type")]
[Validation(Required=false)]
public string Type { get; set; }
[NameInMap("link")]
[Validation(Required=false)]
public string Link { get; set; }
[NameInMap("text")]
[Validation(Required=false)]
public string Text { get; set; }
}
[NameInMap("array1")]
[Validation(Required=false)]
public List> Array1 { get; set; }
[NameInMap("array2")]
[Validation(Required=false)]
public List Array2 { get; set; }
}
}