multiple-languages/dotnet/AlibabaCloud.SDK.ROS.CDK.Apigateway/AlibabaCloud/SDK/ROS/CDK/Apigateway/RosApi.cs (4,227 lines of code) (raw):

using Amazon.JSII.Runtime.Deputy; #pragma warning disable CS0672,CS0809,CS1591 namespace AlibabaCloud.SDK.ROS.CDK.Apigateway { /// <summary>This class is a base encapsulation around the ROS resource type `ALIYUN::ApiGateway::Api`, which is used to create an API.</summary> /// <remarks> /// <strong>Note</strong>: This class does not contain additional functions, so it is recommended to use the `Api` class instead of this class for a more convenient development experience. /// See https://www.alibabacloud.com/help/ros/developer-reference/aliyun-apigateway-api /// </remarks> [JsiiClass(nativeType: typeof(AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi), fullyQualifiedName: "@alicloud/ros-cdk-apigateway.RosApi", parametersJson: "[{\"docs\":{\"summary\":\"- scope in which this resource is defined.\"},\"name\":\"scope\",\"type\":{\"fqn\":\"@alicloud/ros-cdk-core.Construct\"}},{\"docs\":{\"summary\":\"- scoped id of the resource.\"},\"name\":\"id\",\"type\":{\"primitive\":\"string\"}},{\"docs\":{\"summary\":\"- resource properties.\"},\"name\":\"props\",\"type\":{\"fqn\":\"@alicloud/ros-cdk-apigateway.RosApiProps\"}},{\"name\":\"enableResourcePropertyConstraint\",\"type\":{\"primitive\":\"boolean\"}}]")] public class RosApi : AlibabaCloud.SDK.ROS.CDK.Core.RosResource { /// <param name="scope">- scope in which this resource is defined.</param> /// <param name="id">- scoped id of the resource.</param> /// <param name="props">- resource properties.</param> public RosApi(AlibabaCloud.SDK.ROS.CDK.Core.Construct scope, string id, AlibabaCloud.SDK.ROS.CDK.Apigateway.IRosApiProps props, bool enableResourcePropertyConstraint): base(_MakeDeputyProps(scope, id, props, enableResourcePropertyConstraint)) { } [System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.AggressiveInlining)] private static DeputyProps _MakeDeputyProps(AlibabaCloud.SDK.ROS.CDK.Core.Construct scope, string id, AlibabaCloud.SDK.ROS.CDK.Apigateway.IRosApiProps props, bool enableResourcePropertyConstraint) { return new DeputyProps(new object?[]{scope, id, props, enableResourcePropertyConstraint}); } /// <summary>Used by jsii to construct an instance of this class from a Javascript-owned object reference</summary> /// <param name="reference">The Javascript-owned object reference</param> [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)] protected RosApi(ByRefValue reference): base(reference) { } /// <summary>Used by jsii to construct an instance of this class from DeputyProps</summary> /// <param name="props">The deputy props</param> [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)] protected RosApi(DeputyProps props): base(props) { } [JsiiMethod(name: "renderProperties", returnsJson: "{\"type\":{\"collection\":{\"elementtype\":{\"primitive\":\"any\"},\"kind\":\"map\"}}}", parametersJson: "[{\"name\":\"props\",\"type\":{\"collection\":{\"elementtype\":{\"primitive\":\"any\"},\"kind\":\"map\"}}}]")] protected override System.Collections.Generic.IDictionary<string, object> RenderProperties(System.Collections.Generic.IDictionary<string, object> props) { return InvokeInstanceMethod<System.Collections.Generic.IDictionary<string, object>>(new System.Type[]{typeof(System.Collections.Generic.IDictionary<string, object>)}, new object[]{props})!; } /// <summary>The resource type name for this resource class.</summary> [JsiiProperty(name: "ROS_RESOURCE_TYPE_NAME", typeJson: "{\"primitive\":\"string\"}")] public static string ROS_RESOURCE_TYPE_NAME { get; } = GetStaticProperty<string>(typeof(AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi))!; /// <remarks> /// <strong>Attribute</strong>: ApiId: The id of the API. /// </remarks> [JsiiProperty(name: "attrApiId", typeJson: "{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}")] public virtual AlibabaCloud.SDK.ROS.CDK.Core.IResolvable AttrApiId { get => GetInstanceProperty<AlibabaCloud.SDK.ROS.CDK.Core.IResolvable>()!; } /// <remarks> /// <strong>Attribute</strong>: Arn: The Alibaba Cloud Resource Name (ARN). /// </remarks> [JsiiProperty(name: "attrArn", typeJson: "{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}")] public virtual AlibabaCloud.SDK.ROS.CDK.Core.IResolvable AttrArn { get => GetInstanceProperty<AlibabaCloud.SDK.ROS.CDK.Core.IResolvable>()!; } [JsiiProperty(name: "rosProperties", typeJson: "{\"collection\":{\"elementtype\":{\"primitive\":\"any\"},\"kind\":\"map\"}}")] protected override System.Collections.Generic.IDictionary<string, object> RosProperties { get => GetInstanceProperty<System.Collections.Generic.IDictionary<string, object>>()!; } /// <remarks> /// <strong>Property</strong>: apiName: The name of the API.It must be 4 to 128 characters in length, and can contain letters, digits, underscores (_), dashes (-), spaces and dots (.), It must start with a letter. /// </remarks> [JsiiProperty(name: "apiName", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public virtual object ApiName { get => GetInstanceProperty<object>()!; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received null", nameof(value)); default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } SetInstanceProperty(value); } } [JsiiProperty(name: "enableResourcePropertyConstraint", typeJson: "{\"primitive\":\"boolean\"}")] public virtual bool EnableResourcePropertyConstraint { get => GetInstanceProperty<bool>()!; set => SetInstanceProperty(value); } /// <remarks> /// <strong>Property</strong>: groupId: The id of the Group. /// </remarks> [JsiiProperty(name: "groupId", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public virtual object GroupId { get => GetInstanceProperty<object>()!; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received null", nameof(value)); default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } SetInstanceProperty(value); } } /// <remarks> /// <strong>Property</strong>: requestConfig: The configuration of the request /// </remarks> [JsiiProperty(name: "requestConfig", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-apigateway.RosApi.RequestConfigProperty\"}]}}")] public virtual object RequestConfig { get => GetInstanceProperty<object>()!; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.IRequestConfigProperty cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, {typeof(AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.IRequestConfigProperty).FullName}; received null", nameof(value)); default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, {typeof(AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.IRequestConfigProperty).FullName}; received {value.GetType().FullName}", nameof(value)); } } SetInstanceProperty(value); } } /// <remarks> /// <strong>Property</strong>: serviceConfig: The configuration of the service. /// </remarks> [JsiiProperty(name: "serviceConfig", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-apigateway.RosApi.ServiceConfigProperty\"}]}}")] public virtual object ServiceConfig { get => GetInstanceProperty<object>()!; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.IServiceConfigProperty cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, {typeof(AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.IServiceConfigProperty).FullName}; received null", nameof(value)); default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, {typeof(AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.IServiceConfigProperty).FullName}; received {value.GetType().FullName}", nameof(value)); } } SetInstanceProperty(value); } } /// <remarks> /// <strong>Property</strong>: visibility: Whether to make the API public. "PUBLIC" or "PRIVATE". /// </remarks> [JsiiProperty(name: "visibility", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public virtual object Visibility { get => GetInstanceProperty<object>()!; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received null", nameof(value)); default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } SetInstanceProperty(value); } } /// <remarks> /// <strong>Property</strong>: allowSignatureMethod: If the AuthType is APP authentication, you need to pass this value to specify the signature algorithm. If you do not specify this parameter, the default value HmacSHA256 is used. Valid values: /// HmacSHA256 /// HmacSHA1,HmacSHA256 /// </remarks> [JsiiOptional] [JsiiProperty(name: "allowSignatureMethod", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public virtual object? AllowSignatureMethod { get => GetInstanceProperty<object?>(); set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } SetInstanceProperty(value); } } /// <remarks> /// <strong>Property</strong>: appCodeAuthType: When AuthType is APP authentication, the optional values are as follows: If not passed, the default value is DEFAULT: /// DEFAULT: Default (set by group). /// DISABLE: Not allowed /// HEADER: Allow AppCode header authentication /// HEADER_QUERY: Allow AppCode header and query authentication /// </remarks> [JsiiOptional] [JsiiProperty(name: "appCodeAuthType", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public virtual object? AppCodeAuthType { get => GetInstanceProperty<object?>(); set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } SetInstanceProperty(value); } } /// <remarks> /// <strong>Property</strong>: authType: Type of authorization of the API . "APP","ANONYMOUS", or "APPOPENID" /// </remarks> [JsiiOptional] [JsiiProperty(name: "authType", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public virtual object? AuthType { get => GetInstanceProperty<object?>(); set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } SetInstanceProperty(value); } } /// <remarks> /// <strong>Property</strong>: constParameters: The const parameters. /// </remarks> [JsiiOptional] [JsiiProperty(name: "constParameters", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-apigateway.RosApi.ConstParametersProperty\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)] public virtual object? ConstParameters { get => GetInstanceProperty<object?>(); set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case object[] cast_cd4240: for (var __idx_f64a5c = 0 ; __idx_f64a5c < cast_cd4240.Length ; __idx_f64a5c++) { switch (cast_cd4240[__idx_f64a5c]) { case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_201718: break; case AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.IConstParametersProperty cast_201718: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_201718: // Not enough information to type-check... break; case null: throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, {typeof(AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.IConstParametersProperty).FullName}; received null", nameof(value)); default: throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, {typeof(AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.IConstParametersProperty).FullName}; received {cast_cd4240[__idx_f64a5c].GetType().FullName}", nameof(value)); } } break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, object[]; received {value.GetType().FullName}", nameof(value)); } } SetInstanceProperty(value); } } /// <remarks> /// <strong>Property</strong>: description: Description of the API, less than 180 characters. /// </remarks> [JsiiOptional] [JsiiProperty(name: "description", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public virtual object? Description { get => GetInstanceProperty<object?>(); set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } SetInstanceProperty(value); } } /// <remarks> /// <strong>Property</strong>: disableInternet: Set DisableInternet to true, only support intranet to call API. /// Set DisableInternet to false, then the call is not restricted. /// </remarks> [JsiiOptional] [JsiiProperty(name: "disableInternet", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"boolean\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public virtual object? DisableInternet { get => GetInstanceProperty<object?>(); set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case bool cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: bool, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } SetInstanceProperty(value); } } /// <remarks> /// <strong>Property</strong>: errorCodeSamples: The Error Code samples. /// </remarks> [JsiiOptional] [JsiiProperty(name: "errorCodeSamples", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-apigateway.RosApi.ErrorCodeSamplesProperty\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)] public virtual object? ErrorCodeSamples { get => GetInstanceProperty<object?>(); set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case object[] cast_cd4240: for (var __idx_f64a5c = 0 ; __idx_f64a5c < cast_cd4240.Length ; __idx_f64a5c++) { switch (cast_cd4240[__idx_f64a5c]) { case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_201718: break; case AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.IErrorCodeSamplesProperty cast_201718: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_201718: // Not enough information to type-check... break; case null: throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, {typeof(AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.IErrorCodeSamplesProperty).FullName}; received null", nameof(value)); default: throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, {typeof(AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.IErrorCodeSamplesProperty).FullName}; received {cast_cd4240[__idx_f64a5c].GetType().FullName}", nameof(value)); } } break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, object[]; received {value.GetType().FullName}", nameof(value)); } } SetInstanceProperty(value); } } /// <remarks> /// <strong>Property</strong>: failResultSample: The sample of the fail result. /// </remarks> [JsiiOptional] [JsiiProperty(name: "failResultSample", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public virtual object? FailResultSample { get => GetInstanceProperty<object?>(); set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } SetInstanceProperty(value); } } /// <remarks> /// <strong>Property</strong>: forceNonceCheck: Set ForceNonceCheck to true, compulsorily check X-Ca-Nonce when requesting, /// this is the unique identifier of the request, generally using UUID to identify. /// The API gateway will verify the validity of this parameter after receiving this parameter. /// The same value can only be used once within 15 minutes. It can effectively prevent API replay attacks. /// Set ForceNonceCheck to false, then no check. /// </remarks> [JsiiOptional] [JsiiProperty(name: "forceNonceCheck", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"boolean\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public virtual object? ForceNonceCheck { get => GetInstanceProperty<object?>(); set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case bool cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: bool, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } SetInstanceProperty(value); } } /// <remarks> /// <strong>Property</strong>: openIdConnectConfig: The configuration of the open id. /// </remarks> [JsiiOptional] [JsiiProperty(name: "openIdConnectConfig", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-apigateway.RosApi.OpenIdConnectConfigProperty\"}]}}", isOptional: true)] public virtual object? OpenIdConnectConfig { get => GetInstanceProperty<object?>(); set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.IOpenIdConnectConfigProperty cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, {typeof(AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.IOpenIdConnectConfigProperty).FullName}; received {value.GetType().FullName}", nameof(value)); } } SetInstanceProperty(value); } } /// <remarks> /// <strong>Property</strong>: requestParameters: The request parameters. /// </remarks> [JsiiOptional] [JsiiProperty(name: "requestParameters", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-apigateway.RosApi.RequestParametersProperty\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)] public virtual object? RequestParameters { get => GetInstanceProperty<object?>(); set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case object[] cast_cd4240: for (var __idx_f64a5c = 0 ; __idx_f64a5c < cast_cd4240.Length ; __idx_f64a5c++) { switch (cast_cd4240[__idx_f64a5c]) { case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_201718: break; case AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.IRequestParametersProperty cast_201718: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_201718: // Not enough information to type-check... break; case null: throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, {typeof(AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.IRequestParametersProperty).FullName}; received null", nameof(value)); default: throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, {typeof(AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.IRequestParametersProperty).FullName}; received {cast_cd4240[__idx_f64a5c].GetType().FullName}", nameof(value)); } } break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, object[]; received {value.GetType().FullName}", nameof(value)); } } SetInstanceProperty(value); } } /// <remarks> /// <strong>Property</strong>: resultBodyModel: The return result of the API. /// </remarks> [JsiiOptional] [JsiiProperty(name: "resultBodyModel", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public virtual object? ResultBodyModel { get => GetInstanceProperty<object?>(); set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } SetInstanceProperty(value); } } /// <remarks> /// <strong>Property</strong>: resultDescriptions: The return description of the API. /// </remarks> [JsiiOptional] [JsiiProperty(name: "resultDescriptions", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public virtual object? ResultDescriptions { get => GetInstanceProperty<object?>(); set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } SetInstanceProperty(value); } } /// <remarks> /// <strong>Property</strong>: resultSample: The sample of the result. /// </remarks> [JsiiOptional] [JsiiProperty(name: "resultSample", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public virtual object? ResultSample { get => GetInstanceProperty<object?>(); set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } SetInstanceProperty(value); } } /// <remarks> /// <strong>Property</strong>: resultType: The format of service's response, "JSON", "TEXT", "BINARY", "XML", "HTML" or "PASSTHROUGH". Default is "JSON". /// </remarks> [JsiiOptional] [JsiiProperty(name: "resultType", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public virtual object? ResultType { get => GetInstanceProperty<object?>(); set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } SetInstanceProperty(value); } } /// <remarks> /// <strong>Property</strong>: serviceParameters: The service parameters. /// </remarks> [JsiiOptional] [JsiiProperty(name: "serviceParameters", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-apigateway.RosApi.ServiceParametersProperty\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)] public virtual object? ServiceParameters { get => GetInstanceProperty<object?>(); set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case object[] cast_cd4240: for (var __idx_f64a5c = 0 ; __idx_f64a5c < cast_cd4240.Length ; __idx_f64a5c++) { switch (cast_cd4240[__idx_f64a5c]) { case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_201718: break; case AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.IServiceParametersProperty cast_201718: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_201718: // Not enough information to type-check... break; case null: throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, {typeof(AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.IServiceParametersProperty).FullName}; received null", nameof(value)); default: throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, {typeof(AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.IServiceParametersProperty).FullName}; received {cast_cd4240[__idx_f64a5c].GetType().FullName}", nameof(value)); } } break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, object[]; received {value.GetType().FullName}", nameof(value)); } } SetInstanceProperty(value); } } /// <remarks> /// <strong>Property</strong>: serviceParametersMap: The mapping relation between (request parameters\const parameters\system parameters) and service parameters. /// </remarks> [JsiiOptional] [JsiiProperty(name: "serviceParametersMap", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-apigateway.RosApi.ServiceParametersMapProperty\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)] public virtual object? ServiceParametersMap { get => GetInstanceProperty<object?>(); set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case object[] cast_cd4240: for (var __idx_f64a5c = 0 ; __idx_f64a5c < cast_cd4240.Length ; __idx_f64a5c++) { switch (cast_cd4240[__idx_f64a5c]) { case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_201718: break; case AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.IServiceParametersMapProperty cast_201718: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_201718: // Not enough information to type-check... break; case null: throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, {typeof(AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.IServiceParametersMapProperty).FullName}; received null", nameof(value)); default: throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, {typeof(AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.IServiceParametersMapProperty).FullName}; received {cast_cd4240[__idx_f64a5c].GetType().FullName}", nameof(value)); } } break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, object[]; received {value.GetType().FullName}", nameof(value)); } } SetInstanceProperty(value); } } /// <remarks> /// <strong>Property</strong>: systemParameters: The system parameters. /// </remarks> [JsiiOptional] [JsiiProperty(name: "systemParameters", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-apigateway.RosApi.SystemParametersProperty\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)] public virtual object? SystemParameters { get => GetInstanceProperty<object?>(); set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case object[] cast_cd4240: for (var __idx_f64a5c = 0 ; __idx_f64a5c < cast_cd4240.Length ; __idx_f64a5c++) { switch (cast_cd4240[__idx_f64a5c]) { case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_201718: break; case AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.ISystemParametersProperty cast_201718: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_201718: // Not enough information to type-check... break; case null: throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, {typeof(AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.ISystemParametersProperty).FullName}; received null", nameof(value)); default: throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, {typeof(AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.ISystemParametersProperty).FullName}; received {cast_cd4240[__idx_f64a5c].GetType().FullName}", nameof(value)); } } break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, object[]; received {value.GetType().FullName}", nameof(value)); } } SetInstanceProperty(value); } } /// <remarks> /// <strong>Property</strong>: tags: Tags to attach to instance. Max support 20 tags to add during create instance. Each tag with two properties Key and Value, and Key is required. /// </remarks> [JsiiOptional] [JsiiProperty(name: "tags", typeJson: "{\"collection\":{\"elementtype\":{\"fqn\":\"@alicloud/ros-cdk-apigateway.RosApi.TagsProperty\"},\"kind\":\"array\"}}", isOptional: true)] public virtual AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.ITagsProperty[]? Tags { get => GetInstanceProperty<AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.ITagsProperty[]?>(); set => SetInstanceProperty(value); } /// <remarks> /// <strong>Property</strong>: webSocketApiType: The type of the two-way communication API. /// COMMON: common API /// REGISTER: registered API /// UNREGISTER: unregistered API /// NOTIFY: downstream notification API /// </remarks> [JsiiOptional] [JsiiProperty(name: "webSocketApiType", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public virtual object? WebSocketApiType { get => GetInstanceProperty<object?>(); set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } SetInstanceProperty(value); } } [JsiiInterface(nativeType: typeof(IConstParametersProperty), fullyQualifiedName: "@alicloud/ros-cdk-apigateway.RosApi.ConstParametersProperty")] public interface IConstParametersProperty { /// <remarks> /// <strong>Property</strong>: constValue: The value of the parameter. /// </remarks> [JsiiProperty(name: "constValue", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] object ConstValue { get; } /// <remarks> /// <strong>Property</strong>: location: The location of the parameter. Default is HEAD. /// </remarks> [JsiiProperty(name: "location", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] object Location { get; } /// <remarks> /// <strong>Property</strong>: serviceParameterName: The service parameter name. /// </remarks> [JsiiProperty(name: "serviceParameterName", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] object ServiceParameterName { get; } /// <remarks> /// <strong>Property</strong>: description: Description of the const parameter, less than 180 characters. /// </remarks> [JsiiProperty(name: "description", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] [Amazon.JSII.Runtime.Deputy.JsiiOptional] object? Description { get { return null; } } [JsiiTypeProxy(nativeType: typeof(IConstParametersProperty), fullyQualifiedName: "@alicloud/ros-cdk-apigateway.RosApi.ConstParametersProperty")] internal sealed class _Proxy : DeputyBase, AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.IConstParametersProperty { private _Proxy(ByRefValue reference): base(reference) { } /// <remarks> /// <strong>Property</strong>: constValue: The value of the parameter. /// </remarks> [JsiiProperty(name: "constValue", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public object ConstValue { get => GetInstanceProperty<object>()!; } /// <remarks> /// <strong>Property</strong>: location: The location of the parameter. Default is HEAD. /// </remarks> [JsiiProperty(name: "location", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public object Location { get => GetInstanceProperty<object>()!; } /// <remarks> /// <strong>Property</strong>: serviceParameterName: The service parameter name. /// </remarks> [JsiiProperty(name: "serviceParameterName", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public object ServiceParameterName { get => GetInstanceProperty<object>()!; } /// <remarks> /// <strong>Property</strong>: description: Description of the const parameter, less than 180 characters. /// </remarks> [JsiiOptional] [JsiiProperty(name: "description", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? Description { get => GetInstanceProperty<object?>(); } } } #pragma warning disable CS8618 [JsiiByValue(fqn: "@alicloud/ros-cdk-apigateway.RosApi.ConstParametersProperty")] public class ConstParametersProperty : AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.IConstParametersProperty { private object _constValue; /// <remarks> /// <strong>Property</strong>: constValue: The value of the parameter. /// </remarks> [JsiiProperty(name: "constValue", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public object ConstValue { get => _constValue; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received null", nameof(value)); default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _constValue = value; } } private object _location; /// <remarks> /// <strong>Property</strong>: location: The location of the parameter. Default is HEAD. /// </remarks> [JsiiProperty(name: "location", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public object Location { get => _location; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received null", nameof(value)); default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _location = value; } } private object _serviceParameterName; /// <remarks> /// <strong>Property</strong>: serviceParameterName: The service parameter name. /// </remarks> [JsiiProperty(name: "serviceParameterName", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public object ServiceParameterName { get => _serviceParameterName; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received null", nameof(value)); default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _serviceParameterName = value; } } private object? _description; /// <remarks> /// <strong>Property</strong>: description: Description of the const parameter, less than 180 characters. /// </remarks> [JsiiOptional] [JsiiProperty(name: "description", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? Description { get => _description; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _description = value; } } } [JsiiInterface(nativeType: typeof(IErrorCodeSamplesProperty), fullyQualifiedName: "@alicloud/ros-cdk-apigateway.RosApi.ErrorCodeSamplesProperty")] public interface IErrorCodeSamplesProperty { /// <remarks> /// <strong>Property</strong>: code: Error code. /// </remarks> [JsiiProperty(name: "code", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] object Code { get; } /// <remarks> /// <strong>Property</strong>: message: Error message. /// </remarks> [JsiiProperty(name: "message", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] object Message { get; } /// <remarks> /// <strong>Property</strong>: description: Description of the ERROR, less than 180 characters. /// </remarks> [JsiiProperty(name: "description", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] [Amazon.JSII.Runtime.Deputy.JsiiOptional] object? Description { get { return null; } } [JsiiTypeProxy(nativeType: typeof(IErrorCodeSamplesProperty), fullyQualifiedName: "@alicloud/ros-cdk-apigateway.RosApi.ErrorCodeSamplesProperty")] internal sealed class _Proxy : DeputyBase, AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.IErrorCodeSamplesProperty { private _Proxy(ByRefValue reference): base(reference) { } /// <remarks> /// <strong>Property</strong>: code: Error code. /// </remarks> [JsiiProperty(name: "code", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public object Code { get => GetInstanceProperty<object>()!; } /// <remarks> /// <strong>Property</strong>: message: Error message. /// </remarks> [JsiiProperty(name: "message", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public object Message { get => GetInstanceProperty<object>()!; } /// <remarks> /// <strong>Property</strong>: description: Description of the ERROR, less than 180 characters. /// </remarks> [JsiiOptional] [JsiiProperty(name: "description", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? Description { get => GetInstanceProperty<object?>(); } } } #pragma warning disable CS8618 [JsiiByValue(fqn: "@alicloud/ros-cdk-apigateway.RosApi.ErrorCodeSamplesProperty")] public class ErrorCodeSamplesProperty : AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.IErrorCodeSamplesProperty { private object _code; /// <remarks> /// <strong>Property</strong>: code: Error code. /// </remarks> [JsiiProperty(name: "code", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public object Code { get => _code; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received null", nameof(value)); default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _code = value; } } private object _message; /// <remarks> /// <strong>Property</strong>: message: Error message. /// </remarks> [JsiiProperty(name: "message", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public object Message { get => _message; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received null", nameof(value)); default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _message = value; } } private object? _description; /// <remarks> /// <strong>Property</strong>: description: Description of the ERROR, less than 180 characters. /// </remarks> [JsiiOptional] [JsiiProperty(name: "description", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? Description { get => _description; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _description = value; } } } [JsiiInterface(nativeType: typeof(IFunctionComputeConfigProperty), fullyQualifiedName: "@alicloud/ros-cdk-apigateway.RosApi.FunctionComputeConfigProperty")] public interface IFunctionComputeConfigProperty { /// <remarks> /// <strong>Property</strong>: contentTypeCatagory: Specify how to determine ContentType header when using function. "DEFAULT" to use API Gateway's default value. "CUSTOM" to use self defined value. "CLIENT" to use client's ContentType header. Default is CLIENT. /// </remarks> [JsiiProperty(name: "contentTypeCatagory", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] [Amazon.JSII.Runtime.Deputy.JsiiOptional] object? ContentTypeCatagory { get { return null; } } /// <remarks> /// <strong>Property</strong>: contentTypeValue: ContentTypeValue is required if ContentTypeCatagory is DEFAULT or CUSTOM. /// </remarks> [JsiiProperty(name: "contentTypeValue", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] [Amazon.JSII.Runtime.Deputy.JsiiOptional] object? ContentTypeValue { get { return null; } } /// <remarks> /// <strong>Property</strong>: fcBaseUrl: Trigger path. Starts with http:\/\/ or https:\/\/ /// </remarks> [JsiiProperty(name: "fcBaseUrl", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] [Amazon.JSII.Runtime.Deputy.JsiiOptional] object? FcBaseUrl { get { return null; } } /// <remarks> /// <strong>Property</strong>: fcRegionId: The region id of function compute. /// </remarks> [JsiiProperty(name: "fcRegionId", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] [Amazon.JSII.Runtime.Deputy.JsiiOptional] object? FcRegionId { get { return null; } } /// <remarks> /// <strong>Property</strong>: fcType: Function type. Default: FCEvent. /// Valid values: FCEvent, HttpTrigger. /// </remarks> [JsiiProperty(name: "fcType", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] [Amazon.JSII.Runtime.Deputy.JsiiOptional] object? FcType { get { return null; } } /// <remarks> /// <strong>Property</strong>: fcVersion: Function version. Default: 2.0. /// Valid values: 2.0, 3.0. /// </remarks> [JsiiProperty(name: "fcVersion", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] [Amazon.JSII.Runtime.Deputy.JsiiOptional] object? FcVersion { get { return null; } } /// <remarks> /// <strong>Property</strong>: functionName: The function name of function compute. /// </remarks> [JsiiProperty(name: "functionName", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] [Amazon.JSII.Runtime.Deputy.JsiiOptional] object? FunctionName { get { return null; } } /// <remarks> /// <strong>Property</strong>: method: The HTTP method of the function. Default is GET. /// </remarks> [JsiiProperty(name: "method", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] [Amazon.JSII.Runtime.Deputy.JsiiOptional] object? Method { get { return null; } } /// <remarks> /// <strong>Property</strong>: onlyBusinessPath: If set true. The path in the trigger path (for example, \/2016-08-15\/proxy\/xxx\/xxx) will not be passed to the backend, and the backend will only receive the customized backend request path. /// </remarks> [JsiiProperty(name: "onlyBusinessPath", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"boolean\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] [Amazon.JSII.Runtime.Deputy.JsiiOptional] object? OnlyBusinessPath { get { return null; } } /// <remarks> /// <strong>Property</strong>: path: The backend request path must contain the Parameter Path in the backend service parameter within brackets ([]). For example: \/getUserInfo\/[userId]. /// </remarks> [JsiiProperty(name: "path", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] [Amazon.JSII.Runtime.Deputy.JsiiOptional] object? Path { get { return null; } } /// <remarks> /// <strong>Property</strong>: qualifier: The service alias name. /// </remarks> [JsiiProperty(name: "qualifier", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] [Amazon.JSII.Runtime.Deputy.JsiiOptional] object? Qualifier { get { return null; } } /// <remarks> /// <strong>Property</strong>: roleArn: Ram authorizes the arn of the API gateway access function compute. /// </remarks> [JsiiProperty(name: "roleArn", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] [Amazon.JSII.Runtime.Deputy.JsiiOptional] object? RoleArn { get { return null; } } /// <remarks> /// <strong>Property</strong>: serviceName: The service name of function compute. /// </remarks> [JsiiProperty(name: "serviceName", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] [Amazon.JSII.Runtime.Deputy.JsiiOptional] object? ServiceName { get { return null; } } [JsiiTypeProxy(nativeType: typeof(IFunctionComputeConfigProperty), fullyQualifiedName: "@alicloud/ros-cdk-apigateway.RosApi.FunctionComputeConfigProperty")] internal sealed class _Proxy : DeputyBase, AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.IFunctionComputeConfigProperty { private _Proxy(ByRefValue reference): base(reference) { } /// <remarks> /// <strong>Property</strong>: contentTypeCatagory: Specify how to determine ContentType header when using function. "DEFAULT" to use API Gateway's default value. "CUSTOM" to use self defined value. "CLIENT" to use client's ContentType header. Default is CLIENT. /// </remarks> [JsiiOptional] [JsiiProperty(name: "contentTypeCatagory", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? ContentTypeCatagory { get => GetInstanceProperty<object?>(); } /// <remarks> /// <strong>Property</strong>: contentTypeValue: ContentTypeValue is required if ContentTypeCatagory is DEFAULT or CUSTOM. /// </remarks> [JsiiOptional] [JsiiProperty(name: "contentTypeValue", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? ContentTypeValue { get => GetInstanceProperty<object?>(); } /// <remarks> /// <strong>Property</strong>: fcBaseUrl: Trigger path. Starts with http:\/\/ or https:\/\/ /// </remarks> [JsiiOptional] [JsiiProperty(name: "fcBaseUrl", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? FcBaseUrl { get => GetInstanceProperty<object?>(); } /// <remarks> /// <strong>Property</strong>: fcRegionId: The region id of function compute. /// </remarks> [JsiiOptional] [JsiiProperty(name: "fcRegionId", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? FcRegionId { get => GetInstanceProperty<object?>(); } /// <remarks> /// <strong>Property</strong>: fcType: Function type. Default: FCEvent. /// Valid values: FCEvent, HttpTrigger. /// </remarks> [JsiiOptional] [JsiiProperty(name: "fcType", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? FcType { get => GetInstanceProperty<object?>(); } /// <remarks> /// <strong>Property</strong>: fcVersion: Function version. Default: 2.0. /// Valid values: 2.0, 3.0. /// </remarks> [JsiiOptional] [JsiiProperty(name: "fcVersion", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? FcVersion { get => GetInstanceProperty<object?>(); } /// <remarks> /// <strong>Property</strong>: functionName: The function name of function compute. /// </remarks> [JsiiOptional] [JsiiProperty(name: "functionName", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? FunctionName { get => GetInstanceProperty<object?>(); } /// <remarks> /// <strong>Property</strong>: method: The HTTP method of the function. Default is GET. /// </remarks> [JsiiOptional] [JsiiProperty(name: "method", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? Method { get => GetInstanceProperty<object?>(); } /// <remarks> /// <strong>Property</strong>: onlyBusinessPath: If set true. The path in the trigger path (for example, \/2016-08-15\/proxy\/xxx\/xxx) will not be passed to the backend, and the backend will only receive the customized backend request path. /// </remarks> [JsiiOptional] [JsiiProperty(name: "onlyBusinessPath", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"boolean\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? OnlyBusinessPath { get => GetInstanceProperty<object?>(); } /// <remarks> /// <strong>Property</strong>: path: The backend request path must contain the Parameter Path in the backend service parameter within brackets ([]). For example: \/getUserInfo\/[userId]. /// </remarks> [JsiiOptional] [JsiiProperty(name: "path", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? Path { get => GetInstanceProperty<object?>(); } /// <remarks> /// <strong>Property</strong>: qualifier: The service alias name. /// </remarks> [JsiiOptional] [JsiiProperty(name: "qualifier", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? Qualifier { get => GetInstanceProperty<object?>(); } /// <remarks> /// <strong>Property</strong>: roleArn: Ram authorizes the arn of the API gateway access function compute. /// </remarks> [JsiiOptional] [JsiiProperty(name: "roleArn", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? RoleArn { get => GetInstanceProperty<object?>(); } /// <remarks> /// <strong>Property</strong>: serviceName: The service name of function compute. /// </remarks> [JsiiOptional] [JsiiProperty(name: "serviceName", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? ServiceName { get => GetInstanceProperty<object?>(); } } } [JsiiByValue(fqn: "@alicloud/ros-cdk-apigateway.RosApi.FunctionComputeConfigProperty")] public class FunctionComputeConfigProperty : AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.IFunctionComputeConfigProperty { private object? _contentTypeCatagory; /// <remarks> /// <strong>Property</strong>: contentTypeCatagory: Specify how to determine ContentType header when using function. "DEFAULT" to use API Gateway's default value. "CUSTOM" to use self defined value. "CLIENT" to use client's ContentType header. Default is CLIENT. /// </remarks> [JsiiOptional] [JsiiProperty(name: "contentTypeCatagory", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? ContentTypeCatagory { get => _contentTypeCatagory; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _contentTypeCatagory = value; } } private object? _contentTypeValue; /// <remarks> /// <strong>Property</strong>: contentTypeValue: ContentTypeValue is required if ContentTypeCatagory is DEFAULT or CUSTOM. /// </remarks> [JsiiOptional] [JsiiProperty(name: "contentTypeValue", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? ContentTypeValue { get => _contentTypeValue; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _contentTypeValue = value; } } private object? _fcBaseUrl; /// <remarks> /// <strong>Property</strong>: fcBaseUrl: Trigger path. Starts with http:\/\/ or https:\/\/ /// </remarks> [JsiiOptional] [JsiiProperty(name: "fcBaseUrl", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? FcBaseUrl { get => _fcBaseUrl; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _fcBaseUrl = value; } } private object? _fcRegionId; /// <remarks> /// <strong>Property</strong>: fcRegionId: The region id of function compute. /// </remarks> [JsiiOptional] [JsiiProperty(name: "fcRegionId", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? FcRegionId { get => _fcRegionId; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _fcRegionId = value; } } private object? _fcType; /// <remarks> /// <strong>Property</strong>: fcType: Function type. Default: FCEvent. /// Valid values: FCEvent, HttpTrigger. /// </remarks> [JsiiOptional] [JsiiProperty(name: "fcType", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? FcType { get => _fcType; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _fcType = value; } } private object? _fcVersion; /// <remarks> /// <strong>Property</strong>: fcVersion: Function version. Default: 2.0. /// Valid values: 2.0, 3.0. /// </remarks> [JsiiOptional] [JsiiProperty(name: "fcVersion", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? FcVersion { get => _fcVersion; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _fcVersion = value; } } private object? _functionName; /// <remarks> /// <strong>Property</strong>: functionName: The function name of function compute. /// </remarks> [JsiiOptional] [JsiiProperty(name: "functionName", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? FunctionName { get => _functionName; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _functionName = value; } } private object? _method; /// <remarks> /// <strong>Property</strong>: method: The HTTP method of the function. Default is GET. /// </remarks> [JsiiOptional] [JsiiProperty(name: "method", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? Method { get => _method; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _method = value; } } private object? _onlyBusinessPath; /// <remarks> /// <strong>Property</strong>: onlyBusinessPath: If set true. The path in the trigger path (for example, \/2016-08-15\/proxy\/xxx\/xxx) will not be passed to the backend, and the backend will only receive the customized backend request path. /// </remarks> [JsiiOptional] [JsiiProperty(name: "onlyBusinessPath", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"boolean\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? OnlyBusinessPath { get => _onlyBusinessPath; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case bool cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: bool, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _onlyBusinessPath = value; } } private object? _path; /// <remarks> /// <strong>Property</strong>: path: The backend request path must contain the Parameter Path in the backend service parameter within brackets ([]). For example: \/getUserInfo\/[userId]. /// </remarks> [JsiiOptional] [JsiiProperty(name: "path", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? Path { get => _path; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _path = value; } } private object? _qualifier; /// <remarks> /// <strong>Property</strong>: qualifier: The service alias name. /// </remarks> [JsiiOptional] [JsiiProperty(name: "qualifier", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? Qualifier { get => _qualifier; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _qualifier = value; } } private object? _roleArn; /// <remarks> /// <strong>Property</strong>: roleArn: Ram authorizes the arn of the API gateway access function compute. /// </remarks> [JsiiOptional] [JsiiProperty(name: "roleArn", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? RoleArn { get => _roleArn; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _roleArn = value; } } private object? _serviceName; /// <remarks> /// <strong>Property</strong>: serviceName: The service name of function compute. /// </remarks> [JsiiOptional] [JsiiProperty(name: "serviceName", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? ServiceName { get => _serviceName; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _serviceName = value; } } } [JsiiInterface(nativeType: typeof(IMockHeadersProperty), fullyQualifiedName: "@alicloud/ros-cdk-apigateway.RosApi.MockHeadersProperty")] public interface IMockHeadersProperty { /// <remarks> /// <strong>Property</strong>: headerName: Response header name /// </remarks> [JsiiProperty(name: "headerName", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] object HeaderName { get; } /// <remarks> /// <strong>Property</strong>: headerValue: Response header value /// </remarks> [JsiiProperty(name: "headerValue", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] object HeaderValue { get; } [JsiiTypeProxy(nativeType: typeof(IMockHeadersProperty), fullyQualifiedName: "@alicloud/ros-cdk-apigateway.RosApi.MockHeadersProperty")] internal sealed class _Proxy : DeputyBase, AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.IMockHeadersProperty { private _Proxy(ByRefValue reference): base(reference) { } /// <remarks> /// <strong>Property</strong>: headerName: Response header name /// </remarks> [JsiiProperty(name: "headerName", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public object HeaderName { get => GetInstanceProperty<object>()!; } /// <remarks> /// <strong>Property</strong>: headerValue: Response header value /// </remarks> [JsiiProperty(name: "headerValue", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public object HeaderValue { get => GetInstanceProperty<object>()!; } } } #pragma warning disable CS8618 [JsiiByValue(fqn: "@alicloud/ros-cdk-apigateway.RosApi.MockHeadersProperty")] public class MockHeadersProperty : AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.IMockHeadersProperty { private object _headerName; /// <remarks> /// <strong>Property</strong>: headerName: Response header name /// </remarks> [JsiiProperty(name: "headerName", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public object HeaderName { get => _headerName; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received null", nameof(value)); default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _headerName = value; } } private object _headerValue; /// <remarks> /// <strong>Property</strong>: headerValue: Response header value /// </remarks> [JsiiProperty(name: "headerValue", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public object HeaderValue { get => _headerValue; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received null", nameof(value)); default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _headerValue = value; } } } [JsiiInterface(nativeType: typeof(IOpenIdConnectConfigProperty), fullyQualifiedName: "@alicloud/ros-cdk-apigateway.RosApi.OpenIdConnectConfigProperty")] public interface IOpenIdConnectConfigProperty { /// <remarks> /// <strong>Property</strong>: openIdApiType: The type of the open id. "IDTOKEN" or "BUSINESS". If OpenIdApiType is specified as IDTOKEN, PublicKey and PublicKeyId are required. If OpenIdApiType is specified as BUSINESS, IdTokenParamName is required. /// </remarks> [JsiiProperty(name: "openIdApiType", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] object OpenIdApiType { get; } /// <remarks> /// <strong>Property</strong>: idTokenParamName: The token's parameter name. /// </remarks> [JsiiProperty(name: "idTokenParamName", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] [Amazon.JSII.Runtime.Deputy.JsiiOptional] object? IdTokenParamName { get { return null; } } /// <remarks> /// <strong>Property</strong>: publicKey: The public key. /// </remarks> [JsiiProperty(name: "publicKey", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] [Amazon.JSII.Runtime.Deputy.JsiiOptional] object? PublicKey { get { return null; } } /// <remarks> /// <strong>Property</strong>: publicKeyId: The public key id. /// </remarks> [JsiiProperty(name: "publicKeyId", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] [Amazon.JSII.Runtime.Deputy.JsiiOptional] object? PublicKeyId { get { return null; } } [JsiiTypeProxy(nativeType: typeof(IOpenIdConnectConfigProperty), fullyQualifiedName: "@alicloud/ros-cdk-apigateway.RosApi.OpenIdConnectConfigProperty")] internal sealed class _Proxy : DeputyBase, AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.IOpenIdConnectConfigProperty { private _Proxy(ByRefValue reference): base(reference) { } /// <remarks> /// <strong>Property</strong>: openIdApiType: The type of the open id. "IDTOKEN" or "BUSINESS". If OpenIdApiType is specified as IDTOKEN, PublicKey and PublicKeyId are required. If OpenIdApiType is specified as BUSINESS, IdTokenParamName is required. /// </remarks> [JsiiProperty(name: "openIdApiType", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public object OpenIdApiType { get => GetInstanceProperty<object>()!; } /// <remarks> /// <strong>Property</strong>: idTokenParamName: The token's parameter name. /// </remarks> [JsiiOptional] [JsiiProperty(name: "idTokenParamName", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? IdTokenParamName { get => GetInstanceProperty<object?>(); } /// <remarks> /// <strong>Property</strong>: publicKey: The public key. /// </remarks> [JsiiOptional] [JsiiProperty(name: "publicKey", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? PublicKey { get => GetInstanceProperty<object?>(); } /// <remarks> /// <strong>Property</strong>: publicKeyId: The public key id. /// </remarks> [JsiiOptional] [JsiiProperty(name: "publicKeyId", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? PublicKeyId { get => GetInstanceProperty<object?>(); } } } #pragma warning disable CS8618 [JsiiByValue(fqn: "@alicloud/ros-cdk-apigateway.RosApi.OpenIdConnectConfigProperty")] public class OpenIdConnectConfigProperty : AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.IOpenIdConnectConfigProperty { private object _openIdApiType; /// <remarks> /// <strong>Property</strong>: openIdApiType: The type of the open id. "IDTOKEN" or "BUSINESS". If OpenIdApiType is specified as IDTOKEN, PublicKey and PublicKeyId are required. If OpenIdApiType is specified as BUSINESS, IdTokenParamName is required. /// </remarks> [JsiiProperty(name: "openIdApiType", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public object OpenIdApiType { get => _openIdApiType; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received null", nameof(value)); default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _openIdApiType = value; } } private object? _idTokenParamName; /// <remarks> /// <strong>Property</strong>: idTokenParamName: The token's parameter name. /// </remarks> [JsiiOptional] [JsiiProperty(name: "idTokenParamName", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? IdTokenParamName { get => _idTokenParamName; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _idTokenParamName = value; } } private object? _publicKey; /// <remarks> /// <strong>Property</strong>: publicKey: The public key. /// </remarks> [JsiiOptional] [JsiiProperty(name: "publicKey", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? PublicKey { get => _publicKey; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _publicKey = value; } } private object? _publicKeyId; /// <remarks> /// <strong>Property</strong>: publicKeyId: The public key id. /// </remarks> [JsiiOptional] [JsiiProperty(name: "publicKeyId", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? PublicKeyId { get => _publicKeyId; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _publicKeyId = value; } } } [JsiiInterface(nativeType: typeof(IRequestConfigProperty), fullyQualifiedName: "@alicloud/ros-cdk-apigateway.RosApi.RequestConfigProperty")] public interface IRequestConfigProperty { /// <remarks> /// <strong>Property</strong>: requestHttpMethod: The HTTP method of the request. Default is GET. /// </remarks> [JsiiProperty(name: "requestHttpMethod", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] object RequestHttpMethod { get; } /// <remarks> /// <strong>Property</strong>: requestMode: API request mode. "MAPPING" or "PASSTHROUGH". Default is "MAPPING". /// </remarks> [JsiiProperty(name: "requestMode", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] object RequestMode { get; } /// <remarks> /// <strong>Property</strong>: requestPath: API Path. /// </remarks> [JsiiProperty(name: "requestPath", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] object RequestPath { get; } /// <remarks> /// <strong>Property</strong>: requestProtocol: The protocol of the request, "HTTP", "HTTPS", or "HTTP,HTTPS", Default is "HTTP". /// </remarks> [JsiiProperty(name: "requestProtocol", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] object RequestProtocol { get; } /// <remarks> /// <strong>Property</strong>: bodyFormat: Describe how data transform to the server, "FORM" for k-v and "STREAM" for bit stream.BodyFormat is required if RequestMode is specified as MAPPING and RequestHttpMethod is POST\/PUT\/PATCH. /// </remarks> [JsiiProperty(name: "bodyFormat", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] [Amazon.JSII.Runtime.Deputy.JsiiOptional] object? BodyFormat { get { return null; } } /// <remarks> /// <strong>Property</strong>: postBodyDescription: Description of the post body. /// </remarks> [JsiiProperty(name: "postBodyDescription", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] [Amazon.JSII.Runtime.Deputy.JsiiOptional] object? PostBodyDescription { get { return null; } } [JsiiTypeProxy(nativeType: typeof(IRequestConfigProperty), fullyQualifiedName: "@alicloud/ros-cdk-apigateway.RosApi.RequestConfigProperty")] internal sealed class _Proxy : DeputyBase, AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.IRequestConfigProperty { private _Proxy(ByRefValue reference): base(reference) { } /// <remarks> /// <strong>Property</strong>: requestHttpMethod: The HTTP method of the request. Default is GET. /// </remarks> [JsiiProperty(name: "requestHttpMethod", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public object RequestHttpMethod { get => GetInstanceProperty<object>()!; } /// <remarks> /// <strong>Property</strong>: requestMode: API request mode. "MAPPING" or "PASSTHROUGH". Default is "MAPPING". /// </remarks> [JsiiProperty(name: "requestMode", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public object RequestMode { get => GetInstanceProperty<object>()!; } /// <remarks> /// <strong>Property</strong>: requestPath: API Path. /// </remarks> [JsiiProperty(name: "requestPath", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public object RequestPath { get => GetInstanceProperty<object>()!; } /// <remarks> /// <strong>Property</strong>: requestProtocol: The protocol of the request, "HTTP", "HTTPS", or "HTTP,HTTPS", Default is "HTTP". /// </remarks> [JsiiProperty(name: "requestProtocol", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public object RequestProtocol { get => GetInstanceProperty<object>()!; } /// <remarks> /// <strong>Property</strong>: bodyFormat: Describe how data transform to the server, "FORM" for k-v and "STREAM" for bit stream.BodyFormat is required if RequestMode is specified as MAPPING and RequestHttpMethod is POST\/PUT\/PATCH. /// </remarks> [JsiiOptional] [JsiiProperty(name: "bodyFormat", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? BodyFormat { get => GetInstanceProperty<object?>(); } /// <remarks> /// <strong>Property</strong>: postBodyDescription: Description of the post body. /// </remarks> [JsiiOptional] [JsiiProperty(name: "postBodyDescription", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? PostBodyDescription { get => GetInstanceProperty<object?>(); } } } #pragma warning disable CS8618 [JsiiByValue(fqn: "@alicloud/ros-cdk-apigateway.RosApi.RequestConfigProperty")] public class RequestConfigProperty : AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.IRequestConfigProperty { private object _requestHttpMethod; /// <remarks> /// <strong>Property</strong>: requestHttpMethod: The HTTP method of the request. Default is GET. /// </remarks> [JsiiProperty(name: "requestHttpMethod", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public object RequestHttpMethod { get => _requestHttpMethod; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received null", nameof(value)); default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _requestHttpMethod = value; } } private object _requestMode; /// <remarks> /// <strong>Property</strong>: requestMode: API request mode. "MAPPING" or "PASSTHROUGH". Default is "MAPPING". /// </remarks> [JsiiProperty(name: "requestMode", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public object RequestMode { get => _requestMode; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received null", nameof(value)); default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _requestMode = value; } } private object _requestPath; /// <remarks> /// <strong>Property</strong>: requestPath: API Path. /// </remarks> [JsiiProperty(name: "requestPath", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public object RequestPath { get => _requestPath; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received null", nameof(value)); default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _requestPath = value; } } private object _requestProtocol; /// <remarks> /// <strong>Property</strong>: requestProtocol: The protocol of the request, "HTTP", "HTTPS", or "HTTP,HTTPS", Default is "HTTP". /// </remarks> [JsiiProperty(name: "requestProtocol", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public object RequestProtocol { get => _requestProtocol; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received null", nameof(value)); default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _requestProtocol = value; } } private object? _bodyFormat; /// <remarks> /// <strong>Property</strong>: bodyFormat: Describe how data transform to the server, "FORM" for k-v and "STREAM" for bit stream.BodyFormat is required if RequestMode is specified as MAPPING and RequestHttpMethod is POST\/PUT\/PATCH. /// </remarks> [JsiiOptional] [JsiiProperty(name: "bodyFormat", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? BodyFormat { get => _bodyFormat; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _bodyFormat = value; } } private object? _postBodyDescription; /// <remarks> /// <strong>Property</strong>: postBodyDescription: Description of the post body. /// </remarks> [JsiiOptional] [JsiiProperty(name: "postBodyDescription", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? PostBodyDescription { get => _postBodyDescription; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _postBodyDescription = value; } } } [JsiiInterface(nativeType: typeof(IRequestParametersProperty), fullyQualifiedName: "@alicloud/ros-cdk-apigateway.RosApi.RequestParametersProperty")] public interface IRequestParametersProperty { /// <remarks> /// <strong>Property</strong>: apiParameterName: The name of the request parameter. /// </remarks> [JsiiProperty(name: "apiParameterName", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] object ApiParameterName { get; } /// <remarks> /// <strong>Property</strong>: location: The location of the reqest parameter. /// </remarks> [JsiiProperty(name: "location", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] object Location { get; } /// <remarks> /// <strong>Property</strong>: parameterType: The type of the parameter /// </remarks> [JsiiProperty(name: "parameterType", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] object ParameterType { get; } /// <remarks> /// <strong>Property</strong>: required: If required. "REQUIRED", "OPTION" /// </remarks> [JsiiProperty(name: "required", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] object Required { get; } /// <remarks> /// <strong>Property</strong>: defaultValue: The default value of the request parameter. /// </remarks> [JsiiProperty(name: "defaultValue", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] [Amazon.JSII.Runtime.Deputy.JsiiOptional] object? DefaultValue { get { return null; } } /// <remarks> /// <strong>Property</strong>: demoValue: The demo value of the request parameter. /// </remarks> [JsiiProperty(name: "demoValue", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] [Amazon.JSII.Runtime.Deputy.JsiiOptional] object? DemoValue { get { return null; } } /// <remarks> /// <strong>Property</strong>: description: Description of the API, less than 180 characters. /// </remarks> [JsiiProperty(name: "description", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] [Amazon.JSII.Runtime.Deputy.JsiiOptional] object? Description { get { return null; } } /// <remarks> /// <strong>Property</strong>: docOrder: The order of the doc. /// </remarks> [JsiiProperty(name: "docOrder", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] [Amazon.JSII.Runtime.Deputy.JsiiOptional] object? DocOrder { get { return null; } } /// <remarks> /// <strong>Property</strong>: docShow: Visiablity of the Doc. "PUBLIC" or "PRIVATE" /// </remarks> [JsiiProperty(name: "docShow", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] [Amazon.JSII.Runtime.Deputy.JsiiOptional] object? DocShow { get { return null; } } /// <remarks> /// <strong>Property</strong>: enumValue: Allowed parameter value, split with ',' like "1,2,3,4" /// </remarks> [JsiiProperty(name: "enumValue", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] [Amazon.JSII.Runtime.Deputy.JsiiOptional] object? EnumValue { get { return null; } } /// <remarks> /// <strong>Property</strong>: jsonScheme: The json scheme of the parameter when it is String. /// </remarks> [JsiiProperty(name: "jsonScheme", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] [Amazon.JSII.Runtime.Deputy.JsiiOptional] object? JsonScheme { get { return null; } } /// <remarks> /// <strong>Property</strong>: maxLength: The max length of the parameter when it is String. /// </remarks> [JsiiProperty(name: "maxLength", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] [Amazon.JSII.Runtime.Deputy.JsiiOptional] object? MaxLength { get { return null; } } /// <remarks> /// <strong>Property</strong>: maxValue: The max value of the parameter when it is Int, Long, Float or Double. /// </remarks> [JsiiProperty(name: "maxValue", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] [Amazon.JSII.Runtime.Deputy.JsiiOptional] object? MaxValue { get { return null; } } /// <remarks> /// <strong>Property</strong>: minLength: The min length of the parameter when it is String. /// </remarks> [JsiiProperty(name: "minLength", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] [Amazon.JSII.Runtime.Deputy.JsiiOptional] object? MinLength { get { return null; } } /// <remarks> /// <strong>Property</strong>: minValue: The min value of the parameter when it is Int, Long, Float or Double. /// </remarks> [JsiiProperty(name: "minValue", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] [Amazon.JSII.Runtime.Deputy.JsiiOptional] object? MinValue { get { return null; } } /// <remarks> /// <strong>Property</strong>: regularExpression: The regular expression of the parameter when it is String. /// </remarks> [JsiiProperty(name: "regularExpression", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] [Amazon.JSII.Runtime.Deputy.JsiiOptional] object? RegularExpression { get { return null; } } [JsiiTypeProxy(nativeType: typeof(IRequestParametersProperty), fullyQualifiedName: "@alicloud/ros-cdk-apigateway.RosApi.RequestParametersProperty")] internal sealed class _Proxy : DeputyBase, AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.IRequestParametersProperty { private _Proxy(ByRefValue reference): base(reference) { } /// <remarks> /// <strong>Property</strong>: apiParameterName: The name of the request parameter. /// </remarks> [JsiiProperty(name: "apiParameterName", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public object ApiParameterName { get => GetInstanceProperty<object>()!; } /// <remarks> /// <strong>Property</strong>: location: The location of the reqest parameter. /// </remarks> [JsiiProperty(name: "location", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public object Location { get => GetInstanceProperty<object>()!; } /// <remarks> /// <strong>Property</strong>: parameterType: The type of the parameter /// </remarks> [JsiiProperty(name: "parameterType", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public object ParameterType { get => GetInstanceProperty<object>()!; } /// <remarks> /// <strong>Property</strong>: required: If required. "REQUIRED", "OPTION" /// </remarks> [JsiiProperty(name: "required", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public object Required { get => GetInstanceProperty<object>()!; } /// <remarks> /// <strong>Property</strong>: defaultValue: The default value of the request parameter. /// </remarks> [JsiiOptional] [JsiiProperty(name: "defaultValue", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? DefaultValue { get => GetInstanceProperty<object?>(); } /// <remarks> /// <strong>Property</strong>: demoValue: The demo value of the request parameter. /// </remarks> [JsiiOptional] [JsiiProperty(name: "demoValue", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? DemoValue { get => GetInstanceProperty<object?>(); } /// <remarks> /// <strong>Property</strong>: description: Description of the API, less than 180 characters. /// </remarks> [JsiiOptional] [JsiiProperty(name: "description", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? Description { get => GetInstanceProperty<object?>(); } /// <remarks> /// <strong>Property</strong>: docOrder: The order of the doc. /// </remarks> [JsiiOptional] [JsiiProperty(name: "docOrder", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? DocOrder { get => GetInstanceProperty<object?>(); } /// <remarks> /// <strong>Property</strong>: docShow: Visiablity of the Doc. "PUBLIC" or "PRIVATE" /// </remarks> [JsiiOptional] [JsiiProperty(name: "docShow", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? DocShow { get => GetInstanceProperty<object?>(); } /// <remarks> /// <strong>Property</strong>: enumValue: Allowed parameter value, split with ',' like "1,2,3,4" /// </remarks> [JsiiOptional] [JsiiProperty(name: "enumValue", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? EnumValue { get => GetInstanceProperty<object?>(); } /// <remarks> /// <strong>Property</strong>: jsonScheme: The json scheme of the parameter when it is String. /// </remarks> [JsiiOptional] [JsiiProperty(name: "jsonScheme", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? JsonScheme { get => GetInstanceProperty<object?>(); } /// <remarks> /// <strong>Property</strong>: maxLength: The max length of the parameter when it is String. /// </remarks> [JsiiOptional] [JsiiProperty(name: "maxLength", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? MaxLength { get => GetInstanceProperty<object?>(); } /// <remarks> /// <strong>Property</strong>: maxValue: The max value of the parameter when it is Int, Long, Float or Double. /// </remarks> [JsiiOptional] [JsiiProperty(name: "maxValue", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? MaxValue { get => GetInstanceProperty<object?>(); } /// <remarks> /// <strong>Property</strong>: minLength: The min length of the parameter when it is String. /// </remarks> [JsiiOptional] [JsiiProperty(name: "minLength", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? MinLength { get => GetInstanceProperty<object?>(); } /// <remarks> /// <strong>Property</strong>: minValue: The min value of the parameter when it is Int, Long, Float or Double. /// </remarks> [JsiiOptional] [JsiiProperty(name: "minValue", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? MinValue { get => GetInstanceProperty<object?>(); } /// <remarks> /// <strong>Property</strong>: regularExpression: The regular expression of the parameter when it is String. /// </remarks> [JsiiOptional] [JsiiProperty(name: "regularExpression", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? RegularExpression { get => GetInstanceProperty<object?>(); } } } #pragma warning disable CS8618 [JsiiByValue(fqn: "@alicloud/ros-cdk-apigateway.RosApi.RequestParametersProperty")] public class RequestParametersProperty : AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.IRequestParametersProperty { private object _apiParameterName; /// <remarks> /// <strong>Property</strong>: apiParameterName: The name of the request parameter. /// </remarks> [JsiiProperty(name: "apiParameterName", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public object ApiParameterName { get => _apiParameterName; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received null", nameof(value)); default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _apiParameterName = value; } } private object _location; /// <remarks> /// <strong>Property</strong>: location: The location of the reqest parameter. /// </remarks> [JsiiProperty(name: "location", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public object Location { get => _location; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received null", nameof(value)); default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _location = value; } } private object _parameterType; /// <remarks> /// <strong>Property</strong>: parameterType: The type of the parameter /// </remarks> [JsiiProperty(name: "parameterType", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public object ParameterType { get => _parameterType; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received null", nameof(value)); default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _parameterType = value; } } private object _required; /// <remarks> /// <strong>Property</strong>: required: If required. "REQUIRED", "OPTION" /// </remarks> [JsiiProperty(name: "required", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public object Required { get => _required; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received null", nameof(value)); default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _required = value; } } private object? _defaultValue; /// <remarks> /// <strong>Property</strong>: defaultValue: The default value of the request parameter. /// </remarks> [JsiiOptional] [JsiiProperty(name: "defaultValue", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? DefaultValue { get => _defaultValue; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _defaultValue = value; } } private object? _demoValue; /// <remarks> /// <strong>Property</strong>: demoValue: The demo value of the request parameter. /// </remarks> [JsiiOptional] [JsiiProperty(name: "demoValue", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? DemoValue { get => _demoValue; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _demoValue = value; } } private object? _description; /// <remarks> /// <strong>Property</strong>: description: Description of the API, less than 180 characters. /// </remarks> [JsiiOptional] [JsiiProperty(name: "description", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? Description { get => _description; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _description = value; } } private object? _docOrder; /// <remarks> /// <strong>Property</strong>: docOrder: The order of the doc. /// </remarks> [JsiiOptional] [JsiiProperty(name: "docOrder", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? DocOrder { get => _docOrder; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case double cast_cd4240: break; case byte cast_cd4240: break; case decimal cast_cd4240: break; case float cast_cd4240: break; case int cast_cd4240: break; case long cast_cd4240: break; case sbyte cast_cd4240: break; case short cast_cd4240: break; case uint cast_cd4240: break; case ulong cast_cd4240: break; case ushort cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: double, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _docOrder = value; } } private object? _docShow; /// <remarks> /// <strong>Property</strong>: docShow: Visiablity of the Doc. "PUBLIC" or "PRIVATE" /// </remarks> [JsiiOptional] [JsiiProperty(name: "docShow", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? DocShow { get => _docShow; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _docShow = value; } } private object? _enumValue; /// <remarks> /// <strong>Property</strong>: enumValue: Allowed parameter value, split with ',' like "1,2,3,4" /// </remarks> [JsiiOptional] [JsiiProperty(name: "enumValue", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? EnumValue { get => _enumValue; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _enumValue = value; } } private object? _jsonScheme; /// <remarks> /// <strong>Property</strong>: jsonScheme: The json scheme of the parameter when it is String. /// </remarks> [JsiiOptional] [JsiiProperty(name: "jsonScheme", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? JsonScheme { get => _jsonScheme; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _jsonScheme = value; } } private object? _maxLength; /// <remarks> /// <strong>Property</strong>: maxLength: The max length of the parameter when it is String. /// </remarks> [JsiiOptional] [JsiiProperty(name: "maxLength", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? MaxLength { get => _maxLength; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case double cast_cd4240: break; case byte cast_cd4240: break; case decimal cast_cd4240: break; case float cast_cd4240: break; case int cast_cd4240: break; case long cast_cd4240: break; case sbyte cast_cd4240: break; case short cast_cd4240: break; case uint cast_cd4240: break; case ulong cast_cd4240: break; case ushort cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: double, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _maxLength = value; } } private object? _maxValue; /// <remarks> /// <strong>Property</strong>: maxValue: The max value of the parameter when it is Int, Long, Float or Double. /// </remarks> [JsiiOptional] [JsiiProperty(name: "maxValue", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? MaxValue { get => _maxValue; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case double cast_cd4240: break; case byte cast_cd4240: break; case decimal cast_cd4240: break; case float cast_cd4240: break; case int cast_cd4240: break; case long cast_cd4240: break; case sbyte cast_cd4240: break; case short cast_cd4240: break; case uint cast_cd4240: break; case ulong cast_cd4240: break; case ushort cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: double, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _maxValue = value; } } private object? _minLength; /// <remarks> /// <strong>Property</strong>: minLength: The min length of the parameter when it is String. /// </remarks> [JsiiOptional] [JsiiProperty(name: "minLength", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? MinLength { get => _minLength; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case double cast_cd4240: break; case byte cast_cd4240: break; case decimal cast_cd4240: break; case float cast_cd4240: break; case int cast_cd4240: break; case long cast_cd4240: break; case sbyte cast_cd4240: break; case short cast_cd4240: break; case uint cast_cd4240: break; case ulong cast_cd4240: break; case ushort cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: double, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _minLength = value; } } private object? _minValue; /// <remarks> /// <strong>Property</strong>: minValue: The min value of the parameter when it is Int, Long, Float or Double. /// </remarks> [JsiiOptional] [JsiiProperty(name: "minValue", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? MinValue { get => _minValue; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case double cast_cd4240: break; case byte cast_cd4240: break; case decimal cast_cd4240: break; case float cast_cd4240: break; case int cast_cd4240: break; case long cast_cd4240: break; case sbyte cast_cd4240: break; case short cast_cd4240: break; case uint cast_cd4240: break; case ulong cast_cd4240: break; case ushort cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: double, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _minValue = value; } } private object? _regularExpression; /// <remarks> /// <strong>Property</strong>: regularExpression: The regular expression of the parameter when it is String. /// </remarks> [JsiiOptional] [JsiiProperty(name: "regularExpression", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? RegularExpression { get => _regularExpression; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _regularExpression = value; } } } [JsiiInterface(nativeType: typeof(IServiceConfigProperty), fullyQualifiedName: "@alicloud/ros-cdk-apigateway.RosApi.ServiceConfigProperty")] public interface IServiceConfigProperty { /// <remarks> /// <strong>Property</strong>: contentTypeCatagory: Specify how to determine ContentType header when using service. "DEFAULT" to use API Gateway's default value. "CUSTOM" to use self defined value. "CLIENT" to use client's ContentType header. Default is CLIENT. /// </remarks> [JsiiProperty(name: "contentTypeCatagory", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] [Amazon.JSII.Runtime.Deputy.JsiiOptional] object? ContentTypeCatagory { get { return null; } } /// <remarks> /// <strong>Property</strong>: contentTypeValue: ContentTypeValue is required if ContentTypeCatagory is DEFAULT or CUSTOM. /// </remarks> [JsiiProperty(name: "contentTypeValue", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] [Amazon.JSII.Runtime.Deputy.JsiiOptional] object? ContentTypeValue { get { return null; } } /// <remarks> /// <strong>Property</strong>: functionComputeConfig: The configuration of the function compute. FunctionComputeConfig is required if ServiceFunctionComputeEnable is TRUE. /// </remarks> [JsiiProperty(name: "functionComputeConfig", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-apigateway.RosApi.FunctionComputeConfigProperty\"}]}}", isOptional: true)] [Amazon.JSII.Runtime.Deputy.JsiiOptional] object? FunctionComputeConfig { get { return null; } } /// <remarks> /// <strong>Property</strong>: mock: Whether to use Mock model. "TRUE" or "FALSE". Default is FALSE. /// </remarks> [JsiiProperty(name: "mock", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] [Amazon.JSII.Runtime.Deputy.JsiiOptional] object? Mock { get { return null; } } /// <remarks> /// <strong>Property</strong>: mockHeaders: Custom Mock response header related information when Mock is enabled. /// </remarks> [JsiiProperty(name: "mockHeaders", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-apigateway.RosApi.MockHeadersProperty\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)] [Amazon.JSII.Runtime.Deputy.JsiiOptional] object? MockHeaders { get { return null; } } /// <remarks> /// <strong>Property</strong>: mockResult: The returned value when using Mock model. /// </remarks> [JsiiProperty(name: "mockResult", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] [Amazon.JSII.Runtime.Deputy.JsiiOptional] object? MockResult { get { return null; } } /// <remarks> /// <strong>Property</strong>: mockStatusCode: Status code, returned in the format compatible with HTTP 1.1 response status code and its status /// </remarks> [JsiiProperty(name: "mockStatusCode", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] [Amazon.JSII.Runtime.Deputy.JsiiOptional] object? MockStatusCode { get { return null; } } /// <remarks> /// <strong>Property</strong>: serviceAddress: Backend service call address. If the complete backend service address is http:\/\/api.a.com:8080\/object\/add?key1=value1&key2=value2, ServiceAddress corresponds to http:\/\/api.a.com:8080. /// </remarks> [JsiiProperty(name: "serviceAddress", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] [Amazon.JSII.Runtime.Deputy.JsiiOptional] object? ServiceAddress { get { return null; } } /// <remarks> /// <strong>Property</strong>: serviceHttpMethod: The HTTP method to the service. Default is GET. /// </remarks> [JsiiProperty(name: "serviceHttpMethod", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] [Amazon.JSII.Runtime.Deputy.JsiiOptional] object? ServiceHttpMethod { get { return null; } } /// <remarks> /// <strong>Property</strong>: servicePath: Backend service call path. If the complete backend service address is http:\/\/api.a.com:8080\/object\/add?key1=value1&key2=value2, ServicePath corresponds to \/object\/add. /// </remarks> [JsiiProperty(name: "servicePath", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] [Amazon.JSII.Runtime.Deputy.JsiiOptional] object? ServicePath { get { return null; } } /// <remarks> /// <strong>Property</strong>: serviceProtocol: Backend service protocol type, which must be HTTP, HTTPS or FunctionCompute currently. /// </remarks> [JsiiProperty(name: "serviceProtocol", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] [Amazon.JSII.Runtime.Deputy.JsiiOptional] object? ServiceProtocol { get { return null; } } /// <remarks> /// <strong>Property</strong>: serviceTimeOut: Time out (ms) when using service. /// </remarks> [JsiiProperty(name: "serviceTimeOut", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] [Amazon.JSII.Runtime.Deputy.JsiiOptional] object? ServiceTimeOut { get { return null; } } /// <remarks> /// <strong>Property</strong>: serviceVpcEnable: Whether to use VPC. "TRUE" or "FALSE". Default is FALSE. /// </remarks> [JsiiProperty(name: "serviceVpcEnable", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] [Amazon.JSII.Runtime.Deputy.JsiiOptional] object? ServiceVpcEnable { get { return null; } } /// <remarks> /// <strong>Property</strong>: vpcConfig: The configuration of the VPC. VpcConfig is required if ServiceVpcEnable is TRUE. /// </remarks> [JsiiProperty(name: "vpcConfig", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-apigateway.RosApi.VpcConfigProperty\"}]}}", isOptional: true)] [Amazon.JSII.Runtime.Deputy.JsiiOptional] object? VpcConfig { get { return null; } } [JsiiTypeProxy(nativeType: typeof(IServiceConfigProperty), fullyQualifiedName: "@alicloud/ros-cdk-apigateway.RosApi.ServiceConfigProperty")] internal sealed class _Proxy : DeputyBase, AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.IServiceConfigProperty { private _Proxy(ByRefValue reference): base(reference) { } /// <remarks> /// <strong>Property</strong>: contentTypeCatagory: Specify how to determine ContentType header when using service. "DEFAULT" to use API Gateway's default value. "CUSTOM" to use self defined value. "CLIENT" to use client's ContentType header. Default is CLIENT. /// </remarks> [JsiiOptional] [JsiiProperty(name: "contentTypeCatagory", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? ContentTypeCatagory { get => GetInstanceProperty<object?>(); } /// <remarks> /// <strong>Property</strong>: contentTypeValue: ContentTypeValue is required if ContentTypeCatagory is DEFAULT or CUSTOM. /// </remarks> [JsiiOptional] [JsiiProperty(name: "contentTypeValue", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? ContentTypeValue { get => GetInstanceProperty<object?>(); } /// <remarks> /// <strong>Property</strong>: functionComputeConfig: The configuration of the function compute. FunctionComputeConfig is required if ServiceFunctionComputeEnable is TRUE. /// </remarks> [JsiiOptional] [JsiiProperty(name: "functionComputeConfig", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-apigateway.RosApi.FunctionComputeConfigProperty\"}]}}", isOptional: true)] public object? FunctionComputeConfig { get => GetInstanceProperty<object?>(); } /// <remarks> /// <strong>Property</strong>: mock: Whether to use Mock model. "TRUE" or "FALSE". Default is FALSE. /// </remarks> [JsiiOptional] [JsiiProperty(name: "mock", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? Mock { get => GetInstanceProperty<object?>(); } /// <remarks> /// <strong>Property</strong>: mockHeaders: Custom Mock response header related information when Mock is enabled. /// </remarks> [JsiiOptional] [JsiiProperty(name: "mockHeaders", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-apigateway.RosApi.MockHeadersProperty\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)] public object? MockHeaders { get => GetInstanceProperty<object?>(); } /// <remarks> /// <strong>Property</strong>: mockResult: The returned value when using Mock model. /// </remarks> [JsiiOptional] [JsiiProperty(name: "mockResult", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? MockResult { get => GetInstanceProperty<object?>(); } /// <remarks> /// <strong>Property</strong>: mockStatusCode: Status code, returned in the format compatible with HTTP 1.1 response status code and its status /// </remarks> [JsiiOptional] [JsiiProperty(name: "mockStatusCode", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? MockStatusCode { get => GetInstanceProperty<object?>(); } /// <remarks> /// <strong>Property</strong>: serviceAddress: Backend service call address. If the complete backend service address is http:\/\/api.a.com:8080\/object\/add?key1=value1&key2=value2, ServiceAddress corresponds to http:\/\/api.a.com:8080. /// </remarks> [JsiiOptional] [JsiiProperty(name: "serviceAddress", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? ServiceAddress { get => GetInstanceProperty<object?>(); } /// <remarks> /// <strong>Property</strong>: serviceHttpMethod: The HTTP method to the service. Default is GET. /// </remarks> [JsiiOptional] [JsiiProperty(name: "serviceHttpMethod", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? ServiceHttpMethod { get => GetInstanceProperty<object?>(); } /// <remarks> /// <strong>Property</strong>: servicePath: Backend service call path. If the complete backend service address is http:\/\/api.a.com:8080\/object\/add?key1=value1&key2=value2, ServicePath corresponds to \/object\/add. /// </remarks> [JsiiOptional] [JsiiProperty(name: "servicePath", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? ServicePath { get => GetInstanceProperty<object?>(); } /// <remarks> /// <strong>Property</strong>: serviceProtocol: Backend service protocol type, which must be HTTP, HTTPS or FunctionCompute currently. /// </remarks> [JsiiOptional] [JsiiProperty(name: "serviceProtocol", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? ServiceProtocol { get => GetInstanceProperty<object?>(); } /// <remarks> /// <strong>Property</strong>: serviceTimeOut: Time out (ms) when using service. /// </remarks> [JsiiOptional] [JsiiProperty(name: "serviceTimeOut", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? ServiceTimeOut { get => GetInstanceProperty<object?>(); } /// <remarks> /// <strong>Property</strong>: serviceVpcEnable: Whether to use VPC. "TRUE" or "FALSE". Default is FALSE. /// </remarks> [JsiiOptional] [JsiiProperty(name: "serviceVpcEnable", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? ServiceVpcEnable { get => GetInstanceProperty<object?>(); } /// <remarks> /// <strong>Property</strong>: vpcConfig: The configuration of the VPC. VpcConfig is required if ServiceVpcEnable is TRUE. /// </remarks> [JsiiOptional] [JsiiProperty(name: "vpcConfig", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-apigateway.RosApi.VpcConfigProperty\"}]}}", isOptional: true)] public object? VpcConfig { get => GetInstanceProperty<object?>(); } } } [JsiiByValue(fqn: "@alicloud/ros-cdk-apigateway.RosApi.ServiceConfigProperty")] public class ServiceConfigProperty : AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.IServiceConfigProperty { private object? _contentTypeCatagory; /// <remarks> /// <strong>Property</strong>: contentTypeCatagory: Specify how to determine ContentType header when using service. "DEFAULT" to use API Gateway's default value. "CUSTOM" to use self defined value. "CLIENT" to use client's ContentType header. Default is CLIENT. /// </remarks> [JsiiOptional] [JsiiProperty(name: "contentTypeCatagory", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? ContentTypeCatagory { get => _contentTypeCatagory; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _contentTypeCatagory = value; } } private object? _contentTypeValue; /// <remarks> /// <strong>Property</strong>: contentTypeValue: ContentTypeValue is required if ContentTypeCatagory is DEFAULT or CUSTOM. /// </remarks> [JsiiOptional] [JsiiProperty(name: "contentTypeValue", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? ContentTypeValue { get => _contentTypeValue; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _contentTypeValue = value; } } private object? _functionComputeConfig; /// <remarks> /// <strong>Property</strong>: functionComputeConfig: The configuration of the function compute. FunctionComputeConfig is required if ServiceFunctionComputeEnable is TRUE. /// </remarks> [JsiiOptional] [JsiiProperty(name: "functionComputeConfig", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-apigateway.RosApi.FunctionComputeConfigProperty\"}]}}", isOptional: true)] public object? FunctionComputeConfig { get => _functionComputeConfig; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.IFunctionComputeConfigProperty cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, {typeof(AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.IFunctionComputeConfigProperty).FullName}; received {value.GetType().FullName}", nameof(value)); } } _functionComputeConfig = value; } } private object? _mock; /// <remarks> /// <strong>Property</strong>: mock: Whether to use Mock model. "TRUE" or "FALSE". Default is FALSE. /// </remarks> [JsiiOptional] [JsiiProperty(name: "mock", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? Mock { get => _mock; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _mock = value; } } private object? _mockHeaders; /// <remarks> /// <strong>Property</strong>: mockHeaders: Custom Mock response header related information when Mock is enabled. /// </remarks> [JsiiOptional] [JsiiProperty(name: "mockHeaders", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"collection\":{\"elementtype\":{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-apigateway.RosApi.MockHeadersProperty\"}]}},\"kind\":\"array\"}}]}}", isOptional: true)] public object? MockHeaders { get => _mockHeaders; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case object[] cast_cd4240: for (var __idx_f64a5c = 0 ; __idx_f64a5c < cast_cd4240.Length ; __idx_f64a5c++) { switch (cast_cd4240[__idx_f64a5c]) { case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_201718: break; case AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.IMockHeadersProperty cast_201718: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_201718: // Not enough information to type-check... break; case null: throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, {typeof(AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.IMockHeadersProperty).FullName}; received null", nameof(value)); default: throw new System.ArgumentException($"Expected {nameof(value)}[{__idx_f64a5c}] to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, {typeof(AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.IMockHeadersProperty).FullName}; received {cast_cd4240[__idx_f64a5c].GetType().FullName}", nameof(value)); } } break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, object[]; received {value.GetType().FullName}", nameof(value)); } } _mockHeaders = value; } } private object? _mockResult; /// <remarks> /// <strong>Property</strong>: mockResult: The returned value when using Mock model. /// </remarks> [JsiiOptional] [JsiiProperty(name: "mockResult", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? MockResult { get => _mockResult; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _mockResult = value; } } private object? _mockStatusCode; /// <remarks> /// <strong>Property</strong>: mockStatusCode: Status code, returned in the format compatible with HTTP 1.1 response status code and its status /// </remarks> [JsiiOptional] [JsiiProperty(name: "mockStatusCode", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? MockStatusCode { get => _mockStatusCode; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case double cast_cd4240: break; case byte cast_cd4240: break; case decimal cast_cd4240: break; case float cast_cd4240: break; case int cast_cd4240: break; case long cast_cd4240: break; case sbyte cast_cd4240: break; case short cast_cd4240: break; case uint cast_cd4240: break; case ulong cast_cd4240: break; case ushort cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: double, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _mockStatusCode = value; } } private object? _serviceAddress; /// <remarks> /// <strong>Property</strong>: serviceAddress: Backend service call address. If the complete backend service address is http:\/\/api.a.com:8080\/object\/add?key1=value1&key2=value2, ServiceAddress corresponds to http:\/\/api.a.com:8080. /// </remarks> [JsiiOptional] [JsiiProperty(name: "serviceAddress", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? ServiceAddress { get => _serviceAddress; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _serviceAddress = value; } } private object? _serviceHttpMethod; /// <remarks> /// <strong>Property</strong>: serviceHttpMethod: The HTTP method to the service. Default is GET. /// </remarks> [JsiiOptional] [JsiiProperty(name: "serviceHttpMethod", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? ServiceHttpMethod { get => _serviceHttpMethod; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _serviceHttpMethod = value; } } private object? _servicePath; /// <remarks> /// <strong>Property</strong>: servicePath: Backend service call path. If the complete backend service address is http:\/\/api.a.com:8080\/object\/add?key1=value1&key2=value2, ServicePath corresponds to \/object\/add. /// </remarks> [JsiiOptional] [JsiiProperty(name: "servicePath", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? ServicePath { get => _servicePath; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _servicePath = value; } } private object? _serviceProtocol; /// <remarks> /// <strong>Property</strong>: serviceProtocol: Backend service protocol type, which must be HTTP, HTTPS or FunctionCompute currently. /// </remarks> [JsiiOptional] [JsiiProperty(name: "serviceProtocol", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? ServiceProtocol { get => _serviceProtocol; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _serviceProtocol = value; } } private object? _serviceTimeOut; /// <remarks> /// <strong>Property</strong>: serviceTimeOut: Time out (ms) when using service. /// </remarks> [JsiiOptional] [JsiiProperty(name: "serviceTimeOut", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? ServiceTimeOut { get => _serviceTimeOut; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case double cast_cd4240: break; case byte cast_cd4240: break; case decimal cast_cd4240: break; case float cast_cd4240: break; case int cast_cd4240: break; case long cast_cd4240: break; case sbyte cast_cd4240: break; case short cast_cd4240: break; case uint cast_cd4240: break; case ulong cast_cd4240: break; case ushort cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: double, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _serviceTimeOut = value; } } private object? _serviceVpcEnable; /// <remarks> /// <strong>Property</strong>: serviceVpcEnable: Whether to use VPC. "TRUE" or "FALSE". Default is FALSE. /// </remarks> [JsiiOptional] [JsiiProperty(name: "serviceVpcEnable", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? ServiceVpcEnable { get => _serviceVpcEnable; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _serviceVpcEnable = value; } } private object? _vpcConfig; /// <remarks> /// <strong>Property</strong>: vpcConfig: The configuration of the VPC. VpcConfig is required if ServiceVpcEnable is TRUE. /// </remarks> [JsiiOptional] [JsiiProperty(name: "vpcConfig", typeJson: "{\"union\":{\"types\":[{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"},{\"fqn\":\"@alicloud/ros-cdk-apigateway.RosApi.VpcConfigProperty\"}]}}", isOptional: true)] public object? VpcConfig { get => _vpcConfig; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.IVpcConfigProperty cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}, {typeof(AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.IVpcConfigProperty).FullName}; received {value.GetType().FullName}", nameof(value)); } } _vpcConfig = value; } } } [JsiiInterface(nativeType: typeof(IServiceParametersMapProperty), fullyQualifiedName: "@alicloud/ros-cdk-apigateway.RosApi.ServiceParametersMapProperty")] public interface IServiceParametersMapProperty { /// <remarks> /// <strong>Property</strong>: requestParameterName: The corresponding request parameter, system parameter or const parameter. /// </remarks> [JsiiProperty(name: "requestParameterName", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] object RequestParameterName { get; } /// <remarks> /// <strong>Property</strong>: serviceParameterName: The corresponding service parameter. /// </remarks> [JsiiProperty(name: "serviceParameterName", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] object ServiceParameterName { get; } [JsiiTypeProxy(nativeType: typeof(IServiceParametersMapProperty), fullyQualifiedName: "@alicloud/ros-cdk-apigateway.RosApi.ServiceParametersMapProperty")] internal sealed class _Proxy : DeputyBase, AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.IServiceParametersMapProperty { private _Proxy(ByRefValue reference): base(reference) { } /// <remarks> /// <strong>Property</strong>: requestParameterName: The corresponding request parameter, system parameter or const parameter. /// </remarks> [JsiiProperty(name: "requestParameterName", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public object RequestParameterName { get => GetInstanceProperty<object>()!; } /// <remarks> /// <strong>Property</strong>: serviceParameterName: The corresponding service parameter. /// </remarks> [JsiiProperty(name: "serviceParameterName", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public object ServiceParameterName { get => GetInstanceProperty<object>()!; } } } #pragma warning disable CS8618 [JsiiByValue(fqn: "@alicloud/ros-cdk-apigateway.RosApi.ServiceParametersMapProperty")] public class ServiceParametersMapProperty : AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.IServiceParametersMapProperty { private object _requestParameterName; /// <remarks> /// <strong>Property</strong>: requestParameterName: The corresponding request parameter, system parameter or const parameter. /// </remarks> [JsiiProperty(name: "requestParameterName", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public object RequestParameterName { get => _requestParameterName; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received null", nameof(value)); default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _requestParameterName = value; } } private object _serviceParameterName; /// <remarks> /// <strong>Property</strong>: serviceParameterName: The corresponding service parameter. /// </remarks> [JsiiProperty(name: "serviceParameterName", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public object ServiceParameterName { get => _serviceParameterName; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received null", nameof(value)); default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _serviceParameterName = value; } } } [JsiiInterface(nativeType: typeof(IServiceParametersProperty), fullyQualifiedName: "@alicloud/ros-cdk-apigateway.RosApi.ServiceParametersProperty")] public interface IServiceParametersProperty { /// <remarks> /// <strong>Property</strong>: location: The location of the parameter /// </remarks> [JsiiProperty(name: "location", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] object Location { get; } /// <remarks> /// <strong>Property</strong>: parameterType: The type of the parameter. /// </remarks> [JsiiProperty(name: "parameterType", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] object ParameterType { get; } /// <remarks> /// <strong>Property</strong>: serviceParameterName: The name of the parameter /// </remarks> [JsiiProperty(name: "serviceParameterName", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] object ServiceParameterName { get; } [JsiiTypeProxy(nativeType: typeof(IServiceParametersProperty), fullyQualifiedName: "@alicloud/ros-cdk-apigateway.RosApi.ServiceParametersProperty")] internal sealed class _Proxy : DeputyBase, AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.IServiceParametersProperty { private _Proxy(ByRefValue reference): base(reference) { } /// <remarks> /// <strong>Property</strong>: location: The location of the parameter /// </remarks> [JsiiProperty(name: "location", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public object Location { get => GetInstanceProperty<object>()!; } /// <remarks> /// <strong>Property</strong>: parameterType: The type of the parameter. /// </remarks> [JsiiProperty(name: "parameterType", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public object ParameterType { get => GetInstanceProperty<object>()!; } /// <remarks> /// <strong>Property</strong>: serviceParameterName: The name of the parameter /// </remarks> [JsiiProperty(name: "serviceParameterName", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public object ServiceParameterName { get => GetInstanceProperty<object>()!; } } } #pragma warning disable CS8618 [JsiiByValue(fqn: "@alicloud/ros-cdk-apigateway.RosApi.ServiceParametersProperty")] public class ServiceParametersProperty : AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.IServiceParametersProperty { private object _location; /// <remarks> /// <strong>Property</strong>: location: The location of the parameter /// </remarks> [JsiiProperty(name: "location", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public object Location { get => _location; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received null", nameof(value)); default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _location = value; } } private object _parameterType; /// <remarks> /// <strong>Property</strong>: parameterType: The type of the parameter. /// </remarks> [JsiiProperty(name: "parameterType", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public object ParameterType { get => _parameterType; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received null", nameof(value)); default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _parameterType = value; } } private object _serviceParameterName; /// <remarks> /// <strong>Property</strong>: serviceParameterName: The name of the parameter /// </remarks> [JsiiProperty(name: "serviceParameterName", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public object ServiceParameterName { get => _serviceParameterName; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received null", nameof(value)); default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _serviceParameterName = value; } } } [JsiiInterface(nativeType: typeof(ISystemParametersProperty), fullyQualifiedName: "@alicloud/ros-cdk-apigateway.RosApi.SystemParametersProperty")] public interface ISystemParametersProperty { /// <remarks> /// <strong>Property</strong>: location: The location of the system parameter. Default is HEAD. /// </remarks> [JsiiProperty(name: "location", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] object Location { get; } /// <remarks> /// <strong>Property</strong>: parameterName: The system parameter name. /// </remarks> [JsiiProperty(name: "parameterName", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] object ParameterName { get; } /// <remarks> /// <strong>Property</strong>: serviceParameterName: The service parameter name. /// </remarks> [JsiiProperty(name: "serviceParameterName", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] object ServiceParameterName { get; } /// <remarks> /// <strong>Property</strong>: demoValue: The demo value of the system parameter. /// </remarks> [JsiiProperty(name: "demoValue", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] [Amazon.JSII.Runtime.Deputy.JsiiOptional] object? DemoValue { get { return null; } } /// <remarks> /// <strong>Property</strong>: description: Description of the system parameter, less than 180 characters. /// </remarks> [JsiiProperty(name: "description", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] [Amazon.JSII.Runtime.Deputy.JsiiOptional] object? Description { get { return null; } } [JsiiTypeProxy(nativeType: typeof(ISystemParametersProperty), fullyQualifiedName: "@alicloud/ros-cdk-apigateway.RosApi.SystemParametersProperty")] internal sealed class _Proxy : DeputyBase, AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.ISystemParametersProperty { private _Proxy(ByRefValue reference): base(reference) { } /// <remarks> /// <strong>Property</strong>: location: The location of the system parameter. Default is HEAD. /// </remarks> [JsiiProperty(name: "location", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public object Location { get => GetInstanceProperty<object>()!; } /// <remarks> /// <strong>Property</strong>: parameterName: The system parameter name. /// </remarks> [JsiiProperty(name: "parameterName", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public object ParameterName { get => GetInstanceProperty<object>()!; } /// <remarks> /// <strong>Property</strong>: serviceParameterName: The service parameter name. /// </remarks> [JsiiProperty(name: "serviceParameterName", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public object ServiceParameterName { get => GetInstanceProperty<object>()!; } /// <remarks> /// <strong>Property</strong>: demoValue: The demo value of the system parameter. /// </remarks> [JsiiOptional] [JsiiProperty(name: "demoValue", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? DemoValue { get => GetInstanceProperty<object?>(); } /// <remarks> /// <strong>Property</strong>: description: Description of the system parameter, less than 180 characters. /// </remarks> [JsiiOptional] [JsiiProperty(name: "description", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? Description { get => GetInstanceProperty<object?>(); } } } #pragma warning disable CS8618 [JsiiByValue(fqn: "@alicloud/ros-cdk-apigateway.RosApi.SystemParametersProperty")] public class SystemParametersProperty : AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.ISystemParametersProperty { private object _location; /// <remarks> /// <strong>Property</strong>: location: The location of the system parameter. Default is HEAD. /// </remarks> [JsiiProperty(name: "location", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public object Location { get => _location; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received null", nameof(value)); default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _location = value; } } private object _parameterName; /// <remarks> /// <strong>Property</strong>: parameterName: The system parameter name. /// </remarks> [JsiiProperty(name: "parameterName", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public object ParameterName { get => _parameterName; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received null", nameof(value)); default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _parameterName = value; } } private object _serviceParameterName; /// <remarks> /// <strong>Property</strong>: serviceParameterName: The service parameter name. /// </remarks> [JsiiProperty(name: "serviceParameterName", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public object ServiceParameterName { get => _serviceParameterName; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received null", nameof(value)); default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _serviceParameterName = value; } } private object? _demoValue; /// <remarks> /// <strong>Property</strong>: demoValue: The demo value of the system parameter. /// </remarks> [JsiiOptional] [JsiiProperty(name: "demoValue", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? DemoValue { get => _demoValue; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _demoValue = value; } } private object? _description; /// <remarks> /// <strong>Property</strong>: description: Description of the system parameter, less than 180 characters. /// </remarks> [JsiiOptional] [JsiiProperty(name: "description", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? Description { get => _description; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _description = value; } } } [JsiiInterface(nativeType: typeof(ITagsProperty), fullyQualifiedName: "@alicloud/ros-cdk-apigateway.RosApi.TagsProperty")] public interface ITagsProperty { /// <remarks> /// <strong>Property</strong>: key: undefined /// </remarks> [JsiiProperty(name: "key", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] object Key { get; } /// <remarks> /// <strong>Property</strong>: value: undefined /// </remarks> [JsiiProperty(name: "value", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] [Amazon.JSII.Runtime.Deputy.JsiiOptional] object? Value { get { return null; } } [JsiiTypeProxy(nativeType: typeof(ITagsProperty), fullyQualifiedName: "@alicloud/ros-cdk-apigateway.RosApi.TagsProperty")] internal sealed class _Proxy : DeputyBase, AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.ITagsProperty { private _Proxy(ByRefValue reference): base(reference) { } /// <remarks> /// <strong>Property</strong>: key: undefined /// </remarks> [JsiiProperty(name: "key", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public object Key { get => GetInstanceProperty<object>()!; } /// <remarks> /// <strong>Property</strong>: value: undefined /// </remarks> [JsiiOptional] [JsiiProperty(name: "value", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? Value { get => GetInstanceProperty<object?>(); } } } #pragma warning disable CS8618 [JsiiByValue(fqn: "@alicloud/ros-cdk-apigateway.RosApi.TagsProperty")] public class TagsProperty : AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.ITagsProperty { private object _key; /// <remarks> /// <strong>Property</strong>: key: undefined /// </remarks> [JsiiProperty(name: "key", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public object Key { get => _key; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received null", nameof(value)); default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _key = value; } } private object? _value; /// <remarks> /// <strong>Property</strong>: value: undefined /// </remarks> [JsiiOptional] [JsiiProperty(name: "value", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}", isOptional: true)] public object? Value { get => _value; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: break; default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _value = value; } } } [JsiiInterface(nativeType: typeof(IVpcConfigProperty), fullyQualifiedName: "@alicloud/ros-cdk-apigateway.RosApi.VpcConfigProperty")] public interface IVpcConfigProperty { /// <remarks> /// <strong>Property</strong>: instanceId: The id of the instance (ECS\/SLB). /// </remarks> [JsiiProperty(name: "instanceId", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] object InstanceId { get; } /// <remarks> /// <strong>Property</strong>: port: The port of the VPC. /// </remarks> [JsiiProperty(name: "port", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] object Port { get; } /// <remarks> /// <strong>Property</strong>: vpcId: The id of the VPC. /// </remarks> [JsiiProperty(name: "vpcId", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] object VpcId { get; } [JsiiTypeProxy(nativeType: typeof(IVpcConfigProperty), fullyQualifiedName: "@alicloud/ros-cdk-apigateway.RosApi.VpcConfigProperty")] internal sealed class _Proxy : DeputyBase, AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.IVpcConfigProperty { private _Proxy(ByRefValue reference): base(reference) { } /// <remarks> /// <strong>Property</strong>: instanceId: The id of the instance (ECS\/SLB). /// </remarks> [JsiiProperty(name: "instanceId", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public object InstanceId { get => GetInstanceProperty<object>()!; } /// <remarks> /// <strong>Property</strong>: port: The port of the VPC. /// </remarks> [JsiiProperty(name: "port", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public object Port { get => GetInstanceProperty<object>()!; } /// <remarks> /// <strong>Property</strong>: vpcId: The id of the VPC. /// </remarks> [JsiiProperty(name: "vpcId", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public object VpcId { get => GetInstanceProperty<object>()!; } } } #pragma warning disable CS8618 [JsiiByValue(fqn: "@alicloud/ros-cdk-apigateway.RosApi.VpcConfigProperty")] public class VpcConfigProperty : AlibabaCloud.SDK.ROS.CDK.Apigateway.RosApi.IVpcConfigProperty { private object _instanceId; /// <remarks> /// <strong>Property</strong>: instanceId: The id of the instance (ECS\/SLB). /// </remarks> [JsiiProperty(name: "instanceId", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public object InstanceId { get => _instanceId; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received null", nameof(value)); default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _instanceId = value; } } private object _port; /// <remarks> /// <strong>Property</strong>: port: The port of the VPC. /// </remarks> [JsiiProperty(name: "port", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"number\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public object Port { get => _port; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case double cast_cd4240: break; case byte cast_cd4240: break; case decimal cast_cd4240: break; case float cast_cd4240: break; case int cast_cd4240: break; case long cast_cd4240: break; case sbyte cast_cd4240: break; case short cast_cd4240: break; case uint cast_cd4240: break; case ulong cast_cd4240: break; case ushort cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: double, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received null", nameof(value)); default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: double, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _port = value; } } private object _vpcId; /// <remarks> /// <strong>Property</strong>: vpcId: The id of the VPC. /// </remarks> [JsiiProperty(name: "vpcId", typeJson: "{\"union\":{\"types\":[{\"primitive\":\"string\"},{\"fqn\":\"@alicloud/ros-cdk-core.IResolvable\"}]}}")] public object VpcId { get => _vpcId; set { if (Amazon.JSII.Runtime.Configuration.RuntimeTypeChecking) { switch (value) { case string cast_cd4240: break; case AlibabaCloud.SDK.ROS.CDK.Core.IResolvable cast_cd4240: break; case Amazon.JSII.Runtime.Deputy.AnonymousObject cast_cd4240: // Not enough information to type-check... break; case null: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received null", nameof(value)); default: throw new System.ArgumentException($"Expected {nameof(value)} to be one of: string, {typeof(AlibabaCloud.SDK.ROS.CDK.Core.IResolvable).FullName}; received {value.GetType().FullName}", nameof(value)); } } _vpcId = value; } } } } }